Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Objektdaten eines States per JavaScript ändern / Name ändern

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Objektdaten eines States per JavaScript ändern / Name ändern

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

      Hallo,
      ich bräuchte mal kurze Hilfe bei meinem Problem.
      Ich möchte die den Namen eines States, der sich in den Objektdaten (.common,name )befindet per Javascript abändern.

      {
        "type": "device",
        "common": {
          "name": "ZBMINI",
          "type": "ZBMINI",
          "icon": "img/ZBMINI.png",
          "color": null,
          }
        },
       }
      

      Auslesen funktioniert wunderbar per:

      log(getObject("zigbee.0.StateName").common.name);
      

      Versucht habe ich es über setObject allerdings ist mein Syntax wohl nicht ganz richtig

      setObject("zigbee.0.StateName",).common.name="Test";
      

      Wer kann mir auf die Sprünge helfen wie's richtig geht?
      Michael

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

        @mbartsch sagte: Wer kann mir auf die Sprünge helfen wie's richtig geht?

        Mit extendObject(). In der Konfiguration der JS-Instanz muss "setObject" freigegeben sein.

        M 1 Reply Last reply Reply Quote 1
        • M
          mbartsch @paul53 last edited by mbartsch

          @paul53 Ich vermute du meinst "Kommando setObject erlauben". Das hatte ich schon gemacht.

          Ich hab noch weiter rum probiert und eine Lösung gefunden.
          Ich vermute mein Fehler war, dass den Objektwert selbst mit übergeben muss; setObject gibt mir keine Referenz auf das Objekt zurück, das ich verwenden könnte, um den Namen direkt zu ändern.
          Bitte korrigiert mich falls ich hier falsch liege, lerne gerne dazu.

          Hier meine Lösung die funktioniert:

          let TestObject=getObject("zigbee.0.`xxx");
          log (TestObject);
          TestObject.common.name="Neuer Name";
          setObject("zigbee.0.xxx",TestObject); 
          
          ofri2607 1 Reply Last reply Reply Quote 0
          • ofri2607
            ofri2607 @mbartsch last edited by ofri2607

            @mbartsch
            So wie im Link von @paul53 gezeigt, sollte es eigentlich so auch funktionieren:

            log (TestObject);
            extendObject('zigbee.0.xxx', {common: {name: "Neuer Name"}});
            
            T 1 Reply Last reply Reply Quote 0
            • T
              ticaki Developer @ofri2607 last edited by

              @ofri2607 sagte in Objektdaten eines States per JavaScript ändern / Name ändern:

              @mbartsch
              So wie im Link von @paul53 gezeigt, sollte es eigentlich so auch funktionieren:

              log (TestObject);
              extendObject('zigbee.0.xxx', {common: {name: "Neuer Name"}});
              

              Das ist auch zu bevorzugen, weil man weniger kaputt machen kann.

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

              Support us

              ioBroker
              Community Adapters
              Donate

              764
              Online

              31.6k
              Users

              79.5k
              Topics

              1.3m
              Posts

              4
              5
              218
              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