Premise Integrating with Push e-Mail ideas

Motorola Premise

doczaius

Member
Back Story --
 
My security system is completely closed/proprietary and I've been trying to come up with ways to integrate sensor/arming data.  Unfortunately I got sold into one of those tons of free-equipment if you sign away your soul contracts, so moving over to something more common or supported is not an option.
 
I've thought about splitting the sensor loops off to an array of DS10A's, which would give me sensor data via the MR26A but I would still not have any info on Arming/Disarming. 
 
Where I could use some ideas --
 
My cloud alarm provider (Alarm.Com) has the option for SMS & E-Mail notification for virtually any and all events.  My thought is to have the provider send e-mail notifications for all events and forward those notifications to premise where they would be parsed and interpreted. 
 
I did see some discussion and a download for an e-mail checker, but polling (periodically checking for e-mail) just wouldn't work for sensor data (though it might be adequate for checking the armed state). Rather I need something that will receive and act on pushes. 
 
Thoughts? Anyone? Bueller?
 
 
 
Thanks for all the suggestions /s
 
Here is what I came up with:
 
  1. Install hmailserver (http://www.hmailserver.com)
  2. Setup Alarm.Com to send notifications directly to an address on your machine
    DNS or DynDNS needed if you do not have a static IP
  3. MX record
  4. SMTP Reflector if your ISP blocks port 25

[*]Write vbscript for hmailserver to
  1. parse incomming mail for matching sender and system notification subject from Alarm.Com
  2. Interpret different notification types and sensors (Ie Panel Armed Away, The Front Door was Opened) based on subject line
  3. Create a simple delimited string to send data to com port via serialsend commandline program called with WScript.Shell.Run.

[*]Install additional pair of virtual ports with com0comm
[*]Create module in premise to read and interpret data from com port and redirect to devices (used ViziaRF module as reference)
  1. create hMailserver class to connect to com port and parse incomming delimited data, sending to appropriate device
  2. create "devices" within module for different notification types ie. Door Sensors, Alarm Panel, Locks (I've only programmed for these thus far, though there are many more)

[*]Add new custom hmailServer device & child devices for each security zone & alarm panel
[*]Bind devices
[*]Enjoy
Working through this I realized it may be "simpler" to actually write a SMTP server as a module within Premise that would work with data relayed using a program like HW Virtual Serial Port bound to port 25. However I ended up not pursuing this avenue due to security concerns like e-mail bombs & SPAM.  Although hMailServer is an additional layer of complexity, it handles these security concerns natively and in the event of some sort of attack only the hMailServer daemon would be affected.   
 
So far zones/sensors are working just fine, as well as the alarm system arm state.  Currently it takes about 2 seconds for notifications to come in from Alarm.Com and be parsed by Premise.  This will likely vary depending on network congestion between ADC's e-mail server and mine at any given point in time.  The delay is a small trade off for having the information now available for more intelligent scripting, as well as additional occupancy triggers. 
 
All in all it took about 12 hours of writing/debuging/tinkering/beer drinking but just another example of how freaking flexible Premise is.
 
Back
Top