# Nouvelle intégration : AtmoFrance - Qualité de l'air

**URL:** <https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147>\
**Category:** Dev\
**Tags:** integration\
**Created:** [Mai 22, 2023, 4:16 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147 "2023-05-22T16:16:55Z")\
**Posts on this page:** 20\
**Page:** 3

<div class="post-metadata">

**Author:** ![thetux](https://forum.hacf.fr/user_avatar/forum.hacf.fr/thetux/32/23734_2.png) [@thetux](https://forum.hacf.fr/u/thetux)\
**Post date:** [Février 6, 2024, 12:48 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/41 "2024-02-06T12:48:49Z")

</div>

bonjour,  
merci pour cette intégration 🙂  
petite question, en combien de temps votre demande de compte pour accéder à l’api a t’elle été traitée ?  
merci

---

<div class="post-metadata">

**Author:** ![thetux](https://forum.hacf.fr/user_avatar/forum.hacf.fr/thetux/32/23734_2.png) [@thetux](https://forum.hacf.fr/u/thetux)\
**Post date:** [Février 9, 2024, 10:40 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/42 "2024-02-09T10:40:42Z")

</div>

Bonjour,  
Bon du coup, après 1 semaine, mon compte a bien été validé et j'ai pu exploiter les données sur mon dashbord:

 ![image](https://forum.hacf.fr/uploads/default/original/3X/f/7/f7fb9b144226473cc87dfac03fb27fb2cd988e10.png)  
merci pour l'intégration

---

<div class="post-metadata">

**Author:** ![Hankey71](https://forum.hacf.fr/user_avatar/forum.hacf.fr/hankey71/32/7560_2.png) [@Hankey71](https://forum.hacf.fr/u/Hankey71)\
**Post date:** [Février 9, 2024, 11:03 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/43 "2024-02-09T11:03:37Z")

</div>

@thetux J'étais dans le même cas que toi ! J'ai eu l'activation ce matin !  
Je viens de tester l'intégration et de mon côté je vais rester avec WAQI qui reste plus précis pour ma commune.  
avec ATMO :

 ![Capture d'écran 2024-02-09 120058](https://forum.hacf.fr/uploads/default/original/3X/e/0/e0cdcf3d7dbadb207b64d78f53c07575dba01013.png)

avec WAQI :

 ![Capture d'écran 2024-02-09 120112](https://forum.hacf.fr/uploads/default/original/3X/b/3/b34ef2522a4f7b2559785ca6558c9896105929a1.png)  
De plus, les données présentes sur WAQI proviennent, pour partie, d'ATMO :  
 ![Capture d'écran 2024-02-09 120233](https://forum.hacf.fr/uploads/default/original/3X/6/0/60e33ccc38f75708e8c4df1f466fe419a36ed1b9.png)

---

<div class="post-metadata">

**Author:** ![bentou](https://forum.hacf.fr/user_avatar/forum.hacf.fr/bentou/32/13874_2.png) [@bentou](https://forum.hacf.fr/u/bentou)\
**Post date:** [Février 9, 2024, 12:05 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/44 "2024-02-09T12:05:06Z")

</div>

Joli ta carte !!!  
moi j'ai fait ca:

 ![image](https://forum.hacf.fr/uploads/default/original/3X/a/6/a699e04dc2f5f58d31b0d6f973c6e6a592c18d5b.png)

```auto
type: vertical-stack
cards:
  - type: horizontal-stack
    title: Qualité de l'air
    cards:
      - type: custom:button-card
        color_type: card
        entity: sensor.dioxyde_de_soufre_mezidon_les_2_pognes
        name: SO² dioxyde de soufre
        state:
          - value: 1
            color: lightgreen
          - value: 2
            color: green
          - value: 3
            color: yellow
          - value: 4
            color: red
          - value: 5
            color: darkred
          - value: 6
            color: darkviolet
        styles:
          card:
            - height: 90px
            - font-size: 15px
      - type: custom:button-card
        color_type: card
        entity: sensor.dioxyde_d_azote_mezidon_les_2_pognes
        name: NO² dioxyde d'azote
        state:
          - value: 1
            color: lightgreen
          - value: 2
            color: green
          - value: 3
            color: yellow
          - value: 4
            color: red
          - value: 5
            color: darkred
          - value: 6
            color: darkviolet
        styles:
          card:
            - height: 90px
            - font-size: 15px
      - type: custom:button-card
        color_type: card
        entity: sensor.ozone_mezidon_les_2_pognes
        name: 03 Ozone
        state:
          - value: 1
            color: lightgreen
          - value: 2
            color: green
          - value: 3
            color: yellow
          - value: 4
            color: red
          - value: 5
            color: darkred
          - value: 6
            color: darkviolet
        styles:
          card:
            - height: 90px
            - font-size: 15px
  - type: horizontal-stack
    title: Particules
    cards:
      - type: custom:button-card
        color_type: card
        entity: sensor.pm10_mezidon_les_2_pognes
        name: PM < 10µm
        state:
          - value: 1
            color: lightgreen
          - value: 2
            color: green
          - value: 3
            color: yellow
          - value: 4
            color: red
          - value: 5
            color: darkred
          - value: 6
            color: darkviolet
        styles:
          card:
            - height: 90px
            - font-size: 15px
      - type: custom:button-card
        color_type: card
        entity: sensor.pm25_mezidon_les_2_pognes
        name: PM < 2.5µm
        state:
          - value: 1
            color: lightgreen
          - value: 2
            color: green
          - value: 3
            color: yellow
          - value: 4
            color: red
          - value: 5
            color: darkred
          - value: 6
            color: darkviolet
        styles:
          card:
            - height: 90px
            - font-size: 15px
      - type: custom:button-card
        color_type: card
        entity: sensor.qualite_globale_mezidon_les_2_pognes
        name: Qualité globale
        state:
          - value: 1
            color: lightgreen
          - value: 2
            color: green
          - value: 3
            color: yellow
          - value: 4
            color: red
          - value: 5
            color: darkred
          - value: 6
            color: darkviolet
        styles:
          card:
            - height: 90px
            - font-size: 15px
  - type: gauge
    entity: sensor.qualite_globale_mezidon_les_2_pognes
    min: -0.5
    max: 6.5
    needle: true
    segments:
      - from: -0.5
        color: white
      - from: 0.5
        color: lightgreen
      - from: 1.5
        color: green
      - from: 2.5
        color: yellow
      - from: 3.5
        color: red
      - from: 4.5
        color: darkred
      - from: 5.5
        color: darkviolet
    name: Qualité Globale de l'air
    unit: sur 6

```

---

<div class="post-metadata">

**Author:** ![thetux](https://forum.hacf.fr/user_avatar/forum.hacf.fr/thetux/32/23734_2.png) [@thetux](https://forum.hacf.fr/u/thetux)\
**Post date:** [Février 9, 2024, 1:04 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/45 "2024-02-09T13:04:09Z")

</div>

d’accord merci pour l’info 🙂 mais pour ce que je souhaites pour le moment, atmo me suffit largement, mais si un jour je vois que ça ne suffit plus je serai vers quelle intégration me tourner 🙂

---

<div class="post-metadata">

**Author:** ![thetux](https://forum.hacf.fr/user_avatar/forum.hacf.fr/thetux/32/23734_2.png) [@thetux](https://forum.hacf.fr/u/thetux)\
**Post date:** [Février 9, 2024, 1:04 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/46 "2024-02-09T13:04:32Z")

</div>

c’est très sympa aussi 😉

---

<div class="post-metadata">

**Author:** ![roumano](https://forum.hacf.fr/letter_avatar_proxy/v4/letter/r/f14d63/32.png) [@roumano](https://forum.hacf.fr/u/roumano)\
**Post date:** [Février 9, 2024, 1:19 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/47 "2024-02-09T13:19:09Z")

</div>

C'est bien le problème avec AtmoFrance qui n'affiche pas les valeurs que la note global , ...  
Du coup, impossible a comparer, suivre les évolutions, ...

Or, les données existe sur les Atmo par régions,  
c'est pour ça que je me connecte sur le serveur d'api atmo auvergnerhones alpes ( [https://www.atmo-auvergnerhonealpes.fr](https://www.atmo-auvergnerhonealpes.fr) ) et pas atmo france ...

De plus, avoir des valeurs, m'a permis de me crée un dashboard grafana pour voir l'évolution dans le temps

 ![Capture d’écran du 2024-02-09 14-12-48](https://forum.hacf.fr/uploads/default/original/3X/b/2/b21aa04aaa798aad1179e91e8172dab8394e65b2.png)

---

<div class="post-metadata">

**Author:** ![Lesuperlolo](https://forum.hacf.fr/user_avatar/forum.hacf.fr/lesuperlolo/32/21946_2.png) [@Lesuperlolo](https://forum.hacf.fr/u/Lesuperlolo)\
**Post date:** [Février 9, 2024, 2:56 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/48 "2024-02-09T14:56:42Z")

</div>

Super, mais comment récupères-tu les données.  
J’ai un équivalent aquitaine d’Atmo, mais je ne vois pas de lien vers une Api ?

---

<div class="post-metadata">

**Author:** ![roumano](https://forum.hacf.fr/letter_avatar_proxy/v4/letter/r/f14d63/32.png) [@roumano](https://forum.hacf.fr/u/roumano)\
**Post date:** [Février 9, 2024, 3:19 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/49 "2024-02-09T15:19:47Z")

</div>

je le fait avec l’integration multiscrape et voici le code associé ( il suffit de remplace xxxx par ton token, yyyy par le code de la ville et zzz par le nom de ta ville :

PS: le code est assez gros mais 80% des lignes sont pour convertir le niveau d’alerte en texte  
PS2: le token n’expire jamais ( ce qui est fort pratique)

```auto
- name: Qualité de l'air zzzzz
  resource: http://api.atmo-aura.fr/api/v1/communes/yyyy/indices/atmo?api_token=xxxxxxx&date_calcul=yesterday&echeance=1
  scan_interval: 43200
  button:
    - unique_id: air_qualite_zzzzz_refresh
      name: Qualite Air Refresh
  sensor:
    - name: Qualite Air Indice global du jour
      unique_id: air_qualite_zzzzz_indice_global
      value_template: "{{ value_json.data[0].indice }}"
      attributes:
        - name: Qualificatif
          value_template: "{{ value_json.data[0].qualificatif }}"
        - name: Date
          value_template: "{{ value_json.data[0].date_echeance }}"
      icon: mdi:air-filter
    - name: Particules fines PM2.5
      unique_id: air_qualite_zzzzz_pm2.5
      device_class: PM25
      unit_of_measurement: µg/m³
      value_template: "{{ value_json.data[0].sous_indices[0].concentration | round(1) }}"
      icon: mdi:air-filter
      attributes:
        - name: indice
          value_template: "{{ value_json.data[0].sous_indices[0].indice }}"
        - name: label
          value_template: >
            {% set value = value_json.data[0].sous_indices[0].indice %}
            {% if (value == 0) %}
              Indisponible
            {% elif (value == 1) %}
              Bon
            {% elif (value == 2) %}
              Moyen
            {% elif (value == 3) %}
              Dégradé
            {% elif (value == 4) %}
              Mauvais
            {% elif (value == 5) %}
              Très mauvais
            {% elif (value == 6) %}
              Extrêmement mauvais
            {% elif (value == 7) %}
              Evénement
            {% else %}
              {{ value }}
            {% endif %}
    - name: Particules fines PM10
      unique_id: air_qualite_zzzzz_pm10
      device_class: PM10
      unit_of_measurement: µg/m³
      value_template: "{{ value_json.data[0].sous_indices[1].concentration | round(1) }}"
      icon: mdi:air-filter
      attributes:
        - name: indice
          value_template: "{{ value_json.data[0].sous_indices[1].indice }}"
        - name: label
          value_template: >
            {% set value = value_json.data[0].sous_indices[1].indice %}
            {% if (value == 0) %}
              Indisponible
            {% elif (value == 1) %}
              Bon
            {% elif (value == 2) %}
              Moyen
            {% elif (value == 3) %}
              Dégradé
            {% elif (value == 4) %}
              Mauvais
            {% elif (value == 5) %}
              Très mauvais
            {% elif (value == 6) %}
              Extrêmement mauvais
            {% elif (value == 7) %}
              Evénement
            {% else %}
              {{ value }}
            {% endif %}
    - name: Qualite Air Dioxyde de soufre
      unique_id: air_qualite_zzzzz_s02
      # device_class: ???
      unit_of_measurement: µg/m³
      value_template: "{{ value_json.data[0].sous_indices[2].concentration | round(2) }}"
      icon: mdi:air-filter
      attributes:
        - name: indice
          value_template: "{{ value_json.data[0].sous_indices[2].indice }}"
        - name: label
          value_template: >
            {% set value = value_json.data[0].sous_indices[2].indice %}
            {% if (value == 0) %}
              Indisponible
            {% elif (value == 1) %}
              Bon
            {% elif (value == 2) %}
              Moyen
            {% elif (value == 3) %}
              Dégradé
            {% elif (value == 4) %}
              Mauvais
            {% elif (value == 5) %}
              Très mauvais
            {% elif (value == 6) %}
              Extrêmement mauvais
            {% elif (value == 7) %}
              Evénement
            {% else %}
              {{ value }}
            {% endif %}
    - name: Qualite Air Ozone
      unique_id: air_qualite_zzzzz_o3
      device_class: OZONE
      unit_of_measurement: µg/m³
      value_template: "{{ value_json.data[0].sous_indices[3].concentration | round(1) }}"
      icon: mdi:air-filter
      attributes:
        - name: indice
          value_template: "{{ value_json.data[0].sous_indices[3].indice }}"
        - name: label
          value_template: >
            {% set value = value_json.data[0].sous_indices[3].indice %}
            {% if (value == 0) %}
              Indisponible
            {% elif (value == 1) %}
              Bon
            {% elif (value == 2) %}
              Moyen
            {% elif (value == 3) %}
              Dégradé
            {% elif (value == 4) %}
              Mauvais
            {% elif (value == 5) %}
              Très mauvais
            {% elif (value == 6) %}
              Extrêmement mauvais
            {% elif (value == 7) %}
              Evénement
            {% else %}
              {{ value }}
            {% endif %}
    - name: Qualite Air Dioxyde d'azote
      unique_id: air_qualite_zzzzz_no2
      device_class: NITROGEN_DIOXIDE
      unit_of_measurement: µg/m³
      value_template: "{{ value_json.data[0].sous_indices[4].concentration | round(1) }}"
      icon: mdi:air-filter
      attributes:
        - name: indice
          value_template: "{{ value_json.data[0].sous_indices[4].indice }}"
        - name: label
          value_template: >
            {% set value = value_json.data[0].sous_indices[4].indice %}
            {% if (value == 0) %}
              Indisponible
            {% elif (value == 1) %}
              Bon
            {% elif (value == 2) %}
              Moyen
            {% elif (value == 3) %}
              Dégradé
            {% elif (value == 4) %}
              Mauvais
            {% elif (value == 5) %}
              Très mauvais
            {% elif (value == 6) %}
              Extrêmement mauvais
            {% elif (value == 7) %}
              Evénement
            {% else %}
              {{ value }}
            {% endif %}

```

---

<div class="post-metadata">

**Author:** ![R\_hum1](https://forum.hacf.fr/user_avatar/forum.hacf.fr/r_hum1/32/121866_2.png) [@R\_hum1](https://forum.hacf.fr/u/R_hum1)\
**Post date:** [Février 9, 2024, 4:03 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/50 "2024-02-09T16:03:02Z")

</div>

Bonsoir,  
J’avais fait pareil que toi au départ mais les valeurs n’étaient pas à jour avec yestarday et 1 ou now et 0  
Du coup j’ai conservé l’intégration mais tu as aussi les valeurs individuelles aussi pourtant il me semble

---

<div class="post-metadata">

**Author:** ![Lesuperlolo](https://forum.hacf.fr/user_avatar/forum.hacf.fr/lesuperlolo/32/21946_2.png) [@Lesuperlolo](https://forum.hacf.fr/u/Lesuperlolo)\
**Post date:** [Février 9, 2024, 6:10 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/51 "2024-02-09T18:10:14Z")

</div>

Oui, mais il y a une api spécifique pour ARA (et IDF), mais pas pour l’Aquitaine.  
En tout cas je ne l’ai pas trouvée.

---

<div class="post-metadata">

**Author:** ![roumano](https://forum.hacf.fr/letter_avatar_proxy/v4/letter/r/f14d63/32.png) [@roumano](https://forum.hacf.fr/u/roumano)\
**Post date:** [Février 9, 2024, 7:06 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/52 "2024-02-09T19:06:02Z")

</div>

A ce que j’ai compris (et que je le rappel), avec le now, tu a un e valeurs instantanée (donc si tu la lance plusieurs fois dans la journée, il peut y avoir pas mal de variation,…

---

<div class="post-metadata">

**Author:** ![jety](https://forum.hacf.fr/user_avatar/forum.hacf.fr/jety/32/53481_2.png) [@jety](https://forum.hacf.fr/u/jety)\
**Post date:** [Mai 31, 2024, 3:13 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/53 "2024-05-31T15:13:45Z")

</div>

Je partage ma carte avec vous, on ne sait jamais si ça peut servir. Je me suis inspiré des cartes précédentes, merci à eux !

 ![image](https://forum.hacf.fr/uploads/default/original/3X/2/2/229ff575558e32e029e55d7f6311135beeaced56.png)

```auto
square: false
type: grid
cards:
  - square: false
    type: grid
    cards:
      - type: custom:button-card
        entity: sensor.qualite_globale_votre_ville
        label: Globale
        show_label: true
        state:
          - value: 1
            name: Très bon
            styles:
              icon:
                - color: lightgreen
          - value: 2
            name: Bon
            styles:
              icon:
                - color: green
          - value: 3
            name: Moyen
            styles:
              icon:
                - color: yellow
          - value: 4
            name: Mauvais
            styles:
              icon:
                - color: red
          - value: 5
            name: Très mauvais
            styles:
              icon:
                - color: darkred
          - value: 6
            name: Horrible
            styles:
              icon:
                - color: darkviolet
        styles:
          card:
            - height: 110px
            - font-size: 15px
          label:
            - position: absolute
            - top: 5px
            - left: 50%
            - transform: translateX(-50%)
          icon:
            - position: absolute
            - top: 60%
            - left: 50%
            - transform: translate(-50%, -50%)
      - type: custom:button-card
        entity: sensor.pm10_votre_ville
        label: PM < 10µm
        show_label: true
        state:
          - value: 1
            name: Très bon
            styles:
              icon:
                - color: lightgreen
          - value: 2
            name: Bon
            styles:
              icon:
                - color: green
          - value: 3
            name: Moyen
            styles:
              icon:
                - color: yellow
          - value: 4
            name: Mauvais
            styles:
              icon:
                - color: red
          - value: 5
            name: Très mauvais
            styles:
              icon:
                - color: darkred
          - value: 6
            name: Horrible
            styles:
              icon:
                - color: darkviolet
        styles:
          card:
            - height: 110px
            - font-size: 15px
          label:
            - position: absolute
            - top: 5px
            - left: 50%
            - transform: translateX(-50%)
          icon:
            - position: absolute
            - top: 60%
            - left: 50%
            - transform: translate(-50%, -50%)
      - type: custom:button-card
        color_type: card
        entity: sensor.pm25_votre_ville
        label: PM < 2.5µm
        show_label: true
        state:
          - value: 1
            name: Très bon
            styles:
              icon:
                - color: lightgreen
          - value: 2
            name: Bon
            styles:
              icon:
                - color: green
          - value: 3
            name: Moyen
            styles:
              icon:
                - color: yellow
          - value: 4
            name: Mauvais
            styles:
              icon:
                - color: red
          - value: 5
            name: Très mauvais
            styles:
              icon:
                - color: darkred
          - value: 6
            name: Horrible
            styles:
              icon:
                - color: darkviolet
        styles:
          card:
            - height: 110px
            - font-size: 15px
          label:
            - position: absolute
            - top: 5px
            - left: 50%
            - transform: translateX(-50%)
          icon:
            - position: absolute
            - top: 60%
            - left: 50%
            - transform: translate(-50%, -50%)
      - type: custom:button-card
        color_type: card
        entity: sensor.dioxyde_de_soufre_votre_ville
        label: Dioxyde de souffre
        show_label: true
        state:
          - value: 1
            name: Très bon
            styles:
              icon:
                - color: lightgreen
          - value: 2
            name: Bon
            styles:
              icon:
                - color: green
          - value: 3
            name: Moyen
            styles:
              icon:
                - color: yellow
          - value: 4
            name: Mauvais
            styles:
              icon:
                - color: red
          - value: 5
            name: Très mauvais
            styles:
              icon:
                - color: darkred
          - value: 6
            name: Horrible
            styles:
              icon:
                - color: darkviolet
        styles:
          card:
            - height: 110px
            - font-size: 15px
          label:
            - position: absolute
            - top: 5px
            - left: 50%
            - transform: translateX(-50%)
          icon:
            - position: absolute
            - top: 60%
            - left: 50%
            - transform: translate(-50%, -50%)
      - type: custom:button-card
        color_type: card
        entity: sensor.dioxyde_d_azote_votre_ville
        label: Dioxyde azote
        show_label: true
        state:
          - value: 1
            name: Très bon
            styles:
              icon:
                - color: lightgreen
          - value: 2
            name: Bon
            styles:
              icon:
                - color: green
          - value: 3
            name: Moyen
            styles:
              icon:
                - color: yellow
          - value: 4
            name: Mauvais
            styles:
              icon:
                - color: red
          - value: 5
            name: Très mauvais
            styles:
              icon:
                - color: darkred
          - value: 6
            name: Horrible
            styles:
              icon:
                - color: darkviolet
        styles:
          card:
            - height: 110px
            - font-size: 15px
          label:
            - position: absolute
            - top: 5px
            - left: 50%
            - transform: translateX(-50%)
          icon:
            - position: absolute
            - top: 60%
            - left: 50%
            - transform: translate(-50%, -50%)
      - type: custom:button-card
        color_type: card
        entity: sensor.ozone_votre_ville
        label: Ozone
        show_label: true
        state:
          - value: 1
            name: Très bon
            styles:
              icon:
                - color: lightgreen
          - value: 2
            name: Bon
            styles:
              icon:
                - color: green
          - value: 3
            name: Moyen
            styles:
              icon:
                - color: yellow
          - value: 4
            name: Mauvais
            styles:
              icon:
                - color: red
          - value: 5
            name: Très mauvais
            styles:
              icon:
                - color: darkred
          - value: 6
            name: Horrible
            styles:
              icon:
                - color: darkviolet
        styles:
          card:
            - height: 110px
            - font-size: 15px
          label:
            - position: absolute
            - top: 5px
            - left: 50%
            - transform: translateX(-50%)
          icon:
            - position: absolute
            - top: 60%
            - left: 50%
            - transform: translate(-50%, -50%)
    columns: 3
columns: 1
title: Temperature

```

---

<div class="post-metadata">

**Author:** ![Caillema](https://forum.hacf.fr/user_avatar/forum.hacf.fr/caillema/32/2964_2.png) [@Caillema](https://forum.hacf.fr/u/Caillema)\
**Post date:** [Juillet 1, 2024, 2:13 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/54 "2024-07-01T14:13:54Z")

</div>

Bonjour,  
Serait-il possible que tu partages ta carte pour la qualité de l’air (je n’ai pas retrouvé cette partie dans le [post](https://forum.hacf.fr/t/dashboard-meteo-all-inclusive-v2-maj-02-08-23/25804) des cartes de @WarC0zes).  
Merci beaucoup!

---

<div class="post-metadata">

**Author:** ![Jeffodilo](https://forum.hacf.fr/user_avatar/forum.hacf.fr/jeffodilo/32/34085_2.png) [@Jeffodilo](https://forum.hacf.fr/u/Jeffodilo)\
**Post date:** [Juillet 2, 2024, 8:50 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/55 "2024-07-02T08:50:07Z")

</div>

Bonjour,

Voici mes 2 cartes si ca peut t'aider

 ![image](https://forum.hacf.fr/uploads/default/original/3X/2/7/27c72e340607bf44ab0ab8e5cef70c3424e9e95c.png)

> **Carte 1**
>
> ```auto
> type: custom:stack-in-card
> keep:
> box_shadow: true
> margin: true
> border_radius: true
> background: true
> outer_padding: true
> cards:
> - type: custom:mod-card
> card_mod:
> style:
> .: |
> :host {
> --text-divider-color: white;
> --text-divider-line-size: 1px;
> }
> card:
> type: custom:text-divider-row
> text: Risque Pollens Ille et Vilaine
> align: left
> - type: custom:mod-card
> card_mod:
> style: |
> ha-card {
> margin: -15px -5px 0px -5px;
> }  
> card:
> type: horizontal-stack
> cards:
> - type: custom:button-card
> entity: sensor.pollens_35
> name: Bain de Bretagne
> icon: mdi:flower-pollen
> layout: icon_name_state2nd
> color_type: icon
> show_name: true
> show_state: true
> state_display: |
> [[[
> if (entity.state === 'très faible')
> return 'Très faible';
> else if (entity.state === 'faible')
> return 'Faible';
> else if (entity.state === 'moyen')
> return 'Moyen';
> else if (entity.state === 'élevé')
> return 'Elevé';
> else if (entity.state === 'très élevé')
> return 'Très élevé';                
> else
> return 'Indisponible'; 
> ]]]
> state:
> - value: indisponible
> styles:
> icon:
> - color: '#ddd'
> state:
> - color: '#ddd'
> card:
> - color: '#ddd'
> name:
> - color: white
> - value: très faible
> styles:
> icon:
> - color: '#50f0e6'
> state:
> - color: '#50f0e6'
> card:
> - color: '#50f0e6'
> name:
> - color: white
> - value: faible
> styles:
> icon:
> - color: '#50ccaa'
> state:
> - color: '#50ccaa'
> card:
> - color: '#50ccaa'
> name:
> - color: white
> - value: moyen
> styles:
> icon:
> - color: '#f0e641'
> state:
> - color: '#f0e641'
> card:
> - color: '#f0e641'
> name:
> - color: white
> - value: élevé
> styles:
> icon:
> - color: '#ff5050'
> state:
> - color: '#ff5050'
> card:
> - color: '#ff5050'
> name:
> - color: white
> - value: très élevé
> styles:
> icon:
> - color: '#960032'
> state:
> - color: '#960032'
> card:
> - color: '#960032'
> name:
> - color: white
> size: 55%
> styles:
> card:
> - '--mdc-ripple-color': rgb(68, 115, 158)
> - '--mdc-ripple-press-opacity': 0.5
> name:
> - font-size: 13px
> state:
> - font-weight: bold
> - font-size: 13px
> card_mod:
> style: |
> ha-card {
> top: 1px !important;
> border: none;
> }            
> - type: custom:bar-card
> entities:
> - entity: sensor.pollens_35_risklevel
> icon: mdi:alert-circle
> name: Niveau
> height: 30px
> min: 0
> max: 4
> positions:
> indicator: 'off'
> icon: 'off'
> severity:
> - color: '#960032'
> from: 3
> to: 4
> - color: '#ff5050'
> from: 2
> to: 3
> - color: '#f0e641'
> from: 1
> to: 2
> - color: '#50ccaa'
> from: 0
> to: 1
> card_mod:
> style: >
> bar-card-currentbar, bar-card-backgroundbar {
> border-radius: 15px;
> }
> 
> #states > bar-card-row > bar-card-card > bar-card-background >
> bar-card-contentbar > bar-card-name {
> font-size: 12px;
> font-weight: bold;
> color: black;
> margin-left: 15px;
> } bar-card-contentbar > bar-card-value {
> font-size: 16px;
> margin-right: 25px;
> {% if is_state('sensor.pollens_35_risklevel', '0') %}
> color: #ddd;
> font-weight: bold;
> {% elif is_state('sensor.pollens_35_risklevel', '1') %}
> color: #50ccaa;
> font-weight: bold;
> {% elif is_state('sensor.pollens_35_risklevel', '2') %}
> color: #f0e641;
> font-weight: bold;
> {% elif is_state('sensor.pollens_35_risklevel', '3') %}
> color: #ff5050;
> font-weight: bold;
> {% elif is_state('sensor.pollens_35_risklevel', '4') %}
> color: #960032;
> font-weight: bold;              
> {% endif %}
> } ha-card {
> margin-top: -2px;
> background: none;
> border: none;
> }
> - type: custom:auto-entities
> card:
> type: grid
> columns: 4
> square: true
> card_param: cards
> filter:
> include:
> - entity_id: sensor.pollens_35*
> options:
> type: custom:button-card
> color_type: icon
> show_name: true
> show_state: true
> state_display: |
> [[[
> if (entity.state === 'très faible')
> return 'Très faible';
> else if (entity.state === 'faible')
> return 'Faible';
> else if (entity.state === 'moyen')
> return 'Moyen';
> else if (entity.state === 'élevé')
> return 'Elevé';
> else if (entity.state === 'très élevé')
> return 'Très élevé';                
> else
> return 'Indisponible'; 
> ]]]
> state:
> - value: indisponible
> styles:
> icon:
> - color: '#ddd'
> state:
> - color: '#ddd'
> card:
> - color: '#ddd'
> name:
> - color: white
> - value: très faible
> styles:
> icon:
> - color: '#50f0e6'
> state:
> - color: '#50f0e6'
> card:
> - color: '#50f0e6'
> name:
> - color: white
> - value: faible
> styles:
> icon:
> - color: '#50ccaa'
> state:
> - color: '#50ccaa'
> card:
> - color: '#50ccaa'
> name:
> - color: white
> - value: moyen
> styles:
> icon:
> - color: '#f0e641'
> state:
> - color: '#f0e641'
> card:
> - color: '#f0e641'
> name:
> - color: white
> - value: élevé
> styles:
> icon:
> - color: '#ff5050'
> state:
> - color: '#ff5050'
> card:
> - color: '#ff5050'
> name:
> - color: white
> - value: très élevé
> styles:
> icon:
> - color: '#960032'
> state:
> - color: '#960032'
> card:
> - color: '#960032'
> name:
> - color: white
> size: 55%
> styles:
> card:
> - '--mdc-ripple-color': rgb(68, 115, 158)
> - '--mdc-ripple-press-opacity': 0.5
> name:
> - font-size: 13px
> state:
> - font-weight: bold
> - font-size: 13px
> card_mod:
> style: |
> ha-card {
> border: solid 2px;
> box-shadow: none;
> }
> exclude:
> - entity_id: sensor.pollens_35_risklevel
> - entity_id: sensor.pollens_35
> - state: nul
> sort:
> method: state
> reverse: true
> first: très élevé
> method: friendly_name
> ignore_case: true
> numeric: false
> 
> ```

> **Carte 2**
>
> ```auto
> type: custom:stack-in-card
> mode: vertical
> keep:
> box_shadow: true
> margin: true
> border_radius: true
> background: true
> outer_padding: true
> cards:
> - type: custom:mod-card
> card_mod:
> style:
> .: |
> :host {
> --text-divider-color: white;
> --text-divider-line-size: 1px;
> }
> card:
> type: custom:text-divider-row
> text: Qualité d'air
> align: left
> - type: custom:mod-card
> card_mod:
> style: |
> ha-card {
> margin: -15px -5px 0px -5px;
> }  
> card:
> type: horizontal-stack
> cards:
> - type: custom:button-card
> entity: sensor.qualite_globale_bain_de_bretagne
> name: Bain de Bretagne
> icon: mdi:molecule
> layout: icon_name_state2nd
> color_type: icon
> show_name: true
> show_state: true
> state_display: |
> [[[
> if (entity.state === '1')
> return 'Bon';
> else if (entity.state === '2')
> return 'Moyen';
> else if (entity.state === '3')
> return 'Dégradé';
> else if (entity.state === '4')
> return 'Mauvais';
> else if (entity.state === '5')
> return 'Très Mauvais';
> else if (entity.state === '6')
> return 'Extrem Mauvais';
> else if (entity.state === '8')
> return 'Evènement';                   
> else
> return 'Indisponible'; 
> ]]]
> state:
> - value: 0
> styles:
> icon:
> - color: '#ddd'
> state:
> - color: '#ddd'
> card:
> - color: '#ddd'
> name:
> - color: white
> - value: 1
> styles:
> icon:
> - color: '#50f0e6'
> state:
> - color: '#50f0e6'
> card:
> - color: '#50f0e6'
> name:
> - color: white
> - value: 2
> styles:
> icon:
> - color: '#50ccaa'
> state:
> - color: '#50ccaa'
> card:
> - color: '#50ccaa'
> name:
> - color: white
> - value: 3
> styles:
> icon:
> - color: '#f0e641'
> state:
> - color: '#f0e641'
> card:
> - color: '#f0e641'
> name:
> - color: white
> - value: 4
> styles:
> icon:
> - color: '#ff5050'
> state:
> - color: '#ff5050'
> card:
> - color: '#ff5050'
> name:
> - color: white
> - value: 5
> styles:
> icon:
> - color: '#960032'
> state:
> - color: '#960032'
> card:
> - color: '#960032'
> name:
> - color: white
> - value: 6
> styles:
> icon:
> - color: '#7d2181'
> state:
> - color: '#7d2181'
> card:
> - color: '#7d2181'
> name:
> - color: white
> - value: 8
> styles:
> icon:
> - color: '#888'
> state:
> - color: '#888'
> card:
> - color: '#888'
> name:
> - color: white
> size: 55%
> styles:
> card:
> - '--mdc-ripple-color': rgb(68, 115, 158)
> - '--mdc-ripple-press-opacity': 0.5
> name:
> - font-size: 13px
> state:
> - font-weight: bold
> - font-size: 13px
> card_mod:
> style: |
> ha-card {
> top: 1px !important;
> border: none;
> }            
> - type: custom:bar-card
> entities:
> - entity: sensor.qualite_globale_bain_de_bretagne
> icon: mdi:alert-circle
> name: Niveau
> height: 30px
> min: 0
> max: 6
> positions:
> indicator: 'off'
> icon: 'off'
> severity:
> - color: '#888'
> from: 6
> to: 8
> - color: '#7d2181'
> from: 5
> to: 6
> - color: '#960032'
> from: 4
> to: 5
> - color: '#ff5050'
> from: 3
> to: 4
> - color: '#f0e641'
> from: 2
> to: 3
> - color: '#50ccaa'
> from: 1
> to: 2
> - color: '#50f0e6'
> from: 0
> to: 1
> card_mod:
> style: >
> bar-card-currentbar, bar-card-backgroundbar {
> border-radius: 15px;
> }
> 
> #states > bar-card-row > bar-card-card > bar-card-background >
> bar-card-contentbar > bar-card-name {
> font-size: 12px;
> font-weight: bold;
> color: black;
> margin-left: 15px;
> } bar-card-contentbar > bar-card-value {
> font-size: 16px;
> margin-right: 25px;
> {% if is_state('sensor.qualite_globale_bain_de_bretagne', '1') %}
> color: #50f0e6;
> font-weight: bold;
> {% elif is_state('sensor.qualite_globale_bain_de_bretagne', '2') %}
> color: #50ccaa;
> font-weight: bold;
> {% elif is_state('sensor.qualite_globale_bain_de_bretagne', '3') %}
> color: #f0e641;
> font-weight: bold;
> {% elif is_state('sensor.qualite_globale_bain_de_bretagne', '4') %}
> color: #ff5050;
> font-weight: bold;
> {% elif is_state('sensor.qualite_globale_bain_de_bretagne', '5') %}
> color: #960032;
> font-weight: bold;
> {% elif is_state('sensor.qualite_globale_bain_de_bretagne', '6') %}
> color: #7d2181;
> font-weight: bold;
> {% elif is_state('sensor.qualite_globale_bain_de_bretagne', '8') %}
> color: #888;
> font-weight: bold;                      
> {% endif %}
> } ha-card {
> margin-top: -2px;
> background: none;
> border: none;
> }
> - type: vertical-stack
> cards:
> - type: grid
> columns: 5
> square: false
> cards:
> - type: custom:button-card
> entity: sensor.dioxyde_d_azote_bain_de_bretagne
> name: NO2
> aspect_ratio: 4/3
> show_state: true
> show_icon: true
> icon: mdi:molecule
> state_display: |
> [[[
> if (entity.state === '0')
> return 'Absent';
> else if (entity.state === '1')
> return 'Bon';
> else if (entity.state === '2')
> return 'Moyen';
> else if (entity.state === '3')
> return 'Dégradé';
> else if (entity.state === '4')
> return 'Mauvais';
> else if (entity.state === '5')
> return 'Très Mauvais';
> else if (entity.state === '6')
> return 'Extrem Mauvais';
> else if (entity.state === '8')
> return 'Evènement';                   
> else
> return 'Indisponible'; 
> ]]]
> styles:
> name:
> - font-size: 13px
> state:
> - font-size: 11px
> state:
> - value: 0
> styles:
> icon:
> - color: '#ddd'
> state:
> - color: '#ddd'
> card:
> - color: '#ddd'
> name:
> - color: white
> - value: 1
> styles:
> icon:
> - color: '#50f0e6'
> state:
> - color: '#50f0e6'
> card:
> - color: '#50f0e6'
> name:
> - color: white
> - value: 2
> styles:
> icon:
> - color: '#50ccaa'
> state:
> - color: '#50ccaa'
> card:
> - color: '#50ccaa'
> name:
> - color: white
> - value: 3
> styles:
> icon:
> - color: '#f0e641'
> state:
> - color: '#f0e641'
> card:
> - color: '#f0e641'
> name:
> - color: white
> - value: 4
> styles:
> icon:
> - color: '#ff5050'
> state:
> - color: '#ff5050'
> card:
> - color: '#ff5050'
> name:
> - color: white
> - value: 5
> styles:
> icon:
> - color: '#960032'
> state:
> - color: '#960032'
> card:
> - color: '#960032'
> name:
> - color: white
> - value: 6
> styles:
> icon:
> - color: '#7d2181'
> state:
> - color: '#7d2181'
> card:
> - color: '#7d2181'
> name:
> - color: white
> - value: 8
> styles:
> icon:
> - color: '#888'
> state:
> - color: '#888'
> card:
> - color: '#888'
> name:
> - color: white
> card_mod:
> style: |
> ha-card {
> box-shadow: 2px 2px 4px 0px !important;
> border: 1px rgba(0,0,0,1.0) outset !important;
> }
> - type: custom:button-card
> entity: sensor.dioxyde_de_soufre_bain_de_bretagne
> name: SO2
> aspect_ratio: 4/3
> show_state: true
> show_icon: true
> icon: mdi:molecule
> state_display: |
> [[[
> if (entity.state === '0')
> return 'Absent';
> else if (entity.state === '1')
> return 'Bon';
> else if (entity.state === '2')
> return 'Moyen';
> else if (entity.state === '3')
> return 'Dégradé';
> else if (entity.state === '4')
> return 'Mauvais';
> else if (entity.state === '5')
> return 'Très Mauvais';
> else if (entity.state === '6')
> return 'Extrem Mauvais';
> else if (entity.state === '8')
> return 'Evènement';                   
> else
> return 'Indisponible'; 
> ]]]
> styles:
> name:
> - font-size: 13px
> state:
> - font-size: 11px
> state:
> - value: 0
> styles:
> icon:
> - color: '#ddd'
> state:
> - color: '#ddd'
> card:
> - color: '#ddd'
> name:
> - color: white
> - value: 1
> styles:
> icon:
> - color: '#50f0e6'
> state:
> - color: '#50f0e6'
> card:
> - color: '#50f0e6'
> name:
> - color: white
> - value: 2
> styles:
> icon:
> - color: '#50ccaa'
> state:
> - color: '#50ccaa'
> card:
> - color: '#50ccaa'
> name:
> - color: white
> - value: 3
> styles:
> icon:
> - color: '#f0e641'
> state:
> - color: '#f0e641'
> card:
> - color: '#f0e641'
> name:
> - color: white
> - value: 4
> styles:
> icon:
> - color: '#ff5050'
> state:
> - color: '#ff5050'
> card:
> - color: '#ff5050'
> name:
> - color: white
> - value: 5
> styles:
> icon:
> - color: '#960032'
> state:
> - color: '#960032'
> card:
> - color: '#960032'
> name:
> - color: white
> - value: 6
> styles:
> icon:
> - color: '#7d2181'
> state:
> - color: '#7d2181'
> card:
> - color: '#7d2181'
> name:
> - color: white
> - value: 8
> styles:
> icon:
> - color: '#888'
> state:
> - color: '#888'
> card:
> - color: '#888'
> name:
> - color: white
> card_mod:
> style: |
> ha-card {
> border: solid 2px;
> box-shadow: none;
> }             
> - type: custom:button-card
> entity: sensor.ozone_bain_de_bretagne
> name: Ozone
> aspect_ratio: 4/3
> show_state: true
> show_icon: true
> icon: mdi:molecule
> state_display: |
> [[[
> if (entity.state === '0')
> return 'Absent';
> else if (entity.state === '1')
> return 'Bon';
> else if (entity.state === '2')
> return 'Moyen';
> else if (entity.state === '3')
> return 'Dégradé';
> else if (entity.state === '4')
> return 'Mauvais';
> else if (entity.state === '5')
> return 'Très Mauvais';
> else if (entity.state === '6')
> return 'Extrem Mauvais';
> else if (entity.state === '8')
> return 'Evènement';                   
> else
> return 'Indisponible'; 
> ]]]
> styles:
> name:
> - font-size: 13px
> state:
> - font-size: 11px
> state:
> - value: 0
> styles:
> icon:
> - color: '#ddd'
> state:
> - color: '#ddd'
> card:
> - color: '#ddd'
> name:
> - color: white
> - value: 1
> styles:
> icon:
> - color: '#50f0e6'
> state:
> - color: '#50f0e6'
> card:
> - color: '#50f0e6'
> name:
> - color: white
> - value: 2
> styles:
> icon:
> - color: '#50ccaa'
> state:
> - color: '#50ccaa'
> card:
> - color: '#50ccaa'
> name:
> - color: white
> - value: 3
> styles:
> icon:
> - color: '#f0e641'
> state:
> - color: '#f0e641'
> card:
> - color: '#f0e641'
> name:
> - color: white
> - value: 4
> styles:
> icon:
> - color: '#ff5050'
> state:
> - color: '#ff5050'
> card:
> - color: '#ff5050'
> name:
> - color: white
> - value: 5
> styles:
> icon:
> - color: '#960032'
> state:
> - color: '#960032'
> card:
> - color: '#960032'
> name:
> - color: white
> - value: 6
> styles:
> icon:
> - color: '#7d2181'
> state:
> - color: '#7d2181'
> card:
> - color: '#7d2181'
> name:
> - color: white
> - value: 8
> styles:
> icon:
> - color: '#888'
> state:
> - color: '#888'
> card:
> - color: '#888'
> name:
> - color: white
> card_mod:
> style: |
> ha-card {
> border: solid 2px;
> box-shadow: none;
> }
> - type: custom:button-card
> entity: sensor.pm10_bain_de_bretagne
> name: PM10
> aspect_ratio: 4/3
> show_state: true
> show_icon: true
> show_label: true
> icon: mdi:blur
> state_display: |
> [[[
> if (entity.state === '0')
> return 'Absent';
> else if (entity.state === '1')
> return 'Bon';
> else if (entity.state === '2')
> return 'Moyen';
> else if (entity.state === '3')
> return 'Dégradé';
> else if (entity.state === '4')
> return 'Mauvais';
> else if (entity.state === '5')
> return 'Très Mauvais';
> else if (entity.state === '6')
> return 'Extrem Mauvais';
> else if (entity.state === '8')
> return 'Evènement';                   
> else
> return 'Indisponible'; 
> ]]]
> styles:
> name:
> - font-size: 13px
> state:
> - font-size: 11px
> state:
> - value: 0
> styles:
> icon:
> - color: '#ddd'
> state:
> - color: '#ddd'
> card:
> - color: '#ddd'
> name:
> - color: white
> - value: 1
> styles:
> icon:
> - color: '#50f0e6'
> state:
> - color: '#50f0e6'
> card:
> - color: '#50f0e6'
> name:
> - color: white
> - value: 2
> styles:
> icon:
> - color: '#50ccaa'
> state:
> - color: '#50ccaa'
> card:
> - color: '#50ccaa'
> name:
> - color: white
> - value: 3
> styles:
> icon:
> - color: '#f0e641'
> state:
> - color: '#f0e641'
> card:
> - color: '#f0e641'
> name:
> - color: white
> - value: 4
> styles:
> icon:
> - color: '#ff5050'
> state:
> - color: '#ff5050'
> card:
> - color: '#ff5050'
> name:
> - color: white
> - value: 5
> styles:
> icon:
> - color: '#960032'
> state:
> - color: '#960032'
> card:
> - color: '#960032'
> name:
> - color: white
> - value: 6
> styles:
> icon:
> - color: '#7d2181'
> state:
> - color: '#7d2181'
> card:
> - color: '#7d2181'
> name:
> - color: white
> - value: 8
> styles:
> icon:
> - color: '#888'
> state:
> - color: '#888'
> card:
> - color: '#888'
> name:
> - color: white
> card_mod:
> style: |
> ha-card {
> border: solid 2px;
> box-shadow: none;
> }          
> - type: custom:button-card
> entity: sensor.pm25_bain_de_bretagne
> name: PM2.5
> aspect_ratio: 4/3
> show_state: true
> show_icon: true
> show_label: true
> icon: mdi:blur
> state_display: |
> [[[
> if (entity.state === '0')
> return 'Absent';
> else if (entity.state === '1')
> return 'Bon';
> else if (entity.state === '2')
> return 'Moyen';
> else if (entity.state === '3')
> return 'Dégradé';
> else if (entity.state === '4')
> return 'Mauvais';
> else if (entity.state === '5')
> return 'Très Mauvais';
> else if (entity.state === '6')
> return 'Extrem Mauvais';
> else if (entity.state === '8')
> return 'Evènement';                   
> else
> return 'Indisponible'; 
> ]]]
> styles:
> name:
> - font-size: 13px
> state:
> - font-size: 11px
> state:
> - value: 0
> styles:
> icon:
> - color: '#ddd'
> state:
> - color: '#ddd'
> card:
> - color: '#ddd'
> name:
> - color: white
> - value: 1
> styles:
> icon:
> - color: '#50f0e6'
> state:
> - color: '#50f0e6'
> card:
> - color: '#50f0e6'
> name:
> - color: white
> - value: 2
> styles:
> icon:
> - color: '#50ccaa'
> state:
> - color: '#50ccaa'
> card:
> - color: '#50ccaa'
> name:
> - color: white
> - value: 3
> styles:
> icon:
> - color: '#f0e641'
> state:
> - color: '#f0e641'
> card:
> - color: '#f0e641'
> name:
> - color: white
> - value: 4
> styles:
> icon:
> - color: '#ff5050'
> state:
> - color: '#ff5050'
> card:
> - color: '#ff5050'
> name:
> - color: white
> - value: 5
> styles:
> icon:
> - color: '#960032'
> state:
> - color: '#960032'
> card:
> - color: '#960032'
> name:
> - color: white
> - value: 6
> styles:
> icon:
> - color: '#7d2181'
> state:
> - color: '#7d2181'
> card:
> - color: '#7d2181'
> name:
> - color: white
> - value: 8
> styles:
> icon:
> - color: '#888'
> state:
> - color: '#888'
> card:
> - color: '#888'
> name:
> - color: white
> card_mod:
> style: |
> ha-card {
> border: solid 2px;
> box-shadow: none;
> }
> card_mod:
> style: |
> ha-card {
> box-shadow: 0 0 0 0px gray;
> }
> 
> ```

---

<div class="post-metadata">

**Author:** ![Yyrkoon94](https://forum.hacf.fr/letter_avatar_proxy/v4/letter/y/e8c25b/32.png) [@Yyrkoon94](https://forum.hacf.fr/u/Yyrkoon94)\
**Post date:** [Juillet 2, 2024, 2:32 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/56 "2024-07-02T14:32:01Z")

</div>

@Jeffodilo j’aimerais aussi ajouter les infos de risque allergique sur mon dashboard. Quel intégration utilises-tu pour récupérer ces informations (de [https://www.pollens.fr/](https://www.pollens.fr/) j’imagine ?)

Merci !

---

<div class="post-metadata">

**Author:** ![WarC0zes](https://forum.hacf.fr/user_avatar/forum.hacf.fr/warc0zes/32/137471_2.png) [@WarC0zes](https://forum.hacf.fr/u/WarC0zes)\
**Post date:** [Juillet 2, 2024, 3:18 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/57 "2024-07-02T15:18:28Z")

</div>

Bonjour,  
il faut utiliser c’est intégration:

> [@Pollens custom component sensor](https://forum.hacf.fr/t/pollens-custom-component-sensor/3336):
>
> Bonjour a tous et toutes, Je voulais partager avec vous ma première intégration qui permet de récupérer une indication sur le risque «&nbsp;pollens&nbsp;» du site [https://pollens.fr](https://pollens.fr) vous pouvez le récupérer sur mon github [GitHub - chris60600/pollens-home-assistant: Retrieve French Pollens risks in HomeAssistant](https://github.com/chris60600/pollens-home-assistant) Ne pas hésiter a me faire part de vos remarques, des améliorations, etc [image] Je ne l’ai pour l’instant pas traduite, mais comme elle ne concerne que la france…

---

<div class="post-metadata">

**Author:** ![voyagers21](https://forum.hacf.fr/user_avatar/forum.hacf.fr/voyagers21/32/23254_2.png) [@voyagers21](https://forum.hacf.fr/u/voyagers21)\
**Post date:** [Août 1, 2024, 3:58 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/58 "2024-08-01T15:58:26Z")

</div>

bonsoir, il met combien de temps le dev pour validé l’accès j’attends tjs depuis 6jours

---

<div class="post-metadata">

**Author:** ![jafreenas](https://forum.hacf.fr/user_avatar/forum.hacf.fr/jafreenas/32/39747_2.png) [@jafreenas](https://forum.hacf.fr/u/jafreenas)\
**Post date:** [Août 26, 2024, 12:37 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/59 "2024-08-26T12:37:26Z")

</div>

salut ,  
pour ATMO j ai attendu 48h , avec le soins de mette une petite explication de l’usage 🙂

---

<div class="post-metadata">

**Author:** ![WarC0zes](https://forum.hacf.fr/user_avatar/forum.hacf.fr/warc0zes/32/137471_2.png) [@WarC0zes](https://forum.hacf.fr/u/WarC0zes)\
**Post date:** [Août 27, 2024, 5:27 UTC](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147/60 "2024-08-27T05:27:54Z")

</div>

4 messages ont été fusionnés à un sujet existant : [Pollens custom component sensor](https://forum.hacf.fr/t/pollens-custom-component-sensor/3336/253)

[Page précédente](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147.md?page=2)

[Page suivante](https://forum.hacf.fr/t/nouvelle-integration-atmofrance-qualite-de-lair/24147.md?page=4)
