Simple doorbell flow with voice message and Home Assistant video notification

Doorbell flow that sends a Home Assistant mobile notification with a live video feed to your phone or tablet and plays a voice message on a Google Cast device. Please note that live video notifications are currently only supported with Home Assistant iOS app.

If you are not satisfied with the standard node-red-contrib-cast voices then check out my wavenet doorbell flow instead.

Flow flow

As seen above, my doorbell simply sends a payload to the MQTT topic "doorbell". The MQTT node is easily replaced by an Event state node, deCONZ in node, Flic node, etc, depending on your setup.


Copy the flow below to your clipboard and then import into Node-RED using the Import From > Clipboard (Ctrl-I) menu option.

Remember to add your camera to Home Assistant and install the required nodes before importing this flow into Node-RED (check out Node types box on this page)

[{"id":"3ad12ac8.436556","type":"tab","label":"Doorbell simple","disabled":false,"info":""},{"id":"49a9f2e.e1b850c","type":"mqtt in","z":"3ad12ac8.436556","name":"","topic":"doorbell","qos":"2","datatype":"auto","broker":"32711c1c.fab404","x":120,"y":160,"wires":[["efc353b8.f919d","7aa8b88a.4b7bc8"]]},{"id":"7aa8b88a.4b7bc8","type":"api-call-service","z":"3ad12ac8.436556","name":"mobile notification with camera feed","server":"","version":1,"debugenabled":false,"service_domain":"notify","service":"mobile_app_<insert_name_of_your_mobile_device_here>","entityId":"","data":"{\"data\":{\"attachment\":{\"content-type\":\"jpeg\"},\"entity_id\":\"camera.hoveddor_http_stream\",\"push\":{\"category\":\"camera\"},\"sticky\":true},\"message\":\"Press and hold for live video feed\",\"title\":\"Someone rang the doorbell\"}","dataType":"json","mergecontext":"","output_location":"","output_location_type":"none","mustacheAltTags":false,"x":510,"y":160,"wires":[[]]},{"id":"491f9c6f.11e9f4","type":"inject","z":"3ad12ac8.436556","name":"Test","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":220,"wires":[["7aa8b88a.4b7bc8","efc353b8.f919d"]]},{"id":"efc353b8.f919d","type":"cast-to-client","z":"3ad12ac8.436556","name":"Cast doorbell message","url":"","contentType":"","message":"Someone rang the doorbell. Mabe it's pizza!","language":"en","ip":"192.168.3.67","port":"","volume":"","x":470,"y":220,"wires":[[]]},{"id":"90c47c6c.a0fd5","type":"comment","z":"3ad12ac8.436556","name":"Create long-lived access tokens in Home Assistant to allow Node-RED to send notifications via the Home Assistant app.","info":"","x":470,"y":100,"wires":[]},{"id":"d0bb4d5f.a7ff","type":"comment","z":"3ad12ac8.436556","name":"Link to latest version of this flow: https://flows.nodered.org/flow/03f502ca8e925faa96473dc623daef82","info":"","x":410,"y":40,"wires":[]},{"id":"32711c1c.fab404","type":"mqtt-broker","z":"","name":"","broker":"192.168.3.62","port":"1883","clientid":"","usetls":false,"compatmode":true,"keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","closeTopic":"","closeQos":"0","closePayload":"","willTopic":"","willQos":"0","willPayload":""}]

Flow Info

Created 5 years, 5 months ago
Rating: 4 1

Owner

Actions

Rate:

Node Types

Core
  • comment (x2)
  • inject (x1)
  • mqtt in (x1)
  • mqtt-broker (x1)
Other

Tags

  • Doorbell
  • notification
  • HomeAssistant
  • Videonotification
  • GoogleCast
  • voice
Copy this flow JSON to your clipboard and then import into Node-RED using the Import From > Clipboard (Ctrl-I) menu option