Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Wie current werte und in target werte schreiben

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

Wie current werte und in target werte schreiben

Scheduled Pinned Locked Moved Skripten / Logik
blocklyjavascript
14 Posts 3 Posters 958 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • F Offline
    F Offline
    Flopsi
    wrote on last edited by
    #1

    Hallo zusammen,
    ich würde gerne die current Werte in die target Werte schreiben.... wie muss ich da vorgehen ?

    Grund ist folgendes Problem ich nutze den Zwave 2 Adapter in verbindung mit Fibaro Modulen.

    Leider passiert es immer wieder das wenn ich den PI neustarte oder wenn ich den Adapter neustarte verschieden Traget Wert den Wert (null) zugewiesen bekommen. Diese lassen sich dann natürch nicht mehr wie gewohnt steuern und ich fange an die Werte händisch nachzutragen, was aber nicht im Sinn des Erfinders sein kann.

    Ich dachte da evtl. an eine Blockly Lösung oder eine alias Lösung wie die auch immer sein Mag,,,,,,,,,,,

    Hierzu würd ich gern um eure Hilfe bitten ..im muss dazu sagen das ich kein Profi bin im Blockly und auch der Bereich Alias ist für mich Neuland.

    Evtl hat ja wer schon eine Lösung die ich nutzen kann... bzw. die ich mir dann so umbaue wie ich es benötige.

    Vielen Dank

    paul53P 1 Reply Last reply
    0
    • F Flopsi

      Hallo zusammen,
      ich würde gerne die current Werte in die target Werte schreiben.... wie muss ich da vorgehen ?

      Grund ist folgendes Problem ich nutze den Zwave 2 Adapter in verbindung mit Fibaro Modulen.

      Leider passiert es immer wieder das wenn ich den PI neustarte oder wenn ich den Adapter neustarte verschieden Traget Wert den Wert (null) zugewiesen bekommen. Diese lassen sich dann natürch nicht mehr wie gewohnt steuern und ich fange an die Werte händisch nachzutragen, was aber nicht im Sinn des Erfinders sein kann.

      Ich dachte da evtl. an eine Blockly Lösung oder eine alias Lösung wie die auch immer sein Mag,,,,,,,,,,,

      Hierzu würd ich gern um eure Hilfe bitten ..im muss dazu sagen das ich kein Profi bin im Blockly und auch der Bereich Alias ist für mich Neuland.

      Evtl hat ja wer schon eine Lösung die ich nutzen kann... bzw. die ich mir dann so umbaue wie ich es benötige.

      Vielen Dank

      paul53P Offline
      paul53P Offline
      paul53
      wrote on last edited by paul53
      #2

      @Flopsi
      Poste bitte die ID eines "target" und des dazugehörigen "current" und die Funktion (Namen) des Gerätes (z.B. Fernseher Wohnzimmer). Dann zeige ich an diesem Beispiel, wie man Alias-Datenpunkte per Script erzeugt.

      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

      F 1 Reply Last reply
      0
      • paul53P paul53

        @Flopsi
        Poste bitte die ID eines "target" und des dazugehörigen "current" und die Funktion (Namen) des Gerätes (z.B. Fernseher Wohnzimmer). Dann zeige ich an diesem Beispiel, wie man Alias-Datenpunkte per Script erzeugt.

        F Offline
        F Offline
        Flopsi
        wrote on last edited by
        #3

        @paul53

        2020-09-30 19_15_05-javascript - ioBroker.png

        Das habe ich mal probiert so ohne Erfolg

        paul53P 1 Reply Last reply
        0
        • F Flopsi

          @paul53

          2020-09-30 19_15_05-javascript - ioBroker.png

          Das habe ich mal probiert so ohne Erfolg

          paul53P Offline
          paul53P Offline
          paul53
          wrote on last edited by paul53
          #4

          @Flopsi sagte:

          Das habe ich mal probiert

          Daraus kann ich leider keine IDs erkennen, sondern nur Namen. Poste bitte die beiden IDs zu Node_24.

          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

          F 1 Reply Last reply
          0
          • paul53P paul53

            @Flopsi sagte:

            Das habe ich mal probiert

            Daraus kann ich leider keine IDs erkennen, sondern nur Namen. Poste bitte die beiden IDs zu Node_24.

            F Offline
            F Offline
            Flopsi
            wrote on last edited by Flopsi
            #5

            @paul53 2020-10-01 19_14_30-objects - ioBroker.png

            2020-10-01 19_15_39-objects - ioBroker.png

            paul53P 1 Reply Last reply
            0
            • F Flopsi

              @paul53 2020-10-01 19_14_30-objects - ioBroker.png

              2020-10-01 19_15_39-objects - ioBroker.png

              paul53P Offline
              paul53P Offline
              paul53
              wrote on last edited by
              #6

              @Flopsi
              Welche Instanz ? "zwave.0" ?

              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

              F 1 Reply Last reply
              0
              • paul53P paul53

                @Flopsi
                Welche Instanz ? "zwave.0" ?

                F Offline
                F Offline
                Flopsi
                wrote on last edited by
                #7

                @paul53 2020-10-01 19_19_05-objects - ioBroker.png

                paul53P 1 Reply Last reply
                0
                • F Offline
                  F Offline
                  Flopsi
                  wrote on last edited by
                  #8

                  @paul53
                  Ich hab schon Alias im Einsatz und zwar nutze ich das als Platzhalter für meine Module..

                  Soll ich das Javaskript mal Posten .....

                  1 Reply Last reply
                  0
                  • AlCalzoneA Offline
                    AlCalzoneA Offline
                    AlCalzone
                    Developer
                    wrote on last edited by
                    #9

                    Statt "steuere" müsste mindestens "aktualisiere" verwendet werden. Sonst löst nachher jedes Update von currentValue einen neuen Schaltvorgang aus.

                    @paul53 Die Überlegung war, das durch einen Alias wegzukapseln, da es für @Flopsi ein Anzeigeproblem in VIS darstellt. Lesen immer aus currentValue, Schreiben immer in targetValue.

                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                    1 Reply Last reply
                    0
                    • F Flopsi

                      @paul53 2020-10-01 19_19_05-objects - ioBroker.png

                      paul53P Offline
                      paul53P Offline
                      paul53
                      wrote on last edited by
                      #10

                      @Flopsi
                      Das folgende Script in das Javascript-Editor-Fenster kopieren und starten:

                      // Original-Datenpunkt
                      const idOrigin = 'zwave2.0.Node_24.Binary_Switch.targetValue_002'; 
                      // Optional: Status-Datenpunkt, wenn Kommando und Status getrennt.
                      // Bei Nicht-Verwendung Leerstring '' zuweisen
                      const idRead = 'zwave2.0.Node_24.Binary_Switch.currentValue_002';
                       
                      // Alias-Datenpunkt
                      const idAlias = 'Wohnzimmer.Fernseher';
                      var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom, raum, gewerk;
                      
                      // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich
                      nameAlias = 'Fernseher Wohnzimmer';
                      desc = 'per Script erstellt';
                      // typeAlias = 'boolean'; // oder 'number'
                      // read = "val < 0 ? -val : 0"; // Erkennung "Aus" --> false erfolgt automatisch  
                      // write = "val ? true : true";
                      // role = 'value';
                      // min = 0; // nur Zahlen
                      // max = 100; // nur Zahlen
                      // unit = '%'; // nur für Zahlen
                      // states = {0: 'Aus', 1: 'Auto', 2: 'Ein'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein)
                      // custom = []; // verhindert doppelte Ausführung von history, ...
                      // raum = 'EG_Flur'; // Groß-/Kleinschreibung in der ID beachten !
                      // gewerk = 'Licht'; // Groß-/Kleinschreibung in der ID beachten !
                      
                      // Ab hier nichts ändern !!
                      function createAlias(idDst, idSrc, idRd) {
                         if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn');
                         else {
                            var obj = {};
                            obj.type = 'state';
                            obj.common = getObject(idSrc).common;
                            obj.common.alias = {};
                            if(idRd) {
                                obj.common.alias.id = {};
                                obj.common.alias.id.read = idRd;
                                obj.common.alias.id.write = idSrc;
                                obj.common.read = true;
                            } else obj.common.alias.id = idSrc;
                            if(typeAlias) obj.common.type = typeAlias;
                            if(obj.common.read !== false && read) obj.common.alias.read = read;
                            if(obj.common.write !== false && write) obj.common.alias.write = write;
                            if(nameAlias) obj.common.name = nameAlias;
                            if(role) obj.common.role = role;
                            if(desc) obj.common.desc = desc;
                            if(min !== undefined) obj.common.min = min;
                            if(max !== undefined) obj.common.max = max;
                            if(unit) obj.common.unit = unit;
                            if(states) obj.common.states = states;
                            if(custom && obj.common.custom) obj.common.custom = custom;
                            obj.native = {};
                            setObject(idDst, obj);
                            if(raum && existsObject('enum.rooms.' + raum)) {
                               let obj = getObject('enum.rooms.' + raum)
                               obj.common.members.push(idDst);
                               setObject('enum.rooms.' + raum, obj);
                            }
                            if(gewerk && existsObject('enum.functions.' + gewerk)) {
                               let obj = getObject('enum.functions.' + gewerk)
                               obj.common.members.push(idDst);
                               setObject('enum.functions.' + gewerk, obj);
                            }
                         } 
                      }
                       
                      createAlias('alias.0.' + idAlias, idOrigin, idRead);
                      

                      Für weitere Alias-Datenpunkte müssen idOrigin, idRead, idAlias und nameAlias angepasst werden.

                      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

                      1 Reply Last reply
                      0
                      • F Offline
                        F Offline
                        Flopsi
                        wrote on last edited by
                        #11

                        @AlCalzone Ne nicht im VIS sondern im Datenpunkt selber.....da steht dann bei Current der Wert

                        true

                        und im targte steht

                        (null)

                        @paul53

                        kann man zwei alias skripte laufen lassen wie gesagt habe ich schon ein am laufen ...

                        AlCalzoneA paul53P 2 Replies Last reply
                        0
                        • F Flopsi

                          @AlCalzone Ne nicht im VIS sondern im Datenpunkt selber.....da steht dann bei Current der Wert

                          true

                          und im targte steht

                          (null)

                          @paul53

                          kann man zwei alias skripte laufen lassen wie gesagt habe ich schon ein am laufen ...

                          AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          wrote on last edited by
                          #12

                          @Flopsi Das ist doch vollkommen egal, wenn der Alias so konfiguriert ist, dass er den currentValue liest und den targetValue schreibt!

                          Das Alias-Skript ist auch nur zum Anlegen des Alias-Datenpunkts. Diesen Alias-DP nutzt du dann in VIS etc.

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          1 Reply Last reply
                          0
                          • F Flopsi

                            @AlCalzone Ne nicht im VIS sondern im Datenpunkt selber.....da steht dann bei Current der Wert

                            true

                            und im targte steht

                            (null)

                            @paul53

                            kann man zwei alias skripte laufen lassen wie gesagt habe ich schon ein am laufen ...

                            paul53P Offline
                            paul53P Offline
                            paul53
                            wrote on last edited by
                            #13

                            @Flopsi sagte:

                            kann man zwei alias skripte laufen lassen

                            Die Skripte zur Erzeugung von Alias-DP laufen nicht ständig, sondern werden nur kurz gestartet und nach Erledigung wieder gestoppt. Deshalb können auch mehrere Skripte existieren.

                            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

                            1 Reply Last reply
                            0
                            • F Offline
                              F Offline
                              Flopsi
                              wrote on last edited by Flopsi
                              #14

                              Ok ich werde es mal testen sobald ich meinen Pi neustarten muss was ich mal am Wochende mache, unter der Woche das bewust machen ist immer so ne sache ...mit der Zeit 🙂

                              Auf jeden fall erstmal vielen Dank

                              1 Reply Last reply
                              1
                              Reply
                              • Reply as topic
                              Log in to reply
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes


                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              627

                              Online

                              32.4k

                              Users

                              81.3k

                              Topics

                              1.3m

                              Posts
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              ioBroker Community 2014-2025
                              logo
                              • Login

                              • Don't have an account? Register

                              • Login or register to search.
                              • First post
                                Last post
                              0
                              • Recent
                              • Tags
                              • Unread 0
                              • Categories
                              • Unreplied
                              • Popular
                              • GitHub
                              • Docu
                              • Hilfe