Mon problème
Bonjour, je viens de mettre à jour Home assistant et j’ai un soucis avec météo France.
je pouvais lire la valeur des prévisions via cette variable : attributes.forecast[0].temperature
Cela ne semble plus possible avec la nouvelle version de HA, pourtant les valeurs sont bien, là mais impossible d’y acceder.
Dans state la plupart des infos ne sont pas dispo :
Une idée ?
Ma configuration
HA version 2024.4.4
Bonjour,
regarde sur ce post 2023.9 forecast meteo france, contournement pour les cartes - #34 par WarC0zes
Faut passer par un template maintenant pour récuperer le forecast dans une entité.
3 « J'aime »
Bonjour, je viens de faire la mise à jour de mon fichier de config. Et ca marche, enfin presque…
En fait si je modifie configuration.yaml avec ce code, tout marche correctement.
Par contre si je met ce code dans template.yaml, j’ai un message d’erreur.
dans configuration.yaml j’ai bien cette ligne : template: !include template.yaml
Comment faut il définir ce code dans ce fichier ? J’ai tenté de virer le « template: » quand je suis dans template.yaml mais toujours avec une erreur
Montre le message d’erreur que ta ?
dans le configuration.yaml:
template:
- trigger:
- platform: time_pattern
hours: /1
- platform: homeassistant
event: start
action:
- service: weather.get_forecasts
data:
type: daily
target:
entity_id: weather.xxxxx
response_variable: daily
sensor:
- name: Weather Forecast Jour XXXX
unique_id: weather_forecast_jour_XXXXX
state: "{{ daily['weather.xxxxx'].forecast[0].condition }}"
attributes:
forecast: "{{ daily['weather.xxxxx'].forecast }}"
Si tu veut utiliser un fichier template.yaml.
dans ton configuration.yaml, tu ajoute la ligne template: !include template.yaml
Tu créer un fichier template.yaml dans /config/
Dans le template.yaml, tu ecrit telle quelle:
- trigger:
- platform: time_pattern
hours: /1
- platform: homeassistant
event: start
action:
- service: weather.get_forecasts
data:
type: daily
target:
entity_id: weather.xxxxx
response_variable: daily
sensor:
- name: Weather Forecast Jour XXXX
unique_id: weather_forecast_jour_XXXXX
state: "{{ daily['weather.xxxxx'].forecast[0].condition }}"
attributes:
forecast: "{{ daily['weather.xxxxx'].forecast }}"
En fait j’ai déjà des templates définis dans ce fichier, et ca marche bien. Ces templates n’ont pas de trigger définis.
Dans template.yaml j’ai directement le champ sensor :
sensor:
- name: "Puissance PAC"
unit_of_measurement: "W"
state: >
{% set Pchauffe = states('sensor.owon_pc321_power_l1') | int %}
{% set Peau = states('sensor.owon_pc321_power_l2') | int %}
{{ (Pchauffe - Peau) }}
- name: "Energie PAC jour"
unit_of_measurement: "kWh"
state: >
{% set Echauffe = states('sensor.energie_jour_pac_eau') | float %}
{% set Eeau = states('sensor.energie_chauffe_eau') | float %}
{{ (Echauffe - Eeau) }}
Si je rajoutes les lignes pour le forecast comme tu les as écrites, j’ai une erreur de verif du yaml :
Configuration errors
Error loading /config/configuration.yaml: while parsing a block mapping
in « /config/template.yaml », line 1, column 3
expected , but found ‹ ›
in « /config/template.yaml », line 6, column 5
c’est - sensor:
.
la structure:
# Example configuration.yaml entry with two sections
template:
# Define state-based template entities
- sensor:
...
- binary_sensor:
...
# Define trigger-based template entities
- trigger:
...
sensor:
...
binary_sensor:
...
Oui je viens de le voir !
mais j’ai toujours un soucis.
Ca marche bien tant que je ne met pas les lignes trigger, toujours le meme message d’erreur :
- sensor:
- name: "Puissance PAC"
unit_of_measurement: "W"
state: >
{% set Pchauffe = states('sensor.owon_pc321_power_l1') | int %}
{% set Peau = states('sensor.owon_pc321_power_l2') | int %}
{{ (Pchauffe - Peau) }}
- name: "Energie PAC jour"
unit_of_measurement: "kWh"
state: >
{% set Echauffe = states('sensor.energie_jour_pac_eau') | float %}
{% set Eeau = states('sensor.energie_chauffe_eau') | float %}
{{ (Echauffe - Eeau) }}
- trigger:
- platform: time_pattern
hours: /1
- platform: homeassistant
event: start
action:
- service: weather.get_forecasts
data:
type: daily
target:
entity_id: weather.biviers
response_variable: daily
sensor:
- name: Weather Forecast Jour biviers
unique_id: weather_forecast_jour_biviers
state: "{{ daily['weather.biviers'].forecast[0].condition }}"
attributes:
forecast: "{{ daily['weather.biviersx'].forecast }}"
- trigger:
- platform: time_pattern
hours: /1
- platform: homeassistant
event: start
action:
- service: weather.get_forecasts
data:
type: hourly
target:
entity_id: weather.biviers
response_variable: hourly
sensor:
- name: Weather Forecast Heure biviers
unique_id: weather_forecast_heure_biviers
state: "{{ hourly['weather.biviers'].forecast[0].condition }}"
attributes:
forecast: "{{ hourly['weather.biviers'].forecast }}"
attention au espaces!
exemple:
- sensor:
- name: "Transmission Down Speed"
unit_of_measurement: "kB/s"
state: "{{ states('sensor.transmission_down_speed')|float * 1024 }}"
availability: "{{ is_number(states('sensor.transmission_down_speed')) }}"
- name: "Transmission Up Speed"
unit_of_measurement: "kB/s"
state: "{{ states('sensor.transmission_up_speed')|float * 1024 }}"
availability: "{{ is_number(states('sensor.transmission_up_speed')) }}"
- trigger:
- platform: time_pattern
hours: /1
- platform: homeassistant
event: start
action:
- service: weather.get_forecasts
data:
type: daily
target:
entity_id: weather.biviers
response_variable: daily
sensor:
- name: Weather Forecast Jour biviers
unique_id: weather_forecast_jour_biviers
state: "{{ daily['weather.biviers'].forecast[0].condition }}"
attributes:
forecast: "{{ daily['weather.biviersx'].forecast }}"
je crois que j’ai trouvé, probleme d’indentation avec action et trigger
un grand merci, j’ai tout compris !
1 « J'aime »