Automação Detecção de Casa Vazia

Olá,

Finalmente adicionei rastreadores de localização no meu HA para incrementar as automações por localização.

A primeira automação que estou tentando implementar é bem simples, ela ativa meus alarmes quando a casa fica vazia. Pela documentação do HA, múltiplos triggers tem uma função OR, ou seja, quando qualquer um deles é ativo a automação segue para o condition, por isso fiz essa redundância, inclusive indicada no forum da comunidade oficial, mas ainda sim a automação não está funcionando corretamente, hoje mesmo ela ativou quando apenas uma das pessoas saiu de casa. Alguém tem ideia de como posso fazer? Vi algo sobre usar template, mas não consegui montar a lógica

  - alias: 'Ativa Alarmes Casa Vazia'
    trigger:
      - platform: state
        entity_id: device_tracker.944961c3
        from: 'home'
        to: 'not_home'
        
      - platform: state
        entity_id: device_tracker.0423456801
        from: 'home'
        to: 'not_home'
        
      - platform: state
        entity_id: device_tracker.0423876709
        from: 'home'
        to: 'not_home'
    condition:
      condition: and
      conditions:
         - condition: state
           entity_id: device_tracker.944961c3
           state: 'not_home'
         - condition: state
           entity_id: device_tracker.0423456801
           state: 'not_home'
         - condition: state
           entity_id: device_tracker.0423876709
           state: 'not_home'
          
          
    action:
    - service: automation.turn_on
      entity_id: automation.alarme_porta_da_cozinha
    - service: automation.turn_on
      entity_id: automation.alarme_porta_da_sala
    - service: automation.turn_on
      entity_id: automation.alarme_porta_de_servico_frente
    - service: automation.turn_on
      entity_id: automation.alarme_porta_externa
    - service: automation.turn_on
      entity_id: automation.alarme_porta_studio
    - service: automation.turn_on
      entity_id: automation.alarme_sensor_de_presenca_fundo_1
    - service: tts.google_say
      entity_id: media_player.googlehomesala
      data:
       message: "Alarmes ativados devido casa vazia"
    - service: telegram_bot.send_message
      data_template:
        title: "Alarmes Ativados - Casa vazia"
        message: "Devido casa vazia alarmes ativados até as 4 horas da manhã"

Se estás a utlizar os dispositivos como triggers não faz sentido serem também condições. Ou são uma coisa ou são outra. Por este motivo a automação não funciona.

recomendo a usar o trigger a cada minuto e depois metes as condições sendo os device_trackers

assim:

automation:
  - id: ######
    trigger:
      - platform: time_pattern
        minutes: '/1'
        seconds: '0'
    condition:
      - ##: ######
    action:
      - ##: ######

Já agora, se a casa está vazia porque envias o tts para o google home?

Não localizei uma solução com triggers diretamente na função lógica AND. Então achei essa informação na comunidade que supostamente teria o mesmo efeito.

Obrigado! Vou testar dessa maneira!
Deixei o tts pois estou nesse período de teste, mas pretendo manter pois pode haver um visitante na residência que seria avisado que algo diferente foi ativado.

e se a finalidade é se nenhum desses devices trackers nao tiver em casa, porque nao cria rum grupo e chamar so uma vez…

Obrigado pela sugestão! Estou começando e ainda não conheço todas os recursos, meu código deve estar bem carregado por esse motivo, vou procurar algo sobre os grupos e como usar.

Infelizmente usando time_pattern no trigger não funcionou corretamente, já que quando todos ficam fora de casa ele envia o telegram e aciona o tts a cada minuto. A ideia era avisar e ativar somente na saída de casa. Estou testando de uma maneira semelhante a inicial, aparentemente está funcionando. Se tudo der certo vou otimizar utilizando group como sugerido.

  - alias: 'Ativa Alarmes Casa Vazia'
    trigger:
      - platform: zone
        entity_id: device_tracker.944961c3
        zone: zone.home
        event: leave

      - platform: zone
        entity_id: device_tracker.0423876709
        zone: zone.home
        event: leave
        
      - platform: zone
        entity_id: device_tracker.0423456801
        zone: zone.home
        event: leave
        
    condition:
      condition: and
      conditions:
         - condition: state
           entity_id: device_tracker.0423456801
           state: 'not_home'
         - condition: state
           entity_id: device_tracker.0423876709
           state: 'not_home'
         - condition: or
           conditions:
             - condition: state
               entity_id: device_tracker.944961c3
               state: 'not_home'
             - condition: state
               entity_id: device_tracker.944961c3
               state: 'Trabalho'
               
    action:

Isso em NR era uma flow com meia dúzia de nodes… E se a não funcionou com o time trigger é porque tinhas as condições mal.


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


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