2Qualité de l'air dans Home Assistant

J'ai récemment écrit sur la façon d'afficher les informations de collecte des bacs dans Home Assistant, et mon prochain projet consistait à extraire des informations sur la qualité de l'air. Heureusement, je possède un compte «Tado», ce qui signifie que je pourrais extraire ces informations de leur API en utilisant le code suivant

Mis à jour le 20-déc-2021

Cela a été mis à jour pour régler un problème où l'assistant à domicile convertit la valeur de texte « aucun » en « inconnu ».

La plupart des informations à ce sujet ont été tirées d'un fil de discussion sur le forums d'assistants à domicile, mais j'ai pu ajouter des informations sur la pollution ainsi que sur le pollen, et j'ai également dû modifier le code pour résoudre un problème avec « aucun » étant traité comme « inconnu » plutôt que comme une chaîne de texte. Beaucoup de crédit à Drillbit sur les forums cependant.

Détails du compte Tado

  • Vous aurez besoin de quelques informations pour votre compte Tado
  • Visitez https://my.tado.com/api/v2/me?username=you@emailaddress.tld&mot de passe = votre mot de passe
  • Près du haut de la sortie, vous avez besoin de l'ID numérique qui est répertorié sous les maisons: 0: la:
  • Suivant, aller à https://www.latlong.net/ et localisez votre maison et notez la latitude et la longitude
  • Prochaine visite https://acme.tado.com/v1/homes/votre-identifiant-de-maison/airConfort?latitude =12.34&longitude =12.34&nom d'utilisateur =votre @ email&mot de passe =votre-mot de passe pour s'assurer qu'il se charge

Code pour assistant domestique

  • Ajoutez le code suivant à votre configuration.yaml
    capteur:
     - Plate-forme: du repos
       # API appeler pour obtenir la qualité de l'air
       # Le résultat entre dans l'attribut outdoorQuality au format JSON
       Nom: TadoAir
       vérifier_ssl: vrai
       scan_interval: 1800
       Ressource: https://acme.tado.com/v1/homes/votre-identifiant-de-maison/airConfort?latitude =12.34&longitude =12.34&nom d'utilisateur =votre @ email&mot de passe =votre mot de passe
       têtes:
         Agent utilisateur: Assistante à domicile
         Type de contenu: application/json
       méthode: OBTENIR
       json_attributes:
         - roomMessages
         - extérieurQualité
       valeur_modèle: 'Tado Air Comfort'
    
     # Énumérer JSON pour remplir divers capteurs de modèle
     - Plate-forme: modèle
       capteurs:
         qualité de l'air:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["ici"]["niveau"] | capitaliser }}'
           nom familier: "Qualité de l'air"
           icon_template: mdi:filtre à air
           identifiant unique: "qualité de l'air"
    
         # Capteurs de pollen
         air_pollen_level:
           value_template: >
             {% si les états('sensor.tadoair.attributes["en plein air"]["pollens"]["dominant"]["niveau"]») == 'inconnu' %}
               Rien.
             {% autre %}
               {{États('sensor.tadoair.attributes["en plein air"]["pollens"]["dominant"]["niveau"]»)}}
             {% endif %}
           nom familier: "Niveau de pollen"
           icon_template: mdi:fleur
           identifiant unique: "pollen_level"
    
         air_pollen_level_grass:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["pollens"]["types"][0]["prévoir"][0]["niveau"] | capitaliser }}.'
           nom familier: "Pollen d'herbe"
           icon_template: mdi:fleur
           identifiant unique: "grass_pollen_level"
    
         air_pollen_level_grass_tomorrow:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["pollens"]["types"][0]["prévoir"][1]["niveau"] | capitaliser  }}.'
           nom familier: "Grass Pollen Tomo."
           icon_template: mdi:fleur
           identifiant unique: "grass_pollen_level_tomorrow"
    
         air_pollen_level_weed:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["pollens"]["types"][1]["prévoir"][0]["niveau"] | capitaliser  }}.'
           nom familier: "Pollen végétal"
           icon_template: mdi:germer
           identifiant unique: "plant_pollen_level"
    
         air_pollen_level_weed_tomorrow:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["pollens"]["types"][1]["prévoir"][1]["niveau"] | capitaliser  }}.'
           nom familier: "Plant Pollen Tomo."
           icon_template: mdi:germer
           identifiant unique: "plant_pollen_level_tomorrow"
    
         air_pollen_level_tree:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["pollens"]["types"][2]["prévoir"][0]["niveau"] | capitaliser  }}.'
           nom familier: "Pollen d'arbre "
           icon_template: mdi:arbre
           identifiant unique: "tree_pollen_level"
    
         air_pollen_level_tree_tomorrow:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["pollens"]["types"][2]["prévoir"][1]["niveau"] | capitaliser }}.'
           nom familier: "Pollen d'arbre Tomo."
           icon_template: mdi:arbre
           identifiant unique: "tree_pollen_level_tomorrow"
    
         air_pollution_level_pm10:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][0]["niveau"] | capitaliser }}: {{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][0]["concentration"]["valeur"]}}g/m³'
           nom familier: "PM 10"
           icon_template: mdi:arbre
           identifiant unique: "pollution_pm10"
    
         air_pollution_level_pm25:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][1]["niveau"] | capitaliser }}: {{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][1]["concentration"]["valeur"]}}g/m³'
           nom familier: "PM 2.5"
           icon_template: mdi:arbre
           identifiant unique: "pollution_pm25"
    
         air_pollution_level_ozone:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][2]["niveau"] | capitaliser }}: {{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][2]["concentration"]["valeur"]}}ppb'
           nom familier: "Ozone"
           icon_template: mdi:arbre
           identifiant unique: "pollution_ozone"
    
         air_pollution_level_sulfur:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][3]["niveau"] | capitaliser }}: {{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][3]["concentration"]["valeur"]}}ppb'
           nom familier: "Le dioxyde de soufre"
           icon_template: mdi:arbre
           identifiant unique: "pollution_sulfur"
    
         air_pollution_level_carbon:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][4]["niveau"] | capitaliser }}: {{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][4]["concentration"]["valeur"]}}ppb'
           nom familier: "Monoxyde de carbone"
           icon_template: mdi:arbre
           identifiant unique: "pollution_carbon"
    
         air_pollution_level_nitrogen:
           value_template: »{{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][5]["niveau"] | capitaliser }}: {{ states.sensor.tadoair.attributes["en plein air"]["les polluants"][5]["concentration"]["valeur"]}}ppb'
           nom familier: "Dioxyde d'azote"
           icon_template: mdi:arbre
           identifiant unique: "azote_de_pollution"
    

Laisser un commentaire

2 Comments

Faflavio

CIao
je suivais ton guide. Il s'avère que la chaîne de tado fonctionne toujours? parce que ça me donne une erreur {"message":"L'utilisateur n'est pas autorisé à accéder à cette ressource avec un refus explicite"} ou le mettre dans la version du code yaml me renvoie {"message":"Jeton d'authentification manquant"} . Merci

Répondre
JSJon Scaife

Salut Flavio

Oui, cela fonctionne toujours pour moi.
Ma URL est https://acme.tado.com/v1/homes/123456/airComfort?latitude=11.11&longitude=11.11&username=me@myemail.com&password=mypassword

Évidemment, j'ai supprimé l'identifiant de la maison, latitude, longitude, adresse e-mail, et le mot de passe que j'utilise. Mais si vous les obtenez correctement, cela devrait bien se charger

Avez-vous vérifié votre adresse e-mail et votre mot de passe? Avez-vous vérifié votre ID de domicile à https://my.tado.com/api/v2/me?username=you@emailaddress.tld&password=yourpassword

Je ne sais pas si le système Tado est différent en dehors du Royaume-Uni - peut-être qu'ils n'ont pas de données pour la latitude et la longitude où vous vous trouvez? Obtenez-vous des données sur la qualité de l'air dans votre application Tado lorsque vous êtes connecté à votre compte ??

Répondre