Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Name eines Objekts auslesen

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Name eines Objekts auslesen

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

      Hallo Zusammen!

      Ich möchte gerne in einem Blockly-Skript den Namen eines Objekts auslesen. Genau genommen geht es um zwave.0.NODE2, dem ich den Namen "Esszimmer" gegeben habe. Diesen Wert würde ich gerne in einer Funktion fürs Debugging verwenden.
      Unter System finde ich nur "XXX von ObjektID", wobei der Parameter Wert, anerkannt, Zeitstempel, Letzte Änderung, Qualität und Quelle sein kann. Keine dieser Möglichkeiten gibt mir den gewünschten Namen.
      Mit Attribut XXX von Objekt XXX weiß ich leider nicht umzugehen: Name oder deviceName als Text-Parameter funktionieren jedenfalls nicht.

      Kann mir wer helfen?

      Vielen Dank!

      PS: Alternativ könnte ich auch den Raum von zwave.0.NODE2.THERMOSTAT_SETPOINT.Heating_1_1
      Geht das leichter?

      1 Reply Last reply Reply Quote 0
      • M
        moritzabcde last edited by

        Ha! Ich hab eine Lösung gefunden, die ich mal bei den Profis in der Raum stellen möchte:

        Ich habe die Funktion JS-Funktion mit Ergebnis XXX mit: YYY </> hinzugefügt und beim Zahnrad eine Variable ObjectID angelegt. Unter </> habe ich als nur die folgende Zeile:

        return getObject(ObjectID).common.name;
        

        Gäbe es einen Grund, es nicht so zu machen? Bei mir läuft es bis jetzt jedenfalls problemlos-

        paul53 Asgothian A W 4 Replies Last reply Reply Quote 0
        • paul53
          paul53 @moritzabcde last edited by

          @moritzabcde sagte:

          Gäbe es einen Grund, es nicht so zu machen?

          Nein, ist korrekt so.

          1 Reply Last reply Reply Quote 0
          • Asgothian
            Asgothian Developer @moritzabcde last edited by

            @moritzabcde

            Das ist korrekt, aber ggf. Fehlreträchtig. Gibt es das objekt nicht dann verweist du auf undefinierte Objekte / Eigenschaften.

            A.

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

              @Asgothian sagte:

              ggf. Fehlreträchtig.

              Im Prinzip ist es so. Da aber die Funktion für Blockly ist, in der man i.d.R. das Objekt per "select ID" zuweist, ist diese Fehlerwahrscheinlichkeit gering.

              1 Reply Last reply Reply Quote 0
              • A
                ausbremen @moritzabcde last edited by

                @moritzabcde Hallo Moritz, im Prinzip habe ich dieselbe Aufgabenstellung wie Du "damals". Deine Lösung schein gut zu sein, aber leider verstehe ich nicht, wie Du die Funktion dann ins Blockly einbaust. Kannst Du vielleicht das Blockly hier reinstellen, bzw. den interessierenden Ausschnitt? Gruß und Danke...

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

                  @ausbremen sagte:

                  Blockly hier reinstellen,

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="1`HtC9*f4,py1Qi|S|$I">id</variable>
                   </variables>
                   <block type="procedures_defcustomreturn" id="{T5hQzB.rfh9Yz~dd{`v" x="87" y="88">
                     <mutation statements="false">
                       <arg name="id" varid="1`HtC9*f4,py1Qi|S|$I"></arg>
                     </mutation>
                     <field name="NAME">getName</field>
                     <field name="SCRIPT">aWYoZXhpc3RzT2JqZWN0KGlkKSkgcmV0dXJuIGdldE9iamVjdChpZCkuY29tbW9uLm5hbWU7</field>
                     <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                   </block>
                  </xml>
                  

                  1 Reply Last reply Reply Quote 0
                  • W
                    wrod @moritzabcde last edited by

                    @moritzabcde Danke.
                    Wie bekomme ich es hin, nur einen Teil der von objectID.common.name auszulesen, also etwas alles VOR dem letzten Punkt und in einem anderen Script alles NACH dem letzten Punkt?
                    Hintergrund: Ich möchte in einem Script den Wert eines Datenpunkts setzen aus einer Berechnung der Werte zweier anderer Datenpunkte, die im Objektbaum nebeneinander stehen, also
                    alias.0.ATC 0741ef W-Keller.TaupunktTemp = Ergebnis einer Formel mit alias.0.ATC 0741ef W-Keller.temperature und alias.0.ATC 0741ef W-Keller.humidity

                    Die Formel habe ich in einem JS-Script. Dem muss ich nun die beiden letzten Werte übergeben.
                    Da das für verschiedene Räume gehen soll, will ich den Abschnitt vor dem letzten Punkt auslesen.

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    870
                    Online

                    32.0k
                    Users

                    80.4k
                    Topics

                    1.3m
                    Posts

                    5
                    8
                    2382
                    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