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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Hilfe bei RSS-feed benötigt !

NEWS

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

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

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

Hilfe bei RSS-feed benötigt !

Geplant Angeheftet Gesperrt Verschoben JavaScript
426 Beiträge 13 Kommentatoren 68.0k Aufrufe 13 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.
  • dslraserD dslraser

    @linux150 sagte in Hilfe bei RSS-feed benötigt !:

    @dslraser Hallo
    Darf ich das nochmal hervorkramen....;-)
    Funktioniert super bei mir, einzig ich möchte noch gerne die Feuerwehr an Hand ihrer Nummer rausfiltern.
    Soll heißen, Alexa soll nur anschlagen wenn ein Feuerwehreinsatz für meine Feuerwehr anliegt. Telegram allerdings wäre der ganze Bezirk nett.
    Ich habe schon mal drübergeschaut, trau mich aber bei der Komplexität des Blockly nicht wirklich drüber, da wie ich mich kenne nachher gar nichts mehr funktioniert.
    Bitte Danke!!
    LG
    Martin

    Ich nutze das gar nicht und habe auch das Blockly nicht mehr. Das war mal für ? irgendwen aus dem Forum hier. Das war bei mir nie im Einsatz.
    Trau Dich da ran, mach Dir einfach ne Kopie. 🤷

    sigi234S Online
    sigi234S Online
    sigi234
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #345

    @dslraser sagte in Hilfe bei RSS-feed benötigt !:

    Das war mal für ?

    @sigi234

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

    1 Antwort Letzte Antwort
    1
    • dslraserD dslraser

      @linux150 sagte in Hilfe bei RSS-feed benötigt !:

      @dslraser Hallo
      Darf ich das nochmal hervorkramen....;-)
      Funktioniert super bei mir, einzig ich möchte noch gerne die Feuerwehr an Hand ihrer Nummer rausfiltern.
      Soll heißen, Alexa soll nur anschlagen wenn ein Feuerwehreinsatz für meine Feuerwehr anliegt. Telegram allerdings wäre der ganze Bezirk nett.
      Ich habe schon mal drübergeschaut, trau mich aber bei der Komplexität des Blockly nicht wirklich drüber, da wie ich mich kenne nachher gar nichts mehr funktioniert.
      Bitte Danke!!
      LG
      Martin

      Ich nutze das gar nicht und habe auch das Blockly nicht mehr. Das war mal für ? irgendwen aus dem Forum hier. Das war bei mir nie im Einsatz.
      Trau Dich da ran, mach Dir einfach ne Kopie. 🤷

      L Offline
      L Offline
      linux150
      schrieb am zuletzt editiert von
      #346

      @dslraser Werds versuchen :-)
      Hab jetzt mal eine rudimentäre Lösung in dem ich mit dem Parser alles aus der xml "rausparse" was ich brauche.
      Dann hab ich noch einen Schalter der auf wahr schaltet wenn meine Feuerwehrnummer in der xml vorkommt.
      Das ist dann der Trigger für das Alexa Script das mir dann die geparsten Werte wie Einsatzkurzstichwort, Einsatztyp, Adresse und Alarmstufe vorlest (während ich mich anziehe :-))
      Falls noch wer braucht, gerne bei mir melden :-)

      LG

      sigi234S NegaleinN 2 Antworten Letzte Antwort
      1
      • L linux150

        @dslraser Werds versuchen :-)
        Hab jetzt mal eine rudimentäre Lösung in dem ich mit dem Parser alles aus der xml "rausparse" was ich brauche.
        Dann hab ich noch einen Schalter der auf wahr schaltet wenn meine Feuerwehrnummer in der xml vorkommt.
        Das ist dann der Trigger für das Alexa Script das mir dann die geparsten Werte wie Einsatzkurzstichwort, Einsatztyp, Adresse und Alarmstufe vorlest (während ich mich anziehe :-))
        Falls noch wer braucht, gerne bei mir melden :-)

        LG

        sigi234S Online
        sigi234S Online
        sigi234
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #347

        @linux150
        Ja, bitte zum Testen

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

        L 1 Antwort Letzte Antwort
        0
        • L linux150

          @dslraser Werds versuchen :-)
          Hab jetzt mal eine rudimentäre Lösung in dem ich mit dem Parser alles aus der xml "rausparse" was ich brauche.
          Dann hab ich noch einen Schalter der auf wahr schaltet wenn meine Feuerwehrnummer in der xml vorkommt.
          Das ist dann der Trigger für das Alexa Script das mir dann die geparsten Werte wie Einsatzkurzstichwort, Einsatztyp, Adresse und Alarmstufe vorlest (während ich mich anziehe :-))
          Falls noch wer braucht, gerne bei mir melden :-)

          LG

          NegaleinN Offline
          NegaleinN Offline
          Negalein
          Global Moderator
          schrieb am zuletzt editiert von
          #348

          @linux150 sagte in Hilfe bei RSS-feed benötigt !:

          gerne bei mir melden

          ich auch bitte

          ° Node.js: 20.17.0 NPM: 10.8.2
          ° Proxmox, Ubuntu 22.04.3 LTS
          ° Fixer ---> iob fix

          1 Antwort Letzte Antwort
          0
          • NegaleinN Offline
            NegaleinN Offline
            Negalein
            Global Moderator
            schrieb am zuletzt editiert von
            #349

            @sigi234

            Funktioniert es bei dir noch?

            https://intranet.ooelfv.at/ ist nicht mehr erreichbar.
            Aber irgendwie funktionierts jetzt noch, bzw. anders. Siehe https://ff.ampits.at/?today

            ° Node.js: 20.17.0 NPM: 10.8.2
            ° Proxmox, Ubuntu 22.04.3 LTS
            ° Fixer ---> iob fix

            sigi234S 1 Antwort Letzte Antwort
            0
            • NegaleinN Negalein

              @sigi234

              Funktioniert es bei dir noch?

              https://intranet.ooelfv.at/ ist nicht mehr erreichbar.
              Aber irgendwie funktionierts jetzt noch, bzw. anders. Siehe https://ff.ampits.at/?today

              sigi234S Online
              sigi234S Online
              sigi234
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #350

              @negalein sagte in Hilfe bei RSS-feed benötigt !:

              @sigi234

              Funktioniert es bei dir noch?

              https://intranet.ooelfv.at/ ist nicht mehr erreichbar.
              Aber irgendwie funktionierts jetzt noch, bzw. anders. Siehe https://ff.ampits.at/?today

              Nein, das System wurde umgestellt.

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

              NegaleinN 1 Antwort Letzte Antwort
              0
              • sigi234S sigi234

                @negalein sagte in Hilfe bei RSS-feed benötigt !:

                @sigi234

                Funktioniert es bei dir noch?

                https://intranet.ooelfv.at/ ist nicht mehr erreichbar.
                Aber irgendwie funktionierts jetzt noch, bzw. anders. Siehe https://ff.ampits.at/?today

                Nein, das System wurde umgestellt.

                NegaleinN Offline
                NegaleinN Offline
                Negalein
                Global Moderator
                schrieb am zuletzt editiert von
                #351

                @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                Nein, das System wurde umgestellt.

                gibt es eine neue URL?

                ° Node.js: 20.17.0 NPM: 10.8.2
                ° Proxmox, Ubuntu 22.04.3 LTS
                ° Fixer ---> iob fix

                sigi234S 1 Antwort Letzte Antwort
                0
                • NegaleinN Negalein

                  @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                  Nein, das System wurde umgestellt.

                  gibt es eine neue URL?

                  sigi234S Online
                  sigi234S Online
                  sigi234
                  Forum Testing Most Active
                  schrieb am zuletzt editiert von sigi234
                  #352

                  @negalein sagte in Hilfe bei RSS-feed benötigt !:

                  @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                  Nein, das System wurde umgestellt.

                  gibt es eine neue URL?

                  Ja, aber weiß nicht ob es rss gibt.
                  Bin noch am Untersuchen.

                  Benutze jetzt das:

                  https://play.google.com/store/apps/details?id=at.appaya.lfkeinsatzinfo

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

                  NegaleinN 2 Antworten Letzte Antwort
                  0
                  • sigi234S sigi234

                    @negalein sagte in Hilfe bei RSS-feed benötigt !:

                    @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                    Nein, das System wurde umgestellt.

                    gibt es eine neue URL?

                    Ja, aber weiß nicht ob es rss gibt.
                    Bin noch am Untersuchen.

                    Benutze jetzt das:

                    https://play.google.com/store/apps/details?id=at.appaya.lfkeinsatzinfo

                    NegaleinN Offline
                    NegaleinN Offline
                    Negalein
                    Global Moderator
                    schrieb am zuletzt editiert von
                    #353

                    @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                    Ja, aber weiß nicht ob es rss gibt.

                    hast du einen Link?

                    Benutze jetzt das:

                    ich möchte so wenig wie möglich (Handicap) übers Handy machen.

                    ° Node.js: 20.17.0 NPM: 10.8.2
                    ° Proxmox, Ubuntu 22.04.3 LTS
                    ° Fixer ---> iob fix

                    sigi234S 1 Antwort Letzte Antwort
                    0
                    • NegaleinN Negalein

                      @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                      Ja, aber weiß nicht ob es rss gibt.

                      hast du einen Link?

                      Benutze jetzt das:

                      ich möchte so wenig wie möglich (Handicap) übers Handy machen.

                      sigi234S Online
                      sigi234S Online
                      sigi234
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #354

                      @negalein sagte in Hilfe bei RSS-feed benötigt !:

                      hast du einen Link?

                      https://einsaetze.ooelfv.at/einsatz/aktuell

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

                      1 Antwort Letzte Antwort
                      0
                      • sigi234S sigi234

                        @negalein sagte in Hilfe bei RSS-feed benötigt !:

                        @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                        Nein, das System wurde umgestellt.

                        gibt es eine neue URL?

                        Ja, aber weiß nicht ob es rss gibt.
                        Bin noch am Untersuchen.

                        Benutze jetzt das:

                        https://play.google.com/store/apps/details?id=at.appaya.lfkeinsatzinfo

                        NegaleinN Offline
                        NegaleinN Offline
                        Negalein
                        Global Moderator
                        schrieb am zuletzt editiert von Negalein
                        #355

                        @sigi234 sagte in Hilfe bei RSS-feed benötigt !:

                        Ja, aber weiß nicht ob es rss gibt.

                        Gefunden!
                        https://cf-einsaetze.ooelfv.at/webext2/rss/webext2_laufend.xml

                        Jetzt gehts noch um das Script! ;)

                        ° Node.js: 20.17.0 NPM: 10.8.2
                        ° Proxmox, Ubuntu 22.04.3 LTS
                        ° Fixer ---> iob fix

                        1 Antwort Letzte Antwort
                        1
                        • NegaleinN Offline
                          NegaleinN Offline
                          Negalein
                          Global Moderator
                          schrieb am zuletzt editiert von
                          #356

                          @dslraser sagte in Hilfe bei RSS-feed benötigt !:

                          Ich nutze das gar nicht und habe auch das Blockly nicht mehr

                          Hallo Heiko!

                          Leider wurde das System umgestellt und die URL hat sich geändert.
                          Ich weiß nicht, ob es reicht im Blockly die URL zu ändern, oder ob an den Positionen auch was gemacht werden muss.

                          Könntest du dir das mal ansehen?

                          Neue URL zum RSS


                          Feuerwehr.Alarm-Alexa.xml

                          ° Node.js: 20.17.0 NPM: 10.8.2
                          ° Proxmox, Ubuntu 22.04.3 LTS
                          ° Fixer ---> iob fix

                          OliverIOO 1 Antwort Letzte Antwort
                          0
                          • NegaleinN Negalein

                            @dslraser sagte in Hilfe bei RSS-feed benötigt !:

                            Ich nutze das gar nicht und habe auch das Blockly nicht mehr

                            Hallo Heiko!

                            Leider wurde das System umgestellt und die URL hat sich geändert.
                            Ich weiß nicht, ob es reicht im Blockly die URL zu ändern, oder ob an den Positionen auch was gemacht werden muss.

                            Könntest du dir das mal ansehen?

                            Neue URL zum RSS


                            Feuerwehr.Alarm-Alexa.xml

                            OliverIOO Offline
                            OliverIOO Offline
                            OliverIO
                            schrieb am zuletzt editiert von OliverIO
                            #357

                            @negalein

                            es ist auf jeden fall kein rss/atom mehr
                            ich würde empfehlen mit der folgenden
                            bibliothek die daten in ein json objekt umzuwandeln
                            https://www.npmjs.com/package/fast-xml-parser
                            und dann entsprechend aufzubereiten.
                            mit blockly dürfte das ein wenig aufwändig werden.

                            andere alternative, aber da gibt es zu wenig anleitungen im netz:
                            die daten sind mehr oder weniger xml.
                            mit einem xslt-prozessor kann man daraus dann direkt html erzeugen
                            https://www.npmjs.com/package/xslt-processor
                            aber auch dafür muss man mit javascript was machen

                            Meine Adapter und Widgets
                            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                            Links im Profil

                            NegaleinN 1 Antwort Letzte Antwort
                            0
                            • OliverIOO OliverIO

                              @negalein

                              es ist auf jeden fall kein rss/atom mehr
                              ich würde empfehlen mit der folgenden
                              bibliothek die daten in ein json objekt umzuwandeln
                              https://www.npmjs.com/package/fast-xml-parser
                              und dann entsprechend aufzubereiten.
                              mit blockly dürfte das ein wenig aufwändig werden.

                              andere alternative, aber da gibt es zu wenig anleitungen im netz:
                              die daten sind mehr oder weniger xml.
                              mit einem xslt-prozessor kann man daraus dann direkt html erzeugen
                              https://www.npmjs.com/package/xslt-processor
                              aber auch dafür muss man mit javascript was machen

                              NegaleinN Offline
                              NegaleinN Offline
                              Negalein
                              Global Moderator
                              schrieb am zuletzt editiert von
                              #358

                              @oliverio sagte in Hilfe bei RSS-feed benötigt !:

                              es ist auf jeden fall kein rss/atom mehr

                              ich versteh da nur Bahnhof :confused:
                              Ist es mit dem neuen RSS also nicht mehr möglich?

                              ° Node.js: 20.17.0 NPM: 10.8.2
                              ° Proxmox, Ubuntu 22.04.3 LTS
                              ° Fixer ---> iob fix

                              OliverIOO 1 Antwort Letzte Antwort
                              0
                              • NegaleinN Negalein

                                @oliverio sagte in Hilfe bei RSS-feed benötigt !:

                                es ist auf jeden fall kein rss/atom mehr

                                ich versteh da nur Bahnhof :confused:
                                Ist es mit dem neuen RSS also nicht mehr möglich?

                                OliverIOO Offline
                                OliverIOO Offline
                                OliverIO
                                schrieb am zuletzt editiert von OliverIO
                                #359

                                @negalein
                                da es kein rss ist, nein
                                die haben das datenformat komplett geändert und entspricht keinem standard mehr (also ausser das es xml ist) (habe unter webext2 version="1.2" nix gefunden)

                                Meine Adapter und Widgets
                                TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                Links im Profil

                                NegaleinN 1 Antwort Letzte Antwort
                                0
                                • OliverIOO OliverIO

                                  @negalein
                                  da es kein rss ist, nein
                                  die haben das datenformat komplett geändert und entspricht keinem standard mehr (also ausser das es xml ist) (habe unter webext2 version="1.2" nix gefunden)

                                  NegaleinN Offline
                                  NegaleinN Offline
                                  Negalein
                                  Global Moderator
                                  schrieb am zuletzt editiert von
                                  #360

                                  @oliverio sagte in Hilfe bei RSS-feed benötigt !:

                                  die haben das datenformat komplett geändert und entspricht keinem standard mehr (also ausser das es xml ist)

                                  ok, das ist schade.
                                  Muss dann wohl darauf verzichten.

                                  Danke für die Erklärung. :)

                                  ° Node.js: 20.17.0 NPM: 10.8.2
                                  ° Proxmox, Ubuntu 22.04.3 LTS
                                  ° Fixer ---> iob fix

                                  OliverIOO 1 Antwort Letzte Antwort
                                  0
                                  • NegaleinN Negalein

                                    @oliverio sagte in Hilfe bei RSS-feed benötigt !:

                                    die haben das datenformat komplett geändert und entspricht keinem standard mehr (also ausser das es xml ist)

                                    ok, das ist schade.
                                    Muss dann wohl darauf verzichten.

                                    Danke für die Erklärung. :)

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    schrieb am zuletzt editiert von
                                    #361

                                    @negalein

                                    schreib mal dein wunschlayout grob auf.
                                    die felder die zur verfügung stehen, siehst du ja in dem link

                                    Meine Adapter und Widgets
                                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                    Links im Profil

                                    NegaleinN 1 Antwort Letzte Antwort
                                    0
                                    • OliverIOO OliverIO

                                      @negalein

                                      schreib mal dein wunschlayout grob auf.
                                      die felder die zur verfügung stehen, siehst du ja in dem link

                                      NegaleinN Offline
                                      NegaleinN Offline
                                      Negalein
                                      Global Moderator
                                      schrieb am zuletzt editiert von
                                      #362

                                      @oliverio sagte in Hilfe bei RSS-feed benötigt !:

                                      schreib mal dein wunschlayout grob auf.

                                      status --> zum starten und beenden der Meldung
                                      startzeit
                                      einheit id --> zum filtern (Mehrfacheingabe)
                                      earea
                                      alarmtext

                                      ° Node.js: 20.17.0 NPM: 10.8.2
                                      ° Proxmox, Ubuntu 22.04.3 LTS
                                      ° Fixer ---> iob fix

                                      OliverIOO 1 Antwort Letzte Antwort
                                      0
                                      • NegaleinN Negalein

                                        @oliverio sagte in Hilfe bei RSS-feed benötigt !:

                                        schreib mal dein wunschlayout grob auf.

                                        status --> zum starten und beenden der Meldung
                                        startzeit
                                        einheit id --> zum filtern (Mehrfacheingabe)
                                        earea
                                        alarmtext

                                        OliverIOO Offline
                                        OliverIOO Offline
                                        OliverIO
                                        schrieb am zuletzt editiert von OliverIO
                                        #363

                                        @negalein

                                        so hier kannst mal probieren

                                        1. in den javascript einstellungen die folgenden npm module hinzufügen
                                          axios
                                          xslt-processor

                                        das script im javascript adapter hinzufügen
                                        3) in der filter variable die ids der relevanten stationen hinzufügen. mehrere mit leerzeichen getrennt. die ids sind nicht identisch mit der nummer die bei einheit dabeisteht
                                        4) einen datenpunkt vom typ text/string anlegen und bei variable dp im script eintragen.
                                        5) entsprechendes schedule setzen um das script regelmäßig zu starten
                                        6) im vis ein html-widget hinzufügen und den erzeugten datenpunkt eintragen, so das das hetml dann angezeigt wird.

                                        das html ist sehr rudimentär, so das erstmal nur die informationen angezeigt werden. das html template steht in der variable xslString. bspw das <xsl:value-of select="status"/> ist ein platzhalter für die daten aus dem xml. drum herum können dann beliebige html anweiseungen angegeben werden, so das das entsprechend formatiert darbestellt werden kann

                                        // jshint esversion: 8
                                        const Xslt = require("xslt-processor").Xslt;
                                        const XmlParser = require("xslt-processor").XmlParser;
                                        const axios = require ("axios");
                                        // Funktion zum Abruf der daten
                                        const getData = async () => {
                                            return axios.get("https://cf-einsaetze.ooelfv.at/webext2/rss/webext2_laufend.xml", {
                                              });
                                        };
                                        
                                        async function main() {
                                        // Konfiguration des skripts
                                            let dp = "0_userdata.0.test";
                                            let filter="123 456";
                                        // template string für die transformation
                                               let  xslString = `<?xml version="1.0" encoding="UTF-8"?>
                                            <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
                                              <h2>Feuerwehr</h2>
                                              <xsl:template match="/">
                                                  <xsl:for-each select="webext2/einsaetze/einsatz**myfilter**">
                                                    <div><xsl:value-of select="status"/></div>
                                                    <div><xsl:value-of select="startzeit"/></div>
                                                    <div><xsl:value-of select="einheiten/einheit"/></div>
                                                    <div><xsl:value-of select="earea"/></div>
                                                    <div><xsl:value-of select="alarmtext"/></div>
                                                  </xsl:for-each>
                                            </xsl:template>
                                            </xsl:stylesheet>
                                            `;
                                            let  xmlString;
                                        try {
                                        // Daten abrufen
                                            xmlString =  await getData();
                                        } catch (error) {
                                            console.log(error);
                                        }
                                        // Vorbereitung der xml transformation
                                            const xslt = new Xslt();
                                            const xmlParser = new XmlParser();
                                        // Berechnung des filters anhand der einheiten id
                                            let myfilter=getFilter(filter);
                                        // einfügen des filters in das template
                                            xslString=xslString.replace("**myfilter**",myfilter);
                                        // transformation durchführen
                                            const outXmlString = xslt.xsltProcess(
                                                xmlParser.xmlParse(xmlString.data),
                                                xmlParser.xmlParse(xslString)
                                            );
                                        // ergebnis html in datenpunkt schreiben
                                            setState(dp,outXmlString);
                                            console.log(outXmlString);
                                        }
                                        // hilfsfunktion um den filter zu berechnen
                                        function getFilter(filter) {
                                            let f=[];
                                            filter.split(" ").forEach(element => {
                                                if (element.trim()!="") f.push(`einheiten/einheit/@id='${element.trim()}'`);
                                            });
                                            if (f.length==0) {
                                                return "";
                                            } else {
                                                return "["+f.join(" or ")+"]";
                                            }
                                        }
                                        // aufruf des skripts
                                        main();
                                        
                                        
                                        
                                        
                                        
                                        
                                        

                                        Meine Adapter und Widgets
                                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                        Links im Profil

                                        NegaleinN 1 Antwort Letzte Antwort
                                        0
                                        • OliverIOO OliverIO

                                          @negalein

                                          so hier kannst mal probieren

                                          1. in den javascript einstellungen die folgenden npm module hinzufügen
                                            axios
                                            xslt-processor

                                          das script im javascript adapter hinzufügen
                                          3) in der filter variable die ids der relevanten stationen hinzufügen. mehrere mit leerzeichen getrennt. die ids sind nicht identisch mit der nummer die bei einheit dabeisteht
                                          4) einen datenpunkt vom typ text/string anlegen und bei variable dp im script eintragen.
                                          5) entsprechendes schedule setzen um das script regelmäßig zu starten
                                          6) im vis ein html-widget hinzufügen und den erzeugten datenpunkt eintragen, so das das hetml dann angezeigt wird.

                                          das html ist sehr rudimentär, so das erstmal nur die informationen angezeigt werden. das html template steht in der variable xslString. bspw das <xsl:value-of select="status"/> ist ein platzhalter für die daten aus dem xml. drum herum können dann beliebige html anweiseungen angegeben werden, so das das entsprechend formatiert darbestellt werden kann

                                          // jshint esversion: 8
                                          const Xslt = require("xslt-processor").Xslt;
                                          const XmlParser = require("xslt-processor").XmlParser;
                                          const axios = require ("axios");
                                          // Funktion zum Abruf der daten
                                          const getData = async () => {
                                              return axios.get("https://cf-einsaetze.ooelfv.at/webext2/rss/webext2_laufend.xml", {
                                                });
                                          };
                                          
                                          async function main() {
                                          // Konfiguration des skripts
                                              let dp = "0_userdata.0.test";
                                              let filter="123 456";
                                          // template string für die transformation
                                                 let  xslString = `<?xml version="1.0" encoding="UTF-8"?>
                                              <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
                                                <h2>Feuerwehr</h2>
                                                <xsl:template match="/">
                                                    <xsl:for-each select="webext2/einsaetze/einsatz**myfilter**">
                                                      <div><xsl:value-of select="status"/></div>
                                                      <div><xsl:value-of select="startzeit"/></div>
                                                      <div><xsl:value-of select="einheiten/einheit"/></div>
                                                      <div><xsl:value-of select="earea"/></div>
                                                      <div><xsl:value-of select="alarmtext"/></div>
                                                    </xsl:for-each>
                                              </xsl:template>
                                              </xsl:stylesheet>
                                              `;
                                              let  xmlString;
                                          try {
                                          // Daten abrufen
                                              xmlString =  await getData();
                                          } catch (error) {
                                              console.log(error);
                                          }
                                          // Vorbereitung der xml transformation
                                              const xslt = new Xslt();
                                              const xmlParser = new XmlParser();
                                          // Berechnung des filters anhand der einheiten id
                                              let myfilter=getFilter(filter);
                                          // einfügen des filters in das template
                                              xslString=xslString.replace("**myfilter**",myfilter);
                                          // transformation durchführen
                                              const outXmlString = xslt.xsltProcess(
                                                  xmlParser.xmlParse(xmlString.data),
                                                  xmlParser.xmlParse(xslString)
                                              );
                                          // ergebnis html in datenpunkt schreiben
                                              setState(dp,outXmlString);
                                              console.log(outXmlString);
                                          }
                                          // hilfsfunktion um den filter zu berechnen
                                          function getFilter(filter) {
                                              let f=[];
                                              filter.split(" ").forEach(element => {
                                                  if (element.trim()!="") f.push(`einheiten/einheit/@id='${element.trim()}'`);
                                              });
                                              if (f.length==0) {
                                                  return "";
                                              } else {
                                                  return "["+f.join(" or ")+"]";
                                              }
                                          }
                                          // aufruf des skripts
                                          main();
                                          
                                          
                                          
                                          
                                          
                                          
                                          
                                          NegaleinN Offline
                                          NegaleinN Offline
                                          Negalein
                                          Global Moderator
                                          schrieb am zuletzt editiert von
                                          #364

                                          @oliverio sagte in Hilfe bei RSS-feed benötigt !:

                                          so hier kannst mal probieren

                                          Danke!!!
                                          Werde es gleich probieren.

                                          Eine JSON (oder ähnlich) anstatt dem HTML wird nicht so einfach sein?
                                          Oder je einen eigenen DP für status, startzeit, einheit id, earea, alarmtext.

                                          Dann könnte ich es mit Blockly an Alexa ausgeben lassen.

                                          ° Node.js: 20.17.0 NPM: 10.8.2
                                          ° Proxmox, Ubuntu 22.04.3 LTS
                                          ° Fixer ---> iob fix

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


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          361

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