Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Newsfeed in iobroker.vis darstellen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Newsfeed in iobroker.vis darstellen

    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      Renegade last edited by

      Hallo Torsten,
      habe die gleiche Problematik wie skokarl.
      Wäre vielleicht auch gut, wenn du ein paar Screenshots mit hinzufügen könntest wo wie was, in welcher Form eingetragen werden muss.
      Weil mit den Codes und Spoiler Tabs sehe ich auch nicht richtig durch.

      1 Reply Last reply Reply Quote 1
      • C
        Conquest last edited by

        So hier ist einmal das Script welches den RSS-Feed der Bild-Zeitung einließt. Man kann auch jeden anderen RSS-Feed abrufen muss nur im Script die Adresse geändert werden.

        Bild_News

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

        Javascript-Config.png

        1 Reply Last reply Reply Quote 0
        • C
          Conquest last edited by

          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

          S F 3 Replies Last reply Reply Quote 1
          • S
            skokarl @Conquest last edited by

            Ich hoffe das hilft euch. Ansonsten einfach nochmal Fragen.

            Gruß
            Torsten

            Vielen Dank Torsten, freu mich drauf das heute Nachmittag zu probieren. Denke aber, dass es klappen wird.

            Gruss Bernd

            1 Reply Last reply Reply Quote 0
            • S
              skokarl @Conquest last edited by skokarl

              @Conquest sagte in

              Ich hoffe das hilft euch. Ansonsten einfach nochmal Fragen.

              Gruß
              Torsten

              läuft.....

              1 Reply Last reply Reply Quote 0
              • R
                Renegade last edited by Renegade

                besten Dank läuft auf anhieb👌
                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 Reply Last reply Reply Quote 0
                • S
                  Sub7 last edited by Sub7

                  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 Reply Quote 0
                  • F
                    freaktech @Conquest last edited by

                    @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 Reply Quote 0
                    • C
                      Conquest @freaktech last edited by 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.

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

                        @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 1 Reply Last reply Reply Quote 0
                        • C
                          Conquest @sigi234 last edited by

                          @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 Reply Quote 0
                          • chrispscha
                            chrispscha last edited by

                            @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 Reply Quote 0
                            • D
                              damichi85 @Conquest last edited by 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 1 Reply Last reply Reply Quote 0
                              • C
                                Conquest @damichi85 last edited by

                                @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 Reply Quote 0
                                • D
                                  damichi85 @Conquest last edited by

                                  @Conquest
                                  Hey super danke! 🙂

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

                                  1 Reply Last reply Reply Quote 0
                                  • T
                                    thiel_marvin last edited by

                                    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 Reply Quote 0
                                    • D
                                      damichi85 @thiel_marvin last edited by

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

                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      809
                                      Online

                                      31.9k
                                      Users

                                      80.1k
                                      Topics

                                      1.3m
                                      Posts

                                      16
                                      51
                                      13438
                                      Loading More Posts
                                      • Oldest to Newest
                                      • Newest to Oldest
                                      • Most Votes
                                      Reply
                                      • Reply as topic
                                      Log in to reply
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                      The ioBroker Community 2014-2023
                                      logo