Recentemente ho scritto su come mostrare le informazioni sulla raccolta dei rifiuti in Home Assistant, e il mio prossimo progetto è stato quello di estrarre alcune informazioni sulla qualità dell'aria. Fortunatamente ho un account "Tado", il che significa che ho potuto estrarre queste informazioni da loro API utilizzando il codice seguente
Aggiornato 20-dic-2021
Questo è stato aggiornato per modificare un problema in cui l'assistente domestico converte il valore di testo "nessuno" in "sconosciuto".
Molte delle informazioni per questo sono state prese da un thread su forum di assistenti domestici, ma sono stato in grado di aggiungere informazioni sull'inquinamento e sui pollini, e ho anche dovuto modificare il codice per risolvere un problema con "nessuno" trattato come "sconosciuto" piuttosto che come una stringa di testo. Un sacco di credito a Drillbit sui forum però.
Dettagli dell'account Tado
- Avrai bisogno di alcune informazioni per il tuo account Tado
- Visita https://my.tado.com/api/v2/me?username=you@emailaddress.tld&password = tua password
- Nella parte superiore dell'output è necessario l'ID numerico elencato sotto homes: 0: il:
- Prossimo, vai a https://www.latlong.net/ e individua la tua casa e prendi nota della latitudine e della longitudine
- Visita successiva https://acme.tado.com/v1/homes/ID-casa/airComfort?latitudine =12.34&longitudine =12.34&nome utente =la tua email&password =la tua password per assicurarti che venga caricato
Codice per l'assistente domestico
- Aggiungi il codice seguente al tuo file configuration.yaml
sensore: - piattaforma: riposo # API chiamare per ottenere la qualità dell'aria # Il risultato va nell'attributo outdoorQuality in formato JSON nome: TadoAir verifica_ssl: vero scan_interval: 1800 risorsa: https://acme.tado.com/v1/homes/ID-casa/airComfort?latitudine =12.34&longitudine =12.34&nome utente =la tua email&password =la tua password intestazioni: User-Agent: Assistente domestico Tipo di contenuto: application / json metodo: OTTENERE json_attributes: - roomMessages - outdoorQuality value_template: "Tado Air Comfort" # Enumera JSON per popolare vari sensori di modelli - piattaforma: modello sensori: qualità dell'aria: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["Qui"]["livello"] | capitalizzare }}' nome amichevole: "Qualità dell'aria" icon_template: mdi:filtro dell'aria unique_id: "qualità dell'aria" # Sensori di polline air_pollen_level: value_template: > {% se stati('sensor.tadoair.attributes["outdoorQuality"]["pollini"]["dominante"]["livello"]') == 'sconosciuto' %} Nessuno. {% altro %} {{stati('sensor.tadoair.attributes["outdoorQuality"]["pollini"]["dominante"]["livello"]')}} {% endif %} nome amichevole: "Livello di polline" icon_template: mdi:fiore unique_id: "pollen_level" air_pollen_level_grass: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["pollini"]["Tipi"][0]["previsione"][0]["livello"] | capitalizzare }}.' nome amichevole: "Polline di erba" icon_template: mdi:fiore unique_id: "grass_pollen_level" air_pollen_level_grass_tomorrow: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["pollini"]["Tipi"][0]["previsione"][1]["livello"] | capitalizzare }}.' nome amichevole: "Polline di graminacee Tomo." icon_template: mdi:fiore unique_id: "grass_pollen_level_tomorrow" air_pollen_level_weed: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["pollini"]["Tipi"][1]["previsione"][0]["livello"] | capitalizzare }}.' nome amichevole: "Polline di piante" icon_template: mdi:germoglio unique_id: "plant_pollen_level" air_pollen_level_weed_tomorrow: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["pollini"]["Tipi"][1]["previsione"][1]["livello"] | capitalizzare }}.' nome amichevole: "Pianta Polline Tomo." icon_template: mdi:germoglio unique_id: "plant_pollen_level_tomorrow" air_pollen_level_tree: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["pollini"]["Tipi"][2]["previsione"][0]["livello"] | capitalizzare }}.' nome amichevole: "Polline di alberi " icon_template: mdi:albero unique_id: "tree_pollen_level" air_pollen_level_tree_tomorrow: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["pollini"]["Tipi"][2]["previsione"][1]["livello"] | capitalizzare }}.' nome amichevole: "Tree Pollen Tomo." icon_template: mdi:albero unique_id: "tree_pollen_level_tomorrow" air_pollution_level_pm10: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][0]["livello"] | capitalizzare }}: {{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][0]["concentrazione"]["valore"]}}μg / m³ ' nome amichevole: "PM 10" icon_template: mdi:albero unique_id: "inquinamento_pm10" air_pollution_level_pm25: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][1]["livello"] | capitalizzare }}: {{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][1]["concentrazione"]["valore"]}}μg / m³ ' nome amichevole: "PM 2.5" icon_template: mdi:albero unique_id: "inquinamento_pm25" air_pollution_level_ozone: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][2]["livello"] | capitalizzare }}: {{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][2]["concentrazione"]["valore"]}}ppb ' nome amichevole: "Ozono" icon_template: mdi:albero unique_id: "inquinamento_ozono" air_pollution_level_sulphur: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][3]["livello"] | capitalizzare }}: {{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][3]["concentrazione"]["valore"]}}ppb ' nome amichevole: "Diossido di zolfo" icon_template: mdi:albero unique_id: "inquinamento_solfuro" air_pollution_level_carbon: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][4]["livello"] | capitalizzare }}: {{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][4]["concentrazione"]["valore"]}}ppb ' nome amichevole: "Monossido di carbonio" icon_template: mdi:albero unique_id: "inquinamento_carbonio" air_pollution_level_nitrogen: value_template: '{{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][5]["livello"] | capitalizzare }}: {{ states.sensor.tadoair.attributes["outdoorQuality"]["inquinanti"][5]["concentrazione"]["valore"]}}ppb ' nome amichevole: "Diossido di azoto" icon_template: mdi:albero unique_id: "inquinamento_itrogeno"
CIao
stavo seguendo la tua guida. Ti risulta che la stringa di tado funzioni ancora? perchè mi restituisce errore {“message”:“User is not authorized to access this resource with an explicit deny”} oppure inserendola in versione codice yaml mi restituisce {“message”:“Token di autenticazione mancante”} . Grazie
Ciao Flavio
sì, questo funziona ancora per me.
Il mio URL è https://acme.tado.com/v1/homes/123456/airComfort?latitude=11.11&longitude=11.11&username=me@myemail.com&password=mypassword
Ovviamente ho rimosso l'ID di casa, latitudine, longitudine, indirizzo e-mail, e la password che uso. Ma se li ottieni correttamente, dovrebbe caricarsi correttamente
Hai ricontrollato il tuo indirizzo e-mail e la password? Hai controllato il tuo ID di casa a https://my.tado.com/api/v2/me?username=you@emailaddress.tld&password=yourpassword
Non so se il sistema Tado sia diverso al di fuori del Regno Unito - forse non hanno dati per latitudine e longitudine dove ti trovi? Ricevi dati sulla qualità dell'aria nella tua app Tado quando accedi al tuo account?