SimpliSafe Alarm Integration (cloud to cloud)

I have had very few issues with my SS & SHM integration, and I think I may have realized why it is working…

I primarily do my automation via rule machine and triggers, but I noticed that in all of my rules I am still calling the routines that I had setup before RM. These routines by themselves were very unreliable so i built rules to duplicate them, but also called the routines at first in case I had forgotten a light or something… I tried removing this duplication over the weekend, and realized that the SHM was not responding as quickly anymore. I replaced the routine calls and again everything is working…

I know it doesn’t make much sense, but maybe the routines -> SHM connection is stronger since both are ST developed…

I honestly don’t think we can try and guess why ST is having issues with SMH, but we do know it’s a very inconsistent problem. Originally, I called my SHM status through Routines, which got triggered through a SmartApp. I noticed inconsistencies with this so I switched over to using Rule Machine for SMH status changes that were based on mode changes which worked well until the S#$@ hit the fan a couple of weeks ago with SHM problems and it hasn’t been the same since. I am asking @tobycth3 for the older code so I can rely on Mode changes only as those have been problem free for the most part while SHM has been buggy since implementation. Ideally, it would be great if the smartapp can give us the option, but I don’t want to ask @tobycth3 to spend time re-coding an application that works perfectly fine if the platform was running.

I realized I could simplify the IFTTT integration even more. Previously, I modified the SimpliSafe device handler to add Momentary capability, where push() just called poll(). That wasn’t quite good enough for IFTTT, since it only knows how to call on(), which meant I needed an intermediate virtual switch and rule. However, I just tried adding on() to the handler, again just calling poll(), and now it’s possible to trigger the status update without going through the extra virtual switch.
In summary,

   capability "Momentary"  // Same as poll

and then

def push() {poll()}
def on() {poll()}

So off() and on() don’t actually do opposite things, but that doesn’t seem to matter.

Actually, I can make this even simpler and more reliable.

  1. I put a ST entry sensor on the front door (near the SS keypad), looking idiotic right below the SS entry sensor.
  2. Created a RuleMachine rule to push() the SimpliSafe device 60 seconds after the ST entry sensor closes.

This takes IFTTT and scheduling out of the picture. Since the door always closes around the time that SS is armed or disarmed, the SHM state is sync’d nearly immediately.

If someone broke into your house, wouldn’t that disable the alarm if they opened/closed the door? Doesn’t that defeat the entire purpose of an alarm?

@tobycth3, Hey thanks a lot for your great work. I just ordered the SS system for my house and can’t wait to integrate it with my ST system. I looked around but can’t find your Smartapp code on github…Can you please post the github link to the APP and DeviceType in the original post so that I can use github integration for updates…:). Thanks.

Forgive me if I missed this. I have the SS Smart App and Device setup and working. I was hoping to be able to use the specific state of the SS contact sensors to trigger actions. That way I don’t have to have both the SS and ST contact sensors on all of my doors? Is this possible?

Sadly it’s not possible (and has been discussed a few times already).

Hi, Can you please share the github link for SmartApp code. Also I added the smartapp on IDE today and when I try to install the app on my android device. it says added successfully but then the app doesn’t appear in smart apps. Any idea why ?

There is no GitHub repo for this. @tobycth3 mentioned he was looking into this. Did you publish the app? I know there are some known issues now with published apps not appearing…

Issue with published apps

Yes I have published the app but my issue is that app is appearing on the marketplace on my android device but when I install it, although it says “Successfully Added”, it doesn’t appear anywhere in SmartApps…

Yet another ‘known issue’ from the latest release. I’m starting to see why so many developers are getting fed up and are starting to pull their apps.

1 Like

Thanks Toby, BTW, Does the simplisafe monitor app sync with status of simplisafe automatically without refreshing and if it does, is it possible to do it in somewhat realtime or with more polling. Since simply safe doesn’t have push notifications…I was trying to get the push from ST App when simplisafe status changes. So what I did is, created a virtual switch with name “Simplisafe Alarm” and then set the simplisafe monitor app to turn on/off that switch when simplisafe status changes…But I am seeing it happening automatically. I needed this for the cases when we Arm the system away after leaving, with key chain remote…There is no way to confirm if the system actually armed correctly without opening the simplisafe app. Getting a push notification this way will be very convenient…Any help here ?

Hi @tobycth3, do you happen to have this in a github repo?

The device type also has lock capability. All you need to do is create a Rule Machkne rule to watch for that device to lock or unlock. Here is a screenshot of a rule I am to monitor when I am not home and the alarm never armed (usually due to SHM issues). I use Pollster to poll the device type every minute.

See my post a few above that answers your question.

anyway to integrate with Alexa?

Yes. Create a virtual switch that triggers a SHM action that is tied to a SimpliSafe state. Have Alexa turn on or off the virtual switch.

Thanks will try it out…

Hi, I am not good with programming but I would like to change the code in a way that Simplisafe Off status sync with SHM Home status. Currently I am doing it by making ST mode home to set SHM off.
Ideally I want to have it done by SHM…So when SHM status is home, set simplisafe off and vice versa. I see there are line of codes for syncing the status, Can you please suggest what change do i need to make – I guess something like this should work ?

if(shmOff && !alarmOff) {
log.debug(“Smart Home Monitor: ‘$state.shmstate’, SimpliSafe: ‘$state.alarmstate’”)
setalarmoff()
}
else {
if(shmAway && !alarmAway) {
log.debug(“Smart Home Monitor: ‘$state.shmstate’, SimpliSafe: ‘$state.alarmstate’”)
setalarmaway()
}
else {
if(shmStay && !alarmOff) {
log.debug(“Smart Home Monitor: ‘$state.shmstate’, SimpliSafe: ‘$state.alarmstate’”)
setalarmoff()