Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Zugriff auf andere ioBroker Objekte im Flow?

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    1.1k

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.6k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    6.2k

Zugriff auf andere ioBroker Objekte im Flow?

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
4 Beiträge 2 Kommentatoren 2.3k Aufrufe
  • Ä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
    MehrCurry
    schrieb am zuletzt editiert von
    #1

    Ich würde gerne innerhalb eines Flows, der z.B. durch das Außenthermometer getriggert wird, auf die Werte von anderen Homematic Sensoren innerhalb eines Function Nodes zugreifen - bin aber nicht sicher ob - und wie - es gehen könnte.

    Die einzige Lösung, die mir in den Sinn gekommen ist: Den Topic "*" abonnieren und einfach alles in ein context.global.state Objekt in node-red zu schreiben. Gibt's noch einen besseren Weg?

    1 Antwort Letzte Antwort
    0
    • ruhr70R Offline
      ruhr70R Offline
      ruhr70
      schrieb am zuletzt editiert von
      #2

      Die Frage hatte ich auch einmal gestellt und sie wurde negativ beantwortet (nicht möglich), mit der Erklärung warum:

      http://forum.iobroker.org/viewtopic.php … =852#p6303

      Adapter: Fritzbox, Unify Circuit
      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

      1 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        MehrCurry
        schrieb am zuletzt editiert von
        #3

        Danke, das dachte ich mir schon. Dann will ich hier zumindest meinen Workaround veröffentlichen.

        485_bildschirmfoto_2015-08-06_um_06.38.05.png

        Ich nehme alle Nachrichten von einem bestimmten Zweig aus dem IOBroker und schreibe die in eine globale Variable in node-red:

        context.global.state=context.global.state || {};
        var topics = msg.topic.split("/");
        var obj=context.global.state[topics[2]] || {};
        obj[topics[4]]=msg.payload;
        context.global.state[topics[2]]=obj;
        msg.payload=context.global.state;
        return msg;
        
        

        Damit baut sich in node-red eine Kopie des Status auf, der in jedem anderen Knoten ausgelesen werden kann.

        Hier der gesamte Flow:

        [{"id":"4cd83049.b327d","type":"function","name":"HM Status","func":"context.global.state=context.global.state || {};\nvar topics = msg.topic.split(\"/\");\nvar obj=context.global.state[topics[2]] || {};\nobj[topics[4]]=msg.payload;\ncontext.global.state[topics[2]]=obj;\nmsg.payload=context.global.state;\nreturn msg;","outputs":1,"noerr":0,"x":307,"y":43,"z":"88669efa.77996","wires":[["45440a29.babbf4"]]},{"id":"45440a29.babbf4","type":"debug","name":"","active":true,"console":"false","complete":"false","x":529,"y":43,"z":"88669efa.77996","wires":[]},{"id":"3f5d8b2c.c0a274","type":"http in","name":"","url":"/state","method":"get","swaggerDoc":"","x":94,"y":155,"z":"88669efa.77996","wires":[["bef86295.4107a"]]},{"id":"cbe3f0f4.341c1","type":"http response","name":"","x":450,"y":155,"z":"88669efa.77996","wires":[]},{"id":"bef86295.4107a","type":"function","name":"","func":"msg.payload=context.global.state || {};\nreturn msg;","outputs":1,"noerr":0,"x":269,"y":155,"z":"88669efa.77996","wires":[["cbe3f0f4.341c1"]]},{"id":"4e385fd6.b1c7a","type":"ioBroker in","name":"","topic":"hm-rpc.0.*","payloadType":"object","x":100,"y":43,"z":"88669efa.77996","wires":[["4cd83049.b327d"]]}]
        
        

        Im Flow gibt es auch einen http Knoten, um sich den Zustand im Browser anzusehen: http://raspi2:1880/state.

        Beispiel Ausgabe im Browser:

        {
          "JEQ015XXXX": {
            "BRIGHTNESS": {
              "val": 49,
              "ack": true,
              "ts": 1438836131,
              "from": "system.adapter.hm-rpc.0",
              "lc": 1438836131
            },
            "ERROR": {
              "val": 0,
              "ack": true,
              "ts": 1438836131,
              "from": "system.adapter.hm-rpc.0",
              "lc": 1437798650
            }
          },
          "LEQ053XXXX": {
            "BOOT": {
              "val": true,
              "ack": true,
              "ts": 1438836140,
              "from": "system.adapter.hm-rpc.0",
              "lc": 1437798621
            },
            "ENERGY_COUNTER": {
              "val": 4.8,
              "ack": true,
              "ts": 1438836140,
              "from": "system.adapter.hm-rpc.0",
              "lc": 1438799077
            },
            "POWER": {
              "val": 0,
              "ack": true,
              "ts": 1438836140,
              "from": "system.adapter.hm-rpc.0",
              "lc": 1438799086
            },
            ...
        }
        
        
        1 Antwort Letzte Antwort
        0
        • ruhr70R Offline
          ruhr70R Offline
          ruhr70
          schrieb am zuletzt editiert von
          #4

          Danke für die Info! Da hast Du in der Tat eine Lösung gefunden :)

          Adapter: Fritzbox, Unify Circuit
          Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

          1 Antwort Letzte Antwort
          0

          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

          Registrieren Anmelden
          Antworten
          • In einem neuen Thema antworten
          Anmelden zum Antworten
          • Älteste zuerst
          • Neuste zuerst
          • Meiste Stimmen


          Support us

          ioBroker
          Community Adapters
          Donate

          527

          Online

          33.0k

          Benutzer

          83.6k

          Themen

          1.3m

          Beiträge
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
          ioBroker Community 2014-2026
          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