Boa noite pessoal. Preciso aqui de ajuda para uma automação. Instalei o HA numa maquina virtual. Claro, comecei esta semana na aventura do HA e já tenho pouco cabelo e agora acho que vai o resto Tenho um sensor de porta da xiaomi, para quando abrir a porta, ligar um interruptor (switch) Sonoff, durante 30 segundos e depois desligar. Já fiz automação no Blueprints, que é o mais fácil, acho eu, e não funciona. Tentei também com Node-Red e seguindo alguns tutoriais, verifico que no final nunca consigo que funcione. Deixo um print do Node-Red. A zona assinalada a vermelho, devia aparecer qualquer coisa escrito e não aparece. Em qualquer dos casos, nunca me apareceu qualquer erro no final. Obrigado
Pelo que vi está a chamar um serviço de switch.tunr_on para uma entidade “light”. Portanto sugiro que faça a correção. Troque o domain: switch, por light e deverá resolver o problema.
Eu tenho um caso desses, mas não o programei no node red, mas sim no HA- Tenho duas automações, uma para ligar e outra para desligar. Em baixo segue a cópia:
alias: Luz da Varanda com abertura de porta
description: ''
trigger:
- entity_id: binary_sensor.mag_porta_varanda_contact
from: 'off'
platform: state
to: 'on'
action:
- data:
brightness: 2
entity_id: light.varanda
service: light.turn_on
mode: single
Para desligar:
alias: Desliga Luz varanda por sensor
description: ''
trigger:
- entity_id: binary_sensor.mag_porta_varanda_contact
for: '30'
from: 'on'
platform: state
to: 'off'
action:
- data: {}
entity_id: light.varanda
service: light.turn_off
mode: single
Pode adaptar para o seu caso.
Sugiro que para copiar o código o faça da seguinte forma. Cria uma nova automação em configuração → Automação → Carregar botão + no fundo do ecrão do lado direito. De seguida carrega nos três pontos que aparacem no canto superior direito, quando está na janela de preenchimento dos dados da automação, e escolhe a opção editar como yaml. De seguida cola o código que copiou daqui e faz as alterações para o seu caso. De seguida faz o mesmo para a automação de desligar.
@Alberto_Santos , obrigado pela dica. Para já ainda não consegui. Vou tentar amanhã a o que dá. Fiz alteração da sua automação mas não surgiu nada. Alterei também no Node red e ai ouve alteração ao trocar o domain mas a automação também não funcionou, aliás a luz até ficou indisponível. Amanhã vejo outra vez com mais calma. Obrigado
Boas, @Alberto_Santos, copiei o seu código e fiz as alterações para a minha automação mas encontro este erro: “Message malformed: expected dict for dictionary value @ data[‘action’][0][‘data’]”
Outra duvida, eu utilizo dispositivos da Xiaomi e para funcionarem no HA, é preciso desligar da app mi home ou não tem interferência?
Obrigado
Coloca o teu código aqui, talvez seja mais fácil para tentar perceber o erro
alias: Ligar Luz do Hallr/c
description: ''
trigger:
- entity_id: binary_sensor.door_window_sensor_158d000171eb00
from: 'off'
platform: state
to: 'on'
action:
- data:
entity_id: light.xiaomi_philips_smart_led_ball
service: light.turn_on
mode: single
alias: Desliga Luz Hall r/c
description: ''
trigger:
- entity_id: binary_sensor.door_window_sensor_158d000171eb00
for: '30'
from: 'on'
platform: state
to: 'off'
action:
- data: {}
entity_id: light.xiaomi_philips_smart_led_ball
service: light.turn_off
mode: single
Coloque umas chavetas á frente do parametro “data” na primeira automação, tal como tem na ultima. Deve resolver.
Continua com erro:
Message malformed: extra keys not allowed @ data[’[object Object]’]
Pelo que percebo, na action tens a opção “chamar serviço”, correto?
Porque não alteras para “dispositivo”?
alias: Acender luz garagem
description: ''
trigger:
- entity_id: cover.portaogaragem
from: closed
platform: state
to: open
condition: []
action:
- type: turn_on
device_id: 8209a1a8ecdea1b8152dadc07a5e81e5
entity_id: switch.luzgaragem
domain: switch
mode: single
Faça uma coisa, antes de gravar mude do modo yaml para o modo UI e veja se consegue salvar, antes verifique se as coisas estão como pretende. Além disso não especificou em qual automação é que isso acontece, é só numa ou é nas duas.
Eu copiei o código para o meu HA e também deu erro, mas pode ter sido por ter feito upgrade, uma vez que agora há mais opções ao chamar o serviço. Contudo depois de mudar para o modo UI, consegui salvar e o código ficou assim:
alias: Ligar Luz do Hallr/c
description: ''
trigger:
- entity_id: binary_sensor.door_window_sensor_158d000171eb00
from: 'off'
platform: state
to: 'on'
action:
- data: {}
service: light.turn_on
target:
entity_id: light.xiaomi_philips_smart_led_ball
mode: single
Para a segunda automação:
alias: Desliga Luz Hall r/c
description: ''
trigger:
- entity_id: binary_sensor.door_window_sensor_158d000171eb00
for: '30'
from: 'on'
platform: state
to: 'off'
action:
- data: {}
entity_id: light.xiaomi_philips_smart_led_ball
service: light.turn_off
mode: single
Assim também já não me dá erro. Agora só amanhã posso testar se funciona. depois digo qualquer coisa
Testei a automação de ligar a luz, e nada. Tenho exatamente como aqui está mas a luz não liga. Está complicado
Os estados do teu sensor, são ON e OFF?
Confirmaste isso?
É isto?
Experimente assim:
Você retirou o brigthness da minha automação e deixou o parametro data vazio. era por isso que dava o primeiro erro. Depois acrescentou, o target?! E deve ser a razão pela qual não deviar estar a funcionaor.
Fiz exatamente como você tem aqui e continua a não ligar a luz. Já começo a desconfiar que há qualquer coisa ou com a instalação do HA ou da internet cá de casa. (router da Vodafone)
Faça uma coisa abra a porta ou janela onde está o sensor, logo de seguida vá ao log, em: Configraçõa->Logs, carregue em refrescar, se seguida copie e cole aqui o resultado.
Logger: homeassistant.components.xiaomi_miio.vacuum
Source: components/xiaomi_miio/vacuum.py:506
Integration: Xiaomi Miio (documentation, issues)
First occurred: 16:18:57 (14 occurrences)
Last logged: 17:41:08
Got exception while fetching the state: No response from the device
Got exception while fetching the state: Unable to discover the device 192.168.1.70
Esse erro tem a ver com o aspirador. Portanto não serve
Verifique se consegue ligar e desligar a luz a partir do homeassistant.
Depois verifique se o sensor de porta/janela que está a colocar é mesmo aquele em que depois está a atuar.
Por fim verifique no log de erros, erros que referenciem a automação. Pois quando há erros na automação estes costumam estar referenciados no log.
Veja também o histórico da automação. Quando abre as automações está lá escrito quando foi a última vez que foi executada. Verifique que quando abre a janela ou a porta essa automação é executada.