Também a isso pode se acrescentar o exemplo se o switch esta disponível:
- alias: switch_indisponivel
trigger:
platform: state
entity_id: switch.relais
to: "unavailable"
action:
- service: telegram_bot.send_message
data:
message: "Indisponivel"
@ricain, quando publicares código deves seleccionar o texto que queres transformar em código e clicar no icone </>
Tens razão, mais uma vez esqueci me. Vou ver se não me esqueço para a proxima.
Alguem me sabe dizer a melhor forma de enviar uma mensagem para vários utilizadores do Telegram? Tenho de repetir o “action” para cada um deles?
Os passos são quase os mesmos dos de enviar a mensagem para um utilizador.
Crias um grupo no Telegram com os vários utilizadores, vês qual o ID de chat do grupo e configuras a action para enviar para o grupo.
Vê este tópico no site oficial para ajudar:
@mguedes para vários utilizadores é algo do estilo:
notify:
- name: UTILIZADOR1
platform: telegram
chat_id: !secret chatid01
- name: UTILIZADOR2
platform: telegram
chat_id: !secret chatid02
- name: geraltelegram
platform: group
services:
- service: UTILIZADOR1
- service: UTILIZADOR2
exemplo de action.
action:
- service: notify.geraltelegram
data_template:
title: 'Porta de Casa Aberta'
message: "Dia {{states.sensor.date.state}} às {{states.sensor.time.state}}"
Acabei por usar a sugestão do @j_assuncao e criar um grupo mas essa solução pode ser interessante em algumas situações. Obrigado @RodolfoVieira
Estou a necessitar de uma ajudinha
Este é o meu código
- alias: Chatbot - Estados
hide_entity: true
trigger:
- platform: event
event_type: telegram_callback
event_data:
data: '/estado'
action:
- service: notify.s9
data:
title: "Estados"
message: '{{states.light.spots.attributes.friendly_name}} {{states.light.spots.state}}
{{states.light.wc_principal.attributes.friendly_name}} {{states.light.wc_principal.state}}
{{states.light.cozinha.attributes.friendly_name}} {{states.light.cozinha.state}}
'
Precisava de saber se existe maneira de haver uma quebra de linha entre cada linha que se refere aos estados das luzes, uma vez que na app telegram aparecem todos na mesma linha.
O código funciona, é somente por uma questão estética
Obrigado
Cria outra acção:
- alias: Chatbot - Estados
hide_entity: true
trigger:
- platform: event
event_type: telegram_callback
event_data:
data: '/estado'
action:
- service: notify.s9
data:
title: "Estados"
message: '{{states.light.spots.attributes.friendly_name}} {{states.light.spots.state}}
action:
- service: notify.s9
data:
message:
{{states.light.wc_principal.attributes.friendly_name}} {{states.light.wc_principal.state}}
action:
- service: notify.s9
data:
message:
{{states.light.cozinha.attributes.friendly_name}} {{states.light.cozinha.state}}
muito simples
- alias: Chatbot - Estados
hide_entity: true
trigger:
- platform: event
event_type: telegram_callback
event_data:
data: '/estado'
action:
- service: notify.s9
data:
title: "Estados"
message: '{{states.light.spots.attributes.friendly_name}} {{states.light.spots.state}}
{{states.light.wc_principal.attributes.friendly_name}} {{states.light.wc_principal.state}}
{{states.light.cozinha.attributes.friendly_name}} {{states.light.cozinha.state}}
'
Basta isto @ricain
Continua tudo a aparecer na mesma linha, na bola de mensagem enviada pelo telegram
Erro meu!
Funcionou como pretendia;
Muito obrigado pela ajuda
testa assim:
- alias: Chatbot - Estados
hide_entity: true
trigger:
- platform: event
event_type: telegram_command
event_data:
command: '/estado'
action:
- service: notify.s9
data:
title: "Estados"
message: "o estado é:
{{states.light.spots.attributes.friendly_name}} {{states.light.spots.state}}
{{states.light.wc_principal.attributes.friendly_name}} {{states.light.wc_principal.state}}
{{states.light.cozinha.attributes.friendly_name}} {{states.light.cozinha.state}}"
Eu testei e aparecem 4 linhas.
Copia tudo exactamente como está. mudei mais algumas coisas.
ok visto que foi resolvido cá em baixo ao lado de “Responder” tens uma caixa com um visto clica aí por favor. No post que resolveu o teu problema.
Boas.
Os multi users ainda se encontra funcional?
Criei o 2o user tal igual ao 1o ( pelo video do rodolfo) mas ao tentar adicionar o 2o user está me a dar erro no HA.
Configuration.yaml:
telegram_bot:
- platform: polling
api_key: !secret telegrambot_api_key
allowed_chat_ids:
- !secret telegrambot_chat_id01
- !secret telegrambot_chat_id04
notify,yaml:
- name: telegram
platform: telegram
chat_id: !secret telegramchat_id
- name: telegram4
platform: telegram
chat_id: !secret telegramchat_id4
##### Group ####
- name: telegram_group
platform: group
services:
- service: telegram
- service: telegram4
script.yaml:
### Test
test:
alias: 'Test'
sequence:
# this is the action to test (can change to which ever service you want
- service: notify.telegram_group
data:
message: 'Mensagem de teste'
@karma por favor lê os nossos termos e regras https://cpha.tech/termos-do-servico-regras
Ponto II linha D
"Não devem ser utilizadas imagens (fotos de telemóvel por exemplo) para colocar código numa publicação..."
Se tiveres so um utilizador funciona normal? sem problemas?
Se também não funcionar tenta:
### Test
test:
alias: 'Test'
sequence:
# this is the action to test (can change to which ever service you want
- service: notify.telegram_group
data:
title: 'teste'
message: 'Mensagem de teste'
Sim, funcionassem problemas… penso que o problema não é deste script, este script criei para me facilitar se recebia notificações ou não.
Com estes códigos só recebo notificação no primeiro user… mas vou experimentar na mesma com essa linha
Outra pergunta, caso envies uma mensagem apenas para o segundo user tambem funciona?