[Binding] Dark Sky

  • [infobox]Vor ein paar Tagen habe ich das Dark Sky Binding in openHAB 2.5 installiert und konfiguriert. Hauptsächlich zur Eigendokumentation habe ich jetzt einen kleinen Blog-Beitrag zum Einstieg erstellt. Den ersten Entwurf möchte ich gerne hier mit euch teilen. Über Verbesserungen und Ergänzungen würde ich mich freuen. Natürlich sind auch Fragen willkommen.[/infobox]

    Die Seite Dark Sky bietet akkurate Wetterinformationen an. Außerdem stellt sie eine Schnittstelle zur Verfügung, über die aktuell 1000 Abfragen pro Tag kostenlos gemacht werden können. Das reicht für den persönlichen Gebrauch vollkommen aus. Diese Schnittstelle kann mit dem openHAB Binding, das es seit Version 2.5 gibt, genutzt werden, um Wetterdaten in openHAB zu übertragen und nutzbar zu machen.

    Binding und Things

    In der openHAB PAPER UI wird das Dark Sky Binding unter Add-ons installiert, hier ist keine weitere Konfiguration notwendig. Danach stehen unter Configuration zwei neue Things zur Verfügung. Als erstes muss hier das Dark Sky Konto angelegt werden. Dafür ist ein Account bei Dark Sky notwendig. Dort wird ein persönlicher API-Schlüssel generiert, der im Thing hinterlegt werden muss. Außerdem muss die gewünschte Sprache eingestellt werden. Zusätzlich kann im Thing noch das Abfrageintervall in Minuten konfiguriert werden. Es muss ein Wert von 2 oder größer gesetzt werden, um das kostenlose Kontingent von 1000 Abfragen pro Tag nicht zu überschreiten. Für mich ist ein Intervall von 30 Minuten völlig ausreichend. Das zweite Thing Wetterinformationen ist für die Konfiguration der Standort-Koordinaten. Außerdem können hier noch Konfigurationen für Wettervorhersage und -warnungen vorgenommen werden. Es können beliebig viele Things angelegt werden, um mehrere Standorte abzufragen.


    Channels und Items

    Anschließend können über die Items-Datei die benötigten Channels aktiviert werden. Ich habe mich hier auf folgende Channels beschränkt:

    • time-stamp (Erfassungszeit)
    • sunrise (Sonnenaufgang)
    • sunset (Sonnenuntergang)
    • temperature (Temperatur)
    • rain (Regenmenge)
    • snow (Schneemenge)
    • humidity (Luftfeuchtigkeit
    Code
    DateTime             localLastMeasurement      "Letzte Erfassung [%1$tH:%1$tM]" <time>        { channel="darksky:weather-and-forecast:xxx:current#time-stamp" }
    DateTime             localSunrise              "Sonnenaufgang [%1$tH:%1$tM]"    <sunrise>     { channel="darksky:weather-and-forecast:xxx:current#sunrise" }
    DateTime             localSunset               "Sonnenuntergang [%1$tH:%1$tM]"  <sunset>      { channel="darksky:weather-and-forecast:xxx:current#sunset" }
    Number:Temperature   localCurrentTemperature   "Temperatur [%.1f %unit%]"       <temperature> { channel="darksky:weather-and-forecast:xxx:current#temperature" }
    Number:Speed         localCurrentRainIntensity "Regen [%.2f mm/h]"              <rain>        { channel="darksky:weather-and-forecast:xxx:current#rain" }
    Number:Speed         localCurrentSnowIntensity "Schnee [%.2f mm/h]"             <snow>        { channel="darksky:weather-and-forecast:xxx:current#snow" }
    Number:Dimensionless localCurrentHumidity      "Luftfeuchtigkeit [%d %unit%]"   <humidity>    { channel="darksky:weather-and-forecast:xxx:current#humidity" }


    Alle verfügbaren Channels sind in der Dokumentation zu finden.

    Sitemap

    Über die Konfiguration in der Sitemap-Datei können die Wetterinformationen nun visualisiert werden:

    Code
    Frame label="Wetter" {
        Text    item=localLastMeasurement
        Text    item=localSunrise
        Text    item=localSunset
        Text    item=localCurrentTemperature
        Text    item=localCurrentRainIntensity  visibility=[localCurrentRainIntensity>0.01]
        Text    item=localCurrentSnowIntensity  visibility=[localCurrentSnowIntensity>0]
        Text    item=localCurrentHumidity
    }

    Für die Felder Regen und Schnee habe ich hier zusätzlich den Parameter visibility konfiguriert, sodass diese nur angezeigt werden wenn es auch regnet bzw. schneit. Bei richtiger Konfiguration sieht es in der BASIC UI nun wie folgt aus:

  • Hat das ganze jemand evtl schon in Habpanel laufen. Und wenn ja wie. Ich habe es mit dem weather widget probiert,
    hat aber leider nicht hingehauen. Ich scheitere schon daran die Icons ein zu binden...

    Mein System:

    Spoiler anzeigen


    Server

    Wohnzimmer

    im Haus verteilt


    Cooler Master Elite 110
    ASRock J3455-ITX
    16GB DDR3L-1333
    3x WD green 3TB
    1x 60GB BOOT-SSD
    OMV 7.x
    TVHeadend 4.3.xx

    Phillips PUS8546
    Kodi 21 Beta (maven)

    diverse
    Raspberry Pi
    LibreElec 9.x


Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!