Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] Newsfeed in iobroker.vis darstellen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    519

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.4k

[gelöst] Newsfeed in iobroker.vis darstellen

Scheduled Pinned Locked Moved Skripten / Logik
51 Posts 16 Posters 16.6k Views 8 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Sub7
    wrote on last edited by Sub7
    #41

    hallo,

    wäre es vielleicht möglich einem blutigen Skriptanfänger eine Schritt für Schritt Anleitung zukommen zu lassen, wie ich das ganze in die VIS bekomme. Danke

    Daniel

    1 Reply Last reply
    0
    • C Conquest

      Und so habe ich es in Vis dargestellt.

      Vis_Runtime.png

      Hier die Einstellungen für das Widget. Es handelt sich um ein basic-HTML.

      Widget_Einstellung.png

      Ich hoffe das hilft euch. Ansonsten einfach nochmal Fragen.

      Gruß
      Torsten

      F Offline
      F Offline
      freaktech
      wrote on last edited by
      #42

      @Conquest said in [gelöst] Newsfeed in iobroker.vis darstellen:

      Und so habe ich es in Vis dargestellt.

      Vis_Runtime.png

      Hier die Einstellungen für das Widget. Es handelt sich um ein basic-HTML.

      Widget_Einstellung.png

      Ich hoffe das hilft euch. Ansonsten einfach nochmal Fragen.

      Gruß
      Torsten

      hi Torsten

      so was hat ich auch gern

      mir fehlt aber der Durchblick wie ich as Step by Step machen muss.

      muss ich einen Adapter installieren?
      woe ist denn der code für widget import ?!?!

      evtl könntest mir da etwas auf die Sprünge helfen

      danke
      tom

      C 1 Reply Last reply
      0
      • F freaktech

        @Conquest said in [gelöst] Newsfeed in iobroker.vis darstellen:

        Und so habe ich es in Vis dargestellt.

        Vis_Runtime.png

        Hier die Einstellungen für das Widget. Es handelt sich um ein basic-HTML.

        Widget_Einstellung.png

        Ich hoffe das hilft euch. Ansonsten einfach nochmal Fragen.

        Gruß
        Torsten

        hi Torsten

        so was hat ich auch gern

        mir fehlt aber der Durchblick wie ich as Step by Step machen muss.

        muss ich einen Adapter installieren?
        woe ist denn der code für widget import ?!?!

        evtl könntest mir da etwas auf die Sprünge helfen

        danke
        tom

        C Offline
        C Offline
        Conquest
        wrote on last edited by Conquest
        #43

        @freaktech

        Hier nochmal das Script als Text welches den RSS-Feed der Bild-Zeitung einließt.

        /* VIS Bild Newsfeed
        
        Bringt einen RSS-Feed als Tabelle in ioBroker
        setzt die Library xml2js voraus (in Javascript Einstellungen zufügen)
        
        
        erstellt: 11.05.2017 von Torsten (auf Basis von Bluefox Code und Pix) 
        */
        
        var idFeedTabelle = 'RSS-Feed.Bild.Tabelle';
        
        var forceCreation = false;
           
        createState(idFeedTabelle, '', forceCreation, {
           write: true,
           read: true,
           name: 'RSS Feed Bild Tabelle',
           type: 'string',
           desc: 'Bild RSS Feed als HTML Tabelle',
           role: 'html'
        });
        
        var link = 'http://www.bild.de/rssfeeds/vw-news/vw-news-16726644,sort=1,view=rss2.bild.xml';
        
        var quer = false ;
        
        function RSS_einlesen () {
           var parseString = require('xml2js').parseString;
           var request = require('request');
        
           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, 'error');
                       } else {    
                           var tabelle;
                           if (quer) {
                               // Titel links, Inhalt rechts
                               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><td>' + result.rss.channel.item[i].description + '</td></tr>';
                               }
                           } else {
                               // Titel oben, INhalt darunter (wie in der Zeitung)
                               tabelle ='<table class="rss_feed"><thead><tr><th>RSS-Feed</th></tr></thead><tbody>';
                               for (var j = 0; j <result.rss.channel.item.length; j++) {
                                   tabelle += '<tr><td>' + result.rss.channel.item[j].title + '</td></tr><tr><td>' + result.rss.channel.item[j].description + '</td></tr>';
                               }
                           }
                           tabelle += '</tbody></table>';  
                           setState(idFeedTabelle, tabelle);
                       }
                   });
               } else  {
                   log(error, 'error');
               }
           });   // Ende request 
           log('RSS-Feed ' + link + ' eingelesen');
        }
        
        schedule("*/10 * * * *", RSS_einlesen);  // alle 10 Minuten
        RSS_einlesen();
        

        Dieses Script hier eingeben.

        screenshot-192.168.178.46-8081-2019.09.03-05-09-54.png

        Dann wie im Bild zu sehen das zusätzliche NPM-Modul für den Javascript Adapter.

        screenshot-forum.iobroker.net-2019.09.03-04-57-11.png

        Und hier ist noch mein Widget für die Darstellung. Könnte bei dir anders aussehen da ich das Material Design von Uhula nutze. Da es sich um ein Binding handelt wird es auch erst im Runtime angezeigt und nicht im Editor.

        [{"tpl":"tplHtml","data":{"visibility-cond":"==","visibility-val":"1","refreshInterval":"0","html":"{javascript.1.RSS-Feed.Bild.Tabelle}","visibility-groups-action":"hide","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,"visibility-oid":"","class":"mdui-table mdui-table-striped","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,"views":["Notdienst"]},"style":{"left":"17.118057250976562px","top":"156.63196563720703px","z-index":"20","width":"460px","height":"626px","color":"white","overflow-x":"","overflow-y":"auto","font-family":"Arimo-Bold"},"widgetSet":"basic"}]
        

        Hoffe es funktioniert bei dir ansonsten einfach nochmal nachfragen.

        sigi234S 1 Reply Last reply
        0
        • C Conquest

          @freaktech

          Hier nochmal das Script als Text welches den RSS-Feed der Bild-Zeitung einließt.

          /* VIS Bild Newsfeed
          
          Bringt einen RSS-Feed als Tabelle in ioBroker
          setzt die Library xml2js voraus (in Javascript Einstellungen zufügen)
          
          
          erstellt: 11.05.2017 von Torsten (auf Basis von Bluefox Code und Pix) 
          */
          
          var idFeedTabelle = 'RSS-Feed.Bild.Tabelle';
          
          var forceCreation = false;
             
          createState(idFeedTabelle, '', forceCreation, {
             write: true,
             read: true,
             name: 'RSS Feed Bild Tabelle',
             type: 'string',
             desc: 'Bild RSS Feed als HTML Tabelle',
             role: 'html'
          });
          
          var link = 'http://www.bild.de/rssfeeds/vw-news/vw-news-16726644,sort=1,view=rss2.bild.xml';
          
          var quer = false ;
          
          function RSS_einlesen () {
             var parseString = require('xml2js').parseString;
             var request = require('request');
          
             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, 'error');
                         } else {    
                             var tabelle;
                             if (quer) {
                                 // Titel links, Inhalt rechts
                                 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><td>' + result.rss.channel.item[i].description + '</td></tr>';
                                 }
                             } else {
                                 // Titel oben, INhalt darunter (wie in der Zeitung)
                                 tabelle ='<table class="rss_feed"><thead><tr><th>RSS-Feed</th></tr></thead><tbody>';
                                 for (var j = 0; j <result.rss.channel.item.length; j++) {
                                     tabelle += '<tr><td>' + result.rss.channel.item[j].title + '</td></tr><tr><td>' + result.rss.channel.item[j].description + '</td></tr>';
                                 }
                             }
                             tabelle += '</tbody></table>';  
                             setState(idFeedTabelle, tabelle);
                         }
                     });
                 } else  {
                     log(error, 'error');
                 }
             });   // Ende request 
             log('RSS-Feed ' + link + ' eingelesen');
          }
          
          schedule("*/10 * * * *", RSS_einlesen);  // alle 10 Minuten
          RSS_einlesen();
          

          Dieses Script hier eingeben.

          screenshot-192.168.178.46-8081-2019.09.03-05-09-54.png

          Dann wie im Bild zu sehen das zusätzliche NPM-Modul für den Javascript Adapter.

          screenshot-forum.iobroker.net-2019.09.03-04-57-11.png

          Und hier ist noch mein Widget für die Darstellung. Könnte bei dir anders aussehen da ich das Material Design von Uhula nutze. Da es sich um ein Binding handelt wird es auch erst im Runtime angezeigt und nicht im Editor.

          [{"tpl":"tplHtml","data":{"visibility-cond":"==","visibility-val":"1","refreshInterval":"0","html":"{javascript.1.RSS-Feed.Bild.Tabelle}","visibility-groups-action":"hide","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,"visibility-oid":"","class":"mdui-table mdui-table-striped","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,"views":["Notdienst"]},"style":{"left":"17.118057250976562px","top":"156.63196563720703px","z-index":"20","width":"460px","height":"626px","color":"white","overflow-x":"","overflow-y":"auto","font-family":"Arimo-Bold"},"widgetSet":"basic"}]
          

          Hoffe es funktioniert bei dir ansonsten einfach nochmal nachfragen.

          sigi234S Online
          sigi234S Online
          sigi234
          Forum Testing Most Active
          wrote on last edited by
          #44

          @Conquest sagte in [gelöst] Newsfeed in iobroker.vis darstellen:

          Hier nochmal das Script welches den RSS-Feed der Bild-Zeitung einließt.

          Das Skript bitte als .txt hochladen!

          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Immer Daten sichern!

          C 1 Reply Last reply
          0
          • sigi234S sigi234

            @Conquest sagte in [gelöst] Newsfeed in iobroker.vis darstellen:

            Hier nochmal das Script welches den RSS-Feed der Bild-Zeitung einließt.

            Das Skript bitte als .txt hochladen!

            C Offline
            C Offline
            Conquest
            wrote on last edited by
            #45

            @sigi234 sagte in [gelöst] Newsfeed in iobroker.vis darstellen:

            @Conquest sagte in [gelöst] Newsfeed in iobroker.vis darstellen:

            Hier nochmal das Script welches den RSS-Feed der Bild-Zeitung einließt.

            Das Skript bitte als .txt hochladen!

            Erledigt. Danke für den Hinweis.

            1 Reply Last reply
            0
            • chrispschaC Offline
              chrispschaC Offline
              chrispscha
              wrote on last edited by
              #46

              @Conquest hi, vielen Dank für dein Script. Bei mir läuft es auch toll :-).

              Kann ich die News beschränken, z. B. die letzten 5 News beispielsweise?
              Kardinalfrage: Ist es (dir) möglich einzelne News für eine bestimmte Zeit einzufaden?

              Liebe Grüße
              Chris

              1 Reply Last reply
              0
              • C Conquest

                Ok hab ich versucht verstehe es anscheinend wirklich nicht bekomme unter Objekte nichts angezeigt. Vielleicht könnte mir jemand helfen. Hab das Script wie folgt umgewandelt.

                 /* VIS Bild Newsfeed
                 Bringt einen RSS-Feed als Tabelle in ioBroker
                 setzt die Library xml2js voraus (in Javascript Einstellungen zufügen)
                 erstellt: 11.05.2017 von Torsten (auf Basis von Bluefox Code)
                 */
                 createState('RSS-Feed.Bild.Tabelle', {write: true, read: true, name: 'RSS Feed Bild Tabelle', type: 'string', desc: 'Bild 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://news.feed-reader.net/quellen/BILD.de/](http://news.feed-reader.net/quellen/BILD.de/)';
                 var idOptin = 'RSS-Feed.Optin',
                 optin_beschreibung = 'RSS Feed',
                 idFeedTabelle = 'RSS-Feed.Bild.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++)/{<br="">tabelle += '</result.rss.channel.item.length;>';
                 }
                 tabelle += '
                 | Titel | Beschreibung |
                | --- | --- |
                | ' + result.rss.channel.item__.title + '__ | ' + result.rss.channel.item__.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');
                 }
                 });
                

                470_bildschirmfoto_vom_2017-05-11_12-10-37.png
                470_bildschirmfoto_vom_2017-05-11_12-11-08.png

                D Online
                D Online
                damichi85
                wrote on last edited by damichi85
                #47

                @Conquest

                Hallo Conquest,

                ich wollte dein Script vom 11.05.2017 ausprobieren.
                Bei mir erscheint aber die folgende Fehlermeldung in den Logs:

                javascript.1 (6537) script.js.common.test compile failed: at script.js.common.test:55

                Der Scriptname bei mir lautet "test".

                Ich habe leider in Javascript noch keinerlei Erfahrung.
                Testweise habe ich nur mal die Zeile "createState" in einem Script angelegt - das Objekt wird dabei einwandfrei angelegt. Somit sollte das Script eigentlich schon laufen.

                XML2JS habe ich aktiviert.
                JS-Controller Version 2.2.9
                Javascript Engine 4.4.3
                Ubuntu Server Linux 18.4
                Node.js 10.19#
                NPM 6.13.7
                IOBroker ist soweit aktuell

                Könnt ihr mir da weiterhelfen?

                Danke und schöne Grüße
                Damichi85

                C 1 Reply Last reply
                0
                • D damichi85

                  @Conquest

                  Hallo Conquest,

                  ich wollte dein Script vom 11.05.2017 ausprobieren.
                  Bei mir erscheint aber die folgende Fehlermeldung in den Logs:

                  javascript.1 (6537) script.js.common.test compile failed: at script.js.common.test:55

                  Der Scriptname bei mir lautet "test".

                  Ich habe leider in Javascript noch keinerlei Erfahrung.
                  Testweise habe ich nur mal die Zeile "createState" in einem Script angelegt - das Objekt wird dabei einwandfrei angelegt. Somit sollte das Script eigentlich schon laufen.

                  XML2JS habe ich aktiviert.
                  JS-Controller Version 2.2.9
                  Javascript Engine 4.4.3
                  Ubuntu Server Linux 18.4
                  Node.js 10.19#
                  NPM 6.13.7
                  IOBroker ist soweit aktuell

                  Könnt ihr mir da weiterhelfen?

                  Danke und schöne Grüße
                  Damichi85

                  C Offline
                  C Offline
                  Conquest
                  wrote on last edited by
                  #48

                  @damichi85
                  Es gibt mittlerweile einen Adapter von @OliverIO.

                  https://forum.iobroker.net/topic/31294/test-adapter-rssfeed-v0-0-x

                  D 1 Reply Last reply
                  0
                  • C Conquest

                    @damichi85
                    Es gibt mittlerweile einen Adapter von @OliverIO.

                    https://forum.iobroker.net/topic/31294/test-adapter-rssfeed-v0-0-x

                    D Online
                    D Online
                    damichi85
                    wrote on last edited by
                    #49

                    @Conquest
                    Hey super danke! :)

                    Den habe ich gleich getestet -> Prima, genau das was ich suche!

                    1 Reply Last reply
                    0
                    • T Offline
                      T Offline
                      thiel_marvin
                      wrote on last edited by
                      #50

                      Guten Abend zusammen,

                      lassen sich die Feeds in einem RSS Feed auch in einzelne Objekte in der Objektverwaltung packen? Ich würde gerne immer den neusten dort hinzufügen.

                      LG

                      D 1 Reply Last reply
                      0
                      • T thiel_marvin

                        Guten Abend zusammen,

                        lassen sich die Feeds in einem RSS Feed auch in einzelne Objekte in der Objektverwaltung packen? Ich würde gerne immer den neusten dort hinzufügen.

                        LG

                        D Online
                        D Online
                        damichi85
                        wrote on last edited by
                        #51

                        @thiel_marvin
                        Wo willst du dieses einzelne Objekt dann nutzen? In VIS?

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        336

                        Online

                        32.7k

                        Users

                        82.5k

                        Topics

                        1.3m

                        Posts
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Login

                        • Don't have an account? Register

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Home
                        • Recent
                        • Tags
                        • Unread 0
                        • Categories
                        • Unreplied
                        • Popular
                        • GitHub
                        • Docu
                        • Hilfe