Lg WebOs Tv con Node-Red — Addio Problemi!

HassioHelp

Lg WebOs Tv con Node-Red — Addio Problemi!

.

Argomento: Node-Red

Livello: Novizio (Novizio,Esperto, Pro)

Difficoltà: Bassa (Bassa, Media, Alta)

A volte capita che degli aggiornamenti di Home Assistant diano problemi con l’integrazione WebOs Tv Lg. Perciò eccoci ad un nuovo articolo per configurarla con Node-Red.

Come da titolo, con l’integrazione Node-Red, non ho mai avuto problemi per il momento! Tocchiamo ferro per non dire altro… e iniziamo! 🙂

PRIMA DI INIZIARE:

Importare automazioni Node-Red senza capirne il flusso d’automazione non é utile a nessuno. Node-Red ha un metodo tutto suo.

Consiglio di  iniziare dal Corso 1 Node-Red in italiano, ecco il link al MODULO per richiederlo. E’ gratuito.

Per qualsiasi domanda non esitate a contattarmi.
Telegram Manuel Del Gada

Iscrivetevi ai canali “Node-Red italia” : Gruppo Facebook Canale Youtube Gruppo Telegram 

Premessa

  • I flussi di automazione di esempio con Tv Lg, iniziano con un nodo “Inject” modalità “Timestamp” per avviare il trigger. Se volete invece attivare il trigger chiedendolo ad Alexa, dovrete configurare i nodi “Alexa Home” (vedi guida).

Configurazione

Per prima cosa dobbiamo scaricare i nodi dalle palette:

“node-red-contrib-lgtv”

(Se non sapete scaricare nuovi nodi, in questa guida ve lo avevo mostrato)

  1. Dopo il download, cerchiamo i nodi Lg e trasciniamo il nodo “Control” sul flow come da foto. Apriamo il nodo, andiamo sul simbolo della pennetta per configurare la tv.
  2. Inseriamo l’ip della nostra Tv Lg (Chiaramente dovrete impostare dalla tv o dal vostro modem un Ip fisso)
  3. Clicchiamo su “Connect”

A questo punto sulla vostra tv apparirà la richiesta di connessione (come da foto). Confermate con “Sì”. 

Sul nodo di configurazione apparirà il token della tv.

Clikkate su “add” poi “done” e “Deploy”. Sotto al nodo apparirà “connected”. 

Siamo dentro!

ATTENZIONE: Può capitare che durante i test di flusso, il nodo LG in questione o della sua categoria, segni correttamente “connected” ma non funziona.
Semplicemente vi basta rifare parte della procedura.
Entrate nella configurazione del nodo dove avevate inserito l’IP fisso. Vi basta clikkare “connect” – “add” – “done” e “deploy”.

Introduzione

Per vedere le funzioni di ogni nodo Lg (e non solo) vi basterà trascinarlo sul flow (1), clikkare in alto sulla “i” (2), e nella sezione “node help” (3) potrete vedere le sue potenzialità.

Ad esempio in foto (sezione 3) , al nodo “control” che abbiamo usato per la configurazione, gli basterà ricevere in input uno dei msg.payload elencati per eseguire il comando. 

  • “turnOn” per accendere la tv (solo se collegata via lan). 
  • “turnOff” (per spegnerla)
  • “play” etc…
Mentre, per vedere lo stato attuale della tv, emetterà in output un boolean “true” (se si accende) o “false” (se si spegne) che vedremo dopo.

Importazione

Per spiegarvi le funzioni principali e farvi vedere un minimo di automazione importate il flow a questo link

(Se non sapete ancora importare il codice di flusso, vi rimando alla Fase 2 di questa guida dove viene spiegato nel dettaglio)

Vi ritroverete un flow come da foto qui sotto:

Appena importato dovrete entrare dentro AD OGNI SINGOLO nodo “TvLg” e selezionare il vostro account tv.

Confermare la configurazione nodo con “done” e alla fine un bel “Deploy”.

Ora potrete testare il flow.

Spiegazione Flow

DIVIDIAMO LA SPIEGAZIONE DEL FLOW CON I “NODI COMMENT”

  • Tv accesa o spenta?

Qui riusciamo a vedere lo stato della tv come vi avevo spiegato in “introduzione”.

Appena la tv viene accesa (anche con telecomando) il nodo control emette un boolean “true”. Se viene spenta “false”.

  • Memorizza channelId dei canali

In questo altro esempio ho utilizzato il nodo “channel” configurato al suo interno “channelid” per vedere il channelid (stringa di codice) di ogni canale. 

Ho cambiato canale (con il telecomando) su SkyTg24 e magicamente il nodo channel mi ha riportato sul “debug” il suo channelid. Ogni canale ha il suo.

Questo mi servirà per eseguire il cambio canali. Perché il nodo “channel”, cambia canale alla tv, in base al “channelid” che riceve in input”.

  • Cambio canale

In questa parte, converto qualsiasi msg.payload (in questo caso timestamp) in channelid del canale che voglio impostare sulla tv. Potete, come in “premessa”, mettere un nodo alexa home per chiedere ad alexa il canale desiderato.

  • Cambio volume al numero impostato oppure a step di 5

In questa fase, con il nodo “volume” impostate il volume desiderato a piacere (nell’esempio volume 7). 

Più in basso un’automazione che alza o abbassa il volume a step di 5. Utilizzo questa semplice automazione per alzare e abbassare il volume con un telecomando Ikea Remote zigbee. Se eseguite 2 pressioni, il nodo delay configurato in quel modo, le registra. Perciò alzerà o abbasserà il volume di 10 unità a step di mezzo secondo.

  • Cambio sorgente o direttamente a un video youtube

Tramite il nodo “app” cambio sorgente su “netflix” o “livetv”. oppure come da informazioni nodo sulla destra possiamo selezionare anche la sorgente HDMI che preferiamo.

Inoltre possiamo visualizzare direttamente un determinato video sulla tv grazie al nodo “youtube”. Gli basterà ricevere l’id del video in input.

Ecco come identificare l’id di un video youtube (parte evidenziata in foto)

  • Messaggi tv

Come poteva mancare la parte di notifiche.

In questo esempio interrogo il mio sensore temperatura salotto ( configurato su HA) con un nodo current state. Il msg.payload (temperatura) entra nel nodo function che scrive la frase. Dopodiché il nodo “toast” vi mostrerà la frase appena composta sulla tv.

ESEMPIO: “la temperatura salotto è 22 gradi”

Considerazioni Finali

Spero che questa semplicità di configurazione vi porti su Node-Red dove spesso tutto risulta più semplice!

Inoltre grazie ai nodi “Alexa Home” (vedi guida) potrete far partire il flusso (sostituendo i “timestamp” del flow). E non solo… potrete chiedere ad alexa di impostare il volume desiderato (nella guida alexa esempio device “veneziana”).

Non basta? Ok…se volete, potrete vedere lo stato della tv in interfaccia Home Assistant grazie ai nodi “entity” (che fanno parte dei nodi HA)

Buon divertimento e buona visione! 🙂

 

Una risposta.

  1. Avatar Marco ha detto:

    Salve,
    bellissima la guida, seguita passo passo. Ma(sto ma che rompe …) quando vado ad aggiungere il paccheto nodi lg della guida l’installazione non va a buon fine. Sembra manchi un file di dipendenze lgtv2.js ma non ho la più pallida idea di come installarlo(sto “giocando” ND da 2 ore).
    Spero in un vostro aiuto.
    Sotto il logs:
    ———————————————————–
    2020-10-18T21:21:11.452Z Install : node-red-contrib-lgtv 1.1.0

    2020-10-18T21:21:46.039Z npm install –no-audit –no-update-notifier –no-fund –save –save-prefix=”~” –production node-red-contrib-lgtv@1.1.0
    2020-10-18T21:21:53.788Z [out]
    2020-10-18T21:21:53.788Z [out] > bufferutil@4.0.1 install /config/node-red/node_modules/bufferutil
    2020-10-18T21:21:53.788Z [out] > node-gyp-build
    2020-10-18T21:21:53.788Z [out]
    2020-10-18T21:21:56.613Z [err] gyp
    2020-10-18T21:21:56.613Z [err]
    2020-10-18T21:21:56.614Z [err] ERR! build error
    2020-10-18T21:21:56.615Z [err] gyp
    2020-10-18T21:21:56.616Z [err] ERR! stack Error: not found: make
    2020-10-18T21:21:56.616Z [err] gyp ERR! stack at getNotFoundError (/usr/lib/node_modules/npm/node_modules/which/which.js:13:12)
    2020-10-18T21:21:56.616Z [err] gyp
    2020-10-18T21:21:56.616Z [err] ERR! stack at F (/usr/lib/node_modules/npm/node_modules/which/which.js:68:19)
    2020-10-18T21:21:56.616Z [err] gyp
    2020-10-18T21:21:56.617Z [err] ERR! stack at E (/usr/lib/node_modules/npm/node_modules/which/which.js:80:29)
    2020-10-18T21:21:56.617Z [err] gyp ERR! stack
    2020-10-18T21:21:56.617Z [err] at /usr/lib/node_modules/npm/node_modules/which/which.js:89:16
    2020-10-18T21:21:56.617Z [err] gyp ERR! stack at /usr/lib/node_modules/npm/node_modules/isexe/index.js:42:5
    2020-10-18T21:21:56.617Z [err] gyp
    2020-10-18T21:21:56.617Z [err] ERR! stack at /usr/lib/node_modules/npm/node_modules/isexe/mode.js:8:5
    2020-10-18T21:21:56.617Z [err] gyp ERR!
    2020-10-18T21:21:56.618Z [err] stack at FSReqCallback.oncomplete (fs.js:168:21)
    2020-10-18T21:21:56.618Z [err] gyp
    2020-10-18T21:21:56.618Z [err] ERR! System Linux 4.19.127-v7l
    2020-10-18T21:21:56.618Z [err] gyp
    2020-10-18T21:21:56.618Z [err] ERR! command “/usr/bin/node” “/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js” “rebuild”
    2020-10-18T21:21:56.618Z [err] gyp ERR!
    2020-10-18T21:21:56.619Z [err] cwd /config/node-red/node_modules/bufferutil
    2020-10-18T21:21:56.619Z [err] gyp ERR! node -v v12.18.4
    2020-10-18T21:21:56.619Z [err] gyp ERR! node-gyp -v v5.1.0
    2020-10-18T21:21:56.619Z [err] gyp ERR! not ok
    2020-10-18T21:21:56.781Z [err] npm
    2020-10-18T21:21:56.781Z [err] ERR! code ELIFECYCLE
    2020-10-18T21:21:56.781Z [err] npm ERR! errno 1
    2020-10-18T21:21:56.794Z [err] npm
    2020-10-18T21:21:56.794Z [err] ERR! bufferutil@4.0.1 install: node-gyp-build
    2020-10-18T21:21:56.794Z [err] npm ERR! Exit status 1
    2020-10-18T21:21:56.794Z [err] npm ERR!
    2020-10-18T21:21:56.794Z [err] npm
    2020-10-18T21:21:56.794Z [err] ERR! Failed at the bufferutil@4.0.1 install script.
    2020-10-18T21:21:56.794Z [err] npm
    2020-10-18T21:21:56.795Z [err] ERR! This is probably not a problem with npm. There is likely additional logging output above.
    2020-10-18T21:21:56.818Z [err]
    2020-10-18T21:21:56.818Z [err] npm ERR! A complete log of this run can be found in:
    2020-10-18T21:21:56.818Z [err] npm
    2020-10-18T21:21:56.818Z [err] ERR! /root/.npm/_logs/2020-10-18T21_21_56_805Z-debug.log
    2020-10-18T21:21:56.837Z rc=1

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *