aboutsummaryrefslogtreecommitdiff
path: root/lib/mauve/notification.rb
AgeCommit message (Collapse)Author
2012-06-07Updated DuringRunner to cache calls to the calendar more.Patrick J Cherry
2012-05-09DuringRunner#no_one_in now is only evaluated once per instance per people_listPatrick J Cherry
to prevent the calendar getting thrashed.
2012-05-03* Person and people lists have now become interchangeable, with notificationsPatrick J Cherry
only recording the username, rather than the Person/PeopleList. This means that notifications in alert groups can use default #during clauses and #every values from people lists and persons. * Notify clauses can now take an array of persons/people_lists, and people_lists can refer to other people lists. * PeopleList names are now in the same namespace as usernames. * Tests to go with.
2012-05-02Fixed second typoPatrick J Cherry
2012-05-02Fixed typoPatrick J Cherry
2012-05-02Added configuration options for daytime_hours, dead_zone, and working_hours.Patrick J Cherry
2012-04-27Added better time-based people list polling, and added a "calendar" method toPatrick J Cherry
the config to easily generate Procs to call for people_lists.
2012-04-27Added no_one_in test for DuringRunnerPatrick J Cherry
2012-04-25Big update.Patrick J Cherry
* Max acknowledgement time is now specified in the config * Calendar interface improved. * holiday_url no longer used -- replaced by notify_when_on_holiday! * added notify_when_off_sick! * Added ability for the calendar to be queried for a list of bank holdays. * Added ability for Time to be given a list of bank holidays to check against. * PeopleLists can now be a Proc, allowing downloading of lists * Person is no longer a struct * Moved the method_missing bit into ObjectBuilder from various sub classes. * Added tests for the calendar interface * Updated tests in other bits.
2012-04-23Persons/PeopleLists can now specify multiple notification preferences.Patrick J Cherry
2012-04-23People/PeopleLists can now specify individualy notification times/frequenciesPatrick J Cherry
* Added PeopleList builder * Added Person#during, PeopleList#during, Person#every, PeopleList#every * Notification now uses #during/#every from the Person/PeopleList if nothing was specified * Added tests
2012-04-17 * The notification buffer is now used to store Alerts/AlertChangeds and timesPatrick J Cherry
to notify about, rather than notifications to be sent. * Fixed up the debug notifier a bit more. * Using the debug notifier extras more now.
2012-04-17 * DuringRunner#now? caches its answer, indexed by time. The cache is renewedPatrick J Cherry
on reinitialization. * AlertGroup#notify now initialises and keeps track of each DuringRunner to ensure cache usage.
2012-04-16Added time-fixation when processing "during" clauses, I think.Patrick J Cherry
2011-09-16Big documentation update.Patrick J Cherry
2011-08-31Fixed up alert suppression to be less jumpyPatrick J Cherry
2011-08-22Changed default args for DuringRunner#find_nextPatrick J Cherry
2011-08-22 * Race condition fixed (fixes #1861).Patrick J Cherry
* Reminders get sent at start of during period (fixes #1821)
2011-08-18Fixed up test_time bits in mauve_notification and merged tests.Patrick J Cherry
2011-08-17* Reminder notifications now take the same path to notify as initial alertsPatrick J Cherry
* Threading tidied -- processor will not do anything unless the timer has frozen * Person#send_alert now tidied and merged with alert_changed * POP3 server only shows alerts relevant to the user * Server now defaults to using an in-memory SQLite database (good for testing) * Server initializes a blank mauve config. * Tests tidied up
2011-08-17Changed DateTime to Time everywhere. Much better.Patrick J Cherry
2011-08-10Removed MauveTime. Added more tests.Patrick J Cherry
2011-08-10Updated during_runner to work better.Patrick J Cherry
--HG-- rename : test/time_test.rb => test/tc_mauve_time.rb
2011-07-13 Big commitPatrick J Cherry
* Added manpages for all binaries * Added log-reopening for mauvealert-server, and logrotate snippet * mauveserver now adds a user on install, and runs as that user * Big logging tidy-up * Alert subjects are only overwritten by the source, when the subject in the databse is empty * Removed various attr_writer methods that were being redifined * Added a notes box to the acknowledge form, but this doesn't work yet
2011-06-17 Reinstated relevance.Patrick J Cherry
2011-06-17SMS return true on succes.Patrick J Cherry
2011-06-15 * Added Alert#subject to return source when subject unspecifiedPatrick J Cherry
* Added extra arg to acknowledge! * Alert#all_raised / all_cleared does not returned ack'd alerts * Added sanitising for source/subject * Catch empty alert_group notifications in AlertChanged * Tidied up alert_group * Added skip bytemark_auth when RACK_ENV is development * Tidied up logging in MauveThread, Timer, UdpServer * Added extra convenience methods to Time and Date * Moved working/daylight/dead_zone hours into Time
2011-06-13 * Tidied up mauveserver to handle HUP restartsPatrick J Cherry
* Added HTML santizing to the alert class, so bad HTML is stripped as part of processing. * Alert#cleared? now means "not raised" * Better error handling in the Timer class, making sure that the timer never gets permanently frozen. * Moved notification and packet buffers to the Server class, meaning that if the Processor or Notifier threads crash, we don't lose all the items waiting to be processed/notified. * XMPP/Email Alerts now use templates, instead of instance methods. * Emails now get sent as multipart with HTML to allow detail fields to be shown as nature intended.
2011-06-09Big commitPatrick J Cherry
--HG-- rename : views/please_authenticate.haml => views/login.haml
2011-04-13new version.Patrick J Cherry