Ring doorbell >>> Google home

#1

Just purchased a Ring doorbell, and thought it would be pretty good if the doorbell is activated, NR could play a mp3/wav file in Google Home, to alert family that the doorbell had been pressed.

This would remove the reliance upon Ring using a mobile device app to provide the alert.

Anyone achieved this?

Paul

#2

I have an agricultural method for detecting my doorbell - I have a arduino type sound detector - connected to a PiZeroW, held around my doorbell receiver with a rubber band that emails me when the doorbell is pressed

But maybe not quite what your looking for?

1 Like
#3

Erm, no.
Using node-red-contrib-ringdoorbell I can get the alert, but struggling with playing a tone in google home.

#4

I don't like expensive IoT so I went for an off-the-shelf 1ByOne doorbell that runs over 433MHz. No video but works great with my Node-RED setup. Remote notifications using Telegram.

I'll probably get round to making it also sound on the Google Home at some point in the future. But the standard ringer is fine for most things.

#5

Low-fi, I like it :smile:

#6

TBH - it can suffer from interference when someone lights the gas on the cooker!

#7

:scream:

I keep meaning to create a vibration sensor for the washing machine so as to increase the weekend wash efficiency factor :wink:

I had also thought to create a poor-man's Internet alarm system by wiring up a sound sensor next to the house alarm internal sounder.

2 of a great many projects that, by the time I get to them, I probably wont need them! I did try to teach the kids some electronics so I could use them as maker slaves. Sadly, they didn't fall for it. :japanese_ogre:

1 Like
#8

Getting back on-topic ...

Where did you get to in terms of sending something to Google Home? Do you have a shareable flow?

#9

Could this be a possibility???
https://www.npmjs.com/package/node-red-contrib-google-home-notify

#10

Nowhere! Hence this thread.
I thought maybe someone else had already done this.

I had a quick look at that last night, but couldn't get the node to load ok.
I'll have another look tonight, although I'm not sure it will play a MP3, it just converts text to a mp3 which plays on Google home.

#11

OK, this may help. I've not tried it obviously.

or perhaps this:

I think the first one is more likely.

#12

Well, you could use

"Ring, ring, the happiest sound of them all" from a famous ABBA song

:star_struck:

#13

I haven't done it with an MP3 over google home, but I have done it with a text to speech message to google home and chromecast. node-red-contrib-ringdoorbell to get the alert, a change node to set the payload to the desired string, and node-red-contrib-google-home-notify to pipe the string to chromecast compatible devices (tested on chromecast audio, google home original version, nvidia shield, and chromecast v2.

#14

The git repo readme claims that passing in a url to a mp3 file will play the mp3, but unfortunately it's not working - there is an outstanding issue logged, but not confident it's going to get fixed any time soon...
It doesn't sound quite as polished to hear it announced as text - "Hey, there's someone at the door" :zipper_mouth_face:

#15

Sorted!

The node-red-contrib-google-home-notify node works by casting to the google device, ....but so does node-red-contrib-chromecast EDIT - But see this post
So it may be more descriptive if the chromecast node was called node-red-contrib-cast.

I've attached a flow below, but it's simply a doorbell node connected to a chromecast node, which casts the url of a hosted mp3 file to the Google Home device.

Nice to hear Westminster Quarters!

home

[
    {
        "id": "af304a98.72e318",
        "type": "ring doorbell",
        "z": "6eb37a1d.ee8f34",
        "testmode": "N",
        "verbose": "N",
        "topic": "",
        "name": "",
        "x": 690,
        "y": 90,
        "wires": [
            [
                "6981db01.b1a774"
            ]
        ]
    },
    {
        "id": "6981db01.b1a774",
        "type": "chromecast-play",
        "z": "6eb37a1d.ee8f34",
        "name": "Google Home - Lounge",
        "url": "http://yoursite/doorbell.mp3",
        "contentType": "audio/mp3",
        "ip": "192.168.1.6",
        "x": 900,
        "y": 90,
        "wires": [
            []
        ]
    }
]
2 Likes
#16

Cool, but my wife is going to kill me! Hope you don't mind if I blame you :smile:

1 Like
#17

Nice! Trying this tomorrow.

#18

I'm going to regret asking this but ...

... how did you get the rubber band to email you. :laughing:

And for our non-native English speaks. sorry that's meant as humor. A play on English words.

2 Likes
#19

If you want to have seperate alert tones for the 'doorbell' and 'motion alerts', you will probably need something like this;

[
    {
        "id": "82ae385.23acfc8",
        "type": "function",
        "z": "6eb37a1d.ee8f34",
        "name": "Ring or motion?",
        "func": "if (msg.topic == \"ring event\") {\n  var kind = (msg.payload.kind);  \n if (kind == \"ding\") {\n    return [ msg, null ];\n }\n else if (kind == \"motion\") {\n    return [ null, msg ];\n }\n}\nreturn msg;",
        "outputs": 2,
        "noerr": 0,
        "x": 710,
        "y": 630,
        "wires": [
            [
                "a1483470.abcbb8"
            ],
            [
                "86781f7b.6a76b"
            ]
        ]
    },
    {
        "id": "e210d4e5.3c2648",
        "type": "ring doorbell",
        "z": "6eb37a1d.ee8f34",
        "testmode": "N",
        "verbose": "N",
        "topic": "",
        "name": "",
        "x": 530,
        "y": 630,
        "wires": [
            [
                "82ae385.23acfc8"
            ]
        ]
    },
    {
        "id": "a1483470.abcbb8",
        "type": "chromecast-play",
        "z": "6eb37a1d.ee8f34",
        "name": "Google Home - Ring",
        "url": "http://yoursite/ring.mp3",
        "contentType": "audio/mp3",
        "ip": "192.168.1.6",
        "x": 920,
        "y": 610,
        "wires": [
            []
        ]
    },
    {
        "id": "86781f7b.6a76b",
        "type": "chromecast-play",
        "z": "6eb37a1d.ee8f34",
        "name": "Google Home - Motion",
        "url": "http://yoursite/motion.mp3",
        "contentType": "audio/mp3",
        "ip": "192.168.1.6",
        "x": 920,
        "y": 650,
        "wires": [
            []
        ]
    }
]
#20

There is almost always a low-tech solution to a high-tech problem.
Take ultrasonic proximity sensors for example...

2 Likes