Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Mit Parser eine XML auswerten Datenpunkt erstellen

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Mit Parser eine XML auswerten Datenpunkt erstellen

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
6 Beiträge 3 Kommentatoren 156 Aufrufe 2 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.
  • M Offline
    M Offline
    mikedjx
    schrieb am zuletzt editiert von
    #1

    Hallo Gemeinde,

    ich bräuchte mal eure Hilfe. Ich möchte aus folgernder XML Datei (http://192.168.1.11/input_emz.xml)
    mit dem Parser folgende Werte in die Datenbank schreiben :
    zb. abfrage Input 1 den werte "Soll oder Nicht Soll"
    Mir ist nicht klar wie ich den Regex Befehl schreibe, zum hintergrund es handelt sich hier um eine Alarmanlage die damit gewisse Zustände anzeigt die ich auswerten will und in der VIS anzeigen möchte!
    Muss ich jetzt im Parser jeden einzelnen Eingang abfragen (Was auch OK wäre) oder geht das auch zusammen (Es handelt sich um max 100 Einträge in der XML.

    Vielen Dank für eure Mühe und Rückmeldung

    parser.png

    <EMZ_Input>
    <Info>
    <Headline>Zustand der EMZ Eingaenge</Headline>
    <Column1>Eingangsbezeichnung</Column1>
    <Column2>Zustand</Column2>
    <Column3>Anzeige</Column3>
    <Column4>Physik</Column4>
    <Column5>MG Nr.</Column5>
    <Poll>5000</Poll>
    </Info>
    <Input nr="1">
    <Condition>Soll</Condition>
    <PH_Condition> </PH_Condition>
    <Led>RED_OFF</Led>
    <Text> </Text>
    </Input>
    <Input nr="2">
    <Condition>Soll</Condition>
    <PH_Condition> </PH_Condition>
    <Led>RED_OFF</Led>
    <Text> </Text>
    </Input>
    <Input nr="3">
    <Condition>Soll</Condition>
    <PH_Condition> </PH_Condition>
    <Led>RED_OFF</Led>
    <Text> </Text>
    
    HomoranH 1 Antwort Letzte Antwort
    0
    • M mikedjx

      Hallo Gemeinde,

      ich bräuchte mal eure Hilfe. Ich möchte aus folgernder XML Datei (http://192.168.1.11/input_emz.xml)
      mit dem Parser folgende Werte in die Datenbank schreiben :
      zb. abfrage Input 1 den werte "Soll oder Nicht Soll"
      Mir ist nicht klar wie ich den Regex Befehl schreibe, zum hintergrund es handelt sich hier um eine Alarmanlage die damit gewisse Zustände anzeigt die ich auswerten will und in der VIS anzeigen möchte!
      Muss ich jetzt im Parser jeden einzelnen Eingang abfragen (Was auch OK wäre) oder geht das auch zusammen (Es handelt sich um max 100 Einträge in der XML.

      Vielen Dank für eure Mühe und Rückmeldung

      parser.png

      <EMZ_Input>
      <Info>
      <Headline>Zustand der EMZ Eingaenge</Headline>
      <Column1>Eingangsbezeichnung</Column1>
      <Column2>Zustand</Column2>
      <Column3>Anzeige</Column3>
      <Column4>Physik</Column4>
      <Column5>MG Nr.</Column5>
      <Poll>5000</Poll>
      </Info>
      <Input nr="1">
      <Condition>Soll</Condition>
      <PH_Condition> </PH_Condition>
      <Led>RED_OFF</Led>
      <Text> </Text>
      </Input>
      <Input nr="2">
      <Condition>Soll</Condition>
      <PH_Condition> </PH_Condition>
      <Led>RED_OFF</Led>
      <Text> </Text>
      </Input>
      <Input nr="3">
      <Condition>Soll</Condition>
      <PH_Condition> </PH_Condition>
      <Led>RED_OFF</Led>
      <Text> </Text>
      
      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #2

      @mikedjx sagte in Mit Parser eine XML auswerten Datenpunkt erstellen:

      mit dem Parser folgende Werte

      mit dem Parser musst du jeden Eintrag einzeln auslesen, was aber nur einen Aufruf "kostet".
      Dafür wird dir dann in den Objekten auch direkt der entsprechende Datenpunkt angelegt

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      M 2 Antworten Letzte Antwort
      0
      • HomoranH Homoran

        @mikedjx sagte in Mit Parser eine XML auswerten Datenpunkt erstellen:

        mit dem Parser folgende Werte

        mit dem Parser musst du jeden Eintrag einzeln auslesen, was aber nur einen Aufruf "kostet".
        Dafür wird dir dann in den Objekten auch direkt der entsprechende Datenpunkt angelegt

        M Offline
        M Offline
        mikedjx
        schrieb am zuletzt editiert von
        #3

        @homoran
        Habe es jetzt erst mal so gelöst im Parser REGEX :

        (?<=<Condition>)[\s\S]*?(?=</)

        Und dann im Parser den NUM Wert auf 0 gesetzt für die erste Meldung und dann hochgezählt.

        Bis jetzt funktioniert es und sieht ganz gut aus!

        OliverIOO HomoranH 2 Antworten Letzte Antwort
        0
        • M mikedjx

          @homoran
          Habe es jetzt erst mal so gelöst im Parser REGEX :

          (?<=<Condition>)[\s\S]*?(?=</)

          Und dann im Parser den NUM Wert auf 0 gesetzt für die erste Meldung und dann hochgezählt.

          Bis jetzt funktioniert es und sieht ganz gut aus!

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

          @mikedjx
          wenn es mal probleme macht gibt es schöne bibliotheken die man verwenden kann. bspw
          https://www.npmjs.com/package/xml2json
          verwandelt dir xml in ein json objekt und umgekehrt

          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
          • M mikedjx

            @homoran
            Habe es jetzt erst mal so gelöst im Parser REGEX :

            (?<=<Condition>)[\s\S]*?(?=</)

            Und dann im Parser den NUM Wert auf 0 gesetzt für die erste Meldung und dann hochgezählt.

            Bis jetzt funktioniert es und sieht ganz gut aus!

            HomoranH Nicht stören
            HomoranH Nicht stören
            Homoran
            Global Moderator Administrators
            schrieb am zuletzt editiert von Homoran
            #5

            @mikedjx sagte in Mit Parser eine XML auswerten Datenpunkt erstellen:

            Und dann im Parser den NUM Wert auf 0 gesetzt für die erste Meldung und dann hochgezählt.

            das ist gut, aber Condition kann ein Problem sein, ich weiß nicht was in der nächsten Zeile noch kommt

            Mein RegEx wäre on>(\w+)<\/C
            Analog dann ed>(\w+)<\/L um mit dem Zustand der LED arbeiten zu können

            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

            1 Antwort Letzte Antwort
            0
            • HomoranH Homoran

              @mikedjx sagte in Mit Parser eine XML auswerten Datenpunkt erstellen:

              mit dem Parser folgende Werte

              mit dem Parser musst du jeden Eintrag einzeln auslesen, was aber nur einen Aufruf "kostet".
              Dafür wird dir dann in den Objekten auch direkt der entsprechende Datenpunkt angelegt

              M Offline
              M Offline
              mikedjx
              schrieb am zuletzt editiert von
              #6

              @homoran

              Vielen Dank für die schnelle Hilfe und Unterstützung!

              Läuft alles Problemlos!

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


              Support us

              ioBroker
              Community Adapters
              Donate

              789

              Online

              32.7k

              Benutzer

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