Navigation

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

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Rolle eines Objektes auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @paul53 last edited by

      @paul53 sagte in Rolle eines Objektes auslesen:

      @homoran sagte: warum über die Rolle?

      Warum nicht über die Rolle, wenn sie eindeutig ist? Enums muss man meist erst zuweisen.

      ja, Enums sind ggf. aufwändiger, und ob die role immer, insbesondere bei alias oder eigenen Datenpunkten für alle Datenpunkte eindeutig ist, sollte @JoergH prüfen.

      Es kommt auch vor, dass z.B. mal .level und .value verwendet werden.

      1 Reply Last reply Reply Quote 0
      • J
        JoergH @Homoran last edited by

        @homoran sagte in Rolle eines Objektes auslesen:

        @mickym das hat nichts mit puzzle zu tun.
        da geht es um den grundsätzlichen Ansatz das erwünschte zu erreichen, egal ob mit Strippen oder Puzzles.

        wobei mir immer noch nicht klar ist was @JoergH im Endeffekt erreichen will.

        Eigentlich steht es im ersten Post:

        Ich will eine Liste mit den IDs der Fenster haben, um mir mein eigenes Blockly zu basteln, mithilfe dessen ich deren Zustände auswerten kann.
        Bisher nutze ich das Javascript von Pittini, allerdings verliert der hm-rpc Adapter hin- und wieder mal die Datenpunkte. Heute waren sie mal wieder alle weg. Daraufhin habe ich versucht diese wieder einzulesen, was er auch gemacht hat, allerdings sämtliche ohne Rolle und ohne Räume (scheint ein Bug zu sein, Github Issue habe ich eröffnet), was bedeutet, dass ich alles wieder manuell herstellen muss. 😖
        Sowieso verlangt das Script eine etwas unorthodoxe Kennzeichnung, die der Adapter so nicht selber bietet, sodass man immer manuell nachbearbeiten muss.

        Das will ich nun ein für alle Mal lösen und etwas selber schreiben. Dazu brauche ich eine Liste der Fenster, dann kann ich die Werte auslesen. Leider finde ich keine Beschreibung der neuen Blockly Funktionen und habe keine praktische Erfahrung mit Objekten und deren Funktionsweise, deswegen frage ich ja auch mal nach..

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

          @joergh sagte in Rolle eines Objektes auslesen:

          allerdings verliert der hm-rpc Adapter hin- und wieder mal die Datenpunkte. Heute waren sie mal wieder alle weg

          hast du die Instanz neu gestartet
          und nicht "Datenpunkte bei Adapterstart nicht löschen" in der Instanz aktiviert?

          J 1 Reply Last reply Reply Quote 0
          • J
            JoergH @Homoran last edited by

            @homoran sagte in Rolle eines Objektes auslesen:

            @joergh sagte in Rolle eines Objektes auslesen:

            allerdings verliert der hm-rpc Adapter hin- und wieder mal die Datenpunkte. Heute waren sie mal wieder alle weg

            hast du die Instanz neu gestartet
            und nicht "Datenpunkte bei Adapterstart nicht löschen" in der Instanz aktiviert?

            Ja, dabei auch noch Werte neu einlesen angehakt. Er stellt die DP wieder her, aber ohne jegliche Zusatzinfos...

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

              @joergh sagte in Rolle eines Objektes auslesen:

              dabei auch noch Werte neu einlesen angehakt.

              das ist unerheblich.
              Wenn die Datenpunkte bei Adapterstart gelöscht werden, vetlieren sie alle Zusatzinfos.

              Du musst die Checkbox

              @homoran sagte in Rolle eines Objektes auslesen:

              "Datenpunkte bei Adapterstart nicht löschen"

              aktivieten, dann passiert das nicht

              J 1 Reply Last reply Reply Quote 0
              • J
                JoergH @Homoran last edited by

                @homoran sagte in Rolle eines Objektes auslesen:

                @joergh sagte in Rolle eines Objektes auslesen:

                dabei auch noch Werte neu einlesen angehakt.

                das ist unerheblich.
                Wenn die Datenpunkte bei Adapterstart gelöscht werden, vetlieren sie alle Zusatzinfos.

                Du musst die Checkbox

                @homoran sagte in Rolle eines Objektes auslesen:

                "Datenpunkte bei Adapterstart nicht löschen"

                aktivieten, dann passiert das nicht

                Ein Stück weit unlogisch, da er sie doch beim "einmaligen einlesen" nach dem Start des Adapters eben wieder aus der CCU lesen sollte und da auch alle Infos und nicht nur die rudimentären...?
                Das erklärt meinen Verständnis nach nicht, warum er die Zusatzinfos nicht aus der CCU zieht...

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

                  @joergh sagte in Rolle eines Objektes auslesen:

                  da er sie doch beim "einmaligen einlesen" nach dem Start des Adapters eben wieder aus der CCU lesen sollte

                  ja, die Daten, die dort vorliegen, aber keine History, Sourceanalytix oder sonstige Einstellungen und auch keine selbst angelegten Enums.

                  @joergh sagte in Rolle eines Objektes auslesen:

                  warum er die Zusatzinfos nicht aus der CCU zieht...

                  sind die denn dort konfiguriert?
                  wenn ja, hast du den hm-rega auch neu gestartet?
                  Enums kommen über diesen

                  J 1 Reply Last reply Reply Quote 0
                  • J
                    JoergH @Homoran last edited by JoergH

                    @homoran sagte in Rolle eines Objektes auslesen:

                    @joergh sagte in Rolle eines Objektes auslesen:

                    da er sie doch beim "einmaligen einlesen" nach dem Start des Adapters eben wieder aus der CCU lesen sollte

                    ja, die Daten, die dort vorliegen, aber keine History, Sourceanalytix oder sonstige Einstellungen und auch keine selbst angelegten Enums.

                    @joergh sagte in Rolle eines Objektes auslesen:

                    warum er die Zusatzinfos nicht aus der CCU zieht...

                    sind die denn dort konfiguriert?
                    wenn ja, hast du den hm-rega auch neu gestartet?
                    Enums kommen über diesen

                    Ja, klar sind die dort konfiguriert.

                    Nein, Rega habe ich nicht neu gestartet. Das war mir neu, da sie in den DP unter hm-rpc laufen, dachte ich, das rpc mit "neu einlesen" den Job erledigt...

                    [EDIT]

                    Danke! Das war der entscheidende Hinweis. Nach Neustart hm-Rega sind die Räume etc. wieder da...

                    Jetzt schreibe ich mir dennoch ein Skript, da ich die nun mal lieber lokal speichere, statt mich darauf zu verlassen, dass sie nicht verschwinden...

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

                      @joergh sagte in Rolle eines Objektes auslesen:

                      Das war mir neu, da sie in den DP unter hm-rpc laufen, dachte ich, das rpc mit "neu einlesen" den Job erledigt...

                      Screenshot_20241116-152823_Firefox.jpg

                      wenn du die Datenpunkte nicht löschst, bleiben sie lokal gespeichert
                      aktiviere einfach die Checkbox

                      J 1 Reply Last reply Reply Quote 1
                      • J
                        JoergH @Homoran last edited by

                        @homoran sagte in Rolle eines Objektes auslesen:

                        @joergh sagte in Rolle eines Objektes auslesen:

                        Das war mir neu, da sie in den DP unter hm-rpc laufen, dachte ich, das rpc mit "neu einlesen" den Job erledigt...

                        Screenshot_20241116-152823_Firefox.jpg

                        wenn du die Datenpunkte nicht löschst, bleiben sie lokal gespeichert
                        aktiviere einfach die Checkbox

                        Aktualisiert er dann eventuell neu hinzugekommene?

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

                          Ich verstehe es nicht, Du hast doch geschrieben, dass meine Lösung funktioniert, indem Du die Rolle im Selektor filterst.

                          https://forum.iobroker.net/post/1219936

                          Was willst Du mehr. Und warum Du die neuen Puzzleteile nicht verwenden kannst, habe ich Dir eigentlich auch mehrfach erklärt.
                          Du kannst auch functions oder rooms eingeben - das ist alles in dem Screenshot:
                          1c5e26eb-91af-4474-8001-cafcb3f76f11-image.png
                          Na dann lasse ich Euch wieder alleine hier.

                          J 2 Replies Last reply Reply Quote 0
                          • J
                            JoergH @mickym last edited by

                            @mickym sagte in Rolle eines Objektes auslesen:

                            Ich verstehe es nicht, Du hast doch geschrieben, dass meine Lösung funktioniert, indem Du die Rolle im Selektor filterst.

                            https://forum.iobroker.net/post/1219936

                            Was willst Du mehr. Und warum Du die neuen Puzzleteile nicht verwenden kannst, habe ich Dir eigentlich auch mehrfach erklärt.

                            Na dann lasse ich Euch wieder alleine hier.

                            Ich würde Dir ja gerne helfen, weiß nur nicht was Du denn nicht verstehst?

                            Die Diskussion mit @Homoran ging doch jetzt um die Motivation, was ich vorhabe und warum...

                            Unzutreffend ist jedenfalls, dass man nicht auf Objekte zugreifen kann und um nichts anderes ging es bei meinem Beispiel der neuen Bausteine.

                            1 Reply Last reply Reply Quote 0
                            • J
                              JoergH @mickym last edited by JoergH

                              @mickym sagte in Rolle eines Objektes auslesen:

                              Was willst Du mehr. Und warum Du die neuen Puzzleteile nicht verwenden kannst, habe ich Dir eigentlich auch mehrfach erklärt.
                              Du kannst auch functions oder rooms eingeben - das ist alles in dem Screenshot:

                              Die States kann ich damit auslesen, aber leider sind die Räume und Funktionen bei den Channels angehängt. Ich bekomme keine Ergebnisse, wenn ich die [EDIT] functions der States abfrage, da dort nichts hinterlegt ist. Wie bekomme ich denn die functions der channel bspw.?

                              6e2ad176-3a52-4d70-ac85-4a1984d202d8-grafik.png

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

                                @joergh sagte: keine Ergebnisse, wenn ich die States abfrage

                                Wie fragst du sie ab?

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

                                  @paul53 Habe da alles Mögliche probiert, weiss aber nicht wie...mit [channel.id=hm-rpc.1..1.] geht es jedenfalls nicht...

                                  [EDIT]

                                  Ich meinte nicht die States, sondern die functions der states....sorry!

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

                                    @joergh sagte: mit [channel.id=hm-rpc.1..1.] geht es jedenfalls nicht...

                                    Du möchtest das Gewerk im Selektor verwenden? Wie ist die Schreibweise in der Enum-ID? Denn diese ist entscheidend für

                                    $('hm-rpc.1.*.STATE(functions=gewerk)')
                                    
                                    J 1 Reply Last reply Reply Quote 1
                                    • J
                                      JoergH @paul53 last edited by

                                      @paul53 Danke Dir! Jetzt hab ich es hinbekommen!

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

                                        @joergh sagte: Jetzt hab ich es hinbekommen!

                                        Möchtest du dann den zugehörigen Raum abfragen, wird eine JS-Funktion mit Ergebnis benötigt.

                                        id = id.substring(0, id.lastIndexOf('.')); // parentID (Kanal)
                                        if(existsObject(id)) {
                                            let room = getObject(id, 'rooms').enumNames[0];
                                            if(typeof room == 'object') room = room.de;
                                            return room;
                                        }
                                        

                                        Blockly_temp.JPG

                                        J 2 Replies Last reply Reply Quote 0
                                        • J
                                          JoergH @paul53 last edited by

                                          @paul53 Ok. Schade, dass das nicht auch wie mit functions funktioniert. Danke für den Code!

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

                                            @joergh sagte: Schade, dass das nicht auch wie mit functions funktioniert.

                                            Die Selektion funktioniert auch mit (rooms=raum). Aber du willst ja nicht nach Räumen selektieren, sondern bei offenem Fenster den zugehörigen Raumnamen, der dem Kanal (parentObject) zugewiesen ist, ausgeben.

                                            J 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            506
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            55
                                            1582
                                            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