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. Blockly
  5. Script auf mehrere Objekte + Wert Parent-Ordners auslesen

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    536

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.7k

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

Script auf mehrere Objekte + Wert Parent-Ordners auslesen

Geplant Angeheftet Gesperrt Verschoben Blockly
8 Beiträge 2 Kommentatoren 470 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.
  • A Offline
    A Offline
    astrakid
    schrieb am zuletzt editiert von
    #1

    hi,
    ich habe mich gerade mit openepaperlink beschäftigt und möchte meine tags nun einbinden.
    dazu habe ich ein blockly aus dem forum genommen, etwas angepast. damit kann ich dann einfach ein json-objekt, das in einer uservariablen steckt, anpassen, und es wird an den e-tag geschickt. funktioniert soweit.
    jetzt würde ich mir wünschen, dass ich die tags in eigenen ordnern verwalten kann. der ordner soll dabei die mac des E-Tags als namen haben.
    innerhalb des ordners gibt es dann das json, ggf. noch weitere informationen, die ich später verwenden kann (z.g. AP oder sonstiges).

    jetzt habe ich zwei ziele:

    1. sobald unterhalb des Ordners "etags" sich etwas ändert, möchte ich, dass das script losläuft und dann entsprechend die werte ausliest (in diesem fall sz.b. alle variablen namens "json" unterhalb der einzelnen ordner).
      bei einem geänderten json soll er aus dem parent-ordner die mac-adresse auslesen und damit einen post-request gegen den AP absetzen.

    ist das machbar?

    alternativ könnte ich alles in einen ordner packen und anstatt der variablen "json" die mac-adresse als variablenname verwenden, dann wäre ich nicht mehr ganz so flexibel, was weitere parameter angehen würde. wäre aber auch erstmal verkraftbar.

    habt ihr hier ideen, wie ich das umsetzen kann?

    gruß und danke,
    astrakid

    paul53P 1 Antwort Letzte Antwort
    0
    • A astrakid

      hi,
      ich habe mich gerade mit openepaperlink beschäftigt und möchte meine tags nun einbinden.
      dazu habe ich ein blockly aus dem forum genommen, etwas angepast. damit kann ich dann einfach ein json-objekt, das in einer uservariablen steckt, anpassen, und es wird an den e-tag geschickt. funktioniert soweit.
      jetzt würde ich mir wünschen, dass ich die tags in eigenen ordnern verwalten kann. der ordner soll dabei die mac des E-Tags als namen haben.
      innerhalb des ordners gibt es dann das json, ggf. noch weitere informationen, die ich später verwenden kann (z.g. AP oder sonstiges).

      jetzt habe ich zwei ziele:

      1. sobald unterhalb des Ordners "etags" sich etwas ändert, möchte ich, dass das script losläuft und dann entsprechend die werte ausliest (in diesem fall sz.b. alle variablen namens "json" unterhalb der einzelnen ordner).
        bei einem geänderten json soll er aus dem parent-ordner die mac-adresse auslesen und damit einen post-request gegen den AP absetzen.

      ist das machbar?

      alternativ könnte ich alles in einen ordner packen und anstatt der variablen "json" die mac-adresse als variablenname verwenden, dann wäre ich nicht mehr ganz so flexibel, was weitere parameter angehen würde. wäre aber auch erstmal verkraftbar.

      habt ihr hier ideen, wie ich das umsetzen kann?

      gruß und danke,
      astrakid

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

      @astrakid sagte: unterhalb des Ordners "etags" sich etwas ändert

      Wie sieht die Ordner-Struktur aus? Ist sie konstant oder kann sich die Struktur ändern?

      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

      A 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @astrakid sagte: unterhalb des Ordners "etags" sich etwas ändert

        Wie sieht die Ordner-Struktur aus? Ist sie konstant oder kann sich die Struktur ändern?

        A Offline
        A Offline
        astrakid
        schrieb am zuletzt editiert von astrakid
        #3

        @paul53 fester startordner, also bis dahin statisch. darunter dann ordner mit den mac-adressen als namen.
        aktuell:
        "0_userdata.0.vars.etags.00000AF509EF3E10.json",

        weitere dann z.b.
        "0_userdata.0.vars.etags.0000112233445566.json",
        "0_userdata.0.vars.etags.0000AB12CD34EF56.json",
        ...

        paul53P 1 Antwort Letzte Antwort
        0
        • A astrakid

          @paul53 fester startordner, also bis dahin statisch. darunter dann ordner mit den mac-adressen als namen.
          aktuell:
          "0_userdata.0.vars.etags.00000AF509EF3E10.json",

          weitere dann z.b.
          "0_userdata.0.vars.etags.0000112233445566.json",
          "0_userdata.0.vars.etags.0000AB12CD34EF56.json",
          ...

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

          @astrakid sagte: darunter dann ordner mit den mac-adressen als namen.

          Es sind bei Skriptstart evtl. noch nicht alle Ordner vorhanden? In dem Fall muss man RegExp zum Triggern verwenden.

          Blockly_temp.JPG

          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

          A 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @astrakid sagte: darunter dann ordner mit den mac-adressen als namen.

            Es sind bei Skriptstart evtl. noch nicht alle Ordner vorhanden? In dem Fall muss man RegExp zum Triggern verwenden.

            Blockly_temp.JPG

            A Offline
            A Offline
            astrakid
            schrieb am zuletzt editiert von
            #5

            @paul53 ach cool, regex ist möglich? super. dann ist der trigger schon mal einfach.
            in der variablen kanalname steht dann die id des objekts drin? oder kann ich auch mit regex-gruppen o.ä. arbeiten, um die mac zu erhalten?

            paul53P 1 Antwort Letzte Antwort
            0
            • A astrakid

              @paul53 ach cool, regex ist möglich? super. dann ist der trigger schon mal einfach.
              in der variablen kanalname steht dann die id des objekts drin? oder kann ich auch mit regex-gruppen o.ä. arbeiten, um die mac zu erhalten?

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

              @astrakid sagte: in der variablen kanalname steht dann die id des objekts drin?

              Der Kanalname enthält den Namen des Parent-Objektes vom Datenpunkt "json".

              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

              A 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @astrakid sagte: in der variablen kanalname steht dann die id des objekts drin?

                Der Kanalname enthält den Namen des Parent-Objektes vom Datenpunkt "json".

                A Offline
                A Offline
                astrakid
                schrieb am zuletzt editiert von
                #7

                @paul53 hervorragend, vielen dank für die infos, die mir sehr weiterhelfen!!!

                A 1 Antwort Letzte Antwort
                0
                • A astrakid

                  @paul53 hervorragend, vielen dank für die infos, die mir sehr weiterhelfen!!!

                  A Offline
                  A Offline
                  astrakid
                  schrieb am zuletzt editiert von
                  #8

                  hier übrigens das script für alle, die daran interessiert sind. AP von 10.1.1.1 entsprechend auf euren AP setzen:

                  var url, TagMini1, jsonMini1;
                  
                  async function encodeURL(url) {
                      url = encodeURIComponent(url);
                      return url;
                  }
                  
                  on({ id: [].concat(new RegExp('0_userdata\\.0\\.vars\\.etags\\..+\\.json')), change: 'ne' }, async (obj) => {
                    let value = obj.state.val;
                    let oldValue = obj.oldState.val;
                    jsonMini1 = await encodeURL(String((obj.state ? obj.state.val : '')));
                    httpPost('http://10.1.1.1/jsonupload', (['mac=',obj.channelName,'&json=',jsonMini1].join('')), { timeout: 15000, responseType: 'text' }, async (err, response) => {
                    });
                  });
                  
                  1 Antwort Letzte Antwort
                  1
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  341

                  Online

                  32.5k

                  Benutzer

                  81.8k

                  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