We've built a pingdom replacement out of our Datalog work. Now we want to similarly configure more server-side plugins to detect and alert reliably without many false alarms. See Ping Service
We've been thinking along these lines for a long time.
Computational Habitat as landscape for wiki.
Service Blocks to provide 24x7 integration.
How We Connect Data between pages.
Events on the Wire compared to Fowler, et.al.
For today we imagine using event emitters to connect logic server-side and polling rest endpoints to communicate between servers. This will be a temporary stand-in for something with more versatility and scale.
We will create two new plugins, Detect and Alert. Both will represent capability instantiated by configuring and activating a server-side plugin associated with a page. Once activated, a persistent schedule will insure that any necessary runtime interconnectivity can be recreated after server restarts. A forked page will bring with it inactive copies of these plugins. See Service Logic
First alert detected and then cleared by pingdom replacement.
A Detect plugin will run when source information updates. It will retrieve from the source some history to which it will pattern match to recognize alarm conditions.
An Alert plugin will run when any of possibly many Detects recognize an alarm condition. The plugin will configure secrets required for text messaging from the client-side and store them write-only to the site's status directory to be used when alerting. See Amazon SNS
One connects plugins server-side by opening pages in a lineup client-side and activating the connection which will persist after the lineup is discarded. A useful lineup can be recovered by finding one page and asking it to open others. We'll start at Ping Home Servers
We will adopt the ordered strategy of make it work, make it right, make it fast. Today we make it work. See Alert on Home Outage