Deeper integration with Ring Alarm using Alexa as bridge?

I currently have my Schlage Smart Locks integrated into my Ring Alarm, while most of my other devices are through Smart Things.

As you know, Ring’s customization leaves a lot to be desired (only 4-digit PINs, can’t auto-lock based on door sensor open after a length of time), but my door sensors are via Ring (and won’t integrate with ST) and I am currently using Alexa routines to auto-lock the door when the sensors record closed.

What I’d like to do:

  1. Integrate the Schlage Lock into ST instead of Ring so I can have more than 4-digit PINS, be able to unlock with a widget, and auto-lock/alert if left unlocked for longer than a certain amount of time. I understand that by doing this I am forfeiting being able to disarm the Ring Alarm via the keypad.

  2. Be able to trigger a routine based on multiple triggers:

  • Ring door sensors have been left open for a certain amount of time. Alexa can’t recognize state over time, only if the state changes.

  • If the door has been left open (and not closed again) within 30 seconds, have Alexa say “Door has been left open.” If the door is closed within 30 seconds, then Alexa says nothing. Repeat every 10 seconds after.

  • As soon as the door is closed, lock the door.

How I’m envisioning this would work:

  1. Have an Alexa routine (say, called “Sense Open”)that’s triggered by the Ring door sensor opening, that maybe fires a Virtual Switch (“Sense Left Open”).

  2. An ST routine (“Sense Countdown”) is triggered by “Sense Left Open” that starts a countdown of 30 seconds.

  3. After 30 seconds, “Sense Countdown” triggers an Alexa routine (“Door Warning”) that has Alexa say “Door is still open.” This repeats every 30 seconds. “Sense Countdown” also sends me a push notification.

  4. Another Alexa Routine triggered by the Ring sensor being closed (“Sense Closed”) triggers another Virtual Switch (“Sense Now Closed”).

  5. “Sense Now Closed” cancels the “Sense Countdown” ST routine, and locks the door.

Does this make sense? Is there a way to do this using only ST, Alexa, and maybe Sharptools?

You would need something like sharptools or webcore to do the repeat, but otherwise it should be pretty straightforward. The trick is to use a virtual sensor which is also a switch. That way you can turn the switch on and off with a SmartThings code, including the official smart lights feature or webcore, and it will be perceived by echo as a sensor coming on, which allows you to start an echo routine. See the community FAQ:

But the repeating loop requires advanced logic. So see the FAQ on that:

As for sharptools, the developer, @joshua_lyon is active in this community and can say more. :sunglasses:

3 Likes

BTW, it’s weird, but you could also do the disarm By having two echo devices physically close to each other, having the lock keypad trigger one of those virtual switch/sensors Described in the FAQ above to trigger an Echo routine And have that echo routine have one of the two echo devices speak the command that you want the other echo device to respond to.

So the first echo would tell the second echo to disarm.

There are some potential security issues, obviously, if someone just standing outside your house could yell the command, but that’s always true.

Anyway, I wanted to mention that idea separately because it is pretty hacky and you would need a second echo device just for this purpose, but it can be done. :wink:

Thanks! Wanted to make sure it was something feasible. I know people had been wanting deeper integration with Ring Alarm and ST. I’m hoping that eventually we’ll be able to Arm/Disarm via Routines, or for Alexa to allow more access to Ring devices in routines in general.

As to your second post: Ha, that’s really funny. A little too hacky for me, but might work for others.

3 Likes

Just as an update here, I decided to keep the locks connected to Ring so as to keep it simple with my wife, who doesn’t really access the Smartthings app directly. So I lose the ability to lock/unlock via Sharptools widgets, and the 6-digit pin.

I also didn’t bother with creating a Switch/Sensor hybrid, as I didn’t want to spend too much time coding. So I just created a virtual sensor and virtual switch for each of my doors.

I then created three Alexa routines and one Sharptools rule:

  1. Alexa Routine A - When Ring Sensor senses OPEN, flip the virtual switch to ON.
  2. Sharptools Rule A - When Virtual Switch has been ON for 30 seconds, switch Virtual Sensor to OPEN.
  3. Alexa Routine B - When Virtual Sensor is OPEN, raise volume and announce “Door has been left open.” (ST Notify Me When app also gives me a push notification)
  4. Alexa Routine C - When Ring Sensor senses CLOSED, lock the door, and turn Virtual Switch OFF.
  5. Sharptools Rule A (same as before) - CLOSE Virtual Sensor. Then, IF Virtual Switch is STILL open after another 40 seconds (i.e. the physical door hasn’t been closed, and Alexa Routine C hasn’t played), OPEN Virtual Sensor AGAIN, which will trigger Alexa Routine B again. At this point, turn OFF Virtual Switch.

If there was a simple way in Sharptools to keep looping the command as long as the door is still open, that’d be great, but for now I’m fine with the announcement playing twice.

2 Likes

Tagging @jamesguitar3 with the feature suggestion. :slight_smile:

In the meantime, you could use an approach similar to what @marktr suggested in this post for looping.

I’ve sketched up a version of it in the following graphic. The main difference is that the Virtual Contact is turned back off each time it is opened which enables you to use the Virtual Contact stayed off 30s as a trigger in a second SharpTools Rule to act as a recurring timer with a rule flow that conditionally checks if the Virtual Switch stayed on during that same 30s period.

If the switch also stayed on during that 30s period (as a condition in the rule flow), then you start the cycle over again by opening+closing the virtual contact… otherwise if it didn’t stay on then the cycle dies. :slight_smile:

Notes:

  • Blue boxes are triggers.
  • Orange boxes are actions
  • Grey diamond is a conditional in the rule flow
2 Likes

I’ll work on that this weekend!

Edit: Confirmed that this worked a treat!

2 Likes

Awesome! Glad to hear that helped! :smiley:

1 Like

I’ve been trying to use action tiles to lock / unlock my yale locks that I have connected to Ring. I’ve figured out how to lock them but I can’t figure out how to unlock them. Using what you have above, you are able to lock and unlock your locks connected to Ring through SmartThings?

Ring and Alexa will not unlock, only lock, unfortunately. My system is set up only to auto-lock the lock when the door is closed, and to announce if a door has been left open.

Just wanted to share another method. Just got a Yale lock, and able to automate it using Simple Commands (which connects to Ring and Smarthings). I only made a simple routine to lock the door after 10 minutes of being unlocked - but you can definitely tie it to the Ring Door Sensor as well.

Simple Commands lets you send unlock commands as well.

Yup, I’ve started using SimpleCommands as well. I’m not crazy about giving it direct credentials for Ring, however.

That said, it’s really helped simplify integrations with my different systems. I’m using its webhook system to integrate it into Tasker, which opens up even more possibilities.

1 Like