Sininho do YouTube à Home Assistant [Iniciante e Hard-assistanter]

:vulcan_salute: Saldações, Homeassistanters! :vulcan_salute:

Considerando que a nossa instância do Home Assistant deve conter o máximo de integrações possíveis e imagináveis a fim de nos ajudar e manter informado, resolvi investir tempo no presente conteúdo para que lhes seja útil em algum momento;
Considerando que você já tenha o HACS instalado:

Trago a presente automação:
image

RESULTADOS:

resultado_notificação_no_pc
:iphone:* ----------------------------------X ---------------------------------- :computer:
obs: *texto do chat do telegram no smartphone TAMANHO 18:

                             TUTORIAL ABAIXO:

1º - PASSO: Pesquise por youtube pelas integrações do HACS, o que irá retornar o componente abaixo. Devendo ser instalada a integração e reiniciado seu HA para que ele se integre ao sistema.

2º - PASSO: Vá à página inicial do seu youtuber favorito e clique com o botão direito do mouse na parte preta da imagem, ao lado de “INSCRITO”, ou onde for possível, e clique em “ver código-fonte da página”:

3º - PASSO: Na página seguinte digitamos o famoso Control + F e colocamos o seguinte texto para pesquisar: https://www.youtube.com/channel/

4º - PASSO: Se tudo correu bem, siga para extrair o channel_id do canal. O channel_id equivale a tudo que está depois de “https://www.youtube.com/channel/” e antes de “/videos”.
Portanto, no nosso exemplo, o channel_id do próprio HomeAssistant é (anote sua informação extraída): UCbX3YkedQunLt7EQAdVxh7w

5º - PASSO: Nesse momento você é um(a) guerreiro(a) por chegar até aqui, então siga adiante para a criação do sensor que monitorará a atividade do canal do youtube que você deseja. Vá ao editor de arquivo de configuração da sua instância e observe o seguinte antes de colar os arquivos - verifique se já não tem criado na sua instância os arquivos que estão abaixo, tais como o de hora e o de data:
5.1 - CONFIGURAÇÃO COM ARQUIVO SENSORS JÁ CRIADO:

### CRIA SENSORES DO YOUTUBE ###
  - platform: youtube
    channel_id: UCbX3YkedQunLt7EQAdVxh7w # home assistant
  - platform: youtube
    channel_id: UCRgXcmbD0xlWnorEvtUEVqg # patte_tech
  - platform: youtube
    channel_id: UCYsxByy8fykXCiQPtx0Molw # alguma_coisa_na_tecnologia
### CRIA SENSORES DATA/HORA ###
  - platform: time_date
    display_options:
      - 'time'
      - 'date'
### SAUDAÇÃO DE ACORCO COM O HORÁRIO DO DIA ###
  - platform: template
    sensors:
      time_of_day:
        friendly_name: "SAUDAÇÃO"
        value_template: >
          {% set current_hour = strptime(states('sensor.time'), "%H:%M").hour %}
          {% if current_hour < 12 %}
            Bom dia 
          {% elif 12 <= current_hour < 18 %}
            Boa tarde
          {% else %}
            Boa noite
          {% endif %}
        icon_template: >
          {% if is_state('sensor.time_of_day','Bom dia') %} mdi:weather-sunset-up 
          {% elif is_state('sensor.time_of_day','Boa tarde') %} mdi:white-balance-sunny
          {% elif is_state('sensor.time_of_day','Boa noite') %} mdi:weather-night
          {% endif %}
      ### INFORMA O DIA DA SEMANA ###
      day_of_week:
        friendly_name: "DIA DA SEMANA"
        value_template: >
          {% set days = ["Segunda-feira", "Terça-feira", "Quarta-feira", "Quinta-feira", "Sexta-feira", "Sábado", "Domingo"] %}
          {{ days[now().weekday()] }}
        ### ÍCONES DOS DIAS DA SEMANA ###
        icon_template: >
          {% if is_state('sensor.day_of_week','Segunda-feira') %} mdi:emoticon-dead-outline 
          {% elif is_state('sensor.day_of_week','Terça-feira') %} mdi:emoticon-frown-outline 
          {% elif is_state('sensor.day_of_week','Quarta-feira') %} mdi:emoticon-neutral-outline
          {% elif is_state('sensor.day_of_week','Quinta-feira') %} mdi:emoticon-happy-outline
          {% elif is_state('sensor.day_of_week','Sexta-feira') %} mdi:emoticon-cool
          {% elif is_state('sensor.day_of_week','Sábado') %} mdi:emoticon-tongue-outline
          {% elif is_state('sensor.day_of_week','Domingo') %} mdi:emoticon-kiss-outline
          {% endif %}

criando_sensors_youtube_homeassistant → RESULTADO DO 5.1 NA CONFIGURAÇÃO.

5.2 - CONFIGURAÇÃO SEM ARQUIVO SENSORS CRIADO:
Acrescente a linha sensor:, sem espaços, ao seu configuration.yaml antes de todo o texto acima.

→ RESULTADO DO 5.2

6º - PASSO: Após colocar os arquivos de texto nos seus devidos lugares: confie, mas verifique e, então, reinicie seu homeassistant.
confie_mas_verifique_e_reinicie

Seu sensor com as informações do canal do youtube inserido aparecerá nas entidades do seu HA procurando pelo mesmo nome do canal com os dados do channel_id inserido com várias informações interessantes nos atributos:

7º - PASSO: Então, vá em configurações > automações > nova automação:

7.1: Dê o nome à automação. Em Triggers, mude o Trigger type para State, depois coloque o sensor criado em Entity, por fim, Attribute como Url, tudo conforme imagem abaixo:

8º - PASSO: Mais embaixo, em Actions, mude o Action type para call service a fim de que possa ser escolhido o sistema de notificação, nesse caso será o seu serviço de notificação do telegram. Siga o passo a passo abaixo, caso não o tenha.

9º - PASSO: Selecionado o serviço, clique nos 3 pontinhos do canto superior direito e vá em edit in YAML, embaixo de service: cole o arquivo de texto que vou disponibilizar abaixo e veja o resultado que deve ficar conforme imagem abaixo:

TEXTO:

data:
  message: |-
    (SEU NOME), {{ states('sensor.time_of_day')}}. Veja a nova notificação abaixo.
    ═══════════════════════
      ▶️▶️▶️▶️▶️𝕐𝕆𝕌𝕋𝕌𝔹𝔼▶️▶️▶️▶️▶️
      │═════════════════════│
      📺NOVO VÍDEO HOMEASSISTANT📺
      │═════════════════════│
      │                                                             │ 
      ├────── 💬𝕋𝕀́𝕋𝕌𝕃𝕆💬 ──────│
      ├> {{states('sensor.home_assistant')}}
      ├───── 🗓️𝔽𝕆𝕀 𝔸𝕆 𝔸ℝ🗓️ ─────│
      ├> {{ states('sensor.day_of_week')}}, {{state_attr('sensor.home_assistant', 'published') | as_timestamp | timestamp_custom("%d de %b. de %Y | %Hh%Mmin%Ss", true) }}
      ├─────── 👍𝕃𝕀𝕂𝔼𝕊👍 ──────│
      ├> {{state_attr('sensor.home_assistant', 'stars') }}
      └─── ▶️𝔻𝕀𝕊ℙ𝕆ℕ𝕀́𝕍𝔼𝕃 𝔼𝕄▶️ ───│
      👉 {{state_attr('sensor.home_assistant', 'url')}} 👈

ÚLTIMO PASSO: Salve as modificações e faça o teste subindo ao topo da automação perto da janela onde se escolheu o nome para a aautomação, nesse momento, pode ocorrer 2 situações ao clicar em run actions:

I - Você receberá a notificação tudo certinho informando todos os dados do 9º - PASSO.

II - Você não receberá a notificação com as informações, para sanar isso, resolvi que seria interessante colocar o link embaixo de DISPONÍVEL EM, link este que vai ao encontro das informações da página inicial do canal que gostaria de ser notificado. De fato ocorre essa perda, mas não sei o porquê o link de alguns canais não chegam.

Cole o link obtido conforme a imagem a seguir:

POR FIM, PARABENIZO VOCÊ, JOGADOR(A) HARD-ASSISTANT, QUE SE DISPÔS A CHEGAR ATÉ AQUI!
VOCÊ NÃO FOI VENCIDO E NEM ELIMINADO!


Longo e árduo é o caminho que conduz do inferno à luz - John Milton, Paraíso Perdido.

////////////////
FONTES:
////////////////

3 Likes