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. [gelöst] Newsfeed in iobroker.vis darstellen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    328

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

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

[gelöst] Newsfeed in iobroker.vis darstellen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
51 Beiträge 16 Kommentatoren 16.1k 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.
  • R Offline
    R Offline
    Renegade
    schrieb am zuletzt editiert von Renegade
    #40

    besten Dank läuft auf anhieb:ok_hand:
    Vieleicht noch eine Frage zur Optik? Wie kann ich die Überschriften der einzelnen Artikel noch in Größe, Farbe und Hintergrund gestalten? So hab ich jetzt jetzt erst mal bei mir:
    Newsfeed.png

    1 Antwort Letzte Antwort
    0
    • S Offline
      S Offline
      Sub7
      schrieb am zuletzt editiert von 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 Antwort Letzte Antwort
      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
        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

                          422

                          Online

                          32.5k

                          Benutzer

                          81.7k

                          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