Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. DPs verschieben und Skript (Blocklys) anpassen?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    DPs verschieben und Skript (Blocklys) anpassen?

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      Dieter_P @paul53 last edited by Dieter_P

      Hi
      dass die DPs da nix zu suchen haben ist mir klar, daher die Frage da ich leider etliche davon hab.

      Daher die Frage wie es prinzipiell etwas geschickter funktionieren kann?

      Nehme ich zB den DP:

      javascript.0.scriptEnabled.Gefrierschrank.Sollwert
      

      und erstelle ihn dort wo er hingehört:

      0_userdata.0.Gefrierschrank.Sollwert
      

      Gibt es dazu eine Funktion die ich nutzen kann? Reicht es möglicherweise die ID in den Objektdaten anzupassen?

      Desweiteren sind die DPs natürlich genutzt und verlinkt.
      Gibt es dazu eine Funktion wie "suchen und ersetzen" für alle Skripte/Blocklys?

      Danke

      Homoran F 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @Dieter_P last edited by

        @dieter_p was sind das für DPs?


        suchen über alle Skripte geht ganz einfach über die Lupe im Skripteditor

        D 1 Reply Last reply Reply Quote 0
        • D
          Dieter_P @Homoran last edited by Dieter_P

          @homoran said in Skripte verschieben?:

          @dieter_p was sind das für DPs?

          Was meinst Du damit? Das sind alles von mir manuell angelegte DPs. Unwissend an falscher Stelle aber Thematisch zum entsprechenden Skript/Blockly. Hier als Beispiel der Ordner Gefrierschrank. Dazu gibt es den Sollwert, den ich dort von einer VIS Eingabe hinterlege aber auch digitale Switche um mir "Merker" für diverse Zustände zu setzen. In anderen Ordnern zB "Beleuchtung-Garten" oder "Rolladensteuerung" sieht das alles ähnlich aus. Ich muß nun die DPs verschieben und gucken, dass die Bezüge der Blocklys wieder passen.
          Um die DPs zu verschieben, die Frage, ob ich "einfach" die ID anpassen kann und der DP liegt dann im "richtigen Ordner".

          Danke die Verlinkung der Blocklys muß ich dann mit der Lupe finden und entsprechend nachziehen/anpassen.


          suchen über alle Skripte geht ganz einfach über die Lupe im Skripteditor

          Homoran 1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @Dieter_P last edited by

            @dieter_p sagte in Skripte verschieben?:

            ob ich "einfach" die ID anpassen kann und der DP liegt dann im "richtigen Ordner".

            nein!

            es gibt kein verschieben.

            1 Reply Last reply Reply Quote 0
            • F
              fastfoot @Dieter_P last edited by

              @dieter_p du kannst so vorgehen

              • alles unter javascript.0.scriptEnabled in eine Textdatei exportieren

              • in einem Texteditor javascript.0.scriptEnabled durch 0_userdata.0 ersetzen lassen

              • die geänderte Textdatei importieren, alle DP sind jetzt kopiert, nicht verschoben

              • jetzt nacheinander die Skripte auf die neuen DP anpassen, so wie Zeit und Lust ist

              • es gibt hier irgendwo ein Skript von mir das einen DP sucht und in allen Skripten durch einen neuen ersetzt, auch in Blocklies. Das könnte dir ne Menge Zeit sparen, ich empfehle jedoch Backups deiner Skripte parat zu haben. Für mehr Hilfe hierzu habe ich leider weder Zeit noch Nerv, aber das sollte schon viel helfen. Evtl kann auch @liv-in-sky etwas beitragen

              paul53 liv-in-sky 2 Replies Last reply Reply Quote 0
              • paul53
                paul53 @fastfoot last edited by paul53

                @fastfoot sagte: in einem Texteditor javascript.0.scriptEnabled durch 0_userdata.0 ersetzen lassen

                ... und anschließend scriptEnabled durch 0_userdata.0, denn es kann auch die verkürzte ID bei setState(), getState() und creatState() verwendet worden sein.

                F 1 Reply Last reply Reply Quote 0
                • F
                  fastfoot @paul53 last edited by

                  @paul53 guter Punkt!

                  1 Reply Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @fastfoot last edited by

                    @fastfoot sagte in Skripte verschieben?:

                    @dieter_p du kannst so vorgehen

                    • alles unter javascript.0.scriptEnabled in eine Textdatei exportieren

                    • in einem Texteditor javascript.0.scriptEnabled durch 0_userdata.0 ersetzen lassen

                    • die geänderte Textdatei importieren, alle DP sind jetzt kopiert, nicht verschoben

                    • jetzt nacheinander die Skripte auf die neuen DP anpassen, so wie Zeit und Lust ist

                    • es gibt hier irgendwo ein Skript von mir das einen DP sucht und in allen Skripten durch einen neuen ersetzt, auch in Blocklies. Das könnte dir ne Menge Zeit sparen, ich empfehle jedoch Backups deiner Skripte parat zu haben. Für mehr Hilfe hierzu habe ich leider weder Zeit noch Nerv, aber das sollte schon viel helfen. Evtl kann auch @liv-in-sky etwas beitragen

                    @dieter_p
                    ist schon lange her - hier eine übersicht https://forum.iobroker.net/post/667586
                    dabei gibt es einiges zu bedenken und benötigt definitiv ein full backup des iobrokers

                    D 1 Reply Last reply Reply Quote 1
                    • D
                      Dieter_P @liv-in-sky last edited by Dieter_P

                      Thx
                      Um sicher zu gehen. Ihr sagt das grundsätzlich alles aus javascript.0.script.enabled exportieren und darin suchen und ersetzen.

                      Was ist mit den Switchen für die Blocklys/Skripte? Die Adresse würde ich damit "zerschießen".

                      Hier zB habe ich nur die beiden Punkte Sollwert und Notprogramm selbst angelegt. Die anderen 3 DPs/Switche sind automatisch durchs Blockly/System erzeugt worden. Die müssen doch unangetastet bleiben, oder?

                      5a5646e5-4cd8-40a2-86e5-d19452cf50e7-grafik.png

                      Als Beispiel:

                      Den ersten DP würde ich nicht anpassen und den zweiten manuell erzeugten wohl:

                      {
                        "javascript.0.scriptEnabled.Zigbee.UpToDate": {
                          "_id": "javascript.0.scriptEnabled.Zigbee.UpToDate",
                          "common": {
                            "name": "scriptEnabled.Zigbee.UpToDate",
                            "desc": "controls script activity",
                            "type": "boolean",
                            "write": true,
                            "read": true,
                            "role": "switch.active"
                          },
                          "native": {
                            "script": "script.js.Zigbee.UpToDate"
                          },
                          "type": "state",
                          "from": "system.adapter.javascript.0",
                          "user": "system.user.admin",
                          "ts": 1619691355088,
                          "acl": {
                            "object": 1636,
                            "state": 1636,
                            "owner": "system.user.admin",
                            "ownerGroup": "system.group.administrator"
                          }
                        },
                        "javascript.0.scriptEnabled.Zigbee.UpToDateFlurBewegM": {
                          "_id": "javascript.0.scriptEnabled.Zigbee.UpToDateFlurBewegM",
                          "type": "state",
                          "common": {
                            "name": "UpToDateFlurBewegM",
                            "role": "",
                            "type": "boolean",
                            "read": true,
                            "write": true,
                            "desc": "Manuell erzeugt",
                            "def": false
                          },
                          "native": {},
                          "from": "system.adapter.admin.0",
                          "user": "system.user.admin",
                          "ts": 1619765927379,
                          "acl": {
                            "object": 1636,
                            "state": 1636,
                            "owner": "system.user.admin",
                            "ownerGroup": "system.group.administrator"
                          }
                        },
                      
                      D 1 Reply Last reply Reply Quote 0
                      • D
                        Dieter_P @Dieter_P last edited by Dieter_P

                        Nach einem Versuch scheint das ein gangbarer Weg und funktioniert soweit.

                        Einzig die Verlinkung zu den DPs auf VIS fehlt mir noch und sehe ich aktuell nur 100% manuell lösbar, oder?

                        Edit: Ach wie schön am Abend reinzugucken und wieder ein Log von 156kB und nicht MB zu sehen 🙂

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        863
                        Online

                        32.0k
                        Users

                        80.4k
                        Topics

                        1.3m
                        Posts

                        5
                        13
                        354
                        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