I've been wanting to integrate my Ring Alarm with Hubitat for quite a while. I tried a whole bunch of things, but wasn't able to get anything to work well. So, I wrote an integration that uses the GitHub - tsightler/ring-mqtt: Ring devices to MQTT Bridge implementation. Integration is done via Home Assistant style MQTT discovery. It has worked quite well for me. In testing, events from ring alarm happen consistently and quickly (always < 1s).
You can find the drivers and some basic documentation at:
I tested this with the devices I have: Contact sensors, motion sensors, smoke/co listener. I have a tilt sensor, but the ring-alarm-mqtt library doesn't currently support third-party sensors.
Is anyone having luck with this integration? I added it to my HE and set it up, it worked great for about 12 hours, now I have WebSocket Connected, Websocket Failure, Websocket Disconnect over and over in my logs for the baseStation device. It's clearly no longer connected since I am not seeing any sensor events, but not sure where to start troubleshooting.
I was having an issue when running the Ring Alarm MQTT Client driver, just FYI. Looks like with my setup of running ring-mqtt in a container, the getUniqueIdFromTopic method wasn't returning the right unique id for the child device. I fixed it for me by changing This Line to:
String selection = topicSplit[3]
Then everything started working right. Just wanted to let you all know in case you see a bunch of log messages saying it can't find the child device.
Another issue I'm finding is that the Alarm name does actually change and isn't the static string Ring Alarm. To fix this issue, I added a new input called AlarmName and then replaced here and here with "${settings.alarmName}". You could very well look for a topic with the name /state/info to dynamically set this. I might be able to dig into this further in the future.