Aktuellen Pollenflug in Home Assistant anzeigen

Wie kann man den aktuellen Pollenflug in Home Assistant anzeigen? Home Assistant erlaubt es einem ja so ziemlich alles zu integrieren und anzuzeigen, also warum nicht auch den aktuellen Pollenflug in deiner Gegend?

Alles, was man hierfür benötigt, ist eine API, welche diese aktuellen Daten liefert. Diese API bindet man dann beispielsweise über den REST-Sensor ein und schon hat man die aktuellen Daten zum Pollenflug und kann diese in Home Assistant beliebig nutzen. Aber der Reihe nach! 🙂

Pollenflug in Home Assistant anzeigen

Wie eingangs bereits erwähnt, macht es Home Assistant einem sehr einfach Daten externer Anbieter einzubinden und zu nutzen. So ist es natürlich auch möglich sich den aktuellen Pollenflug in Home Assistant anzeigen zu lassen! Konkret werden wir für die Anzeige des aktuellen Pollenflug in Home Assistant die Daten über eine REST-Api einbinden, diese dann auslesen um sie dann beliebig anzeigen/nutzen zu können.

Was ist eine REST-Api?

Eine REST-Api ist eine Schnittstelle welche für Representational state transfer [Wikipedia: REST] steht. Über eine Schnittstelle werden also Zustände/Daten zum Abruf angeboten.

Solche Schnittstellen sind primär für die Maschine-zu-Maschine-Kommunikation gedacht und genau dies wollen wir auch tun!

Anbieter wie Ambee erheben weltweit Daten zum aktuellen Wetter oder eben auch der Luftverschmutzung. Diese Daten stehen für nahezu jeden Ort der Welt, mehr oder weniger genau, zur Verfügung. Ambee kann kommerziell genutzt werden und hierfür gibt es kostenpflichtige Accounts.

Ebenso bietet Ambee aber auch einen kostenlosen Account an, mit welchem 100 Datenabrufe pro Tag kostenlos möglich sind! Einen solchen Account/Plan werden wir nutzen und können hierdurch in etwas 4 mal pro Stunde aktuelle Daten abrufen, ohne irgendwelche Kosten zu verursachen (24 Stunden x 4 Aufrufe die Stunde = 96 Aufrufe, was über das kostenlose Kontingent möglich ist).

Daten zum Pollenflug auslesen

Damit wir den Pollenflug in Home Assistant anzeigen können, benötigen wir natürlich entsprechende Daten! Sobald du einen Account mit Basic-Plan hast, erhältst du einen Api Token. Mit diesem Api Token kannst du bereits auf die REST-Api zugreifen und alle von Ambee bereitgestellten Daten abrufen/nutzen.

Hierfür legen wir nun einen neuen Sensor in unserer Konfiguration an, dies könnte in etwa wie folgt aussehen:

sensor:
- platform: rest
  scan_interval: 1300
  resource_template: https://api.ambeedata.com/latest/pollen/by-lat-lng?lat=47.11&lng=0.815
  value_template: >-
    {{ value_json.message}}
  name: "Ambee Pollen"
  headers:
    content-type: "application/json"
    x-api-key: !secret secret_ambee_api
  json_attributes_path: data[0]
  json_attributes:
      - Count
      - Risk
      - Species
      - updatedAt
      - time

Ich beschränke mich hierbei auf den Pollenflug durch Bäume und Gräser. Und natürlich musst du deinen eigenen Api-Token nutzen, sowie in der URL (also bei resource) deine eigenen Daten für lat und lng (also Latitude und Longitude) eintragen.

Mit diesem Code sagen wir nun Home Assistant, dass alle 1200 Sekunden von dieser Api die Daten abgerufen werden sollen. 1200 Sekunden entspricht 20 Minuten und somit bleiben wir unterhalb der etwa 4 möglichen Abrufe pro Stunde um nicht aus Versehen Kosten zu verursachen! 😉

Ambee Api-Calls
Die Spitzen nahe den 100 Cals pro Tag sind die Einrichtungs-Phase gewesen, als ich noch etwas mit der Api getestet habe.

Damit uns die über den Api-Abruf bereitgestellten Daten nun noch etwas schöner angezeigt werden, ergänzen wir unseren Sensor wie folgt:

#in Kombination mit dem zuvorgenannten Code bitte die folgende Zeile entfernen!
- platform: template
  sensors:
    ambee_pollen_tree:
      icon_template: "mdi:tree-outline"
      friendly_name: "Bäume"
      value_template: >-
        {% set state = state_attr("sensor.ambee_pollen", "Risk").tree_pollen %}
        {% if state == "Low" %}Niedrig
        {% elif state == "Moderate"%}Mittel
        {% elif state == "High"%}Hoch
        {% elif state == "Very High"%}Sehr hoch
        {% else %}Unbekannt{% endif %}
- platform: template
  sensors:
    ambee_pollen_weed:
      icon_template: "mdi:nature"
      friendly_name: "weed"
      value_template: >-
        {% set state = state_attr("sensor.ambee_pollen", "Risk").weed_pollen %}
        {% if state == "Low" %}Niedrig
        {% elif state == "Moderate"%}Mittel
        {% elif state == "High"%}Hoch
        {% elif state == "Very High"%}Sehr hoch
        {% else %}Unbekannt{% endif %}
- platform: template
  sensors:
    ambee_pollen_grass:
      icon_template: "mdi:grass"
      friendly_name: "Gräser"
      value_template: >-
        {% set state = state_attr("sensor.ambee_pollen", "Risk").grass_pollen %}
        {% if state == "Low" %}Niedrig
        {% elif state == "Moderate"%}Mittel
        {% elif state == "High"%}Hoch
        {% elif state == "Very High"%}Sehr hoch
        {% else %}Unbekannt{% endif %}

Inspiriert wurde ich hierfür definitiv von Michi, welcher nahezu den kompletten ursprünglich hier in diesem Post genutzten Code auf GitHub veröffentlicht hat – vielen Dank dafür! Durch Änderungen an der Ambee-API und eure hinweise hierauf, habe ich den Code entsprechend angepasst, so dass die gewünschten Daten wieder ausgegeben werden!

Was haben wir also soweit? Wir nutzen eine kostenlose Api, über welche wir die Luftdaten alle 20 Minuten abrufen und bereiten diese mittels Templates in den Variablen ambee_pollen_grass und ambee_pollen_tree etwas anschaulicher auf!

Aktuellen Pollenflug anzeigen

Durch den zuvor beschriebenen Code, stehen uns nun zwei neue Entities zu Verfügung, welche in Loveloce angezeigt werden können. Auch hierfür bedarf es nur (sehr) wenige(r) Zeilen Code:

cards:
      - type: glance
        title: Pollenflug
        entities:
        - entity: sensor.ambee_pollen_grass
        - entity: sensor.ambee_pollen_tree

Das Ergebnis sieht dann wie folgt aus:

Pollenflug in Home Assistant anzeigen

Natürlich kann man mit den Daten der kostenlosen Api noch viel mehr Dinge anstellen. Wie wäre es zum Beispiel mit automatischen Benachrichtigungen oder anderen Funktionen?

Dieser Beitrag ist Teil einer kleinen Beitrags-Serie rund um den hass.io Home Assistant.

AngebotBestseller Nr. 1
Netatmo Smarte Wetterstation - WLAN, Funk, Innen- und...*
  • MESSUNG DER UMGEBUNGSTEMPERATUR INNEN UND AUSSEN IN ECHZEIT:...
  • WARNMELDUNGEN IN ECHZEIT: Mit unserer Wetterstation können Sie...
AngebotBestseller Nr. 2
Staubsauger Roboter,Tesvor WLAN Saugroboter mit Raumkarte in...*
  • Kompatibel mit APP + Alexa: Der Roboter kann entweder durch die...
  • Geplant Reinigung: Der Tesvor X500 Staubsauger Roboter hat eine...

*= Preis inkl. MwSt., ggf. zzgl. Versandkosten. Letzte Aktualisierung vor 60 Minuten / Affiliate Links / Bilder von der Amazon Product Advertising API. Als Amazon-Partner verdiene ich an qualifizierten Verkäufen.

12 Kommentare

  1. Herwig 11. Mai 2021
    • Olli 14. Mai 2021
    • Olli 7. Juni 2021
  2. Andre 12. Mai 2021
    • Olli 14. Mai 2021
    • Olli 7. Juni 2021
  3. Andreas 7. Juni 2021
    • Olli 7. Juni 2021
  4. André Elsner 16. Juni 2021
    • Olli 16. Juni 2021
      • André 17. Juni 2021

Schreibe einen Kommentar

Die folgenden im Rahmen der DSGVO notwendigen Bedingungen müssen gelesen und akzeptiert werden:
Durch Abschicken des Formulares wird dein Name, E-Mail-Adresse und eingegebene Text in der Datenbank gespeichert. Für weitere Informationen wirf bitte einen Blick in die Datenschutzerklärung.