Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Hilfe bei RSS-feed benötigt !

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Hilfe bei RSS-feed benötigt !

    This topic has been deleted. Only users with topic management privileges can see it.
    • dslraser
      dslraser Forum Testing Most Active @sigi234 last edited by

      @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

      Wurde entfernt, aber wäre interessant zu wissen was der macht.

      habe ich schonmal nachgefragt, der macht "nix"

      1 Reply Last reply Reply Quote 0
      • dslraser
        dslraser Forum Testing Most Active @Negalein last edited by

        @negalein

        habe mal einen alias meiner Lampe genommen

        Bildschirmfoto 2021-08-08 um 21.33.46.png

        Negalein 1 Reply Last reply Reply Quote 0
        • dslraser
          dslraser Forum Testing Most Active @Negalein last edited by dslraser

          @negalein sagte in Hilfe bei RSS-feed benötigt !:

          Wäre es auch möglich, den Text des erstellten JSON auf Alexa auszugeben?

          ja, das geht auch.

          das ist ein eigener DP
          Bildschirmfoto 2021-08-08 um 21.36.10.png

          wann wird der denn auf wahr gestellt und durch was ?

          sigi234 1 Reply Last reply Reply Quote 0
          • sigi234
            sigi234 Forum Testing Most Active @dslraser last edited by sigi234

            @dslraser

            Durch dieses JS Skript:

            let   WACHE0   = /.*/ig;                        //RegEx
            let   WACHE1   = /DEINE WACHE*/ig;                        //RegEx
            let   DP       = "javascript.0.Feuerwehr";      //Datenpunkt
            const Zeitplan = "*/10 * * * *";              //jede Minute bei 23 Sekunden
             
             
            //Datenpunkt anlegen
            createState(DP+'.RSS_Meldung', '', { name: "Feuerwehreinsatzmeldungen", type: "json", role: "state" });
            createState(DP+'.neuer_Alarm', '', { name: "neue Meldung",              type: "boolean", role: "state" });
             
            //scheduler
            schedule(Zeitplan, polldata);
            polldata();  //einmalig direkt beim Start Daten holen
             
            function polldata() {
                var FeedParser = require('feedparser');
                var request = require('request'); // for fetching the feed
             
                var req = request('http://intranet.ooelfv.at/webext2/rss/rss_laufend.xml');
                var feedparser = new FeedParser();
                setState(DP+'.neuer_Alarm', false);  //DP leeren
                setState(DP+'.RSS_Meldung', ''); //DP leeren
                
                req.on('error', function (error) {
                 // handle any request errors
                });
             
                req.on('response', function (res) {
                  var stream = this; // `this` is `req`, which is a stream
                  if (res.statusCode !== 200) { this.emit('error', new Error('Bad status code')); }
                  else { stream.pipe(feedparser); }
                });
             
                feedparser.on('error', function (error) {
                 // always handle errors
                });
             
                feedparser.on('readable', function () {
                 // This is where the action is!
                var stream = this;    // `this` is `feedparser`, which is a stream
                var meta = this.meta; // **NOTE** the "meta" is always available in the context of the feedparser instance
                var item;
             
                while (item = stream.read()) {
                  if (item.description.search(WACHE0) != -1 || item.description.search(WACHE1) != -1) { 
                        let tmp = (item.description.split("<br>")); 
                        let tmp1= (tmp[1].split(", "));
                        let tmp2= (tmp[2].split("  "));
                        tmp1[1] = tmp1[1].replace(/[a-z,A-Z,:, ]/ig, "");
                        tmp2[0] = tmp2[0].replace(/[a-z,A-Z,:, ]/ig, "");
                        tmp2[1] = tmp2[1].replace("- ", "Uhr");
                        setState(DP+'.RSS_Meldung', JSON.stringify([{ 'Titel': item.title, 'Feuerwache': tmp[0], 'Einsatz': tmp1[0], 'Alarmstufe': tmp1[1], 'Feuerwehren': tmp2[0], 'Zeit': tmp2[1], 'Bezirk': tmp[3] }]));
                        console.log("Einsatzmeldung vorhanden...");
                        setState(DP+'.neuer_Alarm', true);
                  }     
                }
              });
            } //end polldata
            
            1 Reply Last reply Reply Quote 0
            • Negalein
              Negalein Global Moderator @dslraser last edited by

              @dslraser sagte in Hilfe bei RSS-feed benötigt !:

              habe mal einen alias meiner Lampe genommen

              soweit hab ich es auch zugeschnitten. Das funktioniert.

              @negalein sagte in Hilfe bei RSS-feed benötigt !:
              Wäre es auch möglich, den Text des erstellten JSON auf Alexa auszugeben?

              ja, das geht auch.

              Auch mit dem Aufteilen des JSON?
              Als Text zB "Feuerwehreinsatz" (wie im obigen Blockly), "in Schärding - Schardenberg", "Alarmstufe 1" (wie Beispiel-JSON zB)

              1 Reply Last reply Reply Quote 0
              • dslraser
                dslraser Forum Testing Most Active last edited by dslraser

                @negalein sagte in Hilfe bei RSS-feed benötigt !:

                Auch mit dem Aufteilen des JSON?
                Als Text zB "Feuerwehreinsatz" (wie im obigen Blockly), "in Schärding - Schardenberg", "Alarmstufe 1" (wie Beispiel-JSON zB)

                so ungefähr ?

                Bildschirmfoto 2021-08-08 um 23.07.28.png

                Ergebnis im Log

                Feuerwehreinsatz in Schärding - SCHARDENBERG, Alarmstufe 1
                

                Der DP Feuerwehr ist selbst angelegt, da ist zum testen nur Dein Beispiel json drinn

                Negalein 1 Reply Last reply Reply Quote 0
                • Negalein
                  Negalein Global Moderator @dslraser last edited by

                  @dslraser sagte in Hilfe bei RSS-feed benötigt !:

                  so ungefähr ?

                  Cool
                  Das Beispiel von dir kommt dann hier anstatt des rot umrandetem rein?
                  Nur statt dem debug output der Alexa Block?

                  javascript - ioBroker (1).png

                  dslraser 1 Reply Last reply Reply Quote 0
                  • dslraser
                    dslraser Forum Testing Most Active @Negalein last edited by

                    @negalein

                    Bildschirmfoto 2021-08-08 um 23.10.26.png

                    <xml xmlns="https://developers.google.com/blockly/xml">
                     <variables>
                       <variable id="L7A9(g?`LW}R/bMuZJZ+">alarm</variable>
                       <variable id="LsczX0YIyn!68c?SjK*I">Ansage</variable>
                     </variables>
                     <block type="on" id="+@7%D7W8?OQL#7sG9${H" x="62" y="12">
                       <field name="OID">alias.0.Steckdosen.Kaminlampe</field>
                       <field name="CONDITION">ne</field>
                       <field name="ACK_CONDITION"></field>
                       <statement name="STATEMENT">
                         <block type="variables_set" id="%HtGMbM4;hXhq!W!Jl{p">
                           <field name="VAR" id="L7A9(g?`LW}R/bMuZJZ+">alarm</field>
                           <value name="VALUE">
                             <block type="get_value" id=")4aT*cgU|]x#C}|MNW[[">
                               <field name="ATTR">val</field>
                               <field name="OID">0_userdata.0.Test.Feuerwehr</field>
                             </block>
                           </value>
                           <next>
                             <block type="variables_set" id="?;!h8=JjxBHUrvS?Y!;_">
                               <field name="VAR" id="LsczX0YIyn!68c?SjK*I">Ansage</field>
                               <value name="VALUE">
                                 <block type="logic_ternary" id="L)4b8*{+md/}v?{/C9.:">
                                   <value name="IF">
                                     <block type="get_value" id="S;xg!`v.v]~mPQ:E%HgF">
                                       <field name="ATTR">val</field>
                                       <field name="OID">alias.0.Steckdosen.Kaminlampe</field>
                                     </block>
                                   </value>
                                   <value name="THEN">
                                     <block type="text_join" id="*h/@)bzlPIooxo1/j:Au">
                                       <mutation items="5"></mutation>
                                       <value name="ADD0">
                                         <block type="text" id="Xu8o?(43(vn;Cg!T-f[1">
                                           <field name="TEXT">80;Feuerwehreinsatz in </field>
                                         </block>
                                       </value>
                                       <value name="ADD1">
                                         <block type="get_attr" id="NH!)Y8=bLfRpPo2:WbjX">
                                           <value name="PATH">
                                             <shadow type="text" id="(Cy7yET/dEvN8A4b|-(w">
                                               <field name="TEXT">0.Feuerwache</field>
                                             </shadow>
                                           </value>
                                           <value name="OBJECT">
                                             <block type="variables_get" id="H6r!qQXG2k`,6ad^P8@L">
                                               <field name="VAR" id="L7A9(g?`LW}R/bMuZJZ+">alarm</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <value name="ADD2">
                                         <block type="text" id="a$[LcG?`YqUEJ88yB|Nk">
                                           <field name="TEXT">, </field>
                                         </block>
                                       </value>
                                       <value name="ADD3">
                                         <block type="text" id="H^eJylGZdDfB9@!`VW/M">
                                           <field name="TEXT"> Alarmstufe </field>
                                         </block>
                                       </value>
                                       <value name="ADD4">
                                         <block type="get_attr" id="FgybMVKzEzhDO=?4Y9qZ">
                                           <value name="PATH">
                                             <shadow type="text" id="_sE$+E3j.T_fm~J)o.x2">
                                               <field name="TEXT">0.Alarmstufe</field>
                                             </shadow>
                                           </value>
                                           <value name="OBJECT">
                                             <block type="variables_get" id="|!-j*yWA38543V2I-Yo2">
                                               <field name="VAR" id="L7A9(g?`LW}R/bMuZJZ+">alarm</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <value name="ELSE">
                                     <block type="text" id="2CpPUD^;S4FApOa;J9fS">
                                       <field name="TEXT">80;Feuerwehreinsatz beendet</field>
                                     </block>
                                   </value>
                                 </block>
                               </value>
                               <next>
                                 <block type="control" id="qQ9[Z8iQklaMF+xh,a10">
                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                   <field name="OID">alexa2.0.Echo-Devices.G0911B0592770T3W.Commands.speak</field>
                                   <field name="WITH_DELAY">FALSE</field>
                                   <value name="VALUE">
                                     <block type="variables_get" id="*0=u_Ai?c:6|1T8FKUV[">
                                       <field name="VAR" id="LsczX0YIyn!68c?SjK*I">Ansage</field>
                                     </block>
                                   </value>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                       </statement>
                     </block>
                    </xml>
                    

                    Negalein 1 Reply Last reply Reply Quote 2
                    • Negalein
                      Negalein Global Moderator @dslraser last edited by

                      @dslraser sagte in Hilfe bei RSS-feed benötigt !:

                      @negalein

                      Bildschirmfoto 2021-08-08 um 23.10.26.png

                      Danke

                      dslraser 1 Reply Last reply Reply Quote 0
                      • dslraser
                        dslraser Forum Testing Most Active @Negalein last edited by

                        @negalein

                        bei Wert von Feuerwehr müßte dann Dein DP mit dem json hin

                        Bildschirmfoto 2021-08-08 um 23.25.09.png

                        Probiere mal aus

                        <xml xmlns="https://developers.google.com/blockly/xml">
                         <variables>
                           <variable id="L7A9(g?`LW}R/bMuZJZ+">alarm</variable>
                           <variable id="LsczX0YIyn!68c?SjK*I">Ansage</variable>
                         </variables>
                         <block type="on" id="4Ag2o!M7(duPG[0Vl2Hd" x="238" y="-88">
                           <field name="OID">javascript.0.Feuerwehr.neuer_Alarm</field>
                           <field name="CONDITION">ne</field>
                           <field name="ACK_CONDITION"></field>
                           <statement name="STATEMENT">
                             <block type="variables_set" id="%HtGMbM4;hXhq!W!Jl{p">
                               <field name="VAR" id="L7A9(g?`LW}R/bMuZJZ+">alarm</field>
                               <value name="VALUE">
                                 <block type="get_value" id=")4aT*cgU|]x#C}|MNW[[">
                                   <field name="ATTR">val</field>
                                   <field name="OID">0_userdata.0.Test.Feuerwehr</field>
                                 </block>
                               </value>
                               <next>
                                 <block type="variables_set" id="CMmMZwNmchG4F@fQN:C}">
                                   <field name="VAR" id="LsczX0YIyn!68c?SjK*I">Ansage</field>
                                   <value name="VALUE">
                                     <block type="text_join" id="Vyi+e2{];XoHNaU6g^V8">
                                       <mutation items="1"></mutation>
                                       <value name="ADD0">
                                         <block type="logic_ternary" id="i5.8F@(VdWhDGf$#*z*/">
                                           <value name="IF">
                                             <block type="get_value" id="JDX!Y$H%-r1]ZyBPgeHQ">
                                               <field name="ATTR">val</field>
                                               <field name="OID">javascript.0.Feuerwehr.neuer_Alarm</field>
                                             </block>
                                           </value>
                                           <value name="THEN">
                                             <block type="text_join" id="*h/@)bzlPIooxo1/j:Au">
                                               <mutation items="5"></mutation>
                                               <value name="ADD0">
                                                 <block type="text" id="Xu8o?(43(vn;Cg!T-f[1">
                                                   <field name="TEXT">80;Feuerwehreinsatz in </field>
                                                 </block>
                                               </value>
                                               <value name="ADD1">
                                                 <block type="get_attr" id="NH!)Y8=bLfRpPo2:WbjX">
                                                   <value name="PATH">
                                                     <shadow type="text" id="(Cy7yET/dEvN8A4b|-(w">
                                                       <field name="TEXT">0.Feuerwache</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="OBJECT">
                                                     <block type="variables_get" id="H6r!qQXG2k`,6ad^P8@L">
                                                       <field name="VAR" id="L7A9(g?`LW}R/bMuZJZ+">alarm</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                               <value name="ADD2">
                                                 <block type="text" id="a$[LcG?`YqUEJ88yB|Nk">
                                                   <field name="TEXT">, </field>
                                                 </block>
                                               </value>
                                               <value name="ADD3">
                                                 <block type="text" id="H^eJylGZdDfB9@!`VW/M">
                                                   <field name="TEXT"> Alarmstufe </field>
                                                 </block>
                                               </value>
                                               <value name="ADD4">
                                                 <block type="get_attr" id="FgybMVKzEzhDO=?4Y9qZ">
                                                   <value name="PATH">
                                                     <shadow type="text" id="_sE$+E3j.T_fm~J)o.x2">
                                                       <field name="TEXT">0.Alarmstufe</field>
                                                     </shadow>
                                                   </value>
                                                   <value name="OBJECT">
                                                     <block type="variables_get" id="|!-j*yWA38543V2I-Yo2">
                                                       <field name="VAR" id="L7A9(g?`LW}R/bMuZJZ+">alarm</field>
                                                     </block>
                                                   </value>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <value name="ELSE">
                                             <block type="text" id="2CpPUD^;S4FApOa;J9fS">
                                               <field name="TEXT">80;Feuerwehreinsatz beendet</field>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="control" id="aB@ja!KyrC^SDNh,s[3Y">
                                       <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                       <field name="OID">alexa2.0.Echo-Devices.G090LF1182231CD6.Commands.speak</field>
                                       <field name="WITH_DELAY">FALSE</field>
                                       <value name="VALUE">
                                         <block type="variables_get" id="[,fek++O]qRkKOl/UM1.">
                                           <field name="VAR" id="LsczX0YIyn!68c?SjK*I">Ansage</field>
                                         </block>
                                       </value>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </statement>
                         </block>
                        </xml>
                        

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

                          @dslraser

                          funktioniert soweit.

                          Allerdings lässt er zB bei diesem JSON was aus.

                          [{"Titel":"SD - BRANDMELDEALARM","Feuerwache":"Schärding - SCHARDENBERG","Einsatz":"E210800560","Alarmstufe":"1","Feuerwehren":"1","Zeit":"06.08.2021 14:02 Uhr06.08.2021 14:47","Bezirk":"FF Schardenberg"}]
                          

                          im Blockly bei 0.Feuerwache spricht er nur Schärding. Sollte aber Schärding - Schardenberg sein.

                          Wenn ich den Titel SD - BRANDMELDEALARM noch möchte, reicht hier dann ein 0.Titel einzufügen?

                          dslraser 1 Reply Last reply Reply Quote 0
                          • dslraser
                            dslraser Forum Testing Most Active @Negalein last edited by dslraser

                            @negalein sagte in Hilfe bei RSS-feed benötigt !:

                            im Blockly bei 0.Feuerwache spricht er nur Schärding. Sollte aber Schärding - Schardenberg sein.

                            Ich weiß gerade nicht wie sich Bindestriche bei speak auswirken...?

                            Wenn ich den Titel SD - BRANDMELDEALARM noch möchte, reicht hier dann ein 0.Titel einzufügen?

                            Ja, wobei ich nicht weiß wie SD ausgesprochen wird ?

                            (ich bin jetzt nur am Handy, habe den Rechner schon aus)

                            Negalein 1 Reply Last reply Reply Quote 0
                            • Negalein
                              Negalein Global Moderator @dslraser last edited by

                              @dslraser sagte in Hilfe bei RSS-feed benötigt !:

                              Ich weiß gerade nicht wie sich Bindestriche bei speak auswirken...?

                              hab gerade 40;SD - BRANDMELDEALARM direkt im Speak DP getestet. Da wird es als SD BRANDMELDEALARM vorgelesen.

                              sigi234 1 Reply Last reply Reply Quote 0
                              • sigi234
                                sigi234 Forum Testing Most Active @Negalein last edited by sigi234

                                @negalein sagte in Hilfe bei RSS-feed benötigt !:

                                Da wird es als SD BRANDMELDEALARM vorgelesen.

                                Ja, man müsste 5(?) Zeichen abnehmen, weil SD braucht man nicht

                                Negalein 2 Replies Last reply Reply Quote 0
                                • Negalein
                                  Negalein Global Moderator @sigi234 last edited by

                                  @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                                  Ja, man müsste 5(?) Zeichen abnehmen, weil SD braucht man nicht

                                  Ich würde eher den ganzen Text nehmen. Gestern beim Sturm ist mir aufgefallen, dass der Titel oft variiert.
                                  BR - Sturm, Braunau - Sturm, usw.

                                  1 Reply Last reply Reply Quote 0
                                  • Negalein
                                    Negalein Global Moderator @sigi234 last edited by

                                    @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                                    Ja, man müsste 5(?) Zeichen abnehmen, weil SD braucht man nicht

                                    Ok, ich hab jetzt nochmal die Titel der letzten 2 Tage kontrolliert.
                                    Da würde es mit den 5 Zeichen passen.

                                    http://cf-intranet.ooelfv.at/webext2/rss/rss_2tage.xml

                                    sigi234 1 Reply Last reply Reply Quote 0
                                    • sigi234
                                      sigi234 Forum Testing Most Active @Negalein last edited by

                                      @negalein

                                      Wenn kein Einsatz ist kommt ein Fehler, weil der DP leer ist.

                                      Screenshot (4120)_LI.jpg

                                      Negalein dslraser 2 Replies Last reply Reply Quote 0
                                      • Negalein
                                        Negalein Global Moderator @sigi234 last edited by

                                        @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                                        Wenn kein Einsatz ist kommt ein Fehler, weil der DP leer ist.

                                        bei mir passts

                                        javascript - ioBroker (2).png

                                        1 Reply Last reply Reply Quote 0
                                        • dslraser
                                          dslraser Forum Testing Most Active @sigi234 last edited by dslraser

                                          @sigi234
                                          Du musst unten für die E-Mail auch den prüfe Baustein einbauen, nur ohne die Lautstärke am Anfang.
                                          Oben kann der Baustein mit dem Kreuz weg.

                                          Screenshot_20210809-005439_Chrome.jpg

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

                                            @dslraser

                                            Hab gerade eine Einsatzmeldung.
                                            Aber die Meldung wird jetzt solange wiederholt, bis der Einsatz beendet ist.

                                            Kann man das Blockly so ändern, dass 1x die Einsatzmeldung kommt, dann Meldung bei Einsatz Ende (das passt schon so)?

                                            Script fragt jede 23. Sekunde die Einsätze ab. Schreibt dadurch den DP jedes mal neu.

                                            Und gerade ist mir aufgefallen, dass das Einsatzende auch wiederholt wird.

                                            Müsste da @SBorg das Script anpassen?

                                            dslraser 3 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            778
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            13
                                            426
                                            53276
                                            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