I have created sharepoint alerts programmatically. If I check 'manage my alerts' all values are correct such as "Weekly", "Friday", "6:00pm" then I add an item to the list and receive an alert email immediately.
SPAlert alert = user.Alerts.Add(); alert.AlertType = SPAlertType.List; alert.list = myList; alert.AlertTemplate = myList.AlertTemplate; alert.User = user; alert.EventType = SPEventType.All; alert.DeliveryChannels =SPAlertDeliveryChannels.Email; // Set Time alert.AlertFrequency = SPAlertFrequency.Weekly; alert.AlertTime = new DateTime (2012,10,5,18,0,0); alert.Update(false);
I chose Oct 2012 bcause it has day values of 1=Monday - 5=Friday. I have also tried with April 2013. Still did not work