Como publicar os preços dos combustíveis no seu Home Assistant

Não desistindo de não conseguir, pesquisei um pouco e faltava isso no ficheiro configuration.yaml:

api:

Mesmo com isso não me cria o sensor :frowning:
Fui ao site do HA e experimentei isso conforme dizem:

curl -s -X GET -H “x-ha-access: YOUR_PASSWORD” -H “Content-Type: application/json” https://localhost:8123/api/

Mas não obtenho resposta, o que me indica que o serviço api não esta a funcionar :frowning:

Depois de teres adicionado o api: reiniciaste o HA? Não basta reiniciar o core, tem de de ser o sistema todo

Sim, 2 vezes para tirar as teimas.

O problema do @joaocosme teve a ver com o certificado SSL não corresponder ao endereço interno.

Se não conseguirem garantir o acesso ao Hass.io pelo URL com SSL válido, no script, terão de acrescentar logo a seguir à instrução curl um -k:
curl -k

1 Curtiu

@ricard0g0mes faz isso que o Álvaro disse acima. O teu problema parece ser identico.

obrigado @designerferro :slight_smile:

1 Curtiu

Era isso :smiley:
Já consegui pôr a funcionar :slight_smile:

3 Curtiram

e deixo o -s?
no script tem 2 linhas com curl -s xxxxxxxxx
altero as 2 para curl -k -s xxxxxxx ?
vou experimentar das 2 formas :smiley:

Já funcionou!!! :smiley:
São 3 linhas com comandos curl :smiley:

para quem tem o mesmo problema, alterem as 2 linhas onde tem curl -s passa a curl -k -s

Só precisas de alterar a ultima do curl que envia para o HA (linha 112):

then
                # DEBUG
                #echo "$LABEL $FUELPRICE"
                # Add to home-assistant
                curl -s -k -X POST -H "x-ha-access: $HAPASSWORD" \
                -H "Content-Type: application/json" \
                -d '{"state": "'$FUELPRICE'", "attributes": {"unit_of_measurement": "€", "icon": "mdi:gas-station", "friendly_name":"'"$FRIENDLYNAME"'"}}' \
                $PROTOCOL://$HOST_IP_OR_NAME:$PORT_NUMBER/api/states/sensor.fuel_$SENSOR >/dev/null 2>&1
            fi

Top Malta fico contente por terem conseguido posto a bombar. Agora é so tornar isso util :slight_smile:

Não está fácil para estes lados…
Tenho o script com as permissões… dados alterados no seu interior… e copiei o codifo do @RodolfoVieira e… dá-me este erro:

2018-05-13 13:20:34 ERROR (MainThread) [homeassistant.components.shell_command] Error running command: `bash /config/script/fuel.info.sh -f "170157"`, return code: 7
NoneType: None

Ja adicionei tb o - k no script.

Podem ajudar malta?

Aqui “/config/script/fuel.info.sh” onde diz config é a localização do ficheiro.

Em hassbian fica assim: “bash /home/homeassistant/.homeassistanat/script/fuel.info.sh” (por exemplo)
Já lançaste manualmente o script pelo putty por exemplo?

O que podes fazer é isso para testar se a api no HA funciona:

curl -k -s -X GET -H “x-ha-access: YOUR_PASSWORD” -H “Content-Type: application/json” https://localhost:8123/api/

Eu estou com Hass.io e o script está na pasta correta.

Corro no putty o seguinte?

curl -k -s -X GET -H “x-ha-access: XPTOPASS” -H “Content-Type: application/json” https://marreco.duckdns.org:8123/api/

EDIT: Corri o comando e nada mudou :confused:

Sim se o hass.io permite teres acesso por putty. Vai te permitir testar se a api funciona no HA.

https://developers.home-assistant.io/docs/en/external_api_rest.html

Edit: se funcionar deves ter a seguinte resposta:

{
  "message": "API running."
}

Tens o api: activo no configuration.yaml?

Não me retornou mensagem nenhuma :confused:
Correu o comando e nada mais! :frowning:

Boas tardes Jorge,

Tenho assim:

http:
  base_url: !secret key_base_url
#  server_port: 8123
  api_password: !secret key_api_password
  ssl_certificate: /ssl/fullchain.pem
  ssl_key: /ssl/privkey.pem
  ip_ban_enabled: True
  login_attempts_threshold: 5

Falta aí ao api: Tens que que pôr, vê aí: Como publicar os preços dos combustíveis no seu Home Assistant

edit: https://www.home-assistant.io/components/api/


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


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