Como receber por notificação imagem de uma camera e ver ao vivo


(Rodolfo) #1

https://www.dropbox.com/s/s2j6d5hvsha9zpl/camsecurity.jpg?dl=0

Neste mini tutorial apresento uma ideia que já tinha metade em curso, faltava outra…
Que não é mais nada menos que receber uma notificação via Telegram, quando te tocam na campainha, e nessa notificação vir agregada a ela uma imagem , como também um link para veres ao vivo o que se está a passar.
Caso ainda não tenhas o Telegram instalado pesquisa no forum por Telegram encontrás vários tutoriais como também todos os passos para que funcione.

Pressupondo que já tens uma camera integrada no teu Home Assistant vou te deixar apenas a parte do ACTION.

O resto da automação fica ao teu critério,

  service: notify.telegram
  data:
    title: Ring Ring
    message: 'Campainha'
    data:
      photo:
        - url: 'https://TEU_ENDERECO_DNS:8123/api/camera_proxy/camera.NOME_DA_TUA_CAMERA?api_password=PASSWORD_DO_TEU_HA''
          caption: 'Ver ao vivo https://TEU_ENDERECO_DNS:8123/api/camera\_proxy\_stream/camera.NOME_DA_TUA_CAMERA?api\_password=PASSWORD_DO_TEU_HA'

Ou seja ficará assim: (atenção nomes ficticios)

  service: notify.telegram
  data:
    title: Ring Ring
    message: 'Campainha'
    data:
      photo:
        - url: https://manel.duckdns.org:8123/api/camera_proxy/camera.manel?api_password=manel
          caption: Ver ao vivo https://manel.duckdns.org:8123/api/camera\_proxy\_stream/camera.manel?api\_password=manel

Se repares na parte do Caption as \ estão ao contrário, de uma forma não funciona.

Resultado:

https://www.dropbox.com/s/h8pdwf8oeq18hzc/resultado.jpg?dl=0

Créditos @CarlosMartins


(Jhonathan) #2

Camera e Telegram funcionando. Testei a automação utilizando comando via telegram e me retornou este erro.

2018-07-26 12:22:55 ERROR (SyncWorker_9) [homeassistant.components.telegram_bot] Can't load data into ByteIO: HTTPSConnectionPool(host='xxx.duckdns.org', port=8123): Max retries exceeded with url: /api/camera_proxy/camera.cam?api_password=xxx (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73240050>: Failed to establish a new connection: [Errno 111] Connection refused',))
2018-07-26 12:22:55 ERROR (SyncWorker_9) [homeassistant.components.telegram_bot] Can't send file with kwargs: {'title': 'Teste', 'message': 'Video', 'url': 'https://xxx.duckdns.org:8123/api/camera_proxy/camera.cam?api_password=xxx'}



- alias: Video
  initial_state: "on"
  trigger:
    platform: event
    event_type: telegram_command
    event_data:
      command: '/lapse'
  action:
    service: notify.pushtelegram
    data:
      title: Teste
      message: 'Video'
      data:
        photo:
          - url: https://xxx.duckdns.org:8123/api/camera_proxy/camera.cam?api_password=xxx

(Rodolfo) #3

testa-te como coloquei acima usando o url e o caption?


(Jhonathan) #4
2018-07-26 13:11:40 ERROR (SyncWorker_12) [homeassistant.components.telegram_bot] Can't load data into ByteIO: HTTPSConnectionPool(host='xxx.duckdns.org', port=8123): Max retries exceeded with url: /api/camera_proxy/camera.cam?api_password=xxx(Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x6cffa770>: Failed to establish a new connection: [Errno 111] Connection refused',))
2018-07-26 13:11:40 ERROR (SyncWorker_12) [homeassistant.components.telegram_bot] Can't send file with kwargs: {'title': 'Teste', 'message': 'Video', 'url': 'https://xxx.duckdns.org:8123/api/camera_proxy/camera.cam?api_password=xxx', 'caption': 'Ver ao vivo https://xxx.duckdns.org:8123/api/camera\\_proxy\\_stream/camera.manel?api\\_password=xxx'}

Encontrei algo parecido, estou na 0.74.0


(Sebastião Lopes) #5

Boa noite
Acontece-me a mesma coisa e e se colocar o link num browser a imagem aparece correctamente.

Cumprimentos
Sebastião


(Rodolfo) #6

@sslopes coloca aqui a automação que estás a usar por favor.


(Sebastião Lopes) #7

Boa noite Rodolfo
Aqui vai

- alias: Correio Motion Detected
  initial_state: True
  trigger:
    - platform: state
      entity_id: sensor.sn3_pir
      from: "em espera"
      to: "movimento detectado"
  action:
    - service: notify.telegram
      data:
        title: Ring Ring
        message: "Correio"
        data:
          photo:
            - url: https://xxxxxxxx.duckdns.org:8123/api/camera_proxy/camera.sala?api_password=xxxxxxxx
              caption: Ver ao vivo https://xxxxxxxx.duckdns.org:8123/api/camera_proxy/camera.sala?api_password=xxxxxxxx

Obrigado


(Rodolfo) #8

@sslopes testa sff

   - alias: Correio Motion Detected
      initial_state: True
      trigger:
        - platform: state
          entity_id: sensor.sn3_pir
          from: "em espera"
          to: "movimento detectado"
      action:
        - service: notify.telegram
          data:
            title: Ring Ring
            message: "Correio"
            data:
              photo:
                - url: https://xxxxxxxx.duckdns.org:8123/api/camera_proxy/camera.sala?api_password=xxxxxxxx
                  caption: Ver ao vivo https://xxxxx.org:8123/api/camera\_proxy\_stream/camera.sala?api\_password=xxxxx

(Sebastião Lopes) #9

O Rodolfo tirou no caption: o duckdns. Foi sem querer ou é para ficar mesmo assim?


(Rodolfo) #10

Foi sem crer. Podes colocar.


(Sebastião Lopes) #11

Já testei e está igual. O link, num browser, continua a mostar a imagem tirada pela câmara. Se coloco um link de uma imagem qualquer que encontre na net, essa imagem é enviada correctamente para o telegram. Se coloco uma imagem que esteja no WWW do cartão de memória já não é enviada.
Já ando a debater-me com este problema à dias e não encontro solução.

- url: https://192.168.1.18:8123/postman.png - não dá
- url: https://xxxxxxxx.duckdns.org:8123/postman.png - não dá
- url: https://xxxxxxxx.duckdns.org/local/postman.png - não dá

- url: https://foonster.com/images/postman.png - dá

Cumprimentos
Sebastião


(Rodolfo) #12

@sslopes o que acontece se puseres isto no browser:

https://xxxxxxxx.duckdns.org:8123/api/camera_proxy/camera.sala?api_password=xxxxxxxx

E tenta:

- url: https://xxxxxxxx.duckdns.org:8123/local/postman.png


(Sebastião Lopes) #13

Bom dia Rodolfo
Tentei as duas formas que sugeriste no teu último post. No primeiro link consigo ver perfeitamente uma imagem da câmara e no segundo a imagem que está no cartão de memória. Só que, não estou em casa. Quando chegar a casa vou ver no pc (que está ligado por cabo ao router) e no portátil/telemóvel por wifi. Depois digo alguma coisa.

Cumprimentos
Sebastião


(Sebastião Lopes) #14

Ponto de situação:

Fora de casa

  • Vejo os dois links no browser
  • Na automação do HA não funcionam

Em casa

  • No pc (ligado por cabo ao router) vejo os dois links no browser;
  • No portátil/telemóvel (ligados por wifi) não vejo os links. Se desligo wifi, passo a ver;
  • Na automação do HA não funcionam.

Os erros no HA são:

Em relação à imagem da câmara

Em relação à imagem do cartão de memória

  • Can’t send file with kwargs: {‘title’: ‘Ring Ring’, ‘message’: ‘Correio’, ‘url’: ‘https://xxxxxxxx.duckdns.org:8123/local/postman.png’, ‘caption’: ‘Chegou o correio’}

  • Can’t load data into ByteIO: HTTPSConnectionPool(host=‘xxxxxxxx.duckdns.org’, port=8123): Max retries exceeded with url: /local/postman.png (Caused by NewConnectionError(’<urllib3.connection.VerifiedHTTPSConnection object at 0x71fb9810>: Failed to establish a new connection: [Errno 111] Connection refused’,)

Cumprimentos
Sebastião


(Nuno Neves) #15

O router provavelmente não permite “return”. Se mudares do duckdns para o IP interno já deve funcionar por Wi-Fi… Claro que deixa de funcionar doutra forma… :confused:
Se conseguires alterar a política no router…


(Rodolfo) #16
- alias: Correio Motion Detected
  initial_state: True
    trigger:
      - platform: state
        entity_id: sensor.sn3_pir
        from: "em espera"
        to: "movimento detectado"
    action:
      - service: notify.telegram
        data:
          title: Ring Ring
          message: "Correio"
          data:
            photo:
              - url: 'https://xxxxxxxx.duckdns.org:8123/api/camera_proxy/camera.sala?api_password=xxxxxxxx'
                caption: 'Ver ao vivo https://xxxxx.org:8123/api/camera\_proxy\_stream/camera.sala?api\_password=xxxxx '

(Rodolfo) #17

@sslopes podes confirmar se funcionou?


(Sebastião Lopes) #18

Bom tarde Rodolfo
Desculpa ainda não ter dito nada. Não funcionou.
Estou desconfiado do meu router. É o novo da NOS (4.0) É pena não ter feedback de alguém aqui do fórum que tenha um igual. Vou esperar por um router que o meu filho me vai emprestar e tentar configurar o modo Bridge na porta LAN 4 (O 4.0 permite fazer isso) e tentar ultrapassar o problema.
Entretanto, já tenho o octoprint integrado no HA e também o Broadlink RM mini 3, tudo impecável.

Cumprimentos
Sebastião


(Rodolfo) #19

@sslopes, desculpa insistir no assunto, mas após teres feito última alteração que falei que já inclui as ' ' que erro obtens quando a automação corre?


(Sebastião Lopes) #20

Não tens que pedir desculpa. Eu agradeço.
Voltei a confirmar por via das dúvidas e os erros são os mesmos.