LG webOS no Node-red! Controle a TV no Node-red! + Notificações em Pop-up!

Olá, gostaria de controlar a sua tv da LG com webOS usando o Node-red? Claro né! rs

Antes de tudo recomendo que leiam esse tutorial básico para aprenderem como configurar os nodes no node-red:

Então primeiro você deve adicionar a sua tv ao Home-Assistant seguindo a documentação oficial:

Como já adicionou sua televisão ao Home Assistant, tem na sua mão o ip dela. Guarde esse ip que vamos precisar (caso não saiba onde achar o ip, olhe no seu roteador, lá aparece o ip da televisão).
Agora vamos para o Node-red!

No Node-red clique no menu no canto da direita a cima e vá em Manage palette.

Clique em Install e escreva lg para procurar “node-red-contrib-lgtv” e clique em install (no meu caso já está instalado rs). Os nodes necessários para controlar sua tv vão ser instalados!

Com os nodes instalados, vai aparecer uma nova aba da lgtv.

Agora vamos adicionar a sua televisão ao Node-red! Pegue o node “app”, dentro dele clique no lápis para adicionar sua televisão!

Em Host coloque o ip da sua televisão e clique em Connect!

Na sua televisão vai aparecer uma mensagem confirmando a conexão com o Node-red! Clique em sim!

Vai aparecer Token e clique em Add! Pronto, seu Node-red vai estar configurado para usar sua LG webOS.

Mas e agora, como vamos usar os nodes para controlar a tv? No próprio node tem uma explicação de como funciona os comandos para a televisão. Com um node da lgtv selecionado vamos na aba de exibição “help”, embaixo vai aparecer como deve ser o “msg.payload” para aquele node.

Por exemplo: No node app a “msg.payload” é “netflix” para abrir o app netflix na televisão, “com.webos.app.livetv” para mudar para os canais de televisão ou “com.webos.app.hdmi1” para mudar para a entrada hdmi1 da televisão. O comando para o Amazon Prime Video é “amazon”.

Sabendo disso, como vamos usar? O “msg.payload” podemos usar com o node function ou outro node que podemos trocar a mensagem payload pela mensagem desajada como netflix ou o comando para a tv.

Por exemplo: vamos criar esse flow para abrir o app da netflix na televisão.

Não vamos mexer no node inject, no node funcion vamos escrever msg.payload = ‘netflix’ (como vimos no exemplo de como deve ser a mensagem payload para o node app) e no node app deixe adicionada a sua televisão.

O node function vai ficar como abaixo!

Clique em Deploy para tudo funcionar e agora clique no quadradinho do node injection, vai perceber que a televisão vai mudar para o app da Netflix!

Pronto! Agora já está tudo configurado e funcionado, agora é usar sua imaginação para criar suas automações.

Para usar o pop-up de notificações da sua tv webOS, use um node call service e configure assim:

Em Data vai preencher assim:

{
    "message": "Escreva sua mensagem aqui!"
}

Vai ficar assim na sua tv webOS:

É isso, um abraço!

1 Like

Uma dica de uso que posso dar para vocês é usar esses nodes da LG webOS em conjunto com os nodes NORA! Não conhece os nodes NORA? Pode conhecer aqui embaixo:

Podemos usar os nodes NORA dessa forma:

Vamos usar um node NORA switch, um node switch (amarelo), dois nodes change e um node lgtv app

Vamos ligar os nodes da forma como na imagem!

Já sabemos que o node NORA switch separa o “ligar” e “desligar” do comando na google assistant em true para o ligar e false para o desligar.

No node switch (amarelo) vamos configurar dessa formar:

Para quando for ligar (true) for para o caminho de cima e quando for desligar (false) for para o caminho de baixo do flow.

Agora temos que mudar o payload. Antes o payload (a mensagem passada) era true e false, mas temos que muda-lo para os comandos da televisão e para isso vamos usar os nodes change.

No node change do comando para ligar o app vamos alterar assim como na imagem, para quando o payload for true ele mudar para netflix!

No node change do comando para desligar o app, no meu caso eu uso a televisão como monitor do meu computador, então na minha entrada hdmi1 da televisão uso o computador, então coloquei para alterar para a hdmi1.

Caso você use prefira mudar para os canais de televisão pode colocar “com.webos.app.livetv” no lugar de “com.webos.app.hdmi1”.

Então o payload for false vai mudar para os canais de televisão ou opção que preferir.

Pronto! Agora quando falar: “Ok, google! Ligar Netflix!” A televisão vai ligar o app e quando falar para desligar netflix a televisão vai mudar para os canais. (no meu caso vai mudar para o meu computador.)

Espero ter ajudado! Um abraço!

Pode ser feito com a Alexa:

1 Like

Bom trabalho @LeandroIssa, obrigado pela partilha.

1 Like

A primeira parte do tutorial não tem nada a ver… Se queres controlar a TV por NR não precisas de adicionar ao HA… Ou seja, são 2 coisas completamente independentes e não dependem minimamente uma da outra…

O intuito foi a pessoa ter o ip pra adicionar após e também na maioria das vezes quem procura um tutorial não sabe que pode adicionar ao HA a televisão.

Um dos grandes problemas na maioria das vezes em tutoriais é que já partem do pressuposto que o básico as pessoas já fizeram, sendo que na sua maioria nem fizeram.
Procuro sempre explicar até o básico e o óbvio porque nem todos entendem de programação (eu mesmo não entendo), sabem inglês ou tem facilidades em entender.

2 Likes

Qual seria o esquema, para desligar a TV?

Seria esse aqui pra desligar a tv!

2

Para ligar só utilizando um Broadlink.

Eu tenho o Broadlink, e já tenho os comandos no HA

Não estou a conseguir criar o node para desligar

Vou tentar da forma que disseste

Olá Leandro.

Já consegui criar o node para receber os dados do comando da TV com o broadlink

Como consigo agora criar um node, para que seja enviado o comando para a TV?
Por exemplo, acende a luz, e o volume aumenta

NOTA: no RM3 mini está data sent porque estive a tentar enviar comandos, mas eu sei fazer a leitura do comando e ver o código

Consegues fazer isso precisas de dois nodes para enviar o comando:

image

No primeiro metes assim:

image
onde está amarelo metes o código que queres enviar

{
   "action" : "send",
   "data" : [ 38,0,204,0,113,58,14,14,15,43,14,14,15,14,15,14,14,14,14,15,14,15,14,14,15,14,14,15,14,14,15,14,14,43,15,14,14,15,13,15,15,14,14,14,15,14,15,14,14,14,15,14,15,42,15,14,14,15,13,15,14,15,14,15,13,15,14,15,14,15,13,15,14,15,14,43,15,14,14,43,15,14,13,44,15,42,15,14,15,14,13,44,15,14,14,43,14,15,13,44,14,15,13,0,9,153,113,58,15,14,13,44,15,14,13,15,14,15,14,15,13,15,15,14,15,14,13,15,15,14,14,15,14,14,14,44,14,14,15,14,14,15,14,14,14,15,14,14,15,14,15,14,14,14,14,44,14,14,14,15,14,15,13,15,14,15,14,15,14,14,14,15,14,15,13,15,14,43,15,14,14,43,14,15,15,42,15,43,14,14,14,15,14,43,15,14,14,43,15,14,14,43,14,15,14,0,13,5,0,0,0,0,0,0,0,0,0,0,0,0] 
}

No último node colocas assim, alterando para o mac do teu RM

image

Depois a frente do node, continuas com a automação que queres.

1 Like

Tentei fazer mas não está a dar

Tenho assim
image

Ao acender a luz, o volume deveria baixar, mas não faz nada :confused:
A leitura do comando consigo fazer bem

image

Penso que o meu problema pode estar aqui

image

Eu tenho de criar uma pasta por exemplo /config/broadlinkremote e colocar tal e qual desta forma no campo Catalog?

Mete o Mac Address com dois :
24:df: por ai fora…

1 Like

Não dá.

Colocando ai os : fico com uma configuração invalida

É isto que me da, e não envia o comando kkk

image

Mostra la onde novamente uma imagem corrigida como te disse.

Estou no telemóvel, e é mais difícil, mas envio os prints

Aqui foi onde fiz a alteração

Aqui é como tenho o node configurado (e aqui sim já tenho de ter os :

Mas quando faço deploy, é isto que recebi

Há ai um problema qualquer na sala das máquinas, passa no discord para vermos isso mais ao pormenor depois voltamos aqui com a solução.

Já consegui fazer o que pretendo.

Primeiro usei este node para descobrir o broadlink

Em que no discover, vemos os dados do broadlink, e eu no type tinha os dados mal
image

Configuramos os dados corretos para o broadlink (tal como está em cima. MAC sem os : e o type certo), e com este node já fica a funcionar


Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade