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. JavaScript
  5. Hilfe bei RSS-feed benötigt !

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

Hilfe bei RSS-feed benötigt !

Geplant Angeheftet Gesperrt Verschoben JavaScript
426 Beiträge 13 Kommentatoren 67.9k 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.
  • 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 😕
          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 😕
            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
                      • NegaleinN Negalein

                        @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.

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

                        @negalein

                        auf basis dieser lösung nicht.
                        hab aktuell nicht soviel zeit.
                        es wäre gut gewesen das vorher zu wissen

                        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 L 2 Antworten Letzte Antwort
                        1
                        • OliverIOO OliverIO

                          @negalein

                          auf basis dieser lösung nicht.
                          hab aktuell nicht soviel zeit.
                          es wäre gut gewesen das vorher zu wissen

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

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

                          auf basis dieser lösung nicht.
                          hab aktuell nicht soviel zeit.
                          es wäre gut gewesen das vorher zu wissen

                          kein Problem. Ich schau mir das HTML mal an (muss noch auf paar IDs warten).
                          Alexa läuft nicht davon. 😉
                          War der Meinung es ist am Blockly ersichtlich. Ja für mich, aber nicht für jemanden, der die Grundfunktion von dem nicht kennt.
                          Sorry, war mein Fehler.
                          Aber wie gesagt, läuft nicht davon.

                          Danke trotzdem schonmal!

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

                          1 Antwort Letzte Antwort
                          0
                          • OliverIOO OliverIO

                            @negalein

                            auf basis dieser lösung nicht.
                            hab aktuell nicht soviel zeit.
                            es wäre gut gewesen das vorher zu wissen

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

                            @oliverio Danke für deine Lösung.
                            Ich filtere nach Bezirk mit der ID 2 und bei Einheiten hab ich es so geändert dass alle Feuerwehren die im Einsatz sind angezeigt werden und bei der Adresse habe ich noch "adresse" vorn dran damit auch der Ort angezeigt wird.

                                        <div><xsl:value-of select="einheiten"/></div>
                                        <div><xsl:value-of select="adresse/earea"/></div>
                            

                            Mein Problem ist noch, das ich nicht weis wie die Daten aktualisiert werden sollen. Skript Neustart alle Minute ist ja auch nicht die Lösung oder ?
                            lg
                            martin

                            OliverIOO L 2 Antworten Letzte Antwort
                            0
                            • L linux150

                              @oliverio Danke für deine Lösung.
                              Ich filtere nach Bezirk mit der ID 2 und bei Einheiten hab ich es so geändert dass alle Feuerwehren die im Einsatz sind angezeigt werden und bei der Adresse habe ich noch "adresse" vorn dran damit auch der Ort angezeigt wird.

                                          <div><xsl:value-of select="einheiten"/></div>
                                          <div><xsl:value-of select="adresse/earea"/></div>
                              

                              Mein Problem ist noch, das ich nicht weis wie die Daten aktualisiert werden sollen. Skript Neustart alle Minute ist ja auch nicht die Lösung oder ?
                              lg
                              martin

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

                              @linux150
                              doch, eigentlich schon. bei rss wird ja auch gepollt

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

                              1 Antwort Letzte Antwort
                              0
                              • L linux150

                                @oliverio Danke für deine Lösung.
                                Ich filtere nach Bezirk mit der ID 2 und bei Einheiten hab ich es so geändert dass alle Feuerwehren die im Einsatz sind angezeigt werden und bei der Adresse habe ich noch "adresse" vorn dran damit auch der Ort angezeigt wird.

                                            <div><xsl:value-of select="einheiten"/></div>
                                            <div><xsl:value-of select="adresse/earea"/></div>
                                

                                Mein Problem ist noch, das ich nicht weis wie die Daten aktualisiert werden sollen. Skript Neustart alle Minute ist ja auch nicht die Lösung oder ?
                                lg
                                martin

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

                                @OliverIO sorry steh am schlauch, wie starte ich denn jetzt das script minütlich?
                                Werd meine Parser Variante noch ein wenig anpassen um die Alexa Ansage wieder zum laufen zu bringen. Aber dein Blockly war auch wirklich super (oder wars von Dslraser?), mit Filter auf Freistadt alle Einsätze rundum per Telegram. Evtl wird das ja wieder was....
                                LG

                                1 Antwort Letzte Antwort
                                0
                                • sigi234S sigi234

                                  @linux150
                                  Ja, bitte zum Testen

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

                                  @sigi234 @Negalein sorry das ich mich jetzt erst melde:

                                  Also mit dem Adapter Parser die adresse https://cf-einsaetze.ooelfv.at/webext2/rss/webext2_laufend.xml parsen. Folgende Regex

                                  1. <resource name="([^<]*)" --> Feuerwehrname
                                  2. ([\w,\sÄÖÜ"]+)</alarmstufe --> Alarmstufe
                                  3. >([\wäöüß]+)</bez --> Bezirk
                                  4. 402414 (deine FW Nummer) --> Feuerwehrnummer
                                  5. >([^<]+)</einsatzsub --> Einsatzstichwort

                                  Wie schon vorher erklärt, wird 4. auf Wahr oder Falsch abgefragt als trigger.
                                  Steht der Trigger auf Wahr, also 402414 im xml vorhanden, wird eine Alexaansage abgespielt die "Achtung es liegt ein Einsatz für die FF .... an. Einsatzstichwort .... Es wurde Alarmstufe xxx alarmiert.
                                  In der alten Version noch mit Adresse, leider jetzt nicht mehr möglich 😞

                                  LG
                                  Martin

                                  NegaleinN 1 Antwort Letzte Antwort
                                  0
                                  • L linux150

                                    @sigi234 @Negalein sorry das ich mich jetzt erst melde:

                                    Also mit dem Adapter Parser die adresse https://cf-einsaetze.ooelfv.at/webext2/rss/webext2_laufend.xml parsen. Folgende Regex

                                    1. <resource name="([^<]*)" --> Feuerwehrname
                                    2. ([\w,\sÄÖÜ"]+)</alarmstufe --> Alarmstufe
                                    3. >([\wäöüß]+)</bez --> Bezirk
                                    4. 402414 (deine FW Nummer) --> Feuerwehrnummer
                                    5. >([^<]+)</einsatzsub --> Einsatzstichwort

                                    Wie schon vorher erklärt, wird 4. auf Wahr oder Falsch abgefragt als trigger.
                                    Steht der Trigger auf Wahr, also 402414 im xml vorhanden, wird eine Alexaansage abgespielt die "Achtung es liegt ein Einsatz für die FF .... an. Einsatzstichwort .... Es wurde Alarmstufe xxx alarmiert.
                                    In der alten Version noch mit Adresse, leider jetzt nicht mehr möglich 😞

                                    LG
                                    Martin

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

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

                                    Wie schon vorher erklärt, wird 4. auf Wahr oder Falsch abgefragt als trigger.

                                    Danke, werde es morgen gleich testen.

                                    Sind auch mehrere FW Nummern möglich? Oder noch besser, FW-Nummer weg und nur nach Bezirk?

                                    wird eine Alexaansage abgespielt die

                                    kannst du das Blockly noch reinstellen?
                                    Find es im Thread nicht.

                                    Danke

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

                                    L 1 Antwort Letzte Antwort
                                    0
                                    • NegaleinN Negalein

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

                                      Wie schon vorher erklärt, wird 4. auf Wahr oder Falsch abgefragt als trigger.

                                      Danke, werde es morgen gleich testen.

                                      Sind auch mehrere FW Nummern möglich? Oder noch besser, FW-Nummer weg und nur nach Bezirk?

                                      wird eine Alexaansage abgespielt die

                                      kannst du das Blockly noch reinstellen?
                                      Find es im Thread nicht.

                                      Danke

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

                                      @negalein du kannst nach jedem der Datenpunkte triggern.
                                      Blocky muss ich noch säubern, die Daten die nicht mehr funktionieren rausnehmen.
                                      Stell ich dann noch rein

                                      NegaleinN 1 Antwort Letzte Antwort
                                      1
                                      • L linux150

                                        @negalein du kannst nach jedem der Datenpunkte triggern.
                                        Blocky muss ich noch säubern, die Daten die nicht mehr funktionieren rausnehmen.
                                        Stell ich dann noch rein

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

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

                                        du kannst nach jedem der Datenpunkte triggern.

                                        das heisst, ich lass 4. einfach weg?

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

                                        L 1 Antwort Letzte Antwort
                                        0
                                        • NegaleinN Negalein

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

                                          du kannst nach jedem der Datenpunkte triggern.

                                          das heisst, ich lass 4. einfach weg?

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

                                          @negalein z.B
                                          Du kannst ja nach bezirk triggern.
                                          Wenn Bezirk ist Wahr dann mache ....

                                          <xml xmlns="https://developers.google.com/blockly/xml">
                                            <block type="on_ext" id="4/xa8l:7I3zM[cNNOK/9" x="113" y="13">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                              <field name="CONDITION">ne</field>
                                              <field name="ACK_CONDITION"></field>
                                              <value name="OID0">
                                                <shadow type="field_oid" id="=(bdBW#j_xv$gi^vZZ#D">
                                                  <field name="oid">parser.0.FF_Intranet_eigenejanein</field>
                                                </shadow>
                                              </value>
                                              <statement name="STATEMENT">
                                                <block type="controls_if" id="^`a:Heb}w_V$@Z7|~ONd">
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="gXBZumW49)).rW~q_X2v">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="get_value" id="NheCUcHxM#(h:|t`H;{2">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">parser.0.FF_Intranet_eigenejanein</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="logic_boolean" id="f$.gWO-?=]7/)T55i50[">
                                                          <field name="BOOL">TRUE</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="control" id="D`ApDw3eOf91Y,lvZxLv">
                                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                      <field name="OID">alexa2.0.Echo-Devices.G090LF0971550E77.Commands.speak-volume</field>
                                                      <field name="WITH_DELAY">FALSE</field>
                                                      <value name="VALUE">
                                                        <block type="math_number" id="?oHB}B{kc?A0PO*Krw6N">
                                                          <field name="NUM">80</field>
                                                        </block>
                                                      </value>
                                                      <next>
                                                        <block type="control" id="kg;q}yhg12E$4D?-8eF8">
                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                                          <field name="OID">alexa2.0.Echo-Devices.cd11d23266f546b2bcec0c0345d6f254.Commands.speak</field>
                                                          <field name="WITH_DELAY">TRUE</field>
                                                          <field name="DELAY_MS">0</field>
                                                          <field name="UNIT">sec</field>
                                                          <field name="CLEAR_RUNNING">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="text_join" id="rJ*,YV!PCl2^kLWYw%uE">
                                                              <mutation items="20"></mutation>
                                                              <value name="ADD0">
                                                                <block type="text" id="Uu+78p5rSg/wB}s.*qs9">
                                                                  <field name="TEXT">Achtung, Feuerwehreinsatz für die FF Pürstling,</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD1">
                                                                <block type="text" id="~#{(QRzvzR2I*V-.){/K">
                                                                  <field name="TEXT">Einsatzgrund :</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD2">
                                                                <block type="get_value" id="e..Gdv3+//z[gcXG%aYS">
                                                                  <field name="ATTR">val</field>
                                                                  <field name="OID">parser.0.FF_Intranet_stichwort</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD3">
                                                                <block type="text" id="tqb,fikdA+et~dzH[A%R">
                                                                  <field name="TEXT">  ,</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD4">
                                                                <block type="get_value" id="}n[r`o1j.[hFdNqQC6-%">
                                                                  <field name="ATTR">val</field>
                                                                  <field name="OID">parser.0.FF_Intranet_einsatztyp</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD5">
                                                                <block type="text" id="~jkbJO`twzl;sp@ind@~">
                                                                  <field name="TEXT">,</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD6">
                                                                <block type="get_value" id="{C|Iu~^MaHFw`HCZBa)o">
                                                                  <field name="ATTR">val</field>
                                                                  <field name="OID">parser.0.FF_Intranet_Ort</field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD7">
                                                                <block type="text" id="n0ZWKb]f3BLpQ,@LEhSZ">
                                                                  <field name="TEXT">, Alarmiert wurde, Alarmstufe </field>
                                                                </block>
                                                              </value>
                                                              <value name="ADD8">
                                                                <block type="logic_ternary" id="bdq+1=11|DdwfWkk}uBI">
                                                                  <value name="IF">
                                                                    <block type="logic_compare" id="4`AU1[M$Z=.7RbS3}Ri4">
                                                                      <field name="OP">EQ</field>
                                                                      <value name="A">
                                                                        <block type="get_value" id="D5BCzn#Q`u[|h[0CTT-X">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">parser.0.FF_Intranet_alarmstufe</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="math_number" id="xM:n.,:;|HzFKdjPM%4~">
                                                                          <field name="NUM">2</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="THEN">
                                                                    <block type="text" id="5bzFoN*wXEi/_zrr7dD+">
                                                                      <field name="TEXT">zwo,</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="ELSE">
                                                                    <block type="get_value" id="`v@]IAwL=CL8SdI,8G/.">
                                                                      <field name="ATTR">val</field>
                                                                      <field name="OID">parser.0.FF_Intranet_alarmstufe</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="control" id="?hXI1L:?Q;u*}mDKKJS!">
                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                              <field name="OID">alexa2.0.Echo-Devices.G090LF0971550E77.Commands.speak-volume</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE">
                                                                <block type="math_number" id="QOI$CuDkf;cH]Xm3+y-_">
                                                                  <field name="NUM">40</field>
                                                                </block>
                                                              </value>
                                                              <next>
                                                                <block type="telegram" id="tgL39?4.(:1:L0GDiwkr">
                                                                  <field name="INSTANCE"></field>
                                                                  <field name="LOG"></field>
                                                                  <field name="SILENT">FALSE</field>
                                                                  <field name="PARSEMODE">default</field>
                                                                  <field name="ESCAPING">FALSE</field>
                                                                  <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                                                  <value name="MESSAGE">
                                                                    <shadow type="text" id="y.eL)hW@Im1O+OW184vk">
                                                                      <field name="TEXT">text</field>
                                                                    </shadow>
                                                                    <block type="text_join" id="-8INl{!4vY[PA@Zc*Zor">
                                                                      <mutation items="20"></mutation>
                                                                      <value name="ADD0">
                                                                        <block type="text" id="{%2-U.W8b.sXbq.xFk/m">
                                                                          <field name="TEXT">Achtung, Feuerwehreinsatz für die FF Pürstling,</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD1">
                                                                        <block type="text" id="b3F{7Fsqrg:Jx[,Km*Ju">
                                                                          <field name="TEXT">Einsatzgrund :</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD2">
                                                                        <block type="get_value" id=".l.Im@(5Va31iY0Lia^H">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">parser.0.FF_Intranet_stichwort</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD4">
                                                                        <block type="get_value" id="}=7Pu9K2oD(2{QU`@QNn">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">parser.0.FF_Intranet_einsatztyp</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD5">
                                                                        <block type="text" id="}ZKNZ].fR^=ymVYk#$M6">
                                                                          <field name="TEXT">Adresse:</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD10">
                                                                        <block type="get_value" id="m4:C!`MIs{%V@CzQ#3h$">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">parser.0.FF_Intranet_Ort</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD11">
                                                                        <block type="text" id="W~2FVeH=}NWp71vC;N?#">
                                                                          <field name="TEXT">, Alarmiert wurde, Alarmstufe </field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD12">
                                                                        <block type="logic_ternary" id="V1#|4ckvDvk8.8~4CwyH">
                                                                          <value name="IF">
                                                                            <block type="logic_compare" id="5[40Az}2/`/17-1cU+xu">
                                                                              <field name="OP">EQ</field>
                                                                              <value name="A">
                                                                                <block type="get_value" id="9R,x[H*s?+h1UC/ouiCS">
                                                                                  <field name="ATTR">val</field>
                                                                                  <field name="OID">parser.0.FF_Intranet_alarmstufe</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <block type="math_number" id="jC`%8_.)t_[?lGP)fb+K">
                                                                                  <field name="NUM">2</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <value name="THEN">
                                                                            <block type="text" id="]/3d3`eq(--yV[A~1RUK">
                                                                              <field name="TEXT">zwo,</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="ELSE">
                                                                            <block type="get_value" id="FonU]C}#aq^Ga]/J9U4a">
                                                                              <field name="ATTR">val</field>
                                                                              <field name="OID">parser.0.FF_Intranet_alarmstufe</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                            </block>
                                          </xml>
                                          

                                          Hier mal mein Blockly, die Datenpunkte musst halt nach deinen Datenpunkten wie du sie im Parser benennst anpassen....
                                          LG
                                          Achja, ich lass mir nur die Alarmstufe ansagen, um mich als EL bei der Anfahrt schon vorzubereiten wer denn aller kommt. Die FW unserer ALST1 und ALST2 kenn ich 🙂

                                          L 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

                                          554

                                          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