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. Parser RegEx Hilfe für Hunter Hydrawise JSON auslesen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Parser RegEx Hilfe für Hunter Hydrawise JSON auslesen

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

    Hallo zusammen !
    Als RegEx-Script-Kiddy bin ich mit zusammengeklauten RegEx Begriffen und Trial/Error mit regex101.com bisher gut gefahren.

    Leider komme ich hier nicht weiter und würde mich über Hilfe freuen:

    Ich möchte mit dem Parser-Adapter eine JSON auslesen. Die Bewässerungs-Cloud von Hunter Hydrawise gibt u.g. JSON raus.
    Ich benötige den Wert von "Run" (Eine Zahl von 0 Sekunden bis 3600 Sekunden).
    Diesen Wert gibt es jedoch mehrfach. Jeweils einmal pro "relay "

    RegEx (?<="run":)[\s\S]*?(?=,"relay":1,) klappt fürs 1.Relay gut. Aber bei (?<="run":)[\s\S]*?(?=,"relay":2,) wird alles ab erstem Auftreten von run erfasst. Ich weiß nicht, wie ich das vordere Ende der Auswahl begrenzen kann.

    Die Werte für "time" ändern sich beim laufendem Relay, so dass ich nicht den kompletten Abschnitt als vordere Grenze nehmen kann.

    Ist für jemanden der es kann vermutlich einfach. Für mich leider nicht.
    Besten Dank und Gruß,
    Sebastian

    {"time":1652603971,"nextpoll":60,"message":"","simRelays":1,"options":1,"stupdate":0,"master":0,"master_timer":0,"master_post_timer":0,"expanders":[],"sensors":[{"input":0,"type":3,"mode":0,"timer":0,"offtimer":0,"rate":1.8927,"relays":[{"id":3004636},{"id":3004637},{"id":3004638},{"id":3004639},{"id":3004640},{"id":3004641},{"id":3004642},{"id":3004643},{"id":3004644},{"id":4616787}]}],"relays":[{"relay_id":4616787,"time":1,"type":106,"run":588,"relay":1,"name":"Beet mitte","period":259200,"timestr":"Now","stop":1},{"relay_id":3004636,"time":1576800000,"type":110,"run":0,"relay":2,"name":"Beet unten+Vorg","period":259200,"timestr":"","stop":1},{"relay_id":3004637,"time":1576800000,"type":110,"run":0,"relay":3,"name":"Beet oben oben+","period":259200,"timestr":"","stop":1},{"relay_id":3004638,"time":1576800000,"type":110,"run":0,"relay":4,"name":"Rasen unten rec","period":259200,"timestr":"","stop":1},{"relay_id":3004639,"time":1576800000,"type":110,"run":0,"relay":5,"name":"Rasen mitte","period":259200,"timestr":"","stop":1},{"relay_id":3004640,"time":1576800000,"type":110,"run":0,"relay":6,"name":"Rasen oben oben","period":259200,"timestr":"","stop":1},{"relay_id":3004641,"time":1576800000,"type":110,"run":0,"relay":7,"name":"Rasen oben unte","period":259200,"timestr":"","stop":1},{"relay_id":3004643,"time":1576800000,"type":110,"run":0,"relay":9,"name":"Rasen unten lin","period":259200,"timestr":"","stop":1}]}
    

    Bildschirmfoto 2022-05-15 um 10.38.52.png Bildschirmfoto 2022-05-15 um 10.39.46.png

    paul53P 1 Antwort Letzte Antwort
    0
    • Q qwertz

      Hallo zusammen !
      Als RegEx-Script-Kiddy bin ich mit zusammengeklauten RegEx Begriffen und Trial/Error mit regex101.com bisher gut gefahren.

      Leider komme ich hier nicht weiter und würde mich über Hilfe freuen:

      Ich möchte mit dem Parser-Adapter eine JSON auslesen. Die Bewässerungs-Cloud von Hunter Hydrawise gibt u.g. JSON raus.
      Ich benötige den Wert von "Run" (Eine Zahl von 0 Sekunden bis 3600 Sekunden).
      Diesen Wert gibt es jedoch mehrfach. Jeweils einmal pro "relay "

      RegEx (?<="run":)[\s\S]*?(?=,"relay":1,) klappt fürs 1.Relay gut. Aber bei (?<="run":)[\s\S]*?(?=,"relay":2,) wird alles ab erstem Auftreten von run erfasst. Ich weiß nicht, wie ich das vordere Ende der Auswahl begrenzen kann.

      Die Werte für "time" ändern sich beim laufendem Relay, so dass ich nicht den kompletten Abschnitt als vordere Grenze nehmen kann.

      Ist für jemanden der es kann vermutlich einfach. Für mich leider nicht.
      Besten Dank und Gruß,
      Sebastian

      {"time":1652603971,"nextpoll":60,"message":"","simRelays":1,"options":1,"stupdate":0,"master":0,"master_timer":0,"master_post_timer":0,"expanders":[],"sensors":[{"input":0,"type":3,"mode":0,"timer":0,"offtimer":0,"rate":1.8927,"relays":[{"id":3004636},{"id":3004637},{"id":3004638},{"id":3004639},{"id":3004640},{"id":3004641},{"id":3004642},{"id":3004643},{"id":3004644},{"id":4616787}]}],"relays":[{"relay_id":4616787,"time":1,"type":106,"run":588,"relay":1,"name":"Beet mitte","period":259200,"timestr":"Now","stop":1},{"relay_id":3004636,"time":1576800000,"type":110,"run":0,"relay":2,"name":"Beet unten+Vorg","period":259200,"timestr":"","stop":1},{"relay_id":3004637,"time":1576800000,"type":110,"run":0,"relay":3,"name":"Beet oben oben+","period":259200,"timestr":"","stop":1},{"relay_id":3004638,"time":1576800000,"type":110,"run":0,"relay":4,"name":"Rasen unten rec","period":259200,"timestr":"","stop":1},{"relay_id":3004639,"time":1576800000,"type":110,"run":0,"relay":5,"name":"Rasen mitte","period":259200,"timestr":"","stop":1},{"relay_id":3004640,"time":1576800000,"type":110,"run":0,"relay":6,"name":"Rasen oben oben","period":259200,"timestr":"","stop":1},{"relay_id":3004641,"time":1576800000,"type":110,"run":0,"relay":7,"name":"Rasen oben unte","period":259200,"timestr":"","stop":1},{"relay_id":3004643,"time":1576800000,"type":110,"run":0,"relay":9,"name":"Rasen unten lin","period":259200,"timestr":"","stop":1}]}
      

      Bildschirmfoto 2022-05-15 um 10.38.52.png Bildschirmfoto 2022-05-15 um 10.39.46.png

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @qwertz
      Weshalb Parser-Adapter? Das macht man mit einem kleinen Skript (Blockly).

      Bild_2022-05-15_111335140.png

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      Q 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @qwertz
        Weshalb Parser-Adapter? Das macht man mit einem kleinen Skript (Blockly).

        Bild_2022-05-15_111335140.png

        Q Offline
        Q Offline
        qwertz
        schrieb am zuletzt editiert von
        #3

        @paul53
        Danke für den Tip! Mit Blockly sieht das ja ganz einfach aus. Werde das ausprobieren !

        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

        574

        Online

        32.7k

        Benutzer

        82.3k

        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