Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. RSS Parser

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

RSS Parser

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
48 Beiträge 11 Kommentatoren 11.9k Aufrufe 7 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • P Offline
    P Offline
    pix
    schrieb am zuletzt editiert von
    #20

    Hallo,

    es gibt derzeit ein Problem mit dem Dienst http://spotthestation.nasa.gov :cry:

    Daher funktioniert das o.g. Skript zur Zeit nicht und führt zum Absturz der entsprechenden Javascript Instanz. Das zeigt anschaulich, weshalb man Skripte, die auf fremden Daten basieren, nur in einer separaten Javscript-Instanz nutzen sollte.

    Wer es nutzt, sollte das Skript vorerst deaktivieren.

    Gruß

    Pix

    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

    1 Antwort Letzte Antwort
    0
    • P Offline
      P Offline
      pix
      schrieb am zuletzt editiert von
      #21

      Hallo,

      habe das http://forum.iobroker.net/viewtopic.php?f=21&t=1683#p14391 angepasst. Es gab einige Fehler/Mängel:

      • Link ist jetzt eine XML von spotthestation via https

      • Die Seite liefert nicht nur Daten zur ISS, sondern auch zu anderen Stationen (zB "https://www.google.de/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0ahUKEwj_npb_qPrLAhXMjSwKHZ4oDoQQFggfMAA&url=http%3A%2F%2Fwww.nasa.gov%2Fcontent%2Fprogress-61p-cargo-craft&usg=AFQjCNEZ4_5593os7mPd_KPQAWEV7Sk-MQ"). Der Titel der Station wird nun mit ausgegeben (View und Pushmeldung)

      • Code optimiert und korrigiert

      Gruß,

      Pix

      EDIT: 22.1.2018 Link zum Skript aktualisiert

      ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

      1 Antwort Letzte Antwort
      0
      • P Offline
        P Offline
        pix
        schrieb am zuletzt editiert von
        #22

        Hallo,

        hab das http://forum.iobroker.net/viewtopic.php?f=21&t=1683#p14391 nochmal verbessert:

        • Benachrichtigung, ob Überflug, nun einmalig 0-30min vor Ereignis

        • Besserer Umgang mit Fehlern, falls XML keinen Überflug meldet

        Gruß

        Pix

        EDIT: 22.1.2018 Link zum Skript aktualisiert

        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

        1 Antwort Letzte Antwort
        0
        • N Offline
          N Offline
          nathan1312
          schrieb am zuletzt editiert von
          #23

          Hallo,

          ich habe mir über die tolle Anleitung von pix erfolgreich den tagesschau-feed auf meine vis-oberfläche geholt. Ich möchte jedoch die Darstellung für meine Zwecke ein wenig anpassen. Im Moment werden alle Nachrichten untereinander (Schlagzeile und Nachricht abwechselnd) geschrieben. Das ist von der Aufteilung her gut so, nur hab ich leider nicht unbegrenzt Platz zur Verfügung. Ich möchte lieber anstatt allen Nachrichten gleichzeitig nur jeweils eine aus der Liste anzeigen lassen. Die Nachrichten sollen dann im 30 sek Rhythmus durchwechseln.

          Wie schaffe ich es also, aus der html-Tabelle im Datenpunkt auf die einzelnen Einträge zuzugreifen, und mir diese im Wechsel anzeigen zu lassen?

          Vielen Dank für jede Hilfe!

          Beste Grüße!

          1 Antwort Letzte Antwort
          0
          • C Offline
            C Offline
            C1500
            schrieb am zuletzt editiert von
            #24

            Servus Zusammen,

            genau das was nathan1312 gemacht hat, suche ich gerade.

            Bzw. genial wäre das durchwechseln der Nachrichten

            Entweder n-tv, N24 oder tagesschau Feed´s:

            n-tv: https://www.n-tv.de/rss

            N24: https://www.welt.de/feeds/topnews.rss

            Tagesschau: http://www.tagesschau.de/download/xml/rss2

            Bräuchte das für meine MagicMirror auf dem eine iob.vis läuft ;o)

            Gruß Peer

            1 Antwort Letzte Antwort
            0
            • P Offline
              P Offline
              pix
              schrieb am zuletzt editiert von
              #25

              Hallo,

              hier kannst du ein Skript, das setInterval nutzt, finden. Damit lasse ich mir alle 10s eine andere Webcam/Regenradar/etc. anzeigen.

              http://forum.iobroker.net/viewtopic.php … 981#p17070

              Gruß

              Pix

              ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

              1 Antwort Letzte Antwort
              0
              • S Offline
                S Offline
                senger1985
                schrieb am zuletzt editiert von Jey Cee
                #26

                Hallo,

                ich habe nach der Anleitung von pix, das Script in eine zweite JS-Instanz eingepflegt und für meinen RSS-Feed, den ich auslesen lassen möchte umgeschrieben.

                Nur leider bekomme ich in der ersten Spalte "NaN…" angezeigt.

                Hier das Script:

                /* VIS TV Programm
                
                Bringt einen RSS-Feed als Tabelle in ioBroker
                setzt die Library xml2js voraus (in Javascript Einstellungen zufügen)
                
                für http://forum.iobroker.net/viewtopic.php?f=21&t=1683
                
                erstellt: 08.11.2015 von Pix (auf Basis von Bluefox Code) für Griesemer
                */
                
                createState('RSS-Feed.VBB.Tabelle', {write: true, read: true, name: 'RSS Feed VBB Tabelle', type: 'string', desc: 'VBB RSS Feed als HTML Tabelle'});
                createState('RSS-Feed.Optin', true, {write: true, read: true, name: 'Optin RSS Feeds abrufen', type: 'boolean', desc: 'Sollen RSS-Feeds abgerufen werden?'});
                
                var link = 'http://www.vbb.de/de/broken_lifts.xml';
                
                var idOptin = 'RSS-Feed.Optin',
                    optin_beschreibung = 'RSS Feed',
                    idFeedTabelle = 'RSS-Feed.VBB.Tabelle';
                
                function RSS_einlesen () { // alle 5 Minuten
                    var optin = getState(idOptin).val;
                    var parseString = require('xml2js').parseString;
                    var request = require('request');
                
                    if (optin) request(link, function (error, response, body) {
                        if (!error && response.statusCode == 200) {
                
                            parseString(body, {
                                explicitArray: false,
                                mergeAttrs: true
                            },
                            function (err, result) {
                                //log(JSON.stringify(result, null, 2));
                                if (err) {
                                    log("Fehler: " + err);
                                } else {                                                               
                                    var tabelle ='';
                                    for(var i = 0; i <result.rss.channel.item.length; i++)/{/tabelle/+="<tr><td>" result.rss.channel.item[i].vbb-name/'</td=""></result.rss.channel.item.length;>';
                                    }
                                    tabelle += '
                
                | Station | Status | Aktuelle Meldung |
                | --- | --- | --- |
                | ' + result.rss.channel.item[i].title + ' | ' + result.rss.channel.item[i].description + ' |
                
                ';  
                                    setState(idFeedTabelle, tabelle);
                                }
                            });
                        } else  {
                            log(error);
                        }
                    });   // Ende request 
                    log('RSS-Feed ' + link + ' eingelesen');
                }
                
                schedule("*/10 * * * *", RSS_einlesen); 
                RSS_einlesen();
                
                // Opt In setzen - Logging
                on( { 
                    id: idOptin,
                    change: 'ne'
                }, function (obj) {
                    if (obj.newState.val === false || obj.newState.val =='false') {
                        log('Opt in Variable <' + optin_beschreibung + ' Push> auf <aus '/+/obj.newstate.val="">gesetzt ', 'info');
                    } else if (obj.newState.val === true || obj.newState.val =='true') {
                        log('Opt in Variable <' + optin_beschreibung + ' Push> auf <ein '/+/obj.newstate.val="">gesetzt ', 'info');
                    }
                });
                

                Kann mir da vielleicht jemand sagen, warum "result.rss.channel.item_[i].vbb-name" dieses Resultat ausgibt?

                Vielen Dank

                1 Antwort Letzte Antwort
                0
                • L Offline
                  L Offline
                  lalam
                  schrieb am zuletzt editiert von
                  #27

                  Hallo @ *,

                  bohre gerade meine LED Matrix Anzeige auf 2x (8x128) auf und würde gern in der unteren Zeile einen Newsfeed laufen lassen. Habe das Script auf einem separaten JS-Adapter installiert, finde jetzt aber die Daten nicht. Wo schreibt der das hin?????? Oder mache ich da einen Denkfehler?

                  Danke und Grüße

                  Lars

                  Bin ich blöd! Habs gefunden :-)

                  Ich versuche es mal umzuschreiben dass jeweils die 5 aktuellsten Headlines in eine Variable geschrieben werden - das Matrix Display gibt nur eine Zeichenkette aus …

                  1 Antwort Letzte Antwort
                  0
                  • marcusklM Offline
                    marcusklM Offline
                    marcuskl
                    schrieb am zuletzt editiert von
                    #28

                    Wo finde ich jetzt den aktuellen Skript ?

                    Host: Intel Nuc6cayh (16GB Ram, 240GB SSD) mit Proxmox.

                    Iobroker VM, InfluxDB LXC, Pihole LXC, Tasmoadmin LXC, Easy2connect VM

                    1 Antwort Letzte Antwort
                    0
                    • P pix

                      Danke, freut mich!

                      Hab nochmal ne andere Formatierung eingebaut. Für diesen Inhalt ist diese Darstellung besser:

                      261_bildschirmfoto_2015-11-09_um_17.50.12.jpg

                      CSS:

                      /* LAYOUT ÜBEREINANDER ************** */
                      
                      /* ### Table head (Spaltentitel) ### */
                      /* Überschrift weglassen */
                      .rss_feed thead {
                          display:none;
                      }
                      
                      /* ### Inhalt des Feeds ### */
                      /* beide Spalten */
                      .rss_feed tr {
                          text-align: left;
                      }
                      
                      /* Tablerow mit Titel */
                      .rss_feed tr:nth-child(odd) {
                          color: rgba(230,230,250,1);
                          font-size: 110%;
                          font-weight: 800;
                      }
                      
                      /* Tablerow mit inhalt */
                      .rss_feed tr:nth-child(even) {
                          color: rgba(230,230,250,1);
                          font-size: 80%;
                      }
                      
                      .rss_feed tr:nth-child(even) td {
                          padding-bottom: 2em;   
                      }
                      
                      

                      Scriptteil ersetzen

                      } else {      
                                          /* 
                                          // Titel links, Inhalt rechts
                                          var tabelle ='';
                                          for(var i = 0; i <result.rss.channel.item.length; i++)/{/tabelle/+="<tr><td>" result.rss.channel.item[i].title/'</td=""></result.rss.channel.item.length;>';
                                          }
                                          */
                                          // Titel oben, INhalt darunter (wie in der Zeitung)
                                          var tabelle ='
                      
                      | Titel | Beschreibung |
                      | --- | --- |
                      | ' + result.rss.channel.item[i].description + ' |
                      
                      ';
                                          for(var i = 0; i <result.rss.channel.item.length; i++)/{/tabelle/+="<tr><td>" result.rss.channel.item[i].title/'</td=""></result.rss.channel.item.length;>';
                                          }
                                          tabelle += '
                      
                      | RSS-Feed |
                      | --- |
                      | ' + result.rss.channel.item[i].description + ' |
                      
                      ';  
                                          setState(idFeedTabelle, tabelle);
                                      }`
                      

                      Gruß

                      Pix

                      AphofisA Offline
                      AphofisA Offline
                      Aphofis
                      schrieb am zuletzt editiert von
                      #29

                      @pix
                      Wie und wo hast du das denn alles eingebunden!? Das sieht echt toll aus! Ich bin noch iobroker neuling und könnte eine wenig Griff unter die Flügel gebrauchen.
                      Gruß Gordon

                      P 1 Antwort Letzte Antwort
                      0
                      • AphofisA Aphofis

                        @pix
                        Wie und wo hast du das denn alles eingebunden!? Das sieht echt toll aus! Ich bin noch iobroker neuling und könnte eine wenig Griff unter die Flügel gebrauchen.
                        Gruß Gordon

                        P Offline
                        P Offline
                        pix
                        schrieb am zuletzt editiert von
                        #30

                        @Aphofis Such mal nach "Mal zeigen will" oder so, da sind viele VIS Views vorgestellt.

                        Gruß
                        Pix

                        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                        AphofisA 1 Antwort Letzte Antwort
                        0
                        • P pix

                          @Aphofis Such mal nach "Mal zeigen will" oder so, da sind viele VIS Views vorgestellt.

                          Gruß
                          Pix

                          AphofisA Offline
                          AphofisA Offline
                          Aphofis
                          schrieb am zuletzt editiert von
                          #31

                          @pix OK Danke

                          1 Antwort Letzte Antwort
                          0
                          • S Offline
                            S Offline
                            senger1985
                            schrieb am zuletzt editiert von
                            #32

                            @pix könntest du mal bitte über mein Script (Post 27) schauen und mir sagen, warum er mir die Daten nicht ausgibt?

                            1 Antwort Letzte Antwort
                            0
                            • P Offline
                              P Offline
                              pix
                              schrieb am zuletzt editiert von
                              #33

                              Hallo Senger1985,

                              das o.g. Skript ist ganz schön zerhauen (durch die Änderung der Forensoftware). Du müsstest eigentlich das Originalskript aus deiner Installation neu posten.

                              Kannst du dir aber sparen, denn es liegt nicht am Skript.
                              Der Link zur XML-Datei funktioniert nicht mehr bzw. die Information wird nicht mehr darin bereitgestellt:
                              Bildschirmfoto 2019-10-29 um 09.17.15.jpg

                              Gruß
                              Pix

                              ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                              S 1 Antwort Letzte Antwort
                              0
                              • P pix

                                Hallo Senger1985,

                                das o.g. Skript ist ganz schön zerhauen (durch die Änderung der Forensoftware). Du müsstest eigentlich das Originalskript aus deiner Installation neu posten.

                                Kannst du dir aber sparen, denn es liegt nicht am Skript.
                                Der Link zur XML-Datei funktioniert nicht mehr bzw. die Information wird nicht mehr darin bereitgestellt:
                                Bildschirmfoto 2019-10-29 um 09.17.15.jpg

                                Gruß
                                Pix

                                S Offline
                                S Offline
                                senger1985
                                schrieb am zuletzt editiert von
                                #34

                                @pix danke, für eine Antwort.

                                Wenn ich Link Text aufrufe, bekomme ich aber noch die Daten angezeigt.

                                /* VIS VBB Newsfeed
                                {1}
                                Bringt einen RSS-Feed als Tabelle in ioBroker
                                setzt die Library xml2js voraus (in Javascript Einstellungen zufügen)
                                {1}
                                {1}
                                erstellt: 11.05.2017 von Torsten (auf Basis von Bluefox Code und Pix) 
                                */
                                 
                                 
                                createState('RSS-Feed.VBB.Tabelle', {write: true, read: true, name: 'RSS Feed VBB Tabelle', type: 'string', desc: 'VBB RSS Feed als HTML Tabelle'});
                                createState('RSS-Feed.Optin', true, {write: true, read: true, name: 'Optin RSS Feeds abrufen', type: 'boolean', desc: 'Sollen RSS-Feeds abgerufen werden?'});
                                 
                                var link = 'https://www.vbb.de/broken_lifts.xml';
                                //var vbb = 'vbb-name';
                                 
                                var idOptin = 'RSS-Feed.Optin',
                                    optin_beschreibung = 'RSS Feed',
                                    idFeedTabelle = 'RSS-Feed.VBB.Tabelle';
                                 
                                function RSS_einlesen () { // alle 5 Minuten
                                    var optin = getState(idOptin).val;
                                    var parseString = require('xml2js').parseString;
                                    var request = require('request');
                                 
                                    if (optin) request(link, function (error, response, body) {
                                        if (!error && response.statusCode == 200) {
                                    
                                            parseString(body, {
                                                explicitArray: false,
                                                mergeAttrs: true
                                            },
                                            function (err, result) {
                                                //log(JSON.stringify(result, null, 2));
                                                if (err) {
                                                    log("Fehler: " + err);
                                                } else {      
                                                    /*
                                                    // Titel links, Inhalt rechts
                                                    var tabelle ='<table class="rss_feed"><thead><tr><th>Titel</th><th>Beschreibung</th></tr></thead><tbody>';
                                                    for(var i = 0; i <result.rss.channel.item.length; i++) {
                                                        tabelle += '<tr><td>' + result.rss.channel.item[i].title + '</td>'</br>'<td>' + result.rss.channel.item[i].description + '</td></tr>';
                                                    }
                                                    */
                                                    
                                                    // Titel oben, INhalt darunter (wie in der Zeitung)
                                                    var tabelle ='<table class="rss_feed"><thead><tr><th>BVG Aufzugsstörung</p></th></tr></thead><tbody>';
                                                    for(var i = 0; i <result.rss.channel.item.length; i++) {
                                                        tabelle += '<tr><td>' + result.rss.channel.item[i].title + '</td></tr><tr><td>' + result.rss.channel.item[i].description + '</td></tr><tr><td>' + result.rss.channel.item[i].vbb/-name + '</td></tr>';
                                                    }
                                                    tabelle += '</tbody></table>';  
                                                    setState(idFeedTabelle, tabelle);
                                 
                                                }
                                            });
                                        } else  {
                                            log(error);
                                        }
                                    });   // Ende request 
                                    log('RSS-Feed ' + link + ' eingelesen');
                                }
                                 
                                schedule("*/10 * * * *", RSS_einlesen); 
                                RSS_einlesen();
                                 
                                 
                                // Opt In setzen - Logging
                                on( { 
                                    id: idOptin,
                                    change: 'ne'
                                }, function (obj) {
                                    if (obj.newState.val === false || obj.newState.val =='false') {
                                        log('Opt in Variable <' + optin_beschreibung + ' Push> auf <aus/' + obj.newState.val + '> gesetzt ', 'info');
                                    } else if (obj.newState.val === true || obj.newState.val =='true') {
                                        log('Opt in Variable <' + optin_beschreibung + ' Push> auf <ein/' + obj.newState.val + '> gesetzt ', 'info');
                                    }
                                });
                                
                                1 Antwort Letzte Antwort
                                0
                                • S Offline
                                  S Offline
                                  senger1985
                                  schrieb am zuletzt editiert von
                                  #35

                                  Das sieht ja schon wieder so Kacke aus

                                  P 1 Antwort Letzte Antwort
                                  0
                                  • P Offline
                                    P Offline
                                    pix
                                    schrieb am zuletzt editiert von
                                    #36

                                    Ich schieße gleich mal nach:
                                    Der Link hat sich nur geändert: https://www.vbb.de/broken_lifts.xml

                                    Ich checke gerade das Skript ....

                                    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                                    S 1 Antwort Letzte Antwort
                                    0
                                    • P pix

                                      Ich schieße gleich mal nach:
                                      Der Link hat sich nur geändert: https://www.vbb.de/broken_lifts.xml

                                      Ich checke gerade das Skript ....

                                      S Offline
                                      S Offline
                                      senger1985
                                      schrieb am zuletzt editiert von
                                      #37

                                      @pix danke dir.

                                      Bin aber jetzt erstmal bis heute Abend unterwegs.

                                      1 Antwort Letzte Antwort
                                      0
                                      • P Offline
                                        P Offline
                                        pix
                                        schrieb am zuletzt editiert von pix
                                        #38

                                        So, habe mal das Skript etwas angepasst:

                                        /* VIS VBB Tabelle
                                        
                                        Bringt einen RSS-Feed als Tabelle in ioBroker
                                        setzt die Library xml2js voraus (in Javascript Einstellungen zufügen)
                                        
                                        für http://forum.iobroker.net/viewtopic.php?f=21&t=1683
                                        
                                        08.11.2015 erstellt von Pix (auf Basis von Bluefox Code) für Griesemer
                                        29.10.2019 angepasst von Pix (XML Element Namen mit Bindstrich (Hyphen) werden nkicht ausgelesen "vbb-name")
                                        
                                        */
                                        createState('RSS-Feed.VBB.Tabelle', "", {
                                           write: true,
                                           read: true,
                                           name: 'RSS Feed VBB Tabelle',
                                           type: 'string',
                                           desc: 'VBB RSS Feed als HTML Tabelle'
                                        });
                                        createState('RSS-Feed.VBB.Optin', true, {
                                           write: true,
                                           read: true,
                                           name: 'Optin RSS Feeds abrufen',
                                           type: 'boolean',
                                           desc: 'Sollen RSS-Feeds abgerufen werden?'
                                        });
                                        var link = 'https://www.vbb.de/broken_lifts.xml';
                                        var idOptin = 'RSS-Feed.Optin',
                                           optin_beschreibung = 'RSS Feed',
                                           idFeedTabelle = 'RSS-Feed.VBB.Tabelle';
                                        
                                        function RSS_einlesen() { // alle 5 Minuten
                                           var optin = getState(idOptin).val;
                                           var parseString = require('xml2js').parseString;
                                           var request = require('request');
                                           if (optin) request(link, function (error, response, body) {
                                           	if (!error && response.statusCode == 200) {
                                           		// Unerlaubte Bindestriche ind en XML Element Namen ersetzen
                                           		body = body.replace(/vbb-name/g, "vbb_name");
                                           		body = body.replace(/hafas-nr/g, "hafas_nr");
                                           		body = body.replace(/aufzugs-id/g, "aufzugs_id");
                                           		parseString(body, {
                                           			explicitArray: false,
                                           			mergeAttrs: true
                                           		}, function (err, result) {
                                           			//log(JSON.stringify(result, null, 2)); // für debug Zwecke
                                           			var tabelle = '<table id="brokenlifts"><caption>Broken Lifts</caption><tbody>'; // Grundgerüst Tabelle, Caption kann ausgeblendet werden
                                           			if (err) {
                                           				log("Fehler: " + err);
                                           				tabelle += '<tr><td>Fehler beim Einlesen</td></tr>'; // neue Zeile und Fehlermeldung in Tabelle
                                           			} else {
                                           				tabelle += '<thead><tr><td>Station</td><td>Status</td><td>Aktuelle Meldung</td></tr></thead>'; // neue Titel-Zeile mit drei Datenfeldern (diese werden in VIS formatiert)
                                           				for (var i = 0; i < result.rss.channel.item.length; i++) {
                                           					tabelle += '<tr><td>' + result.rss.channel.item[i].vbb_name + '</td><td>' + result.rss.channel.item[i].title + '</td><td>' + result.rss.channel.item[i].description + '</td>'; // neue Tabellen-Zeile pro i 
                                           				}
                                           			}
                                           			tabelle += '</tbody></table>'; // HTML-Tabelle schließen (mit und ohne Fehler, aber Tabellen Gerüst steht)
                                           			setState(idFeedTabelle, tabelle);
                                           		});
                                           	} else {
                                           		log(error);
                                           	}
                                           }); // Ende request 
                                           log('RSS-Feed ' + link + ' eingelesen');
                                        }
                                        schedule("*/10 * * * *", RSS_einlesen);
                                        RSS_einlesen();
                                        // Opt In setzen - Logging
                                        on({
                                           id: idOptin,
                                           change: 'ne'
                                        }, function (obj) {
                                           if (obj.newState.val === false || obj.newState.val == 'false') {
                                           	log('Opt in Variable <' + optin_beschreibung + ' Push> auf <aus ' + obj.newstate.val + ' >gesetzt ', 'info');
                                           } else if (obj.newState.val === true || obj.newState.val == 'true') {
                                           	log('Opt in Variable <' + optin_beschreibung + ' Push> auf <ein ' + obj.newstate.val + ' >gesetzt ', 'info');
                                           }
                                        });
                                        


                                        Es gab noch ein Problem, ich musst edie unerlaubte XML Element Namen ersetzen. Einige hatten einen Bindestrich, dann streikt der Parser.

                                        Als Widget einfach ein HTML Widget nehmen und den Datenpunkt der TAbelle als Binding einfügen {javascript.2.RSS-Feed.VBB.Tabelle}

                                        Bildschirmfoto 2019-10-29 um 10.34.50.jpg

                                        [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":false,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{javascript.2.RSS-Feed.VBB.Tabelle}"},"style":{"left":"156px","top":"326px","z-index":"20","background-color":"blue","width":"628px","height":"auto"},"widgetSet":"basic"}]
                                        

                                        Bildschirmfoto 2019-10-29 um 10.33.51.jpg

                                        Gruß
                                        Pix

                                        ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

                                        1 Antwort Letzte Antwort
                                        0
                                        • S Offline
                                          S Offline
                                          senger1985
                                          schrieb am zuletzt editiert von
                                          #39

                                          @pix du bist einfach super.

                                          Vielen, vielen Dankt und ich habe mich dumm und dämlich gesucht, woran es gelegen hat.

                                          1 Antwort Letzte Antwort
                                          1
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          799

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe