L’intégration Météo France me donne une entité weather alert pour mon département :
Je l’utilise dans un badge mushroom :
L’image est la carte du jour récupérée grâce au superbe travail réalisé sur ce topic :
Ce qui est cool avec ce topic, c’est qu’on a aussi la carte de demain. Sauf que j’ai pas la couleur de vigilance avec l’entité weather alert :
D’où ma question : comment récupérer l’alerte prévisionnelle pour demain ? Pour afficher « Vert » dans mon exemple
UP !
Personne n’a récupéré l’alerte météo du lendemain ?
Bjr, j’utilise l’api comme dessous, qui me donne une entité
Depuis ça j’utilise un template dans mon badge
today:{{ ['Neant','Vert','Jaune','Rouge'][state_attr('sensor.meteo_france_alerts_06','details').domain_max_color_id_tomorrow] }}
Ce qui est NUL c’est que l’état est différent que l’état sur la carte…et l’api est de la méme source. Il y a toujours qqc avec meteo-france…malheureusement
- sensor:
name: meteo_france_alerts_06
scan_interval: 3600
command: >
curl -X GET "https://public-api.meteofrance.fr/public/DPVigilance/v1/cartevigilance/encours" -H "accept: */*" -H "apikey: .....mon-apikey....." | jq '{details: {"domain_max_color_id_today": .product.periods[0].timelaps.domain_ids[68].max_color_id,"domain_max_color_id_tomorrow": .product.periods[1].timelaps.domain_ids[68].max_color_id, "update_time": .product.update_time}, "today": .product.periods[0].timelaps.domain_ids[68].phenomenon_items | sort_by(.phenomenon_id), "tomorrow": .product.periods[1].timelaps.domain_ids[68].phenomenon_items | sort_by(.phenomenon_id)}'
value_template: "{{ value_json.details.domain_max_color_id_today }}"
unique_id: meteo_france_alerts_06
json_attributes:
- details
- today
- tomorrow
06, c’est département 06 ? Du coup, tu devrais pas regarder le domain_ids[06]
?
Ou j’ai rien compris ?
Oui petite erreur mais 06 est pareil…que ‹ 1 › et la carte dit ‹ jaune ›
EDIT: en gros ça semble bon mais la risque pour des conneries n’est pas petit
Et ton {{ ['Neant','Vert','Jaune','Rouge']
devrait être {{ ['Neant','Vert','Jaune','Orange','Rouge']
, non ?
1 « J'aime »
Hmpf…donc j’ai fait des bettises…
Non mais c’est chouette, on avance tous les deux, du coup !
Moi j’aurais été incapable de coder
command: >
curl -X GET "https://public-api.meteofrance.fr/public/DPVigilance/v1/cartevigilance/encours" -H "accept: */*" -H "apikey: .....mon-apikey....." | jq '{details: {"domain_max_color_id_today": .product.periods[0].timelaps.domain_ids[68].max_color_id,"domain_max_color_id_tomorrow": .product.periods[1].timelaps.domain_ids[68].max_color_id, "update_time": .product.update_time}, "today": .product.periods[0].timelaps.domain_ids[68].phenomenon_items | sort_by(.phenomenon_id), "tomorrow": .product.periods[1].timelaps.domain_ids[68].phenomenon_items | sort_by(.phenomenon_id)}'
value_template: "{{ value_json.details.domain_max_color_id_today }}"
En revanche, je fais la différence entre 06 et 68
Pas des grande betisses…c’était la 69-eme dict donc 68 était bon mais l’ordre à changé. il faut que je change de strategie dans jq
Mais les domain_id ne correspondent pas aux départements ? Y’a pourtant 2A et 2B pour (j’imagine) la Corse
Tu as les ID par département, mais il y a eu du changement depuis. Pas sur que ca soit les bon:
j’ai fais une extraction dans excel
la 1ere colonne correspond au departement
la 2eme le numero a rentrer dans le commande_line [x]
product.periods[1].timelaps.domain_ids[68].max_color_id
(desolé pour la longueur, on peut pas poser un fichier txt ou xls)
domain_id (departement)
domain_ids
01
97
02
98
03
65
04
66
05
67
06
68
07
69
08
70
09
71
10
0
11
1
12
2
13
3
14
4
15
5
16
6
17
7
18
8
19
9
21
10
22
11
23
12
24
13
…
Pour l’aude 11, j’utilisais le 1.
Ici qqc qui devrait être toujours bon indépendant de l’ordre, just changer le 06 par ton dépt.
- sensor:
name: meteo_france_alerts_06
scan_interval: 3600
command: >
curl -X GET "https://public-api.meteofrance.fr/public/DPVigilance/v1/cartevigilance/encours" -H "accept: */*" -H "apikey: ........." | jq '{details: {"domain_max_color_id_today": . | .product.periods[0].timelaps.domain_ids | .[] | select ( .domain_id == "06").max_color_id, "domain_max_color_id_tomorrow": . | .product.periods[1].timelaps.domain_ids | .[] | select ( .domain_id == "06").max_color_id, "update_time": .product.update_time, "today": . | .product.periods[0].timelaps.domain_ids | .[] | select ( .domain_id == "06").phenomenon_items, "tomorrow": . | .product.periods[1].timelaps.domain_ids | .[] | select ( .domain_id == "06").phenomenon_items}}'
value_template: "{{ value_json.details.domain_max_color_id_today }}"
unique_id: meteo_france_alerts_06
json_attributes:
- details
- today
- tomorrow
1 « J'aime »
Ah je n’y étais pas, ok. Y’a domain_id (le département) et domain_ids (l’index de la liste ordonnée des domain_id)
dans le résultat, les données sont dans une ordre qui n’est pas (!) selon les dépt.
Avant, le dépt 06 était sur la 69ème position…ce qui correspond avec []68
Maintenant, je cherche pour le domain_id donc ça dewvrait toujours (?) bon
system
A fermé ce sujet ()
Mai 30, 2025, 12:40
16
Ce sujet a été automatiquement fermé après 2 jours. Aucune réponse n’est permise dorénavant.