Muito obrigado … pela excelente ajuda. thanks, abraço…
Boa tarde, sou novo por estas bandas, e estou a precisar de ajuda
tenho o home assistant em virtualizaçao LXD, com o ubuntu server como base.
Agora estava intrressado neste post dos combustiveis e dei conta que nao tenho/ou nao encontro a pasta /config.
Já agora eu tenho a minha configuração toda do homeassistant no ficheiro “configuration.yaml”
e apartir daqui chamo os script…
em por ai que me possa das uma maozinha???
Obrigado
Podes usar a pasta www em vez da pasta config.
algo tipo isto /home/homeassistant/.homeassistant/www/
Lê com atenção o tópico deste o inicio,para absorveres alguma informação importante.
Em relação a teres toda a configuração no configuration.yaml, tenta primeiro “arrumar” a casa toda usando os packages
📑 Como utilizar ficheiros "package", quando tiveres tudo arrumado poderás então começar a usar isto, para ser mais simples para ti se não vai se tornar um pouco confuso.
Bom dia. ja adicionei a configuraçao isto…mas mesmo assim nao mostra valores.
criei o ficheiro combustiveis.yaml
sensor:
platform: template
sensors:
#Estado do Tempo
gasoolinasimples:
value_template: "{{states.sensor.fuel_gasolina_simples_95.state}}"
unit_of_measurement: '€'
gasolinaoptima:
value_template: "{{states.sensor.fuel_gasolina_especial_95.state}}"
unit_of_measurement: '€'
gasoleosimples:
value_template: "{{states.sensor.fuel_gasoleo_simples.state}}"
unit_of_measurement: '€'
gasoleooptima:
value_template: "{{states.sensor.fuel_gasoleo_especial.state}}"
unit_of_measurement: '€'
automation:
#Ao iniciar o Home Assistant corre o batch fuel_info.sh
- alias: Correr Combustiveis
trigger:
platform: homeassistant
event: start
action:
- service: shell_command.correr_combustiveis
# O utilizador ao escrever /combustiveis no telegram recebe os preços actuais do Posto de Combustível
- alias: Precos Combustiveis
hide_entity: true
trigger:
platform: event
event_type: telegram_command
event_data:
command: '/combustiveis'
action:
service: notify.telegram
data_template:
title: 'Preços Combustíveis'
message: "
Gasolina Simples - {{states.sensor.fuel_gasolina_simples_95.state}}
Gasolina Óptima - {{states.sensor.fuel_gasolina_especial_95.state}}
Gásoleo Simples - {{states.sensor.fuel_gasoleo_simples.state}}
Gásoleo Optima - {{states.sensor.fuel_gasoleo_especial.state}}"
###############################################################################
# #
# S H E L L _ C O M MM A N D #
# #
###############################################################################
shell_command:
correr_combustiveis: 'bash /root/.homeassistant/packages/fuel.info.sh'
ficheiro fuel.info.sh
PROTOCOL="http"
HOST_IP_OR_NAME="localhost"
PORT_NUMBER="8123"
HAPASSWORD="qwerty:)"
SHOWFUELSHOPLOCATION="NO" \
Eu tenho Ubuntu server… Depois instalei através de: python virtual env
PS… Posso dar acesso teamviewer
Verifica as permissões:
chmod 755 /root/.homeassistant/packages/fuel.info.sh
E caso uses o editor notepad++, abres o ficheiro fuel.info.sh
depois clicas em:
Editar -> Conversão EOL (fim de linha) -> Converter para formato Unix
Após teres feito isto, clicas no primeiro icone do lado esquerdo
Procuras no service por: shell_command.correr_combustiveis
e fazes execute.
E verifica se já aparecem os valores.
Caso não aparecem, sugiro que leias este tópico desde início, pois contem muita informação que pode ajudar a resolver o problema.
já fiz isso…ele já estava nesse formato…quando eu reinicio o serviço ele chama pelo script.
Nao ha maneira que testar por linha de comandos???
Nao deveria colocar tb o codigo da gasolineira???algures
O código do posto de combustivel colocas dentro do fuel.info.sh como está explicado no inicio.
E já leste desde inicio o tópico? eu uso hassio , caso continues com problemas o @ricain poderá depois quando tiver tempo ajudar-te.
Ola Alexandre,
Verifica o seguinte:
- Se o script esta com 755: chmod 755 /home/homeassistant/.homeassistant/packages/fuel.info.sh
- O teu caminho esta correcto? Acho que é mais parecido com aquilo que meti em cima em venv
- Ao criares o package combustível, não deves criar os sensores porque é o próprio script que faz isso e ficam assim:
Sabendo que o numero é o numero do posto que queres extrair a informação - O teu shell command esta mal, deveria ser parecido com isso:
correr_combustiveis: 'bash script/fuel.info.sh -f "183782 184680 184524 181430 188253"'
indicando o numero do posto.
Convém releres o tópico do inicio para poderes perceberes como funciona o script a integração com o Home Assistant e assim veres o que esta mal
obrigado pela ajuda que me estao a dar…mas até agora nao mostra valores…
agora descobri uns ficheiros oculos dentro da minha pasta packages:
.data e .information…
ou seja eu estou a ir buscar os resultados mas nao aparecem na pagina.
Já chamaste o shell_command.correr_combustiveis
no developer tools como te disse lá em cima? Quando fazes isso o que te aparece no home-assistant.log
nao aparece nada,
já testei, a chamar outros shell_command
e no home-assistant.log
nao acrescenta nada
vou postar aqui alguns dos meus ficheiros, poderá ser mais facil ajudar…
https://drive.google.com/open?id=16nBbpI4b3LHfd4bVT5yGN2dbcE6rs8gk
@cafeoliveira para ser mais fácil a consulta não utilizes o Drive, usa o hastebin.com e não precisas de todos os os ficheiros apenas o que colocaste.
combustiveis.yaml
https://hastebin.com/edoxofudot.coffeescript
configuration.yaml
https://hastebin.com/atiziroqoh.shell
fuel.info.sh
https://hastebin.com/obaveqofeh.bash
groups.yaml
https://hastebin.com/wefakuluse.css
penso que é tudo…
O teu shell_command está mal terás que por:
shell_command:
correr_combustiveis: 'bash /root/.homeassistant/packages/fuel.info.sh -f "COLOCA_AQUI_O_NUMERO_DO_POSTO"'
Depois terás dessa alteracao reinicia, corre o shell_command e nas entities do HA verifica se aparecer algo começado por:
sensor.fuel…
tipo:
Após isso terás que editar o nome dos teus sensores pois eles tão mal.
Caso uses o editor notepad++, abres o ficheiro fuel.info.sh
depois clicas em:
Editar -> Conversão EOL (fim de linha) -> Converter para formato Unix
Verifica isso.