2Qualità dell'aria in Home Assistant

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"
    

lascia un commento

2 Commenti

Fflavio

CIao
stavo seguendo la tua guida. Ti risulta che la stringa di tado fun­zioni ancora? per­chè mi restituisce errore {“message”:“User is not author­ized to access this resource with an expli­cit deny”} oppure ins­er­en­dola in ver­sione codice yaml mi restituisce {“message”:“Token di autenticazione man­cante”} . Grazie

rispondere
JSJon Scaife

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?

rispondere