Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Datenpunkt zu anderer Instanz verschieben möglich?

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Datenpunkt zu anderer Instanz verschieben möglich?

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      pandel last edited by

      Tja, ich habe sowas befürchtet… trotzdem lieben Danke für's Mitlesen und -denken 🙂

      <size size="70">(aber es wär schon schick, wenn man DPs einfach umorganisieren könnte und am besten noch in allen Skripten die nötigen Anpassungen durchgeführt würden :twisted: )</size>

      1 Reply Last reply Reply Quote 0
      • G
        Georgius last edited by

        Hab auch noch Altlasten im System

        1 Reply Last reply Reply Quote 0
        • P
          pandel last edited by

          Sowas kenne ich gut… damit wollte ich aber erst gar nicht anfangen. Ich habe schon lange um ioBroker herumgeeiert und aus Faulheit vor über nem Jahr erstmal mit Domoticz angefangen. War auch nett soweit, aber man braucht ja bastlerische Herausforderungen und da hab ich am letzten Wochenende mal eben alles umgezogen, mit Alexa, RFLink, den Sonoffs und was ich sonstnoch so hab. War easy, ein ruhiger Tag und alles war drüben. Jetzt fange ich langsam mit der eigentlichen Automatisierung an und da will ich nicht direkt wieder Kraut und Rüben einziehen lassen :lol:

          1 Reply Last reply Reply Quote 0
          • dslraser
            dslraser Forum Testing Most Active last edited by

            Ich habe auch angefangen für mich eine "eigene Struktur" von den eigenen Datenpunkten anzulegen.

            Ich mache es jetzt so, das immer wenn ich einen eigenen Datenpunkt in einem Script oder Blockly brauche, dann lasse ich die im jeweiligen Script oder Blockly gleich mit anlegen. Ist zwar einmal etwas Arbeit, aber dann hat man irgendwann seine eigene Ordnung.

            1 Reply Last reply Reply Quote 0
            • P
              pandel last edited by

              Wie legt man denn Datenpunkte via Blockly an? Mit Javascript habe ich das schon gesehen, aber noch nicht via Blockly…

              1 Reply Last reply Reply Quote 0
              • dslraser
                dslraser Forum Testing Most Active last edited by

                @pandel:

                Wie legt man denn Datenpunkte via Blockly an? Mit Javascript habe ich das schon gesehen, aber noch nicht via Blockly… ` hier habe ich mal ein Beispiel

                viewtopic.php?p=209785#p209785

                1 Reply Last reply Reply Quote 0
                • P
                  pandel last edited by

                  vordiestirnklopp das ist so simpel, dass ich danach nie gesucht hätte. :shock: :oops: Besten Dank!

                  Und er legt die dann automatisch unterhalb der Instanz des javascript-Adapters an, unterhalb der sich das Skript befindet?

                  1 Reply Last reply Reply Quote 0
                  • dslraser
                    dslraser Forum Testing Most Active last edited by

                    @pandel:

                    vordiestirnklopp das ist so simpel, dass ich danach nie gesucht hätte. :shock: :oops: Besten Dank!

                    Und er legt die dann automatisch unterhalb der Instanz des javascript-Adapters an, unterhalb der sich das Skript befindet? ` im Feld Name legst Du den Speicherort fest…

                    1 Reply Last reply Reply Quote 0
                    • dslraser
                      dslraser Forum Testing Most Active last edited by

                      Importiere mal das Blockly und lasse es wie es ist. Dann probiere es einfach aus und schau Dir den erstellten Datenpunkt an (kannst ja anschließend den Datenpunkt wieder löschen), aber dann siehst Du wie es funktioniert.

                      1 Reply Last reply Reply Quote 0
                      • P
                        pandel last edited by

                        Ihr habt recht :oops: - werde ich heute Abend mal ausprobieren!

                        1 Reply Last reply Reply Quote 0
                        • padrino
                          padrino Most Active last edited by

                          @dslraser:

                          Importiere mal das Blockly und lasse es wie es ist. Dann probiere es einfach aus und schau Dir den erstellten Datenpunkt an (kannst ja anschließend den Datenpunkt wieder löschen), aber dann siehst Du wie es funktioniert. `

                          Ah ja, die Magie steckt im "hier ist JS drin" 😉

                          Kann man denn Datenpunkte auch eine Ebene höher anlegen?

                          Das Sctipt baut sich ja seine Struktur in javascript.0.

                          Habe meinenen eigenen "Baum" auf der gleichen Ebene, würde gerne dort (zustaende.0) anlegen.

                          Sehe ich code leider nirgends den Hinweis auf javascript.0, denke daher das anlegen geschieht "relativ"?

                          CU,

                          padrino

                          1 Reply Last reply Reply Quote 0
                          • dslraser
                            dslraser Forum Testing Most Active last edited by

                            @padrino:

                            @dslraser:

                            Importiere mal das Blockly und lasse es wie es ist. Dann probiere es einfach aus und schau Dir den erstellten Datenpunkt an (kannst ja anschließend den Datenpunkt wieder löschen), aber dann siehst Du wie es funktioniert. `

                            Ah ja, die Magie steckt im "hier ist JS drin" 😉

                            Kann man denn Datenpunkte auch eine Ebene höher anlegen?

                            Das Sctipt baut sich ja seine Struktur in javascript.0.

                            Habe meinenen eigenen "Baum" auf der gleichen Ebene, würde gerne dort (zustaende.0) anlegen.

                            Sehe ich code leider nirgends den Hinweis auf javascript.0, denke daher das anlegen geschieht "relativ"?

                            CU,

                            padrino `

                            Ich verstehe nicht so ganz was Du meinst ? Wie soll denn der komplette Pfad aussehen ? Die Datenpunkte sind dann unter javascript.0

                            Ich habe bei mir so angefangen….

                            Im Blockly unter Name steht der Pfad. Die Punkte dazwischen bestimmen die Struktur.
                            3822_bildschirmfoto_2019-01-09_um_22.26.55.png
                            3822_bildschirmfoto_2019-01-09_um_22.27.35.png

                            1 Reply Last reply Reply Quote 0
                            • padrino
                              padrino Most Active last edited by

                              Ich würde gerne da rein… 😉

                              8705_zustand.png

                              1 Reply Last reply Reply Quote 0
                              • dslraser
                                dslraser Forum Testing Most Active last edited by

                                hm, sorry….da weiß ich nicht wie und ob das geht

                                1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 last edited by paul53

                                  @padrino:

                                  Ich würde gerne da rein…

                                  In Javascript funktiert es so:

                                  const id = 'zustaende.0.geraet1.kanal1.dp_13';
                                  
                                  const obj = {
                                    "type": "state",
                                    "common": {
                                      "name": "Datenpunkt 1.3",
                                      "role": "switch",
                                      "type": "boolean",
                                      "read": true,
                                      "write": true,
                                      "desc": "per Javascript erzeugt",
                                      "def": false
                                    },
                                  };
                                  
                                  setObject(id, obj, function() {
                                      setState(id, obj.common.def, true); // Initialisierung
                                  });
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • dslraser
                                    dslraser Forum Testing Most Active last edited by

                                    @paul53:

                                    @padrino:

                                    Ich würde gerne da rein… `
                                    In Javascript funktiert es so:

                                    const id = 'zustaende.0.geraet1.kanal1.dp_13';
                                    
                                    const obj = {
                                      "type": "state",
                                      "common": {
                                        "name": "Datenpunkt 1.3",
                                        "role": "switch",
                                        "type": "boolean",
                                        "read": true,
                                        "write": true,
                                        "desc": "per Javascript erzeugt",
                                        "def": false
                                      },
                                    };
                                    
                                    setObject(id, obj, function() {
                                        setState(id, obj.common.def, true); // Initialisierung
                                    });
                                    
                                    ```` `  
                                    

                                    Hallo paul53,

                                    verstehe ich das richtig das dann der Datenpunkt schon vorhanden sein muss und dann dorthin verschoben wird, oder wird der mit dem Script angelegt ?

                                    1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 last edited by paul53

                                      @dslraser:

                                      oder wird der mit dem Script angelegt ?

                                      Ja, wenn nicht vorhanden.

                                      Man kann auch Objekte per Skript kopieren (Dst wird erzeugt, wenn nicht vorhanden).

                                      const idSrc = "Messwerte.0.Solaranlage.Momentanwerte.Leistung_DC_aktuell";
                                      const idDst = "datenpunkte.0.Messwerte.Solaranlage.Momentanwerte.Leistung";
                                      
                                      function copyObject() {
                                          var obj = getObject(idSrc);
                                          setObject(idDst, obj, function() {
                                              if(obj.type === 'state') {
                                                  var init = null;
                                                  if(obj.common.def == undefined) {
                                                      if(obj.common.type === 'number') init = 0;
                                                      if(obj.common.type === 'boolean') init = false;
                                                      if(obj.common.type === 'string') init = '';
                                                  } else init = obj.common.def;
                                                  setState(idDst, init, true); 
                                              }
                                          });
                                      }
                                      
                                      copyObject();
                                      

                                      Habe ich gerade getestet.

                                      1 Reply Last reply Reply Quote 0
                                      • dslraser
                                        dslraser Forum Testing Most Active last edited by

                                        @paul53:

                                        @padrino:

                                        Ich würde gerne da rein… `
                                        In Javascript funktiert es so:

                                        const id = 'zustaende.0.geraet1.kanal1.dp_13';
                                        
                                        const obj = {
                                          "type": "state",
                                          "common": {
                                            "name": "Datenpunkt 1.3",
                                            "role": "switch",
                                            "type": "boolean",
                                            "read": true,
                                            "write": true,
                                            "desc": "per Javascript erzeugt",
                                            "def": false
                                          },
                                        };
                                        
                                        setObject(id, obj, function() {
                                            setState(id, obj.common.def, true); // Initialisierung
                                        });
                                        
                                        ```` `  
                                        

                                        Hallo Paul53,

                                        erstmal danke für Deine Beispiele.

                                        Ich habe es heute mal probiert und es funktioniert prima. Wie und ob man das in Blockly verwursten könnte, da fehlt mir leider die Idee. Es wäre schön wenn man immer in einer Form bleiben könnte, dann kann man alles in einem Blockly oder eben in einem Javascript aufbauen.

                                        Jetzt noch eine Frage zum Script.

                                        Die erstellten Datenpunkte lassen sich nicht in den iot Adapter einfügen. Das geht nur wenn ich das hier

                                        "desc": "per Javascript erzeugt",

                                        auskommentiere oder lösche. Wofür ist der Punkt wichtig ?

                                        1 Reply Last reply Reply Quote 0
                                        • paul53
                                          paul53 last edited by paul53

                                          @dslraser:

                                          "desc": "per Javascript erzeugt",

                                          auskommentiere oder lösche. Wofür ist der Punkt wichtig ?

                                          common.desc (Beschreibung) ist nicht wichtig.

                                          @dslraser:

                                          Wie und ob man das in Blockly verwursten könnte,

                                          Es hat einen berechtigten Grund, dass setObject() nicht in Blockly verfügbar ist, denn damit kann man schnell viel kaputt machen.

                                          1 Reply Last reply Reply Quote 0
                                          • padrino
                                            padrino Most Active last edited by

                                            @dslraser

                                            Kannst Du mir sagen, wieso man in Deinem Blockly den Wert für type nicht (z.B. auf number) ändern kann?

                                            Das Skript endet dann mit einem "wrong type error" und legt nichts an.

                                            CU,

                                            padrino

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            938
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            9
                                            33
                                            3438
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo