Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [gelöst] Newsfeed in iobroker.vis darstellen

NEWS

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

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

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

[gelöst] Newsfeed in iobroker.vis darstellen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
51 Beiträge 16 Kommentatoren 15.6k Aufrufe 8 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.
  • 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
    schrieb am zuletzt editiert von
    #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 Antwort Letzte Antwort
    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
      schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
      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
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        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
          schrieb am zuletzt editiert von
          #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 Antwort Letzte Antwort
          0
          • chrispschaC Offline
            chrispschaC Offline
            chrispscha
            schrieb am zuletzt editiert von
            #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 Antwort Letzte Antwort
            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 Offline
              D Offline
              damichi85
              schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
              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
                schrieb am zuletzt editiert von
                #48

                @damichi85
                Es gibt mittlerweile einen Adapter von @OliverIO.

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

                D 1 Antwort Letzte Antwort
                0
                • C Conquest

                  @damichi85
                  Es gibt mittlerweile einen Adapter von @OliverIO.

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

                  D Offline
                  D Offline
                  damichi85
                  schrieb am zuletzt editiert von
                  #49

                  @Conquest
                  Hey super danke! 🙂

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

                  1 Antwort Letzte Antwort
                  0
                  • T Offline
                    T Offline
                    thiel_marvin
                    schrieb am zuletzt editiert von
                    #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 Antwort Letzte Antwort
                    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 Offline
                      D Offline
                      damichi85
                      schrieb am zuletzt editiert von
                      #51

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

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


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      383

                      Online

                      32.4k

                      Benutzer

                      81.4k

                      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
                      • Aktuell
                      • Tags
                      • Ungelesen 0
                      • Kategorien
                      • Unreplied
                      • Beliebt
                      • GitHub
                      • Docu
                      • Hilfe