# Ring Doorbell \>\> Amazon Alexa \>\> node-RED

**URL:** <https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804>\
**Category:** General\
**Created:** [29 June 2021 19:04 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804 "2021-06-29T19:04:51Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [29 June 2021 19:04 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804/1 "2021-06-29T19:04:51Z")

</div>

'Ring Doorbells' have been taken over by 'Amazon', and have changed their api, so that the new range of doorbells will no longer work with IFTTT, which means that I now need to find a new solution to get 'Doorbell press' & 'Motion Announcement' into node-RED.

Having spent an hour earlier being passed around the Ring support team, they have told me that the only interaction possible is by using Amazon skills, which I know nothing about...  
They advised me to add the 'Ring skill' to the Alexa app, and then use that as a trigger to somehow link into node-RED.  
So the first part I sort of understood, and I've managed to link the skill to my doorbell -

 ![amazon](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/e/6/e6c7ad55fba361be6edb3700803040c075ebce9e.png)

...but the adviser was unaware of node-RED, and I guess my free support time was then up!

Anyone any ideas of how to take this forward? I don't need any audio/video, just a trigger in node-RED when there is a 'Doorbell press' or 'Motion Announcement'.

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [29 June 2021 19:13 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804/2 "2021-06-29T19:13:20Z")

</div>

You should be able to create a virtual alexa device with one of the alexa nodes,

> **[node-red-contrib-virtual-smart-home](https://flows.nodered.org/node/node-red-contrib-virtual-smart-home)**
>
> A Node-RED node that represents a 'virtual device' which can be controlled via Alexa. Requires the virtual smart home skill to be enabled for your Amazon account.

or a local node

> **[node-red-contrib-amazon-echo](https://flows.nodered.org/node/node-red-contrib-amazon-echo)**
>
> Alexa controlled Node-Red nodes supporting latest Amazon Echo devices

Then create a routine in Alexa app that will turn on/off etc the virtual device with the ring doorbell as the trigger.

---

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [29 June 2021 20:53 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804/3 "2021-06-29T20:53:47Z")

</div>

> [@E1cid](#):
>
> [node-red-contrib-virtual-smart-home (node) - Node-RED](https://flows.nodered.org/node/node-red-contrib-virtual-smart-home)

Just reading through the readme, and previous posts by the node author - @lius I'm not sure that I'm obtaining the Amazon Oauth client ID & Secret correctly.

I've registered in the Amazon developers portal, but following [this article](https://developer.amazon.com/docs/adm/obtain-credentials.html), it appears that I have to create and publish an app to Amazon to obtain the ID & secret for the node's config... is that correct??  
(I thought it was a 'virtual' app).

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [29 June 2021 21:30 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804/4 "2021-06-29T21:30:42Z")

</div>

Are you on the correct node as all i did was

> [@](#):
>
> - In the Alexa app:
> 
> 1. Search the skill store for the `virtual smart home` skill
> 2. Enable the 'virtual smart home' skill
> 3. Complete the account linking process by logging in with your Amazon account credentials.
> 
> - In Node-RED:
> 1. Install the `node-red-contrib-virtual-smart-home` module
> 2. Place a `virtual device` node onto the canvas and connect it to a debug node
> 3. Double click on the virtual device node to enter a name and select a device type. Once set up you can use this name to control the device via Alexa.
> 4. Configure a new `vsh-connection` by clicking the pen icon. (Only needed _once_ for each Amazon account)
> 5. Follow the instructions to complete the account linking process. Make sure you use the same Amazon account credentials as above!
> 6. Deploy your Node-RED flow. This will trigger your virtual device to be discovered by Alexa. You should even get a push notification via the Alexa app (if notifications are enabled).
> 7. You should now be able to control your virtual device with your voice, e.g. by saying "Alexa, turn xxx on". Inspect the output of the connected debug node and consult the docs in order to do something useful.
> 8. Once you remove virtual devices from the canvas (and redeploy your flows), those devices will also be removed from Alexa.

---

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [29 June 2021 21:58 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804/5 "2021-06-29T21:58:10Z")

</div>

> [@E1cid](#):
>
> [node-red-contrib-virtual-smart-home (node) - Node-RED](https://flows.nodered.org/node/node-red-contrib-virtual-smart-home)

Oh dear... no, I installed [node-red-contrib-alexa-virtual smarthome](https://flows.nodered.org/node/node-red-contrib-alexa-virtual-smarthome) by mistake 🤭

I've now got the correct node!  
The node however does not appear to offer a doorbell option though.

Thanks

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [29 June 2021 22:23 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804/6 "2021-06-29T22:23:06Z")

</div>

You just need a trigger so a switch would do, have the alexa routine turn it on then a second later off. In node red use the on response as a doorbell has been pushed trigger. A scene may also work not tried though.

---

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [30 June 2021 09:08 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804/7 "2021-06-30T09:08:53Z")

</div>

@E1cid finally got it working, and learnt a lot about Alexa in the process.  
It appears that we can repeatedly trigger the same switch state, and get an alert each time, so I've set `switch = ON` to signify a doorbell push, and `switch = OFF` to signify a motion event.

It all works very quickly, without any noticeable latency, so very pleased with the outcome.

Thanks for your help 👍

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [14 July 2021 09:08 UTC](https://discourse.nodered.org/t/ring-doorbell-amazon-alexa-node-red/47804/8 "2021-07-14T09:08:57Z")

</div>

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.
