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. ioBroker Allgemein
  4. Kopieren von einem state in einen anderen

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Kopieren von einem state in einen anderen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
7 Beiträge 2 Kommentatoren 590 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.
  • D Offline
    D Offline
    diplinge
    schrieb am zuletzt editiert von
    #1

    Servus zusammen,

    ich habe einen SoC state vom BMW Adapter den ich gerne per MQTT schreiben möchte. Ich will also bei Änderung am state den ich vom BMW Adapter bekomme den entsprechenden state in MQTT kopieren.

    bmw.0.XXXXXXXXXXXXXXXXX.state.electricChargingState.chargingLevelPercent nach mqtt.0.openWB.set.vehicle.1.get.soc

    Ich dachte ich könnte das mit einem Alias machen (So hatte ich es zumindest verstanden), aber da tut sich nix.

    d2a0d02d-4c33-4b24-82e5-ee58b992db58-image.png
    0f66ea0c-17c8-4bf7-b7db-9a6ae004ead9-image.png
    9ef5c731-15f2-4a1b-9e83-4b15c75ab1a8-image.png

    Fehlt da was, oder hab ich das mit den Aliasen falsch verstanden?

    CodierknechtC 1 Antwort Letzte Antwort
    0
    • D diplinge

      Servus zusammen,

      ich habe einen SoC state vom BMW Adapter den ich gerne per MQTT schreiben möchte. Ich will also bei Änderung am state den ich vom BMW Adapter bekomme den entsprechenden state in MQTT kopieren.

      bmw.0.XXXXXXXXXXXXXXXXX.state.electricChargingState.chargingLevelPercent nach mqtt.0.openWB.set.vehicle.1.get.soc

      Ich dachte ich könnte das mit einem Alias machen (So hatte ich es zumindest verstanden), aber da tut sich nix.

      d2a0d02d-4c33-4b24-82e5-ee58b992db58-image.png
      0f66ea0c-17c8-4bf7-b7db-9a6ae004ead9-image.png
      9ef5c731-15f2-4a1b-9e83-4b15c75ab1a8-image.png

      Fehlt da was, oder hab ich das mit den Aliasen falsch verstanden?

      CodierknechtC Online
      CodierknechtC Online
      Codierknecht
      Developer Most Active
      schrieb am zuletzt editiert von
      #2

      @diplinge sagte in Kopieren von einem state in einen anderen:

      Fehlt da was, oder hab ich das mit den Aliasen falsch verstanden?

      Sieht so aus.
      Mit einem Alias verallgemeinert man den Zugriff, konvertiert ggf. Werte und vereinfacht den Austausch von Geräten.
      Ein Alias ist aber nicht dazu geeignet, Werte von einem bestehenden DP in einen anderen bestehenden DP zu schreiben.
      Das geht nur per Script.

      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

      Proxmox 9.1.1 LXC|8 GB|Core i7-6700
      HmIP|ZigBee|Tasmota|Unifi
      Zabbix Certified Specialist
      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

      D 1 Antwort Letzte Antwort
      0
      • CodierknechtC Codierknecht

        @diplinge sagte in Kopieren von einem state in einen anderen:

        Fehlt da was, oder hab ich das mit den Aliasen falsch verstanden?

        Sieht so aus.
        Mit einem Alias verallgemeinert man den Zugriff, konvertiert ggf. Werte und vereinfacht den Austausch von Geräten.
        Ein Alias ist aber nicht dazu geeignet, Werte von einem bestehenden DP in einen anderen bestehenden DP zu schreiben.
        Das geht nur per Script.

        D Offline
        D Offline
        diplinge
        schrieb am zuletzt editiert von
        #3

        @codierknecht Das hab ich fast befürchtet. Kennst du einen Adapter der das kann? Script ist kein Problem, aber für so ein 08/15 Datenmapping wäre ein Adapter schon cool

        CodierknechtC 1 Antwort Letzte Antwort
        0
        • D diplinge

          @codierknecht Das hab ich fast befürchtet. Kennst du einen Adapter der das kann? Script ist kein Problem, aber für so ein 08/15 Datenmapping wäre ein Adapter schon cool

          CodierknechtC Online
          CodierknechtC Online
          Codierknecht
          Developer Most Active
          schrieb am zuletzt editiert von Codierknecht
          #4

          @diplinge sagte in Kopieren von einem state in einen anderen:

          aber für so ein 08/15 Datenmapping wäre ein Adapter schon cool

          Da wäre ein Adapter völlig übertrieben.
          Das geht per Blockly mit einem einzigen passenden Block:
          64a11ed1-5c86-4df0-bf35-5541867957e2-grafik.png
          Wenn Objekt 1 sich ändert, wird der Wert in Objekt 2 geschrieben.

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          D 1 Antwort Letzte Antwort
          0
          • CodierknechtC Codierknecht

            @diplinge sagte in Kopieren von einem state in einen anderen:

            aber für so ein 08/15 Datenmapping wäre ein Adapter schon cool

            Da wäre ein Adapter völlig übertrieben.
            Das geht per Blockly mit einem einzigen passenden Block:
            64a11ed1-5c86-4df0-bf35-5541867957e2-grafik.png
            Wenn Objekt 1 sich ändert, wird der Wert in Objekt 2 geschrieben.

            D Offline
            D Offline
            diplinge
            schrieb am zuletzt editiert von
            #5

            Ich bevorzuge JS

            // SoC
            on({id: 'bmw.0.XXX.state.electricChargingState.chargingLevelPercent'}, function (obj) {
                var soc = getState("bmw.0.XXX.state.electricChargingState.chargingLevelPercent");
                setState('mqtt.0.openWB.set.vehicle.1.get.soc', soc);
            });
            
            CodierknechtC 1 Antwort Letzte Antwort
            0
            • D diplinge

              Ich bevorzuge JS

              // SoC
              on({id: 'bmw.0.XXX.state.electricChargingState.chargingLevelPercent'}, function (obj) {
                  var soc = getState("bmw.0.XXX.state.electricChargingState.chargingLevelPercent");
                  setState('mqtt.0.openWB.set.vehicle.1.get.soc', soc);
              });
              
              CodierknechtC Online
              CodierknechtC Online
              Codierknecht
              Developer Most Active
              schrieb am zuletzt editiert von Codierknecht
              #6

              @diplinge
              Dann aber besser so:

              on({id: 'bmw.0.XXX.state.electricChargingState.chargingLevelPercent', change: 'ne' }, function (obj) {
                setState('mqtt.0.openWB.set.vehicle.1.get.soc', obj.state.val);
              });
              

              Obj kennt ja bereits den Wert. Den muss man nicht erneut lesen.
              Und mit dem ne wird nur bei Änderungen geschrieben - nicht bei jeder Aktualisierung.

              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
              HmIP|ZigBee|Tasmota|Unifi
              Zabbix Certified Specialist
              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

              D 1 Antwort Letzte Antwort
              0
              • CodierknechtC Codierknecht

                @diplinge
                Dann aber besser so:

                on({id: 'bmw.0.XXX.state.electricChargingState.chargingLevelPercent', change: 'ne' }, function (obj) {
                  setState('mqtt.0.openWB.set.vehicle.1.get.soc', obj.state.val);
                });
                

                Obj kennt ja bereits den Wert. Den muss man nicht erneut lesen.
                Und mit dem ne wird nur bei Änderungen geschrieben - nicht bei jeder Aktualisierung.

                D Offline
                D Offline
                diplinge
                schrieb am zuletzt editiert von
                #7

                @codierknecht Cool, again what learned :-)

                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
                FAQ Cloud / IOT
                HowTo: Node.js-Update
                HowTo: Backup/Restore
                Downloads
                BLOG

                763

                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