Http_request para esphome

Estou com um problema com problema para conectar dispositivos com esphome entre si, sem ter que passar pelo home assistant, como o web_send do tasmota. consigo acessar, se não tiver senha, o dispositivo b pelo dispositivo a, mas somente se não houver chave api e nem senha do web_server, algo parecido com isso: http://192.168.1.100/switch/disposito_b/turn_on. Como não quero deixar o dispositivo desprotegido, gostaria de saber se alguém sabe como acessar (sei lá, algo como http://admin:senha@192.168.1.100/switch/dispositivo_b/turn_on). Procurei tudo sobre http_request para esphome, mas só consigo acessar mesmo se não puser senha.

Configurei um device aqui com usuário e senha para simular o cenário que pretende usar, ficando dessa forma:
image

Acessei o device esphome pelo browser e verifiquei que ele usa autenticação Digest quando tem user/pass ativados:

Montei a requisição no postman e funcionou corretamente, como pode ser visto no video abaixo.

1 curtida

Valeu pela resposta. Em casa, vou testar.

Outra solução possivel é configurar o esphome como mqtt, acho mais adequado para iOT do que http.

Realmente, a autenticação é digest. Não consegui como usar assim. Com autenticação basic ficaria assim:

on_press:
  - http_request.post:
     url: http://192.168.1.100/switch/relay1/toggle
     headers:
       Content-Type: application/json
       Authorization: 'Basic XxxXxxxXXxxxxxxx='
     verify_ssl: false   

Mas com digest, não sei como ficaria.

Copia o header Authorization pelo browser e coloca no código.

Bom, finalmente consegui:

  then:
  - http_request.post:
      headers:
        Authorization: !secret aut_portaozinho
      url:  http://172.17.2.220:1976/switch/portaozinho/toggle
      id: http_request_laeccruz

authorization é toda a informação que aparece como apontou o @srlima e como informado no site do esphome:
https://esphome.io/cookbook/http_request_sensor