Protect integratie met Google Home en 'Home Assistant'

PE1PQX

Brons
UniFier
27 okt 2018
1.544
915
163
50
Land van Bartje
www.pe1pqx.eu
De titel omschrijft het al, is er een mogelijkheid om Protect met Google Home en Home Assistant te laten kletsen?

Bijvoorbeeld om bij het aanbellen de beelden van de G4 Pro doorbell op de Google home basis geval te laten zien als er aangebeld word.
Ik ben zeker geen pro op dit vlak, eventuele 'hoe doen ie dat nau' (sites etc) zijn welkom. Tenminste.. als het allemaal mogelijk is.
 
Ik heb dit voor mijn Reolink doorbell, maar moet makkelijk aan te passen zijn voor een Protect doorbell:
alias: Snapshot bij aanbellen
description: ""
triggers:
- type: turned_on
device_id: 0a41d083dfb34b9d243e8fb5ce6f05bb
entity_id: 0d17cbb08efd09e62632555ac78c5562
domain: binary_sensor
trigger: device
conditions: []
actions:
- action: camera.snapshot
metadata: {}
data:
filename: /config/www/snapshot.jpg
target:
entity_id: camera.voordeur_vloeiend
- action: media_player.play_media
target:
entity_id: media_player.google_nest_hub
data:
media_content_id: /local/snapshot.jpg
media_content_type: image/jpeg
mode: single
 
Ik heb dit voor mijn Reolink doorbell, maar moet makkelijk aan te passen zijn voor een Protect doorbell:
alias: Snapshot bij aanbellen
description: ""
triggers:
- type: turned_on
device_id: 0a41d083dfb34b9d243e8fb5ce6f05bb
entity_id: 0d17cbb08efd09e62632555ac78c5562
domain: binary_sensor
trigger: device
conditions: []
actions:
- action: camera.snapshot
metadata: {}
data:
filename: /config/www/snapshot.jpg
target:
entity_id: camera.voordeur_vloeiend
- action: media_player.play_media
target:
entity_id: media_player.google_nest_hub
data:
media_content_id: /local/snapshot.jpg
media_content_type: image/jpeg
mode: single

Lijkt me allemaal mogelijk. Hier stuur een notification naar mijn android tv. En wordt er een foto als PIP op tv getoond. En roept google home rond dat er iemand voor de deur staat .. Nu nog face recognition.
 
probeer het hier eens mee:

automation:
- alias: Toon snapshot op Google Home
trigger:
platform: event
event_type: unifi_protect_doorbell_pressed
action:
- service: camera.snapshot
data:
entity_id: camera.your_doorbell_camera
filename: '/config/www/snapshot.jpg'
- service: notify.google_home
data:
message: "Er staat iemand aan de deur."
data:
image: "http://<je-home-assistant-url>/local/snapshot.jpg"
 
Ik zou me daar verder in moeten verdiepen, maar denk dat dit ook voor mij niet lukt. De NAS waar deze container op draait is niet direct vanaf het web bereikbaar.
Als je het simpel wilt houden kan het ook gewoon via de GUI:
Dit is dan de trigger die je gebruikt om een actie te kunnen doen als de bel wordt gedrukt:
1734094722213.png

De acties kun je dan natuurlijk zelf bij elkaar klikken en hangen af van wat je wilt doen maar dat is in jouw geval met de Google acties meer iets voor een HA forum.

(2e screenshot: In mijn geval is dit een actie die de ontvanger van een draadloze bel (die we voor een andere deur in gebruik hebben) even uit en aan zet, waardoor deze dus ook rinkelt. De MQTT acties die je daar tussen ziet zijn om op mijn klokje te laten zien dat er gebeld wordt.)

1734094754474.png
 
Probleem is vaak dat er een flinke delay is. Soms tot wel 20 seconden en dan is de pakjesbezorger al weer weg. Daarom werk ik met een snapshot. Voordeel is dat deze ook bewaard wordt. Ik heb de gewone 4G deurbel.

Ik heb dat voor HA in Node-Red gemaakt. In de flow zie je dat er direct na aanbellen een signaal naar de Google hub wordt gestuurd. Dat is een wav van een belletje. Dat wordt dan afgespeeld op de hub. Tegelijk met tekst en plaatje. Dit stuur ik dan naar de Google Hub:
{
"volume": 40,
"contentTitle": "Er staat iemand voor de deur",
"url": "http://192.168.33.4:8123/local/music/Chime_aanbellen.wav",
"contentType": "audio/wav",
"imageUrl": "http://192.168.33.4:8123/local/image/bel2.jpg",
"enqueue": "play"
}
Daarnaast wordt de filenaam voor de snapshot gecreëerd op basis van de datum/tijd. Ik wacht 2 seconden omdat ervaring is dat bij direct aanbellen gezicht naar de bel is. Na die 2 seconden kijken de meeste recht naar de deur. De filenaam wordt door Node-Red doorgegeven als payload en de waarde daarvan kan je dan verder gebruiken als variabele.
De snapshot wordt genomen door de camera. Ik geef het systeem even de tijd om de file weg te schrijven en stuur dan alles door naar de Google Hub:
{
"url" : "http://192.168.33.4:8123/local/Aanbellers/" & payload,
"media_content_type": "image/jpeg",
"enqueue": "play"
}
Ondertussen is er ook een timer gestart die na 30 seconden de hub weer terug naar zijn oude waarden zet. In die 30 seconden hebben wij tijd genoeg gehad om te kijken wie er voor de deur staat.
 

Bijlagen

  • 1734094824318.jpeg
    1734094824318.jpeg
    59,5 KB · Weergaven: 0