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"
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
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 ??