Récupérer la température max de la journée via Météo France

Merci beaucoup :grinning: @fredarro

Pour ma culture personnelle, comment le code permet de récupérer la température max ?
C’est le fait de prendre la 1ère valeur du tableau ...forecast')[0].temperature... ?

Le [0] pour la première valeur du tableau → Aujourd’hui
[1] pour demain, [2} après demain, …
Pour la température max : temperature
pour la température mini: templow

2 « J'aime »

Hey fredarro est ce que tu pourrais faire un template pour avoir un sensor pour la température? Je sais pas si c’est normal mais chez moi le sensor.xxxx_temperature n’existe plus.
Par contre la température est intégré dans weather.xxx

Bonjour;

voici un exemple.

temp low

{{ state_attr('weather.xxxx', 'forecast')[0].templow }}

temp high:

{{ state_attr('weather.xxxx', 'forecast')[0].temperature }}

template:

template:
  - sensor:
      - name: "Météo Temp Low"
        state: "{{ state_attr('weather.xxxx', 'forecast')[0].templow }}"

Hello,
Il me faudrait la température actuelle tout court.

Merci pour ton aide

template:
  - sensor:
      - name: "Météo Température"
        unit_of_measurement: "°C"
        state: "{{ state_attr('weather.xxxx', 'temperature') }}"
1 « J'aime »

Merci beaucoup pour ton aide! ça a fonctionné!

Bonjour, j’ai essayé les deux templates low et min disponibles ci dessus mais je dois mal m’y prendre :

{{ state_attr('weather.XXX', 'forecast')[0].templow }}

Avec XXX le nom de l’entité HA MeteoFrance qui correspond au nom de mon village

Une idée de ce que j’ai mal fait ?

Bonjour,
les forecasts des entités météo on été supprimer ce mois ci.
Faut créer un template pour récupérer les forecasts par jour, et créer un template pour la temp max et min.
Au lieu d’utiliser l’entité weather.xxx, tu utilisera l’entité du template a la place.

pour le template 2023.9 forecast meteo france, contournement pour les cartes - #34 par WarC0zes

Merci pour le retour mais… je suis débutant dans HA et un peu perdu la je t’avoue !
Si je comprends bien, il faut que j’ajoute ces portions de code directement dans le YAML de la config generale de HomeAssistant ?
Pourquoi etre passé d’un systeme simple a un truc pour codeur barbu :stuck_out_tongue:

Ayant node-red, y a t’il une methode plus aisée de faire cela ?

Oui, ce code est a mettre dans ton configuration.yaml.

Je sais pas , j’utilise pas nodered.

Bonjour,

Je souhaite récuperer la valeur de la temperature max prévue par méteo france.

J’ai collé ce code 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.champcevinel
        response_variable: daily
    sensor:
      - name: Weather Forecast Jour champcevinel
        unique_id: weather_forecast_jour_champcevinel
        state: "{{ daily['weather.champcevinel'].forecast[0].condition }}"
        attributes:
          forecast: "{{ daily['weather.champcevinel'].forecast }}"

    sensor:
      - name: temperature Forecast Jour champcevinel
        unique_id: temperature_forecast_jour_champcevinel
        state: "{{ daily['weather.champcevinel'].forecast[0].temperature }}"
        unit_of_measurement: "°C"
        attributes:
          forecast: "{{ daily['weather.champcevinel'].forecast }}"

  - trigger:
      - platform: time_pattern
        hours: /1
      - platform: homeassistant

La prévision météo fonctionne bien mais j’ai « unknown » pour la température. Pouvez vous m’aider ?

Bonjour,
ta une mauvaise syntaxe dans le template.

exemple:

  - sensor:
      - name: temperature Forecast Jour champcevinel
        unique_id: temperature_forecast_jour_champcevinel
        state: "{{ daily['weather.champcevinel'].forecast[0].temperature }}"
        unit_of_measurement: "°C"
        attributes:
          forecast: "{{ daily['weather.champcevinel'].forecast }}"
  - trigger:
      - platform: time_pattern
        hours: /1
      - platform: homeassistant
        event: start
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.champcevinel
        response_variable: daily
    sensor:
      - name: Weather Forecast Jour champcevinel
        unique_id: weather_forecast_jour_champcevinel
        state: "{{ daily['weather.champcevinel'].forecast[0].condition }}"
        attributes:
          forecast: "{{ daily['weather.champcevinel'].forecast }}"

pour recupérer la température max du jours , c’est l’entité créer par le template et non l’entité weather:

{{ state_attr('sensor.weather_forecast_jour_champcevinel','forecast')[0].temperature | float(0) }}
  - sensor:
      - name: temperature Forecast Jour champcevinel
        unique_id: temperature_forecast_jour_champcevinel
        state: "{{ state_attr('sensor.weather_forecast_jour_champcevinel','forecast')[0].temperature | float(0) }}"
        unit_of_measurement: "°C"

Pour la température min du jour:

{{ state_attr('sensor.weather_forecast_jour_champcevinel','forecast')[0].templow | float(0) }}

Merci, çà fonctionne super bien !

1 « J'aime »

Merci beaucoup, tout fonctionne parfaitement désormais !

Bonsoir à tous,
Je débute un peu sur home assistant car j’envisage de migrer depuis jeedom.
Je ne vous cache pas que j’ai un mal fou a comprendre la philosophie sur quelques aspect, et là par exemple, comme beaucoup je ne comprend pas pourquoi le système d’avant le mois dernier a été supprimé obligeant a créer des usines a gaz là ou 2 lignes suffisaient pour récupérer la temp min/max.
Bref j’ai repris le code proposé par @WarC0zes mais impossible de le faire fonctionner, j’ai biensur modifier les noms pour coller a mon install, mais HA me retourne une erreur « required key plateform » dans les logs.
J’ai tenté d’inclure la plateforme en « template » mais alors là il me remonte plusieurs erreurs.
Je vois que certains ont réussis donc j’imagine que j’ai pas pigé un truc.

J’ai donc repris précisément cela (en adaptant les noms a mon weather.):

sensor:
      - name: temperature Forecast Jour champcevinel
        unique_id: temperature_forecast_jour_champcevinel
        state: "{{ daily['weather.champcevinel'].forecast[0].temperature }}"
        unit_of_measurement: "°C"
        attributes:
          forecast: "{{ daily['weather.champcevinel'].forecast }}"
  - trigger:
      - platform: time_pattern
        hours: /1
      - platform: homeassistant
        event: start
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.champcevinel
        response_variable: daily
    sensor:
      - name: Weather Forecast Jour champcevinel
        unique_id: weather_forecast_jour_champcevinel
        state: "{{ daily['weather.champcevinel'].forecast[0].condition }}"
        attributes:
          forecast: "{{ daily['weather.champcevinel'].forecast }}"

tout ceci ajouté dans mon configuration.yaml

Re,
Merci @WarC0zes, je n’ai pas vraiment compris ce que j’ai fais encore, mais j’ai repris le tuto d’origine que tu avais cité,
J’ai suivi et combiné un peu avec ce qui était ici et cela fonctionne.
Je prendrais un peu de temps a tête reposer pour comprendre tout ça pour l’assimiler,
Merci encore pour le tuto,
Sebastien

Bonjour,
il te manquais le template: au debut du code et le premier sensor: il manque un - devant.
Faire attention au espaces qui sont important.

corrigé:

template:
  - sensor:
      - name: temperature Forecast Jour champcevinel
        unique_id: temperature_forecast_jour_champcevinel
        state: "{{ daily['weather.champcevinel'].forecast[0].temperature }}"
        unit_of_measurement: "°C"
        attributes:
          forecast: "{{ daily['weather.champcevinel'].forecast }}"
  - trigger:
      - platform: time_pattern
        hours: /1
      - platform: homeassistant
        event: start
    action:
      - service: weather.get_forecasts
        data:
          type: daily
        target:
          entity_id: weather.champcevinel
        response_variable: daily
    sensor:
      - name: Weather Forecast Jour champcevinel
        unique_id: weather_forecast_jour_champcevinel
        state: "{{ daily['weather.champcevinel'].forecast[0].condition }}"
        attributes:
          forecast: "{{ daily['weather.champcevinel'].forecast }}"

Yes c’est en effet ça :slightly_smiling_face: merci
Depuis c’est bien ok, un peu usine a gaz mais ça marche c’est l’essentiel.

Maintenant me faut chercher a comprendre les inclusions de fichiers YAML pour faire un peu propre sur certaines choses parce que le configuration.yaml commence a pas etre joli joli

merci encore pour ton aide,
Sebastien