My boring Blog

Home page di Mauro Frigerio

Guarda camera da casa secondaria in Home Assistant

20-10-2021 Tempo di lettura 2 minuti Article

Ho scritto non molto tempo fa un post sulla gestione della mia casa secondaria con Home Assistant. Grazie al componente la magia è possibile, ma un aggiornamento di HA ha complicato un po’ le cose. Qualche giorno fa c’è stato il problema che il componente non riusciva più a collegarsi con le istanze remote, poi da sempre (per me) non è possibile visualizzare le camere remote.

Problema collegamento istanze remote

Il primo caso si risolve aggiornando il componente all’ultima versione (> 3.4 o master) e installarlo anche nelle istanze remote. Inoltre nelle istanze remote si deve aggiungere alla configurazione 2 semplici righe:

remote_homeassistant:
  instances:

I dettagli li potete trovare nella issue su GitHub.

Visualizzare camera di una istanza remota

Secondo un bug riportato su GitHub da molto tempo le camere remote non sono visibili nell’istanza principale. Non era un problema urgente per me, ma prima o poi volevo sistemare anche con un bricolage la situazione. Così ho aggirato il problema.

Requisito / informazione

La webcam è accessibile tramite la rete dall’istanza principale di Home Assistant. Nel mio caso uso una Tapo C200 che dispone di uno stream rtsp.

Comando shell

Prima di tutto si deve scaricare l’immagine dalla istanza remota grazie all’api si HA. Questa permette di visualizzare un’immagine all’apertura della pagina in Lovelance.

Nella configurazione dell’istanza principale aggiungere:

shell_command:
  take_camera_picture: 'curl -X GET -H "Authorization: Bearer ABCDEF" -H "Content-Type: application/json" https://example.com/api/camera_proxy/camera.your_camera_name -o ./www/image.jpg'

Sostituire l’indirizzo con quello della HA remota e dell’entità camera. Sostituire ABCDEF con un token permanente.

Chiamando questo comando è verrà salvata l’immagine image.jpg nella cartella /config/www/ (creare la cartella se non è presente, maggiori informazioni).

Automazione

Un automazione può chiamare il comando shell regolarmente per aggiornare l’immagine. Esempio per eseguire il comando ogni 15 minuti.

alias: Save camera picture
description: ''
trigger:
  - platform: time_pattern
    minutes: /15
condition: []
action:
  - service: shell_command.take_camera_picture
mode: single

Camera generica

Nell’istanza principale creare una camera generica che utilizza l’immagine dell’automazione come immagine ferma e lo stream rtsp quando si vuole guardare lo streaming live.

camera:
  - platform: generic
    name: Camera RTSP
    stream_source: rtsp://user:password@1.2.3.4:554/stream2
    still_image_url: https://home.momo.casa/local/image.jpg

Sostituire il nome utente e password dello streaming rtsp, modificare anche l’indirizzo IP.

Lo so non è una soluzione super elegante, ma funziona!


Foto copertina di Pexels da Pixabay