Come integrare le Telecamere IP PTZ Ezviz in Home Assistant

Come integrare le Telecamere IP PTZ Ezviz in Home Assistant

di Antonio Mario Longo

11 Marzo 2021

Home Assistant

Antonio Mario Longo

Dalla Versione 0.115, Home Assistant ha interrotto l'integrazione nativa di telecamere Ezviz all'interno del proprio ambiente di gestione. Ovviamente l'integrazione nativa era molto comoda, per poter gestire le telecamere dal nostro Hub Domotico, tuttavia devo dire che, data la latenza nello spostamento dell'immagine nel front-end, il servizio lasciava molto a desiderare.

Con questa guida potrete riassociare le telecamere Ezviz con le stesse funzioni, grazie ad un custom component denominato "ezviz-cloud".

Componenti Necessari

  • Home Assistant installato e funzionante
  • Telecamere IP Ezviz (link)
  • Hacs Installato e funzionante
  • Addon Samba o FTP installato e funzionante

Installazione Addon Con Hacs

  • Aprite Home Assistant 
  • Selezionate Hacs dalla barra laterale sinistra
  • Cliccate nel nuovo tab sulla destra alla voce Integrazioni 
    Integrazioni Hacs
  • Si aprirà una nuova schermata dalla quale dovrete cliccare sui 3 puntini in alto a destra e scegliete dal menù Repository Personalizzati
  • Inserite il seguente indirizzo Web nel tab apposito denominato URL https://github.com/RenierM26/ha-ezviz/tree/main/custom_components/ezviz_cloud
  • Nel menù Categoria dall'elenco a tendina selezionate Integrazioni
  • Cliccate infine sul tasto Aggiungi 
    Repository personalizzati
  • Chiudete la finestra di aggiunta delle repository e digitate nella barra di ricerca in alto la stringa Ezviz.
  • Nella parte sottostante potrete notare la scheda della repository relativa al custom component  che dovrete installare pigiando semplicemente sul tasto Installa 
    installa custom component
  • Si aprirà un nuovo popup indicante la versione (ad ora la 0.0.4.4), cliccate su INSTALLA
  • Terminata l'installazione procedete al riavvio di Home Assistant per integrare il custom component al sistema

Modifica del File Configuration.yaml

Terminato il riavvio di Home Assistant passiamo all'integrazione della telecamera all'interno del nostro sistema andando a modificare il file configuration.yaml, semplicemente aggiungendo alla fine del file le seguenti stringhe: 

ffmpeg:
stream:
camera:
  - platform: ezviz_cloud
    username: "Ezviz account username"
    password: "Ezviz account password"
    cameras:
      D666321311:
        username: admin
        password: Password_from_camera_sticker

Iniziamo ad analizzare le parti da modificare sulla stringa appena copiata:

  • Alla quinta e sesta riga partendo dall'alto vi ritroverete i campi username e password che andranno modificati con le credenziali di accesso della vostra applicazione
  • Sotto la stringa cameras vi ritroverete il codice D666321311, che indica il codice del modello della vostra Ip cam che potrete reperire in questo modo:
  1. Aprite l'applicazione Ezviz sul vostro smartphone
  2. Selezionate la vostra telecamera da includere in Home Assistant
  3. Pigiate sull'esagono posto in alto a destra dell'app (impostazioni) 
    app ezviz
  4. Nella nuova schermata in alto troverete il nome assegnato alla vostra telecamera e in basso la stringa utile per la configurazione. 
  5. Copiatela all'ottava riga del codice sopra riportato.
  • Alla riga successiva lasciate invariata la username con admin
  • Invece, nel campo password dell'ultima riga copiata dovrete inserire il codice di verifica che di solito si trova attaccato con uno sticker sotto la telecamera. 
    verification code ezviz

Terminato il tutto salvate il file configuration.yaml e riavviate Home Assistant

Creazione Card Personalizzata in Home Assistant

Ora potrete creare una scheda simile alla figura in basso:

manual card
  • Create una Scheda manuale nella vostra Dashboard di Home Assistant
  • Copiate al suo interno il seguente codice: 
    camera_image: camera.telecamera
    camera_view: live
    elements:
      - icon: 'mdi:arrow-up'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          bottom: 50px
          right: 25px
        tap_action:
          action: call-service
          service: ezviz_cloud.ezviz_ptz
          service_data:
            direction: up
            entity_id: camera.telecamera
            speed: 5
        type: icon
      - icon: 'mdi:arrow-down'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          bottom: 0px
          right: 25px
        tap_action:
          action: call-service
          service: ezviz_cloud.ezviz_ptz
          service_data:
            direction: down
            entity_id: camera.telecamera
            speed: 5
        type: icon
      - icon: 'mdi:arrow-left'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          bottom: 25px
          right: 50px
        tap_action:
          action: call-service
          service: ezviz_cloud.ezviz_ptz
          service_data:
            direction: left
            entity_id: camera.telecamera
            speed: 5
        type: icon
      - icon: 'mdi:arrow-right'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          bottom: 25px
          right: 0px
        tap_action:
          action: call-service
          service: ezviz_cloud.ezviz_ptz
          service_data:
            direction: right
            entity_id: camera.telecamera
            speed: 5
        type: icon
      - icon: 'mdi:run-fast'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          top: 25px
          right: 25px
        tap_action:
          action: call-service
          service: switch.turn_on
          service_data:
            entity_id: switch.telecamera_mobile_tracking
          confirmation: true
        type: icon
      - icon: 'mdi:run'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          top: 25px
          right: 0px
        tap_action:
          action: call-service
          service: switch.turn_off
          service_data:
            entity_id: switch.telecamera_mobile_tracking
          confirmation: true
        type: icon
      - icon: 'mdi:eye'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          right: 25px
          top: 50px
        tap_action:
          action: call-service
          service: switch.turn_on
          service_data:
            entity_id: switch.telecamera_privacy
          confirmation: true
        type: icon
      - icon: 'mdi:eye-off'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          right: 0px
          top: 50px
        tap_action:
          action: call-service
          service: switch.turn_off
          service_data:
            entity_id: switch.telecamera_privacy
          confirmation: true
        type: icon
      - icon: 'mdi:volume-high'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          right: 25px
          top: 75px
        tap_action:
          action: call-service
          service: switch.turn_on
          service_data:
            entity_id: switch.telecamera_sound
          confirmation: true
        type: icon
      - icon: 'mdi:volume-off'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          right: 0px
          top: 75px
        tap_action:
          action: call-service
          service: switch.turn_off
          service_data:
            entity_id: switch.telecamera_sound
          confirmation: true
        type: icon
      - icon: 'mdi:led-on'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          right: 25px
          top: 100px
        tap_action:
          action: call-service
          service: switch.turn_on
          service_data:
            entity_id: switch.telecamera_infrared_light
          confirmation: true
        type: icon
      - icon: 'mdi:led-off'
        style:
          background: 'rgba(255, 255, 255, 0.5)'
          right: 0px
          top: 100px
        tap_action:
          action: call-service
          service: switch.turn_off
          service_data:
            entity_id: switch.telecamera_infrared_light
          confirmation: true
        type: icon
    entity: camera.telecamera
    type: picture-elements
    
  • Sostituite alla stringa "camera.telecamera" il nome dell'entità relativa alla vostra telecamera che il custom component avrà creato nelle varie righe di codice
  • Sostituite ai vari switch presenti che inizieranno con "switch.telecamera" la parola telecamera con il nome assegnato della vostra telecamera, quindi se la vostra telecamera sull'applicazione l'avrete rinominata in salotto dovrete sostituire ai vari switch presenti nella configurazione "switch.salotto_mobile_tracking" e via di seguito.

Vi lascio comunque alla visione del video per togliervi qualsiasi dubbio:

Vi ricordo i nostri canali per stare sempre aggiornati con le nostre novità:

Telegram: https://t.me/vincenzocaputoblog

Youtube: https://www.youtube.com/c/VincenzoCaputo77

Gruppo Facebook: https://www.facebook.com/groups/homeassistantita

Google News: https://news.google.com/publications/CAAqBwgKMNe-lgswuuStAw?hl=it&gl=IT&ceid=IT%3Ait

Pagina Facebook: https://www.facebook.com/caputovince

Produrre e aggiornare contenuti su vincenzocaputo.com richiede molto tempo e lavoro. Se il contenuto che hai appena letto è di tuo gradimento e vuoi supportarmi, clicca uno dei link qui sotto per fare una donazione.

Antonio Mario Longo

Antonio Mario Longo

Nato a Foggia nel Settembre 1984 perito elettrotecnico di sistemi e automazione, lavoro nel settore aereonautico su macchine a controllo numerico per la produzione di particolari in fibra di carbonio, appassionato di informatica (nata dai primi 8086) e automatismi per le nuove case del futuro.

Disqus loading...