Getting events from Ring sensors with Amazon Echo Skill

I wanted to set an alert when my shed door was left open, but found that Ring didn't have the capability to do so. So, I sought a method to import the shed door status to Hubitat. Turns out you can do it without any User Apps needed. I haven't seen this discussed elsewhere, so thought I'd describe it here.

Needed:

  1. Amazon Echo device (or devices).
  2. Hubitat "Amazon Echo Skill", installed in Hubitat and and "Hubitat Skill" installed in Alexa.
  3. Ring alarm system that has been linked to Alexa.

Steps:

  1. Create Hub Variable with an appropriate name (I used Shed Door Open), make it boolean (for door sensors) and create a Switch connector.
  2. On Hubitat, open Amazon Echo Skill and select the connector (in my case Shed Door Open).
  3. On Alexa, make sure the connector shows up (it didn't the first time I tried this--don't know why--had go back to the Amazon Echo Skill in Hubitat and add a few other devices to make Alexa notice the changes).
  4. On Alexa, set up two routines:
    a. *Shed Door Open" When Shed Door (name of Ring sensor) Opens: Alexa will: Custom Action: enter as custom action: "Turn Shed Door Open On", from: [select the echo device you want to "hear" this command. This acts as if you had uttered the command "Alexa, Turn Shed Door Open On' to the selected echo device.
    b. "Shed Door Closed" : similar programming, just for the closed action to set the Shed Door Open variable Off.
  5. Use the Shed Door Open variable in your Hubitat rules / actions / whatever.

Works great. Only problem is that my Echo device utters an "OK" when the action runs, I guess as a response to the "Turn Shed Door Open On (or off)" command. If anyone knows how to kill this, I'd be glad to hear. In the meantime, I'm having it use an echo device that is in a location that will only bother me, so that I don't have to keep explaining why my echo is talking without apparently being spoken to.

In Alexa app, Settings, Voice Responses, turn on Brief Mode.

She still makes a noise.

Maybe I'm missing the whole scenario, but why not just make Shed Door Open a virtual switch. In the Alexa routine turn the switch on or off as appropriate.

As @HAL9000 mentioned:

I may be reaching here as I do not use a Ring system but for every system I use that can connect to Alexa, I can connect to HE through the Amazon Echo Skill by using a “virtual contact with auto/off switch” driver for my device. Much, much simpler than having to use variables etc. with attributes.

The limitation in Alexa is that it will import virtual contacts (and their state), but Alexa can only manipulate switches. So you need a virtual device driver that acts as both simultaneously (like the above mentioned virtual device driver). Again, I never tried it with Ring sensors but have used this on every other type of WiFi sensor or WiFi wall switch which did not integrate directly with Hubitat but was visible to Alexa. I of course understand that you already have your system working, but perhaps this can help simplify things for any future projects. Hope this helps?

1 Like

Exactly. In a nutshell ..

  • To communicate something Alexa knows/hears/wants to trigger to Hubitat, all you need is a virtual switch defined on the Hubitat side. Alexa can see that switch and turn it on and off to communicate with Hubitat, which can respond via an automation.

  • To communicate something Hubitat knows/wants to trigger to Alexa, you need a virtual switch with contact (alternatively, virtual switch with motion). Hubitat turns that switch on or off and Alexa sees it as a door opening or closing, and can respond via Alexa routine.

1 Like

But she doesn’t say “OK” any longer, right? That’s what you said was the problem.

I will try using the virtual contact instead of a variable. Will report back in a couple of days my experience.

In your case, if I understand correctly, you want Ring on the Alexa side to trigger something on the Hubitat side. So you'd do this. In other words, you can use a natively supported virtual switch.

  • To communicate something Alexa knows/hears/wants to trigger to Hubitat, all you need is a virtual switch defined on the Hubitat side. Alexa can see that switch and turn it on and off to communicate with Hubitat, which can respond via an automation.

Using virtual switch instead of variable works much better. I then can "turn on" and "turn off" the switch using alexa without having to use a text field. This gets rid of the "OK" reply.

1 Like