Alexa Echo Video Doorbell using a generic RTSP camera (no audio yet)

Hi - I’ve often seen posts where a RTSP camera is ‘cast’ to a Google Home to show who is at the door but I haven’t seen this done with Alexa Echo. Also I found if I was using my Google Hub to watch YouTube when the doorbell rang after the doorbell cast had finished I had lost the place in what I was watching which was very annoying…

So I have created an Add On / Alexa Skill that will allow you to use a generic RTSP camera as video doorbell. It builds on the amazing work that @allenporter did in the last Home Assistant release to add RTSPtoWebRTC and without his work this wouldn’t be possible.

You can connect any input_boolean (in fact it should work with anything that reports off and on as its state) to represent your doorbell and when it goes from off to on Alexa will announce someone is at the door and for “Live View” enabled devices it will show the camera feed. As a bonus you can also have a similar trigger for motion however Amazon’s eco system doesn’t show video when this is triggered (I don’t know why).

NOTE if you don’t have anything that can show the video and just want Alexa to announce someone is at the door you can do this with the standard Alexa integration see details in my post here: HOWTO: Alexa Doorbell Announcements

This is in early stages of development - I’ve had success with this but I don’t get the camera feed 100% of the time. I’m investigating that and it would be good to understand the experience other people get.

The addon and instructions for setting it up can be found here: ha-addons/alexa_rtsp_doorbell at main · foxy82/ha-addons · GitHub

Please let me know how you get on.

Pretty cool! I will check it out.

Would it ever be possible to integrate what you did with Alexa and WebRTC in home assistant core? I’ve been wondering the same about Google Assistant since it seems to have a way to expose webrtc cameras to Google. The Alex or Google home core integration could then work with other webrtc cameras like Nest cameras and doorbells for example.

I’d prefer that to be honest. However to put together a proof of concept it was quicker to work in an addon where I had full control and didn’t need to work around the existing implementation.

I did try in Sept 2021 when the HLS stuff came out and the problem then was you end up with 2 Home Assistant entities connecting to a single Amazon Alexa entity and the current structure of the Alexa integration didn’t work very well with that but I think it could be worked with.

The other issue is you’d need a way to pass an offer and get a WebRTC answer for any camera (or an error to let the user know) before your recent work I wasn’t clever enough to figure out how to get a feed. With your work maybe that is much easier now (although I still can’t use it for my RTMP Frigate cameras which would be the ideal).

Yes, not arguing against the approach here – proof of concept is great. My angle here is always thinking about how to make these interoperate better in the long term so that’s why I ask. I don’t have many original ideas myself, just like to help integrate what’s already out there!

RTMP is not in the list of supported url prefixes here, so it may just work but I don’t run frigate so I can’t test it.
core/homeassistant/components/camera at 91404041e08beab99b8cd1c48b372b617f8e6bcc · home-assistant/core · GitHubinit.py#L95