Broadlink + Google Home + IFTTT/Webhooks = "Ok Google, Channel 269" or "Ok Google, change to my favourite channel" or "Ok Google, change to Cartoon Network"

Queria só deixar aqui a experiência que tive, com Alexa, pois este tópico ajudou-me a direcionar e podem integrar de uma forma muito simples, apenas entre Broadlink+Alexa.

O homeassistant reconhece automaticamente a TV (via Broadlink), só que apenas me permitia o básico de aumentar volume/canais e ligar/desligar.

A parte que me escapou: Para ficar a funcionar como deve ser fui à aplicação do Broadlink (IHC) e tive de definir os canais manualmente. É chato, mas funciona bem. Depois permite a chamada pelo número de canal ou pelo nome.

Quem quiser os canais e comandos para meo :wink:

meo_channels = {
    'rtp1': '1',
    'rtp2': '2',
    'sic': '3',
    'sick': '3',
    'seek': '3',
    'tvi': '4',
    'tv': '4',
    'sic news': '5',
    'sick news': '5',
    'seek news': '5',
    'rtp 3': '6',
    'tvi 24': '7',
    'cmtv': '8',
    'sic woman': '9',
    'sick woman': '9',
    'seek woman': '9',
    'tv globe basic': '10',
    'sic woman': '11',
    'sick woman': '11',
    'seek woman': '11',
    'sic radical': '15',
    'sick radical': '15',
    'rtp memory': '17',
    'disney channel': '40',
    'cartoon network': '41',
    'sic kids': '43',
    'sick kids': '43',
    'disney junior': '44',
    'panda': '45',
    'jim jam': '46',
    "sofia": '47',
    "sophia": '47',
    "baby tv": '47',
    'cine mundo': '60',
    'hollywood': '61',
    'fox movies': '62',
    'axn black': '64',
    'fox': '70',
    'fox life': '71',
    'fox crime': '72',
    'fox comedy': '73',
    'axn': '74',
    'axn white': '75',
    'scy fy': '76',
    'discovery': '90',
    'odisseia': '92',
    'mtv': '106',
    'twenty four kitchen': '123'
}
    meo_packets = {
        '1': 'JgCMAAoVFBUUFhQKChUVFQkMBw0JDAkLCgwUFAoAC2cKFRQVFBUVCgsUFRUKCgsLBw0JCwoLFBUJAAtoChUUFRQVFAsKFRQWCQsKDAcNBw4HDRQVCQALaAsUExYVFBUKChUVFAoMBw0JDAcNCQwUFQoAC2cLFBMWFBUVCgkWFRQKCwkMCQsKCwkMFBUJAA0FAAAAAAAAAAAAAAAA',
        '2': 'JgBOAAwTFRUUFRUKCRYUFQsKCQwKCgsKFBUUAAtxChUUFhQVFQoKFRQVCgsKCgsLCAwTFhQAC3ELFBUUFBYUCwkWExYKCwoKCwoKCxQVFQANBQAAAAAAAAAAAAA=',
        '3': 'JgBUAAsUFRUTFhUKCRcTFQkMCQsKCwkMEwwJFgoAC2YKFRUUFRUUCwkWFBUJDAkMBw0JDBMMBxcKAAtnCRYVFBUVEwwHGBMWCQwHDgcNBw0VCwcXBwANBQAAAAA=',
        '4': 'JgBOAAsUFBYUFRQLChUUFQoLCQsLCxMVCwoUAAtxCxQUFRUVFAsKFRMWCgoKCwsKFRQLChUAC3ALFBUUFBYUCwoVFBUKCwkLCwoUFQsKFQANBQAAAAAAAAAAAAA=',
        '5': 'JgBOAAoVExYVFBQLChUVFQkLCgwHDBQWFBUJAAtnChUUFRUVFAsJFhQVCgwGDQoLFBUUFgkAC2cKFRQVFBYTDAkWFBULCgoKCgsUFRUUCgANBQAAAAAAAAAAAAA=',
        '6': 'JgBOAAkVFRUTFhQLBxgVFQcNBw4GDxMMCBYUAAtxCBcVFhMWEg0HGBMVCQ0HDwgLEwwHGBMAC3EKFRQWFBUVCQoXExUIDgcNBg8TCwkXFAANBQAAAAAAAAAAAAA=',
        '7': 'JgA4AAoVFRUUFRQMBxcUFQoLCgwGDRQLCQwJFgkAC2cLFBQWExYVCgkWFRQKDAcNCQsUCwkNBxcKAA0F',
        '8': 'JgBOAAoVFRUTFhUKCRcTFQkMCQwTFgkMBw4TAAtxCRYTFxQUFAsKFRUVCgsHDRQVCgwHDBQAC3IJFhMXExUUCwoWFBUJCwoMExUJDAgMFQANBQAAAAAAAAAAAAA=',
        '9': 'JgBOAAkWFBUUFRUKChUVFQcNCgsUFgkLFRQJAAtnChUUFhMWFAwHFxQWBw4HDRMXBw0UFQcAC2kHGBQWExYUDAcXFBUHDwcNExYHDRMYBgANBQAAAAAAAAAAAAA=',
        '0': 'JgBIAAwTFBYUFRQLCRYUFQkNBg0VFRQVFAALcgcXFRQVFBQMBxcVFQkLCQ0TFhMWEwALcwcXExcUFRQLBxcVFQcNBw8TFRQVFAANBQ=='
    }

1 Curtiu

Boas pessoal,

Venho aqui desenterrar o post pois necessito de help :no_mouth::no_mouth:

Estou com alguns problemas na comunicação entre o ifttt e o broadlink rm_mini_3.

Antes de avançar,
Tenho comunicação entre o broadlink e o home assistant e ele comunica com a Tv sem o java script. Criei o applet e ele funciona perfeitamente com o google home mini (responde a dizer que alterou o canal mas o led branco do broadlink não atua)

Problemas
Tenho o acesso externo criado no duckdns, no entanto após configurar o applet, perco o acesso externo ao home assistant, apenas funciona no endereço interno.

Código

# broadlink Sala
  - platform: broadlink
    host: 192.168.0.12
    mac: 'xx:xx:xx:xx:xx:xx'
    timeout: 60
    friendly_name: Broadlink Home Plus
    type: sp2
python_script:
http:
  api_password: xxxxx

depois no mudar_canal.py alterei o ip assim como os packets

    def send_packet(packet):
        service_data = { 'packet': packet }
        hass.services.call('switch','broadlink_send_packet_192_168_0_12', service_data, False)

Sendo o primeiro java_script é necessário colocar algo mais no configurations.yaml ?
Esta api_password é configurada em algum outro lado ou apenas é introduzida depois nas config da applet ?

Obrigado mais uma vez :slight_smile:

Os Nuno, API password é má ideia por vários motivos. O principal é porque vai deixar de funcionar um dia destes uma vez que foi descontinuado. Estar a montar uma configuração com base num método de autenticação que vai deixar de funcionar talvez não seja muito interessante.

Talvez o @ManuelBarbosa consiga adaptar este sistema de modo a que funcione com o novo método de autenticação do HA :thinking:

Boas Tiago obrigado pela resposta :slight_smile:

Efetivamente com um work around consegui colocar em funcionamento sem ser por aqui :slight_smile:

Simplesmente adicionar a apk ao google home é possível fazer tudo e posteriormente coinfigurar com comandos em pt :blush:

Boa! Eu na altura configurei Isto e usei muito. Mas depois comprei o Harmony e começou a passar por lá em vez de passar pelo broadlink. O efeito final é o mesmo

Se puderes explica melhor a tua solução com o apk que pode servir para outros :wink:

Eu fiz o mesmo com com a app da Google home e ihc do broadlink. Embora não passe pelo HA. Mas é bem simples e prático de configurar.

Boas, malta,

Primeiro de tudo, obrigado por toda a informação que vocês estão aqui a partilhar.
Agora o problema é que não estou a conseguir que o IFTTT chame o serviço do HA. Eu lanço o comando de voz do Google Home Mini, ele diz que executa o comando. O IFTTT chama o applet. O HA diz-me que não encontra o serviço.

Unable to find service switch/broadlink_send_192_168_1_70

Já experimentei com os seguintes serviços:
broadlink_send_192_168_1_70
broadlink_send_packet_192_168_1_70
Já experimentei também com pontos em vez do underscore

Se eu usar o serviço nas developer tools do HA e colocar o JSON, ele muda o canal perfeitamente, portanto não será da comunicação entre o HA e o Broadlink. Penso que será mesmo do python script.

Será que me podem dar uma ajudinha?
O Broadlink é o RM mini 3

Grande abraço a todos

@Hugo_Serras mas tens mesmo necessidade de fazer através do HA, eu tenho isso configurado sem ser a passar pelo HA. Mas não sei as tuas necessidades. Eu apenas adicionei os canais no ihc e associei a minha conta ihc ao goggle home. É mais simples.

Bruno, vou averiguar isso. Necessidade não tenho, apenas queria mudar os canais pelo Google Home Mini. Vou testar e depois digo algo aqui.

Obrigadão, Bruno

1 Curtiu

Se tiveres dúvidas diz que eu tento ajudar.

Viva!
A estrutura do serviço mudou, digo isto porque configurei recentemente o meu broadlink e tive de procurar a informação.

Exemplo retirado de Home assistant broadlink

script:
  tv_select_source:
    sequence:
      - service: broadlink.send
        data:
          host: 192.168.0.107
          packet:
            - "JgCMAJSSFDYUNhQ2FBEUERQRFBEUERQ2FDYUNhQRFBEUERQRFBEUERQRFDYUERQRFBEUERQRFDYUNhQRFDYUNhQ2FDYUNhQABfWUkhQ2FDYUNhQRFBEUERQRFBEUNhQ2FDYUERQRFBEUERQRFBEUERQ2FBEUERQRFBEUERQ2FDYUERQ2FDYUNhQ2FDYUAA0FAAAAAAAAAAAAAAAA"
            - "JgBGAJSTFDUUNhM2ExITEhMSExITEhM2EzYTNhQRFBEUERQRFBEUNRQ2ExITNhMSExITNhMSExITEhM2ExITNhQ1FBEUNhMADQUAAA=="

Se fores ao menu developer -> services, consegues evocar o serviço manualmente, se precisares de ajuda diz

@maxcalavera Obrigado pela ajuda. À pouco estive a fazer uma pequena configuração com o IHC e já consigo mudar os canais. Mas mesmo assim acho que preferia passar pelo HA com o IFTTT, porque acho que se torna um bocado mais versátil, no sentido em que posso configurar as frases que eu quero para mudar os canais ou o que quer que seja. Mas independentemente disso, muito obrigado pela ajuda. Até ter mais tempo, é da maneira que tu indicaste que vou usar.

@asmp Muito obrigado pela resposta. Sim, eu adquiri o broadlink à muito pouco tempo, e já percebi que a estrutura das configurações alterou bastante. Da maneira que estás aqui a explicar, como é que fazemos para configurar os canais. Tem de ser um packet por canal? Como é que poderia ser feito o que era feito anteriormente com o script python, em que tinhamos a lista dos canais e podiamos chamar o serviço por número do canal ou pelo nome do canal?

Obrigado a ambos

@Hugo_Serras em que sentido é que as frases no HA são mais versáteis? Tu podes usar OK Google change to fox, ou OK Google change to channel one. Eu uso a primeira.

@maxcalavera Concordo plenamente contigo. Funciona porreiro, mas nem sempre. Mas pode ser que tenha sido algo errado do meu lado e ainda vou fazer mais testes. Por exemplo, a chamar o canal Hollywood, o Google Home Mini não se orienta. Chateia-me também que um gajo em certos comandos uma pessoa tem de dizer “on device” ou “on set top box”. Mas no geral funciona bem, sem dúvida. E agradeço imenso a tua ajuda. Como disse, ainda vou fazer mais testes e depois faço aqui uns updates.

Podes criar rotinas…

Ou…

1 Curtiu

Viva,

Eu peguei num tuturial que existe aqui no forum (este) e alterei os comandos para o novo formato do serviço. Carreguei no ficheiro scripts.yaml a informação:



#scripts com comandos para envio por broadlink 
  vdf_on_off:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAsUFBYUFRUKCxQVFQoLCgoVFRUKChUKAAtmDBMUFRUVFAsLFBUVCgoLChUUFQsKFQoAC2YLFBQVFRUUCwsUFRUKCgsKFBUVCwoVCgANBQAAAAAAAAAAAAA' 
  vdf_ok:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBUAAsUFBUUFhUKCxQUFgoKCwoVCgsKCgoLFAsAC2UMExQWFBUUCwsUFBYKCgsKFQoLCgoLChUKAAtmCxQUFRQWFAsKFRQVCwoLChUKCwoKCgsUCwANBQAAAAA=' 
  vdf_cima:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAwTFBUVFRQLCxQUFQsKCwoVCgsUCwoUAAtxCxQUFRUVFAsLFBUUCwoLChQLCxQLChUAC28LFBUVFBUUCwsUFRULCgoKFAsLFAsKFAANBQAAAAAAAAAAAAA=' 
  vdf_baixo:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgA0AAwTFBUVFRQLCxQUFgoKCwoUCwsUFRUKAAtmDBMUFRQWFAsLFBQVCwoLChQLChUVFAsADQUAAAAA' 
  vdf_esquerda:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAsVFBUUFRULChUUFQsKCgoVCwoKCxQVAAtwCxQVFRQVFQoLFBUVCgoLChQLCwoLFBUAC3ALFBUUFRUVCgsUFRQLCgsKFQoLCgoVFAANBQAAAAAAAAAAAAA=' 
  vdf_direita:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgA0AAsUFBUVFRQLCxQUFQsKFBYKCgsKCwoVAAtvCxQVFRUUFAsLFBUVCgoVFQsKCgoLChQADQUAAAAA' 
  vdf_play_pausa:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgA0AAsUFBUUFhUKChUUFQsKFAsLFBQLCxQLAAtlDBQUFRQVFQsKFRQVCwoUCwsUFAsLFAsADQUAAAAA' 
  vdf_stop:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgAwAAsVFRQVFBULChUUFQsKFQoKFRQVFAALcQsUFBUVFRUKCxQUFQsKFQoLFBUVFQANBQAAAAAAAAAA=' 
  vdf_gravar:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgA0AAwTFBYUFRQLCxQUFgoKFQsKCgsUCwoUAAtxDBMUFRUVFAsLFBQVCwoVCgsKCxQLChUADQUAAAAA'
  vdf_guide:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgA4AAoVFBUVFRQLChUUFQsKFAsLCgoLCgoLFAsAC2ULFBUVFRQUCwsUFRUKCxQLCgoLCgsKChUKAA0F'

  vdf_sair:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgA0AAsUFRUUFRQLCxQVFQsKFQoKCgsKCxQUAAtxCxQVFBUVFAsLFBUUCwoUCwsKCwoKFRUADQUAAAAA'
  vdf_voltar:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAwTFRQUFRULChUVFAsKFAsLCgoVFRQLAAtlDRIVFRUUFAsLFBUVCwoVCgoKCxUUFQsAC2UMExUUFRUUCwoVFRQLChQLCwoKFRUUCwANBQAAAAAAAAAAAAA='
  
  vdf_tecla1:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBUAAwTFhQVFBYIDBQWEwwIDAgNCAwJDAgXEwwAC1kMExYUFhMWCA0TFhMMCAwIDQgNCAwIFxQLAAtaDBMWExYUFQkMExYUCwgNCA0IDAgNCBcTDAANBQAAAAA='
  vdf_tecla2:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAwTFhMWExYKCxMWFAsKCwoKCgsKFRMWAAtkDBMWExYTFgkMExYUCwkMCAwLCgoVExYAC2QNEhYTFhQWCgoUFhMLCwoKCQsLCxQUFgANBQAAAAAAAAAAAAA='
  vdf_tecla3:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBUAAwTFhMWExYIDRMWFAsIDQgMCQwIFwgNEwwAC1kMExYUFhMWCA0TFhMMCAwIDQgNCBgGDRQLAAtaDBMWExYUFggMFBYTCwkMCA0IDAkWCA0TDAANBQAAAAA='
  vdf_tecla4:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAwTFhMXExYIDBQWEwsJDAgNCBcTDAgXAAtkCxQWExYTFggNExYUCwgNCAwJFhQLCBcAC2ULExYUFhMWCA0TFhMMCA0IDAgXFAsIFwANBQAAAAAAAAAAAAA='
  vdf_tecla5:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAwTFhMWFBYIDBQWEwsJDAgNCBcTFhMMAAtZDBMWFBYTFggNExYTDAgNCAwIFxMWFAsAC1oMExcTFhMWCAwUFhMMCAwIDQgYEhcTCwANBQAAAAAAAAAAAAA='
  vdf_tecla6:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAkWExYUFRQLChUUFQoLCgsJCxQLChUUAAtmCRYUFRQVFAsKFRQWCQsKCwkLFAsKFRQAC2YKFRQWFBUUCwoVFBUKCwoLCQsUCwoVFAANBQAAAAAAAAAAAAA='
  vdf_tecla7:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - ' JgA4AAsVFRQUFRULChUUFQsKCgsKChQLCwoLFAsAC2UMExQWFBUUCwsUFBYKCgsKCwoUCwoLChUKAA0F'
  vdf_tecla8:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAsUFhMWExYIDRMWFAsIDQgXEwwIDAkWAAtlChQWFBYTFggNExYTDAgMCRYUCwkMCBcAC2QMExYTFhQWCAwUFhMLCQwIFxMMCA0IFwANBQAAAAAAAAAAAAA='
  vdf_tecla9:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBOAAwTFhMWExYIDRMWFAsJDAgXEwwIFxMMAAtZDBMWExYTFgkMExYUCwkMCBcTDAgXEwwAC1kMExYUFhMWCA0TFhMMCA0IFxMLCRYUCwANBQAAAAAAAAAAAAA='
  vdf_tecla0:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgBIAAwTFhQVFBYIDBQWEwwIDAgXFBYTFgALZAsUFhMWExYIDRMWEwwIDQgXExYTFgALZAwTFhQWExYIDRMWEwwIDAkWFBYTFgANBQ=='
  vdf_menu:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgAwAAwTFBUVFRQLCxQVFBUVFAsLFBUVCgALZg0SFRUUFRQLCxQVFRUUFQoLFRQVCwANBQAAAAAAAAAA'
        
  vdf_canal_cima:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgAwAAoVFBUUFhQLChUUFQsKFRQUFgoKFQALcAsUFBYUFRQLCxQVFQoKFRUVFAsKFQANBQAAAAAAAAAA'
        
  vdf_canal_baixo:
    sequence:
    - service: broadlink.send
      data:
        host: 192.168.1.199
        packet:
          - 'JgAwAAoVFBUVFBULChUUFQsKFRQUCwsUFQALcAsUFRUVFBQLCxQUFgoKFRUVCgsUFQANBQAAAAAAAAAA'

Abr

4 posts were split to a new topic: Controlar um projector com broadlink


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


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