Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten

    This topic has been deleted. Only users with topic management privileges can see it.
    • rtwl
      rtwl @ticaki last edited by

      @ticaki kann ich bestätigen, alle 3 'message' sind leer.
      ist das aktuell ein Bug und wird gefixed, oder wird es so bleiben?
      oder muss ich da was einstellen?

      T 1 Reply Last reply Reply Quote 0
      • T
        ticaki Developer @rtwl last edited by ticaki

        @rtwl
        Denke mal du musst was einstellen.

        ist 0_userdata.0.wetterwarnung1.config.auto.zamg.state_html oder so false?

        bei mir ist das in message html

        <table border="1" cellpadding="0" cellspacing="0" width="100%"><tr><td style="padding: 5px 0 5px 0;" bgcolor="silver"><b><font color=#000000>Alle Warnmeldungen des DWD wurden aufgehoben.</font></b></td></tr></table>
        
        rtwl 1 Reply Last reply Reply Quote 0
        • rtwl
          rtwl @ticaki last edited by

          @ticaki dort hab ich nur den "pushover" Datenpunkt.
          aber vermutlich muss ich da was im Skript aktivieren, nehme ich an. Bin gerade nur am Smartphone.

          T 1 Reply Last reply Reply Quote 0
          • T
            ticaki Developer @rtwl last edited by

            @rtwl
            Hört sich doof an... aber ist 3 Jahre her dass ich das zum letzten mal gemacht habe 🙂 Du mußt das glaube ich auskommentieren:

            uPushdienst+= STATE;             // Auskommentieren zum aktivieren. State befindet sich unter mainStatePath.message
            uPushdienst+= STATE_HTML;        // Auskommentieren zum aktivieren. State_html befindet sich unter mainStatePath.messageHtml als Tabelle
            uPushdienst+= STATE_PLAIN; 
            
            rtwl 1 Reply Last reply Reply Quote 0
            • rtwl
              rtwl @ticaki last edited by

              @ticaki
              ja, du hast recht.
              obwohl ich messagePlain nicht bekomme (brauche aber eh kein HTML) sowie der messagePlain "kaputt" ist (falsche Satzbildung) und alle 5 Warnungen enthält.
              der normale message DP funktioniert aber. Hier sehe ich (zumindest heute) die aktuell gültige Warnung.

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

                wenn auch schon 3 Jahre her für dich, vielleicht kannst du mir noch beantworten, ob es tatsächlich so ist, dass unter data/ die 5 Warnungen Ordner (warning bis warning4) nicht chronologisch nach Zeit sortiert werden? - wie gesagt es ist erst mein zweiter Tag mit dem Skript, daher hab ich noch keine "Langzeiterfahrung".
                Es würde schon etwas einfacher sein, für die VIS die wichtigen DP´s aus dem warningX Ordner zu verwenden, wenn man wüsste, in welchem Ordner die aktuell gültige Warnung steckt. 🙊

                T 1 Reply Last reply Reply Quote 0
                • T
                  ticaki Developer @rtwl last edited by ticaki

                  @rtwl
                  Du hast mich falsch verstanden, das ist mein Skript ich sollte es kennen, aber einrichten ist halt wirklich sehr lange her 🙂

                  Die Ordnung ist Warnstufe, Startzeitpunkt, Warnid. Das sind aber dumme States und sind da weil das alte UWZ Skript und der DWD Adapter das so machen.

                  Da dürfte nix richtig kaputt sein AFAIK in messagePlain & messageHtml stehen die aktuell gültigen Warnung die durch die Filter gekommen sind.
                  Du kannst da Filter vorgeben, für Höhe, Warnlevel usw. Alle Ausgabedatenpunkte beachten diese Filter ausgenommen die warning 1 - 5, diese werden einfach geschrieben.

                  Drücke mal auf Kommando zamg messageHtml da müsste dann alle Warnmeldungen aufgehoben in den State stehen.

                  message ist ein State in dem einzelne Warnungen ausgegeben werden und sofort von der nächsten Warnung überschrieben werden.

                  rtwl 1 Reply Last reply Reply Quote 0
                  • rtwl
                    rtwl @ticaki last edited by

                    @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                    Du hast mich falsch verstanden

                    Stimmt, sorry 😉

                    @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                    Die Ordnung ist Warnstufe, Startzeitpunkt, Warnid.

                    okay, danke. Macht Sinn!

                    @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                    Das sind aber dumme States

                    Dumm sind sie nicht 😉 Ich finde es gut, denn so kann ich mir die VIS Meldung nach meinen Wünschen aufbauen.

                    @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                    Kommando zamg messageHtml da müsste dann alle Warnmeldungen aufgehoben in den State stehen

                    "Alle Warnungen aufgehoben" wird hier noch ein paar Tage dauern.
                    Ein klick auf stateHtml hat mir den HTML Code gebracht. - Dabei hab ich auch gleich die anderen probiert.
                    bei state_plain wird mir aktuell folgendes in den messagePlain geschrieben:

                    des ZAMG für Enns:Warnung vor Hitze des ZAMG für Enns
                    gültig vom 21.08.23 00:00 Uhr bis 21.08.23 23:59 Uhr des ZAMG für Enns:Warnung vor Hitze des ZAMG für Enns
                    gültig vom 22.08.23 00:00 Uhr bis 22.08.23 23:59 Uhr des ZAMG für Enns:Warnung vor Hitze des ZAMG für Enns
                    gültig vom 23.08.23 00:00 Uhr bis 23.08.23 23:59 Uhr des ZAMG für Enns:Warnung vor Hitze des ZAMG für Enns
                    gültig vom 24.08.23 00:00 Uhr bis 24.08.23 23:59 Uhr des ZAMG für Enns:Warnung vor Hitze des ZAMG für Enns
                    gültig vom 20.08.23 00:00 Uhr bis 20.08.23 23:59 Uhr

                    per Copy&Paste hier eingefügt. Und das meinte ich mit "Fehler", denn da stimmt der Satzbau irgendwie nicht.

                    T 1 Reply Last reply Reply Quote 0
                    • T
                      ticaki Developer @rtwl last edited by ticaki

                      @rtwl
                      ich war der Meinung ich hätte vor kurzem den Satzbau gefixt. Sieht aber garnicht danach aus

                      Suche mal nach folgender Zeile:

                      if (todoBitmask & (EMAIL | STATE_PLAIN)) emailPlainEmail += getArtikelMode(mode) + area + ':' + pushMsg + SPACE
                      

                      und ersetzte sie durch diese:

                                          if (todoBitmask & (EMAIL | STATE_PLAIN)) emailPlainEmail += /*getArtikelMode(mode) + area + ':' + */pushMsg + SPACE
                      

                      ... Ich werde demnächst mal den ganzen Messagekram neu schreiben, das ist ja so ein gewurschtel da blick ich selbst nicht mehr durch 🙂

                      rtwl 1 Reply Last reply Reply Quote 0
                      • rtwl
                        rtwl @ticaki last edited by

                        @ticaki
                        sieht besser aus, aber der Zeilensprung ist denke ich noch falsch gesetzt:
                        seiht man hier im Code Fenster ganz gut.

                        Warnung vor Hitze des ZAMG für Enns
                        gültig vom 21.08.23 00:00 Uhr bis 21.08.23 23:59 Uhr Warnung vor Hitze des ZAMG für Enns
                        gültig vom 22.08.23 00:00 Uhr bis 22.08.23 23:59 Uhr Warnung vor Hitze des ZAMG für Enns
                        gültig vom 23.08.23 00:00 Uhr bis 23.08.23 23:59 Uhr Warnung vor Hitze des ZAMG für Enns
                        gültig vom 24.08.23 00:00 Uhr bis 24.08.23 23:59 Uhr Warnung vor Hitze des ZAMG für Enns
                        gültig vom 20.08.23 00:00 Uhr bis 20.08.23 23:59 Uhr 
                        

                        @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                        Ich werde demnächst mal den ganzen Messagekram neu schreiben

                        Da hätte ich einen Wunsch, falls überhaupt machbar:
                        Neben von den ganzen short, long, verylong Texten würde ich mit einen Text wünschen den man selbst zusammenstellen kann. Denn das "ZAMG" sowie den Ort brauche ich zumindest nicht, da ich nur die eine Quelle verwende und nur einen Ort abfrage.
                        Aber falls niht möglich, oder zu aufwändig bzw sonst kein Bedarf, kann ich das auch mit den Objekten in data/ machen.

                        Danke nochmals für deine Hilfe und dein Skript!!

                        T 1 Reply Last reply Reply Quote 0
                        • T
                          ticaki Developer @rtwl last edited by ticaki

                          @rtwl

                          ein paar Zeilen oberhalb von dem was du gerade geändert hast steht:

                          pushMsg += (bt ? NEWLINE + sTime : '');
                          

                          tausche das mal gegen

                          pushMsg += (bt ?  sTime + NEWLINE : '');
                          

                          eventuell muss da ein SPACE + sTime noch hin, wenn ein Leerzeichen fehlt

                          Dann ist es richtig. Ich machen nächsten WE ein Update wo das dann auch stimmt wenn mehr Infos angezeigt werden, was jetzt wohl nicht der Fall ist.

                          Selbst konfigurieren ist erstmal nicht drin - das wären wohl 400 Zeilencode

                          Das der Ort nicht angezeigt wird ist was anderes.

                          Da kannste erstmal ist wieder ein paar zeilen höher

                          pushMsg = headline + getArtikelMode(mode) + area;
                          

                          zu

                          pushMsg = headline ; 
                          

                          ändern

                          rtwl 1 Reply Last reply Reply Quote 0
                          • rtwl
                            rtwl @ticaki last edited by

                            @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                            eventuell muss da ein SPACE + sTime noch hin, wenn ein Leerzeichen fehlt

                            Ja, das SPACE + hat gefehlt - jetzt sieht messagePlain besser aus, obwohl vor jeder neuen Zeile noch ein Leerzeichen ist:

                            Warnung vor Hitze gültig vom 21.08.23 00:00 Uhr bis 21.08.23 23:59 Uhr
                             Warnung vor Hitze gültig vom 22.08.23 00:00 Uhr bis 22.08.23 23:59 Uhr
                             Warnung vor Hitze gültig vom 23.08.23 00:00 Uhr bis 23.08.23 23:59 Uhr
                             Warnung vor Hitze gültig vom 24.08.23 00:00 Uhr bis 24.08.23 23:59 Uhr
                             Warnung vor Hitze gültig vom 25.08.23 00:00 Uhr bis 25.08.23 23:59 Uhr
                            
                            

                            @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                            Das der Ort nicht angezeigt wird

                            Hat auch gut funktioniert - wie oben zu erkennen.

                            Was mir aber aufgefallen ist, bei dem messagePlain wird es nach Datum sortiert (was ich bevorzuge), siehe oben.
                            Bei messageHtmlwird nach Gefahrenstufe sortiert. (Zeilensprünge hier manuell eingefügt für eine bessere Lesbarkeit)

                            <table border="1" cellpadding="0" cellspacing="0" width="100%"><tr><td style="padding: 5px 0 5px 0;" bgcolor="#ffc400"><b><font color=#000000>
                            🔆 Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, ab morgen nacht </font></b></td></tr><tr><td style="padding: 5px 0 5px 0;" bgcolor="#ffc400"><b><font color=#000000>
                            🔆 Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, ab übermorgen nacht </font></b></td></tr><tr><td style="padding: 5px 0 5px 0;" bgcolor="#ffc400"><b><font color=#000000>
                            🔆 Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, in 3 Tagen </font></b></td></tr><tr><td style="padding: 5px 0 5px 0;" bgcolor="#ffc400"><b><font color=#000000>
                            🔆 Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, in 4 Tagen </font></b></td></tr><tr><td style="padding: 5px 0 5px 0;" bgcolor="#fffc04"><b><font color=#000000>
                            🔆 Wetterwarnung vor Hitze, für die Region Enns, Stufe gelb, ab heute nacht </font></b></td></tr><tr><td style="padding: 5px 0 20px 0;"> Insgesamt 5 gültige Warnungen.</td></tr></table>
                            


                            Ich würde es bevorzugen (ohne meinen Wunsch irgendwie aufdrängen zu wollen), dass auch beim messageHtml der Ort entfernt wird sowie auch die "Stufe gelb/orange".
                            Die Umwandlung vom Datum zu "in X Tagen" gefällt mir hier sehr gut, was beim messagePlain leider nicht der Fall ist. - Das meinte ich mit "benutzerdefiniertem Einstellen" - verstehe aber, dass dies nicht möglich ist bzw viel zu aufwändig wäre.

                            rtwl T 2 Replies Last reply Reply Quote 0
                            • rtwl
                              rtwl @rtwl last edited by

                              Hab grade gesehen, dass der Auslöser state_plain_veryshort die Datumsumwandlung macht.
                              jedoch gibt es hier ein Problem mit den Zeilensprüngen:

                              Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, ab heute nacht  Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, ab morgen nacht  Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, ab übermorgen nacht  Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, in 3 Tagen  Wichtige Wetterwarnung vor Hitze, für die Region Enns, Stufe orange, in 4 Tagen  
                              

                              Wo stell ich eigentlich ein, welche Textlänge ich standardmäßig haben möchte? geht das überhaupt?

                              1 Reply Last reply Reply Quote 0
                              • T
                                ticaki Developer @rtwl last edited by ticaki

                                @rtwl
                                das kannste für dich lösen

                                einfach nach jedem Update nach

                                function getArtikelMode(mode, speak = false) {
                                

                                suchen und daraus

                                function getArtikelMode(mode, speak = false) {
                                  return ''
                                

                                Das Space zu viel ist hier:

                                if (todoBitmask & (EMAIL | STATE_PLAIN)) emailPlainEmail += /*getArtikelMode(mode) + area + ':' + */pushMsg + SPACE
                                

                                das + SPACE muss weg.

                                Aber meine Telegramnachrichten sind in ordnung deshalb ändere ich das nicht für alle 🙂 Sonst bin ich ewig am flicken und die ich will doch einen Adapter bauen bis weihnachten

                                crunchip rtwl 2 Replies Last reply Reply Quote 0
                                • crunchip
                                  crunchip Forum Testing Most Active @ticaki last edited by

                                  @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                                  ich will doch einen Adapter bauen bis weihnachten

                                  jetzt doch?😁

                                  1 Reply Last reply Reply Quote 0
                                  • rtwl
                                    rtwl @ticaki last edited by

                                    @ticaki - Ein paar Fragen hab ich noch. Vielleich hast du kurz Zeit mir zu helfen:

                                    ich habe vor 4 Tagen den uPushdienst+= STATE_HTML; auskommentiert (zum aktivieren). Jedoch wird der Datenpunkt 0_userdata.0.wetterwarnung.messageHtmlnicht aktualisiert.
                                    Es gab täglich eine Wetterwarnung - dieser Datenpunkt wurde aber am 20.8. zuletzt geändert.
                                    Die anderen beiden message sowie messagePlain sind jedoch aktualisiert worden.

                                    /* Konfiguration der zu nutzenden Ausgabe um //uPushdienst+= PUSHOVER; zu aktivieren, bitte die // enfernen, also uPushdienst+= PUSHOVER; */
                                    //uPushdienst+= TELEGRAM;          // Auskommentieren zum aktivieren
                                    uPushdienst+= PUSHOVER;          // Auskommentieren zum aktivieren
                                    //uPushdienst+= EMAIL;             // Auskommentieren zum aktivieren. Einstellungen nicht vergessen
                                    //uPushdienst+= SAYIT;             // Auskommentieren zum aktivieren. Einstellungen nicht vergessen
                                    //uPushdienst+= HOMETWO;           // Auskommentieren zum aktivieren. Einstellungen nicht vergessen
                                    //uPushdienst+= ALEXA;             // Auskommentieren zum aktivieren. Einstellungen nicht vergessen
                                    uPushdienst+= STATE;             // Auskommentieren zum aktivieren. State befindet sich unter mainStatePath.message
                                    //uPushdienst+= IOGO;              // Auskommentieren zum aktivieren. Einstellungen nicht vergessen
                                    uPushdienst+= STATE_HTML;        // Auskommentieren zum aktivieren. State_html befindet sich unter mainStatePath.messageHtml als Tabelle
                                    uPushdienst+= STATE_PLAIN;        // Auskommentieren zum aktivieren. States mit allen aktivien Warnungen
                                    

                                    Sollte das nicht auch automatisch aktualisiert werden?

                                    Andere Frage:
                                    Wenn eine Wetterwarnung bis 23:59 Uhr gemeldet wird, bekomme ich täglich um 00:00 Uhr eine "... wurde aufgehoben" Meldung per Pushover. Ist das ein gewünschtes Verhalten?

                                    T 1 Reply Last reply Reply Quote 0
                                    • T
                                      ticaki Developer @rtwl last edited by ticaki

                                      @rtwl
                                      Ist zwar ne dämliche Zeit aber ja ist eigentlich gewünscht, wenn bei ZAMG aber alle Meldungen so aussehen dann muß man da ne ausnahme einbauen. Bei mir geht der HTML State.

                                      bist du dir sicher das der State unter config.auto aktiviert ist? (oder wo das auto ist) :)#

                                      Ich werkel gerade am Plex Adapter rum, da kann ich jetzt nichts an diesem Skript ändern, da baut man nur Mist 🙂

                                      rtwl 1 Reply Last reply Reply Quote 0
                                      • rtwl
                                        rtwl @ticaki last edited by

                                        @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                                        bist du dir sicher das der State unter config.auto aktiviert ist?

                                        Ja, den hab ich kontrolliert und war auch aktiviert.
                                        hab dann aber die Email Ausgabe aktiviert (ohne Email-Einstellungen vorzunehmen). Damit hat es dann geklappt.
                                        Habe aber das Problem, dass ich die Schriftfarbe der Message beim HTML State nicht ändern/konfigurieren kann. Meine VIS hat einen dunklen Hintergrund, da sieht man die schwarze Schriftfarbe nicht 😉 Hab dann all meine wenigen JS Kenntnisse zusammengeworfen, aber es nicht geschafft die Nachricht eine weiße Schriftfarbe zu verpassen. - Ich dann auch irgendwie alles zerstört - zu viel try&error.
                                        Werde dann morgen nochmal von gaaanz vorne anfangen.

                                        @ticaki sagte in [Script] DWD/UWZ/NINA Warnungen als Push/Sprachnachrichten:

                                        Ich werkel gerade am Plex Adapter rum

                                        Dann lass ich dich jetzt auch in Ruhe weiter arbeiten 😉
                                        Ich werde schon eine Lösung finden. Danke für deine Hilfe in den letzten Tagen 👍

                                        T 1 Reply Last reply Reply Quote 0
                                        • T
                                          ticaki Developer @rtwl last edited by ticaki

                                          @rtwl

                                          suche mal nach 123456 ein paar Zeilen darunter sind die Formatierungsvariablen für die Tabelle. Bist der einzige seit 3 Jahren der das anpassen möchte 🙂

                                          var html_prefix = '<table border="1" cellpadding="0" cellspacing="0" width="100%">';
                                          var html_headline_color = '<tr><td style="padding: 5px 0 5px 0;" bgcolor=\"' + '###color###' + '\"><b><font color=#000000>' + '###headline###' + '</font></b></td></tr>';
                                          var html_headline = '<tr><td style="padding: 5px 0 5px 0;"><b>' + '###headline###' + '</b></td></tr>';
                                          var html_message = '<tr><td style="padding: 5px 0 20px 0;">' + '###message###' + '</td></tr>';
                                          var html_end = '</table>';
                                          

                                          Das hier sind Platzhalter: ###color###, ###headline### , ###message###

                                          rtwl 1 Reply Last reply Reply Quote 0
                                          • rtwl
                                            rtwl @ticaki last edited by

                                            @ticaki
                                            ja, damit hab ich eh gespielt, aber hab es nicht geschafft in der (hier) 4. Zeile das "font color" einzubauen, dass es funktioniert hätte.

                                            aber wie gesagt, konzentriere dich auf deinen Adapter. Ich werde mir schon was überlegen wie ich es in der VIS einbaue 👍🏼

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            415
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            53
                                            1521
                                            489087
                                            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