Maak van Domoticz een weerstation – Deel 4

Nu we alle weergegevens hebben is het tijd om automatisch geïnformeerd te worden over het weer. Dit doen we door push-notificaties via de populaire app Telegram. De bedoeling is dat we de volgende meldingen ontvangen:

  • Om 22.00 uur een korte weersverwachting voor de volgende dag
  • Om 08.00 uur een uitgebreide weersverwachting

Benodigdheden

 

Weersverwachting volgende dag

Deze weersverwachting geeft een kort bericht met o.a. temperaturen, kans op zon/regen en wind. Op regel 2 kun je het tijdstip wijzigen. Op regel 5 wijzig zet je het IDX van de sensor “Verwachting morgen”. Sla dit script op via de interne editor van Domoticz als een dzVents script met trigger Timer.

return {
          on   = { timer    = { "at 22:00"}},
                   
    execute = function(dz)
        local myDevice              = dz.devices(123)    -- change this to the ID of your device or the name in quotes
        local toLog                 = true               -- switch between true/false when you want/don't want an entry in logfile
        local email                 = false              -- switch between true/false when you want/don't want to be Emailed
        local notify                = true               -- switch between true/false when you want/don't want a notification
        local myNotificationTable   = {dz.NSS_TELEGRAM}
        local degree = '°' 
        local notifyString =     myDevice.text

        if toLog then dz.log(notifyString:gsub(degree," degrees"),dz.LOG_INFO) end
        if email then dz.email("Weerbericht morgen",notifyString,"emailAdres@provider.com") end
        if notify then dz.notify("Weerbericht morgen", notifyString, dz.PRIORITY_NORMAL,dz.SOUND_DEFAULT, "" , myNotificationTable ) end
    end 
}

 

Zeer uitgebreide weersverwachting

Deze weersverwachting geeft een zeer uitgebreide verwachting voor de komende dagen. Op regel 2 kun je het tijdstip wijzigen. Op regel 5 wijzig zet je het IDX van de sensor “Verwachting uitgebreid”. Sla dit script op via de interne editor van Domoticz als een dzVents script met trigger Timer.

return {
          on   = { timer    = { "at 08:00"}},
                   
    execute = function(dz)
        local myDevice              = dz.devices(169)    -- change this to the ID of your device or the name in quotes
        local toLog                 = true               -- switch between true/false when you want/don't want an entry in logfile
        local email                 = false              -- switch between true/false when you want/don't want to be Emailed
        local notify                = true               -- switch between true/false when you want/don't want a notification
        local myNotificationTable   = {dz.NSS_TELEGRAM}
        local degree = '°' 
        local notifyString =     myDevice.text

        if toLog then dz.log(notifyString:gsub(degree," degrees"),dz.LOG_INFO) end
        if email then dz.email("Weerbericht vandaag",notifyString,"emailAdres@provider.com") end
        if notify then dz.notify("Weerbericht vandaag", notifyString, dz.PRIORITY_NORMAL,dz.SOUND_DEFAULT, "" , myNotificationTable ) end
    end 
}

 

Ga terug naar Deel 3

8 gedachten over “Maak van Domoticz een weerstation – Deel 4

  • 24 maart 2019 om 17:54
    Permalink

    Werkt redelijk, krijg in de ochtend het uitgebreide weer voor de helft en dan een of andere afkorting
    Voorbeeld
    Vooral vanmiddag zon, morgen enkele buien

    Het wordt vandaag overal zonnig, maar aanvankelijk kan het regionaal nog bewolkt zijn en plaatselijk komen mistbanken voor. Maandag krijgen we tijdelijk te maken met vrij veel wind en vooral in het oosten en noordoosten maken &lsquo

    Beantwoorden
    • 13 april 2019 om 09:26
      Permalink

      Af en toe is de API van Buienradar niet helemaal goed, waardoor het uitgebreide weerbericht afgekapt wordt op de plek waar een ‘verkeerde’ apostrof gebruikt wordt.

      Op regel 160 van het script van Deel 2 zijn nu 2 regels toegevoegd, hiermee zou het probleem verholpen moeten zijn.

      Beantwoorden
  • 9 augustus 2019 om 10:46
    Permalink

    Werkt niet, heb een telegram account, staat in domoticz levert ook berichten maar niet deze. Het bericht wordt wel naar het log gestuurd maar niet naar telegram. Graag uw oplossing.

    Beantwoorden
    • 11 augustus 2019 om 08:53
      Permalink

      Wat voor een foutmelding krijg je? Gebruik je een Raspberry of iets anders? Welke versie van Domoticz gebuik je? Heb je dzVents ingeschakeld bij Settings?

      Beantwoorden
      • 11 augustus 2019 om 16:36
        Permalink

        Version: 4.11074
        Build Hash: b736cab34
        Compile Date: 2019-08-07 11:01:53
        dzVents Version: 2.4.27
        Python Version: 3.5.3 (default, Sep 27 2018, 17:25:39) [GCC 6.3.0 20170516]

        Uptime: 3 Dagen, 5 Uren, 1 Minuten, 50 Seconden
        Ja dzvents ingeschakeld, geen foutmelding gewoon geen telegram bericht wel een log vermelding, telegram werkend geïnstalleerd al maanden……

        Beantwoorden
        • 11 augustus 2019 om 17:37
          Permalink

          Wordt “Weerbericht vandaag” en “Weerbericht vandaag” wel juist weergegeven in de Domoticz text-device?

          Beantwoorden
          • 12 augustus 2019 om 12:44
            Permalink

            Debug info
            2019-08-12 12:37:00.420 Status: dzVents: Info: —— Start internal script: weeruitgebreid:, trigger: at 12:37
            2019-08-12 12:37:00.422 Status: dzVents: Debug: Processing device-adapter for Verwachting uitgebreid: Text device
            2019-08-12 12:37:00.422 Status: dzVents: Info: De herfst lijkt begonnen
            2019-08-12 12:37:00.422
            2019-08-12 12:37:00.422 De komende week trekken een flink aantal storingen over het land. Hierdoor vallen elke dag wel buien. Ook ligt de temperatuur een stuk lager dan normaal. De herfst lijkt al vroeg zijn intrede te hebben gedaan.Vanmiddag&nbsp
            2019-08-12 12:37:00.422 Status: dzVents: Info: —— Finished weeruitgebreid
            2019-08-12 12:37:00.422 Status: dzVents: Debug: Commands sent to Domoticz:
            2019-08-12 12:37:00.422 Status: dzVents: Debug: – SendNotification = Weerbericht vandaag#De herfst lijkt begonnen
            2019-08-12 12:37:00.422
            2019-08-12 12:37:00.422 De komende week trekken een flink aantal storingen over het land. Hierdoor vallen elke dag wel buien. Ook ligt de temperatuur een stuk lager dan normaal. De herfst lijkt al vroeg zijn intrede te hebben gedaan.Vanmiddag&nbsp#0#pushover##http
            2019-08-12 12:37:00.422 Status: dzVents: Debug: =====================================================
            2019-08-12 12:37:00.423 Status: EventSystem: Script event triggered: /home/pi/domoticz/dzVents/runtime/dzVents.lua
            2019-08-12 12:37:00.455 Status: Notification: Weerbericht vandaag
            2019-08-12 12:37:00.700 Status: dzVents: Debug: Dumping domoticz data to /home/pi/domoticz/scripts/dzVents/domoticzData.lua

            Geen info voor telegram, pushover????? alle notificaties zijn uitgeschakeld alleen telegram is actief en werkt ook voor andere notificaties, dus??????

  • 12 augustus 2019 om 20:18
    Permalink

    Hallo tonbor,

    Eén vraagteken per vraag is voldoende (hoewel er eigenlijk helemaal geen vraag staat).

    Waarschijnlijk heb je in jouw script iets van local myNotificationTable = {dz.NSS_PUSHOVER} staan. Probeer eens local myNotificationTable = {dz.NSS_TELEGRAM}

    Beantwoorden

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *