Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. DWD Warnung als Telegramm

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    DWD Warnung als Telegramm

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Sven_Tengeler last edited by

      Hallo,

      hier eine mögliche Lösung

      ~~![](</s><URL url=)<link_text text="http://uploads.tapatalk-cdn.com/2017010 ... 482b62.jpg">http://uploads.tapatalk-cdn.com/20170107/ee6a0a17c5f0b3e1500b4ce092482b62.jpg</link_text>" />

      Gruß Sven

      Gesendet von iPhone mit Tapatalk~~

      1 Reply Last reply Reply Quote 0
      • lobomau
        lobomau last edited by

        @PrinzEisenherz1:

        Also ich habe mittlerweile ne Lösung für das Problem! Ich stelle später mal das Script hier rein wenn es gewünscht ist!

        Gruß Johnny `
        Natürlich. Immer her damit! 🙂

        1 Reply Last reply Reply Quote 0
        • lobomau
          lobomau last edited by

          @Sven_Tengeler:

          Hallo,

          hier eine mögliche Lösung

          ~~![](</s><URL url=)<link_text text="http://uploads.tapatalk-cdn.com/2017010 ... 482b62.jpg">http://uploads.tapatalk-cdn.com/20170107/ee6a0a17c5f0b3e1500b4ce092482b62.jpg</link_text>" />

          Gruß Sven

          Gesendet von iPhone mit Tapatalk~~ ` Danke. Wieder was für Blockly gelernt.

          1 Reply Last reply Reply Quote 0
          • P
            PrinzEisenherz1 last edited by

            So, hier mein Lösungsansatz.

            ! /* Script zum Übertragen der DWD-Wetterwarnungen an Telegram */ ! var idWarnung = "dwd.0.warning.description"; var idWarnung1 = "dwd.0.warning1.description"; var idWarnung2 = "dwd.0.warning2.description"; ! function check(){ var Warnung = getState(idWarnung).val; if (Warnung !== "") { var Begin = getState("dwd.0.warning.begin").val; var End = getState("dwd.0.warning.end").val; var text = getState("dwd.0.warning.text").val; var Headline = getState("dwd.0.warning.headline").val; var Description = getState("dwd.0.warning.description").val; var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ; setTimeout(function() { sendTo ("telegram.0", DWD_telegramm); }, 1 * 1000); } else { sendTo ("telegram.0", "Alle Wetterwarnungen des Deutschen Wetterdienstes wurden aufgehoben") ; } } ! function check1(){ var Warnung1 = getState(idWarnung1).val; if (Warnung1 !== "") { var Begin = getState("dwd.0.warning1.begin").val; var End = getState("dwd.0.warning1.end").val; var text = getState("dwd.0.warning1.text").val; var Headline = getState("dwd.0.warning1.headline").val; var Description = getState("dwd.0.warning1.description").val; var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ; setTimeout(function() { sendTo ("telegram.0", DWD_telegramm); }, 1 * 1000); } else { sendTo ("telegram.0", "Wetterwarnung No.2 des Deutschen Wetterdienstes wurden aufgehoben") ; } } ! function check2(){ var Warnung2 = getState(idWarnung2).val; if (Warnung2 !== "") { var Begin = getState("dwd.0.warning2.begin").val; var End = getState("dwd.0.warning2.end").val; var text = getState("dwd.0.warning2.text").val; var Headline = getState("dwd.0.warning2.headline").val; var Description = getState("dwd.0.warning2.description").val; var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ; setTimeout(function() { sendTo ("telegram.0", DWD_telegramm); }, 1 * 1000); } else { sendTo ("telegram.0", "Wetterwarnung No.3 des Deutschen Wetterdienstes wurden aufgehoben") ; } } ! on(idWarnung, function (obj){ if (obj.newState.val !== obj.oldState.val) { check(); } }); ! on(idWarnung1, function (obj){ if (obj.newState.val !== obj.oldState.val) { check1(); } }); ! on(idWarnung2, function (obj){ if (obj.newState.val !== obj.oldState.val) { check2(); } }); !

            Bei mir klappt es einwandfrei.

            Bis jetzt fg

            Gruß

            Johnny

            1 Reply Last reply Reply Quote 0
            • lobomau
              lobomau last edited by

              @PrinzEisenherz1:

              So, hier mein Lösungsansatz.

              ! /* Script zum Übertragen der DWD-Wetterwarnungen an Telegram */ ! var idWarnung = "dwd.0.warning.description"; var idWarnung1 = "dwd.0.warning1.description"; var idWarnung2 = "dwd.0.warning2.description"; ! function check(){ var Warnung = getState(idWarnung).val; if (Warnung !== "") { var Begin = getState("dwd.0.warning.begin").val; var End = getState("dwd.0.warning.end").val; var text = getState("dwd.0.warning.text").val; var Headline = getState("dwd.0.warning.headline").val; var Description = getState("dwd.0.warning.description").val; var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ; setTimeout(function() { sendTo ("telegram.0", DWD_telegramm); }, 1 * 1000); } else { sendTo ("telegram.0", "Alle Wetterwarnungen des Deutschen Wetterdienstes wurden aufgehoben") ; } } ! function check1(){ var Warnung1 = getState(idWarnung1).val; if (Warnung1 !== "") { var Begin = getState("dwd.0.warning1.begin").val; var End = getState("dwd.0.warning1.end").val; var text = getState("dwd.0.warning1.text").val; var Headline = getState("dwd.0.warning1.headline").val; var Description = getState("dwd.0.warning1.description").val; var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ; setTimeout(function() { sendTo ("telegram.0", DWD_telegramm); }, 1 * 1000); } else { sendTo ("telegram.0", "Wetterwarnung No.2 des Deutschen Wetterdienstes wurden aufgehoben") ; } } ! function check2(){ var Warnung2 = getState(idWarnung2).val; if (Warnung2 !== "") { var Begin = getState("dwd.0.warning2.begin").val; var End = getState("dwd.0.warning2.end").val; var text = getState("dwd.0.warning2.text").val; var Headline = getState("dwd.0.warning2.headline").val; var Description = getState("dwd.0.warning2.description").val; var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ; setTimeout(function() { sendTo ("telegram.0", DWD_telegramm); }, 1 * 1000); } else { sendTo ("telegram.0", "Wetterwarnung No.3 des Deutschen Wetterdienstes wurden aufgehoben") ; } } ! on(idWarnung, function (obj){ if (obj.newState.val !== obj.oldState.val) { check(); } }); ! on(idWarnung1, function (obj){ if (obj.newState.val !== obj.oldState.val) { check1(); } }); ! on(idWarnung2, function (obj){ if (obj.newState.val !== obj.oldState.val) { check2(); } }); !

              Bei mir klappt es einwandfrei.

              Bis jetzt fg

              Gruß

              Johnny `
              Sauber! Werde ich wohl übernehmen wegen der 3 Wetter-Warnungen.

              Ansonsten, mit dem Blockly hat es auch funktioniert:
              1146_unbenannt.jpg

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators last edited by

                @lobomau:

                Sauber! Werde ich wohl übernehmen wegen der 3 Wetter-Warnungen. `
                [Spielverderber_on]

                Wir hatten heute morgen 4 Wetterwarnungen, von denen die ersten drei gelb, die vierte rot war 😉

                [Spielverderber_off]

                Gruß

                Rainer

                1 Reply Last reply Reply Quote 0
                • S
                  Sven_Tengeler last edited by

                  Ich erweitere Blockly grade für die 3 Warnungsstufen.

                  Poste es wenn es fertig ist 🙂

                  Gruß Sven

                  Gesendet von iPhone mit Tapatalk

                  1 Reply Last reply Reply Quote 0
                  • Jeeper.at
                    Jeeper.at last edited by

                    [offtopic]

                    Ich will in Österreich auch so einen tollen gratis Wetterwarndienst. 😞

                    [/offtopic]

                    1 Reply Last reply Reply Quote 0
                    • P
                      PrinzEisenherz1 last edited by

                      Meins kann man auch ohne probleme auf eine Wetterwarnung reduzieren oder auf 10 erhöhen. Wie man es am liebsten will.

                      Ist im Script glaube ich selbsterklärend.

                      Da muss mal also keinen Mädchenmodus (Spielverderber) anwenden… Lach

                      1 Reply Last reply Reply Quote 0
                      • R
                        ralalla last edited by

                        So nach etwas Pause bin ich auch wieder da und will mich erst mal bedanken.

                        Habe das Skript von PrinzEisenherz1 auf 4 Meldungen erweitert, läuft bisher ohne Probleme.

                        Gesendet von iPhone mit Tapatalk

                        1 Reply Last reply Reply Quote 0
                        • P
                          PrinzEisenherz1 last edited by

                          Freut mich das es klappt bei dir.

                          Ist zwar noch nicht ganz perfekt das Script aber nach m Urlaub setz ich mich nochmal ran.

                          Hab da noch ein zwei Ideen.

                          1 Reply Last reply Reply Quote 0
                          • S
                            simpixo last edited by

                            UPS

                            Falscher Thread… [emoji6]

                            1 Reply Last reply Reply Quote 0
                            • R
                              ralalla last edited by

                              Was man auf jeden Fall im Text ergänzen sollte ist die Nummer der Wetterwarnung beim Auslösen.

                              (Wenn man mehr wie eine Meldung anzeigt)

                              Wenn die Meldung kommt das z. B. Ne. 3 aufgehoben wurde weiß man gar nicht mehr was das war

                              Gesendet von iPhone mit Tapatalk

                              1 Reply Last reply Reply Quote 0
                              • P
                                PrinzEisenherz1 last edited by

                                Danke für die Info. Ist schon eine der Änderungen die ich nach m Urlaub noch machen wollte.

                                Gruß Johnny

                                1 Reply Last reply Reply Quote 0
                                • wendy2702
                                  wendy2702 last edited by

                                  @ralalla:

                                  So nach etwas Pause bin ich auch wieder da und will mich erst mal bedanken.

                                  Habe das Skript von PrinzEisenherz1 auf 4 Meldungen erweitert, läuft bisher ohne Probleme.

                                  Gesendet von iPhone mit Tapatalk `

                                  Her damit 😉

                                  Danke

                                  1 Reply Last reply Reply Quote 0
                                  • lobomau
                                    lobomau last edited by

                                    @ralalla:

                                    Was man auf jeden Fall im Text ergänzen sollte ist die Nummer der Wetterwarnung beim Auslösen.

                                    (Wenn man mehr wie eine Meldung anzeigt)

                                    Wenn die Meldung kommt das z. B. Ne. 3 aufgehoben wurde weiß man gar nicht mehr was das war

                                    Gesendet von iPhone mit Tapatalk `
                                    Noch besser als die Nr. auszugeben, wäre es die "Headline" auszugeben: z.B.:

                                    "Wetterwarnung WARNUNG vor STURMBÖEN des Deutschen Wetterdienstes wurde aufgehoben".

                                    1 Reply Last reply Reply Quote 0
                                    • P
                                      PrinzEisenherz1 last edited by

                                      Danke für den Tipp, mal schauen wie ich das umsetze.

                                      Gruß Johnny

                                      1 Reply Last reply Reply Quote 0
                                      • P
                                        PrinzEisenherz1 last edited by

                                        [EDIT] Hab das Script nochmal etwas überarbeitet - 16.01.17 11:50

                                        So hier mal kurz ne idee bezüglich der unterschiedlichen Aufhebungen der Wetterwarnungen

                                        /* Script zum Übertragen der DWD-Wetterwarnungen an Telegram */
                                            var idSeverity = "dwd.0.warning.description";
                                            var idSeverity1 = "dwd.0.warning1.description";
                                            var idSeverity2 = "dwd.0.warning2.description";
                                        
                                        /*  States und Variablen anlegen zur Sicherung der DWD-headlines  */
                                            createState("javascript.0.DWD.headline1"); 
                                            createState("javascript.0.DWD.headline2");
                                            createState("javascript.0.DWD.headline3");
                                        
                                            var idBackHeadline1 = "javascript.0.DWD.headline1";
                                            var idBackHeadline2 = "javascript.0.DWD.headline2";
                                            var idBackHeadline3 = "javascript.0.DWD.headline3";
                                        
                                        function check(){
                                        var Severity = getState(idSeverity).val;
                                        if (Severity !== "") {
                                            var Begin = getState("dwd.0.warning.begin").val;
                                            var End = getState("dwd.0.warning.end").val;
                                            var text = getState("dwd.0.warning.text").val;
                                            var Headline = getState("dwd.0.warning.headline").val;
                                            var Description = getState("dwd.0.warning.description").val;
                                            var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ;
                                            setTimeout(function() {
                                                sendTo ("telegram.0", DWD_telegramm);
                                            }, 1 * 1000);
                                        /* headline für Warning sichern */
                                            setState(idBackHeadline1,Headline);
                                        }
                                        }
                                        
                                        function check1(){
                                        var Severity1 = getState(idSeverity1).val;
                                        if (Severity1 !== "") {
                                            var Begin = getState("dwd.0.warning1.begin").val;
                                            var End = getState("dwd.0.warning1.end").val;
                                            var text = getState("dwd.0.warning1.text").val;
                                            var Headline = getState("dwd.0.warning1.headline").val;
                                            var Description = getState("dwd.0.warning1.description").val;
                                            var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ;
                                            setTimeout(function() {
                                                sendTo ("telegram.0", DWD_telegramm);
                                            }, 1 * 1000);
                                        /* headline für Warning1 sichern */
                                            setState(idBackHeadline2,Headline);
                                        }
                                        }
                                        
                                        function check2(){
                                        var Severity2 = getState(idSeverity2).val;
                                        if (Severity2 !== "") {
                                            var Begin = getState("dwd.0.warning2.begin").val;
                                            var End = getState("dwd.0.warning2.end").val;
                                            var text = getState("dwd.0.warning2.text").val;
                                            var Headline = getState("dwd.0.warning2.headline").val;
                                            var Description = getState("dwd.0.warning2.description").val;
                                            var DWD_telegramm = Headline + "\ngültig vom " + Begin + " bis " + End + "\n" + Description ;
                                            setTimeout(function() {
                                                sendTo ("telegram.0", DWD_telegramm);
                                            }, 1 * 1000);
                                        /* headline für Warning2 sichern */
                                            setState(idBackHeadline3,Headline);
                                        }
                                        }
                                        
                                        on(idSeverity, function (obj){
                                            if (obj.newState.val !== obj.oldState.val) {
                                                if (obj.newState.val !== "") {
                                                    check();
                                                }else {
                                                    sendTo ("telegram.0", "Alle Wetterwarnungen des DWD wurden aufgehoben") ;
                                                }
                                        }
                                        });
                                        
                                        on(idSeverity1, function (obj){
                                            if (obj.newState.val !== obj.oldState.val) {
                                                if (obj.newState.val !== "") {
                                                    check1();
                                                } else
                                                {
                                                    var Headlineclear1 = getState(idBackHeadline2).val;
                                                    sendTo ("telegram.0", "Die Wetterwarnung " +"'"+ Headlineclear1 + "'" + " des DWD wurde aufgehoben") ;
                                                }
                                        }
                                        });
                                        
                                        on(idSeverity2, function (obj){
                                            if (obj.newState.val !== obj.oldState.val) {
                                                if (obj.newState.val !== "") {
                                                    check2();
                                                } else
                                                {
                                                    var Headlineclear2 = getState(idBackHeadline3).val;
                                                    sendTo ("telegram.0", "Die Wetterwarnung " +"'"+ Headlineclear2 + "'" + " des DWD wurde aufgehoben") ;
                                            }
                                        }
                                        });
                                        
                                        /* Auslösen bei Scriptstart - Wenn nicht benötigt einfach löschen oder auskommentieren */
                                        check();
                                        check1();
                                        check2();
                                        
                                        

                                        Jetzt wird bei mehr als einer Warnung immer zusätzlich beim aufheben der Warnung immer die headline der Warnung mit angegeben.

                                        z.B.

                                        Wetterwarnung 'Amtliche WARNUNG vor GLÄTTE' des Deutschen Wetterdienstes wurde aufgehoben

                                        Gruß

                                        Johnny

                                        [EDIT] Aktuelle Version mit Sprachausgabe hier http://forum.iobroker.net/viewtopic.php … =40#p52017

                                        1 Reply Last reply Reply Quote 0
                                        • N
                                          Nordlicht last edited by

                                          @PrinzEisenherz1: `

                                          Hi Johnny,

                                          es kann sein, dass ich auch einem Irrtum erliege, aber wäre es nicht auch sinnvoll nicht "nur" auf die Änderung der <u>severity</u> zu reagieren sondern auf die <u>description</u>.

                                          Warum?

                                          Mir ist jetzt mehrfach aufgefallen, dass sich z.B. dwd.0.warning.description ändert (zeitliche Verlängerung der Meldung o.ä.) und die <u>severity</u> trotzdem gleich bleibt (z.B. 1). Auf diese Änderung wird nicht reagiert. Ich muss hier aber auch dazu sagen, dass ich die Meldung nicht via Telegramm versende sondern über den Home24 Mediaplayer sprechen lasse. Hinsichtlich der Funktion als solches wird dies jedoch keinen Einfluss haben.

                                          Ansonsten…. ein ganz klasse Skript das ich sehr gerne im Einsatz habe!

                                          Gruß

                                          Thomas

                                          1 Reply Last reply Reply Quote 0
                                          • P
                                            PrinzEisenherz1 last edited by

                                            Hi Thomas, das hätte ich zuerst aber dann war das Problem das severity sich geändert hat aber description noch nicht befüllt war und ich Nachrichten ohne Beschreibung erhalten habe. Deswegen trigger ich die Beschreibung. Mal schauen ob ich es anders umbiegen kann. Das Script reagiert aber auf Änderung der Beschreibung.

                                            Trotzdem freut es mich das es dir gefällt und auf Verbesserungsvorschläge oder wünsche hab ich immer n Ohr offen.

                                            Gruß Johnny

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            799
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            16
                                            67
                                            10267
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo