Blueprint: aviso antes do jogo do seu time
Avisa antes do jogo, repete até a bola rolar e acende a luz na cor do time se tiver alguém em casa. Usa a integração Próximo Jogo.
blueprint:
name: Próximo Jogo - aviso antes do jogo
description: >
Avisa antes do jogo do seu time e repete o aviso de tempos em
tempos até a bola rolar. Quando o jogo começa, se tiver alguém em casa,
acende a luz na cor do time.
Usa o sensor "Próximo jogo" da integração Próximo Jogo
(https://github.com/dougbaptista/ha_proximo_jogo).
domain: automation
source_url: https://github.com/dougbaptista/ha_proximo_jogo/blob/main/blueprints/automation/proximo_jogo/aviso_do_jogo.yaml
input:
jogo:
name: Time
description: "O sensor Próximo jogo do time, por exemplo sensor.gremio_proximo_jogo."
selector:
entity:
filter:
- integration: proximo_jogo
domain: sensor
device_class: timestamp
antecedencia:
name: Começar a avisar quanto tempo antes
default: 120
selector:
number:
min: 5
max: 1440
step: 5
unit_of_measurement: min
intervalo:
name: Repetir o aviso a cada
description: Use 0 para avisar uma vez só.
default: 30
selector:
number:
min: 0
max: 240
step: 5
unit_of_measurement: min
aviso:
name: Como avisar
description: >
Já vem com a notificação do próprio Home Assistant. Troque pelo
celular (notify.mobile_app_...), Telegram, WhatsApp ou Alexa, usando
{{ titulo }} e {{ mensagem }} no texto.
default:
- action: persistent_notification.create
data:
title: "{{ titulo }}"
message: "{{ mensagem }}"
notification_id: proximo_jogo_aviso
selector:
action: {}
presenca:
name: Quem conta como "tem alguém em casa"
description: A zona Casa (zone.home), uma pessoa, um grupo ou um sensor de presença.
default: zone.home
selector:
entity:
filter:
- domain: [zone, person, group, binary_sensor, input_boolean]
luzes:
name: Luzes que acendem quando o jogo começa (opcional)
default: []
selector:
entity:
multiple: true
filter:
- domain: light
cor:
name: Cor do time
default: [0, 114, 206]
selector:
color_rgb: {}
mode: single
max_exceeded: silent
trigger_variables:
jogo: !input jogo
antecedencia: !input antecedencia
triggers:
# Fica verdadeiro quando entra na janela de aviso. O now() faz o Home
# Assistant reavaliar a cada minuto, então não precisa de outro gatilho.
- trigger: template
value_template: >
{% set inicio = as_datetime(states(jogo), none) %}
{{ inicio is not none
and state_attr(jogo, 'hora_definida') != false
and inicio - timedelta(minutes=antecedencia | int) <= now() < inicio }}
variables:
jogo: !input jogo
intervalo: !input intervalo
presenca: !input presenca
luzes: !input luzes
cor: !input cor
# Guardado como texto ISO: variáveis de automação não preservam datetime.
inicio: "{{ states(jogo) }}"
actions:
- repeat:
sequence:
- variables:
minutos: "{{ ((as_datetime(inicio) - now()).total_seconds() / 60) | round(0) | int }}"
quando: >-
{% if minutos >= 60 %}{{ minutos // 60 }} h{{ ' %02d min' % (minutos % 60) if minutos % 60 else '' }}{% else %}{{ minutos }} min{% endif %}
mensagem: >-
{{ state_attr(jogo, 'mandante') }} x {{ state_attr(jogo, 'visitante') }} começa em {{ quando }}
({{ (as_datetime(inicio) | as_local).strftime('%H:%M') }}).
{%- if state_attr(jogo, 'estadio') %} Local: {{ state_attr(jogo, 'estadio') }}.{% endif %}
{%- if state_attr(jogo, 'transmissao') %} Onde assistir: {{ state_attr(jogo, 'transmissao') | join(', ') }}.{% endif %}
titulo: "⚽ Jogo do {{ state_attr(jogo, 'time') }}"
- choose: []
default: !input aviso
# Espera o intervalo, sem passar do início do jogo.
- delay:
seconds: >
{% set falta = (as_datetime(inicio) - now()).total_seconds() %}
{{ [falta, intervalo | int * 60 if intervalo | int > 0 else falta] | min | int }}
# Para 30 s antes: a espera é truncada e, sem essa folga, sairia um
# último aviso de "começa em 0 min".
until:
- condition: template
value_template: >
{{ now() >= as_datetime(inicio) - timedelta(seconds=30)
or intervalo | int == 0 }}
# Com aviso único (intervalo 0), espera o início para a parte da luz.
- wait_template: "{{ now() >= as_datetime(inicio) }}"
timeout:
hours: 24
- if:
- condition: template
value_template: >
{% set s = states(presenca) %}
{{ luzes | count > 0 and
((presenca.startswith('zone.') and s | int(0) > 0)
or s in ['on', 'home']) }}
then:
- action: light.turn_on
target:
entity_id: "{{ luzes }}"
data:
rgb_color: "{{ cor }}"
brightness_pct: 100Como usar
Avisa antes do jogo do seu time, repete o aviso de tempos em tempos até a bola rolar e, quando o jogo começa, acende a luz na cor do time se tiver alguém em casa. Precisa da integração Próximo Jogo.
Passo a passo
- Importe o blueprint no seu Home Assistant (ou copie o código para
blueprints/automation/proximo_jogo/). - Crie uma automação a partir dele e preencha o formulário: time, com quanto tempo começar a avisar (padrão 120 min), repetir a cada (padrão 30 min; 0 = uma vez só), como avisar, quem conta como "em casa" (padrão
zone.home), luzes e cor do time. - O aviso já vem configurado para as notificações do próprio Home Assistant. Para celular, Telegram, WhatsApp ou Alexa, troque a ação usando
{{ titulo }}e{{ mensagem }}.
A mensagem sai assim: "Atlético-MG x Grêmio começa em 1 h 40 min (18:00). Local: Arena MRV. Onde assistir: sportv, Premiere."
0 comentários
Carregando comentários…
Também respondo os comentários no YouTube.
Escolhidos para você
Veja também
Blueprint: sincroniza luz e interruptor nos dois sentidos
Liga a luz pelo interruptor e o interruptor pela luz, sem loop. Uso na escada e na garagem aqui de casa.
40:55VídeoAutomations - Home Assistant [Pt-BR]
Automations - Home Assistant Aprenda mais sobre automações no Home Assistant
Aviso de porta ou janela aberta quando todos saem
Casa vazia por 2 minutos e algo ficou aberto? Chega uma notificação dizendo exatamente o quê.
19:01VídeoNode Red e o nó "http request" com o Home Assistant
Neste vídeo explico um puquinhgo de como funciona o nó "http request" mais o nó "html" para resgatar uma informação de um site através do método GET, como o próximo jogo do seu…
11:09VídeoSua casa em 3D no Home Assistant: NeonPlan 3D do zero (grátis)
⚠️ AVISO IMPORTANTE: o Marketplace nativo chega na versão 2026.11 do Home Assistant, com lançamento estável previsto para 4 de novembro de 2026. Gravei este vídeo na versão beta.…
15:11VídeoCards Incríveis no Home Assistant: Stack-in-Card, Mushroom & Card-Mod
Personalize sua interface do Home Assistant com Mushroom Template Card e Mushroom Chips! 🚀