Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. [Neuer Adapter] smartstate

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Neuer Adapter] smartstate

    This topic has been deleted. Only users with topic management privileges can see it.
    • BananaJoe
      BananaJoe Most Active @wendy2702 last edited by BananaJoe

      @wendy2702 sagte in [Neuer Adapter] smartstate:

      Aber ich sehe das richtig das ich nur die Anzahl der z.B. offenen Fenster, eingeschalteten Lichter oder was auch immer sehe und nicht welche genau, oder?

      Du kannst die Anzahl der offenen und geschlossenen Fenster sehen. Und ob alle zu oder noch ein oder mehr offen (als true/false).

      @ChriD ein weiterer Datenpunkt der einen dann eine Liste erstellt mit allen offenen oder geschlossenen Fenster wäre was. Ich würde ja als JSON bevorzugen. Das könnte per Widget flexibel in der VIS anzeigen lassen oder in eigenen Skripten weiterverarbeiten.
      Die Frage ist das dann dann noch alles in diese Liste soll. Die Objekt-Id, der Name des Gerätes?

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

        Hi,

        um beim Fenster/Licht Beispiel zu bleiben.

        Angabe was z.B. offen/zu an/aus... oder was auch immer ist wuerde aus meiner Sicht schon sinn machen. Alleine die Anzahl der Geraete nutzt mir persoenlich nicht soviel. Muss ja dann doch wieder noch woanders gucken welche es sind.

        C Neuschwansteini 2 Replies Last reply Reply Quote 0
        • C
          ChriD @wendy2702 last edited by

          @wendy2702
          Hab's mir als isue im guthub hinzugefügt. Werde ich in den nächsten Tagen umsetzen.
          Es wird vmtl. ein Häkchen am State geben welcher angibt ob die Statusinfos zur Berechnung in einem Eignen Objekt landen sollen. Die ID dafür wird vom Smartstate autom. abgeleitet.
          Wie ich den Inhalt befülle bin ich mir noch nicht sicher. Vll. auch mit einer vom User auswählbaren Option (JSON State Object, JSON State Array, JSON Id Array, Id String (Strichpunktgetrennt)).

          Oder habt ihr da noch Ideen? Genügt ein JSON Array mit den states?

          wendy2702 1 Reply Last reply Reply Quote 0
          • wendy2702
            wendy2702 @ChriD last edited by

            @chrid Hört sich gut an.

            Danke!

            1 Reply Last reply Reply Quote 0
            • Neuschwansteini
              Neuschwansteini @wendy2702 last edited by

              @wendy2702 @ChriD

              Hi der Adapter funktioniert gut, aber wenn du noch den Namen ausgeben könntest, wäre das super.
              Wie Wendy2702 schon sagte, man muss ja wissen, welche Fenster/Türen offen oder welche Devices offline sind, oder was man auch immer damit zählen mag.. 🙂

              C 1 Reply Last reply Reply Quote 0
              • C
                ChriD @Neuschwansteini last edited by

                @ilovegym @wendy2702 @BananaJoe
                Es gibt jetzt eine neue Version git & npm. Bitte bei Gelegenheit mal schauen ob ihr damit zurecht kommt. Beschreibung zur neuen Funktionalität gibts hier:
                https://github.com/ChriD/ioBroker.smartstate#using-the-state-info-type

                BananaJoe 1 Reply Last reply Reply Quote 1
                • BananaJoe
                  BananaJoe Most Active @ChriD last edited by

                  @chrid

                  2023-02-07 19:22:36.514  - error: smartstate.0 (1886549) uncaught exception: id is not defined
                  2023-02-07 19:22:36.518  - error: smartstate.0 (1886549) ReferenceError: id is not defined
                      at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.smartstate/main.js:568:2)
                      at Module._compile (node:internal/modules/cjs/loader:1165:14)
                      at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
                      at Module.load (node:internal/modules/cjs/loader:1043:32)
                      at Function.Module._load (node:internal/modules/cjs/loader:878:12)
                      at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
                      at node:internal/main/run_main_module:22:47
                  2023-02-07 19:22:36.519  - error: smartstate.0 (1886549) id is not defined
                  2023-02-07 19:22:37.022  - warn: smartstate.0 (1886549) Terminated (UNCAUGHT_EXCEPTION): Without reason
                  2023-02-07 19:22:38.793  - warn: smartstate.0 (1886549) Unable to increase LUA script timeout: Connection is closed.
                  2023-02-07 19:22:39.071  - error: host.iobroker instance system.adapter.smartstate.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
                  2023-02-07 19:22:39.071  - info: host.iobroker Restart adapter system.adapter.smartstate.0 because enabled
                  2023-02-07 19:22:48.824  - info: admin.2 (1701438) ==> Connected system.user.admin from 192.168.1.32
                  2023-02-07 19:23:09.381  - info: host.iobroker instance system.adapter.smartstate.0 started with pid 1887274
                  2023-02-07 19:23:10.598  - error: smartstate.0 (1887274) uncaught exception: id is not defined
                  2023-02-07 19:23:10.601  - error: smartstate.0 (1887274) ReferenceError: id is not defined
                      at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.smartstate/main.js:568:2)
                      at Module._compile (node:internal/modules/cjs/loader:1165:14)
                      at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
                      at Module.load (node:internal/modules/cjs/loader:1043:32)
                      at Function.Module._load (node:internal/modules/cjs/loader:878:12)
                      at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
                      at node:internal/main/run_main_module:22:47
                  2023-02-07 19:23:10.602  - error: smartstate.0 (1887274) id is not defined
                  2023-02-07 19:23:11.110  - warn: smartstate.0 (1887274) Terminated (UNCAUGHT_EXCEPTION): Without reason
                  2023-02-07 19:23:11.775  - error: smartstate.0 (1887274) uncaught exception: Connection is closed.
                  2023-02-07 19:23:11.777  - error: smartstate.0 (1887274) Error: Connection is closed.
                      at close (/opt/iobroker/node_modules/ioredis/built/redis/event_handler.js:184:25)
                      at Socket.<anonymous> (/opt/iobroker/node_modules/ioredis/built/redis/event_handler.js:151:20)
                      at Object.onceWrapper (node:events:628:26)
                      at Socket.emit (node:events:513:28)
                      at TCP.<anonymous> (node:net:301:12)
                  2023-02-07 19:23:11.781  - error: smartstate.0 (1887274) Connection is closed.
                  2023-02-07 19:23:12.261  - error: host.iobroker instance system.adapter.smartstate.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
                  2023-02-07 19:23:12.263  - info: host.iobroker Restart adapter system.adapter.smartstate.0 because enabled
                  2023-02-07 19:23:42.528  - info: host.iobroker instance system.adapter.smartstate.0 started with pid 1887422
                  2023-02-07 19:23:43.517  - error: smartstate.0 (1887422) uncaught exception: id is not defined
                  2023-02-07 19:23:43.519  - error: smartstate.0 (1887422) ReferenceError: id is not defined
                      at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.smartstate/main.js:568:2)
                      at Module._compile (node:internal/modules/cjs/loader:1165:14)
                      at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
                      at Module.load (node:internal/modules/cjs/loader:1043:32)
                      at Function.Module._load (node:internal/modules/cjs/loader:878:12)
                      at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
                      at node:internal/main/run_main_module:22:47
                  2023-02-07 19:23:43.520  - error: smartstate.0 (1887422) id is not defined
                  2023-02-07 19:23:44.022  - warn: smartstate.0 (1887422) Terminated (UNCAUGHT_EXCEPTION): Without reason
                  2023-02-07 19:23:44.716  - error: host.iobroker instance system.adapter.smartstate.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
                  2023-02-07 19:23:44.717  - info: host.iobroker Restart adapter system.adapter.smartstate.0 because enabled
                  2023-02-07 19:23:44.717  - warn: host.iobroker Do not restart adapter system.adapter.smartstate.0 because restart loop detected
                  
                  
                  BananaJoe 1 Reply Last reply Reply Quote 0
                  • BananaJoe
                    BananaJoe Most Active @BananaJoe last edited by

                    @bananajoe
                    ok, einmal gelöscht und neu anlegen ...
                    0279740e-c745-47ea-9cce-627a53dd9a52-image.png

                    Immer noch Fehler:

                    2023-02-07 19:26:00.559  - error: smartstate.0 (1888687) id is not defined
                    2023-02-07 19:26:01.061  - warn: smartstate.0 (1888687) Terminated (UNCAUGHT_EXCEPTION): Without reason
                    2023-02-07 19:26:01.744  - error: host.iobroker instance system.adapter.smartstate.0 terminated with code 6 (UNCAUGHT_EXCEPTION)
                    2023-02-07 19:26:01.746  - info: host.iobroker Do not restart adapter system.adapter.smartstate.0 because disabled or deleted
                    2023-02-07 19:27:44.398  - info: admin.2 (1701438) <== Disconnect system.user.admin from 192.168.1.32
                    2023-02-07 19:28:01.423  - info: host.iobroker "system.adapter.smartstate.0" enabled
                    2023-02-07 19:28:02.529  - info: host.iobroker instance system.adapter.smartstate.0 started with pid 1890004
                    2023-02-07 19:28:03.725  - error: smartstate.0 (1890004) uncaught exception: id is not defined
                    2023-02-07 19:28:03.727  - error: smartstate.0 (1890004) ReferenceError: id is not defined
                        at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.smartstate/main.js:568:2)
                        at Module._compile (node:internal/modules/cjs/loader:1165:14)
                        at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10)
                        at Module.load (node:internal/modules/cjs/loader:1043:32)
                        at Function.Module._load (node:internal/modules/cjs/loader:878:12)
                        at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
                        at node:internal/main/run_main_module:22:47
                    
                    
                    C 1 Reply Last reply Reply Quote 0
                    • OliverIO
                      OliverIO @ChriD last edited by

                      @chrid sagte in [Neuer Adapter] smartstate:

                      Im Hintergrund habe ich grundsätzlich dafür schon eine Funktion eingebaut dass man den Rückgabewert des oder der states (pattern) anpassen kann. D.h du würdest dann in der Pattern Zeile noch ein Feld haben wo du dann einfach "value = !value" reinschreiben könntest. Das ist halt aber wirklich ein Feld wo man im Endeffekt validen javascript code reinschreiben müsste.
                      Oder hättest du eine Idee wie man das schöner bzw. Userfreundlicher lösen könnte?

                      Als Ankreuzfeld in den Einstellungen. bspw Wert negieren.

                      Du müsstest ja durch das Pattern sowieso ermitteln wieviel Datenpunkte selektiert werden.
                      Wenn von 10 Geräten 4 an sind, dann ergibt ohne Kreuz das Ergebnis 4
                      und mit ankreuzen 10-4 = 6

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

                        Adapter Installiert und so eingestellt:

                        7C0EB284-0BE3-412A-B52C-AA7E00256FE9.jpeg

                        Dann kommt im Object nur das:

                        D0130612-EC45-4CD6-861B-07F41C67DFDE.jpeg

                        C 1 Reply Last reply Reply Quote 0
                        • C
                          ChriD @BananaJoe last edited by

                          @bananajoe
                          Bitte nochmal adapter neu installieren, dann ist der id Fehler weg

                          BananaJoe 1 Reply Last reply Reply Quote 0
                          • C
                            ChriD @wendy2702 last edited by

                            @wendy2702
                            Danke für die Rückmeldung. Bei mir siehts mit den gleichen Einstellungen so aus:
                            b22272d7-aee9-4ae3-8def-84a1a1d978f2-image.png

                            Unter welchen Objekten liegen den die "Fenster" states?
                            Sind die unter "devices"? oder "channels"?
                            Magst du mir einen Screenshot vom Tree posten?
                            So in etwa, nur halt mit den Fensterkontakten:

                            a5af4786-f87a-4733-88a4-7a019ebf301f-image.png

                            wendy2702 2 Replies Last reply Reply Quote 0
                            • wendy2702
                              wendy2702 @ChriD last edited by

                              @chrid bin auf Dienstreise. Eventuell heute Abend oder morgen Abend kann ich den liefern.

                              1 Reply Last reply Reply Quote 0
                              • BananaJoe
                                BananaJoe Most Active @ChriD last edited by

                                @chrid sagte in [Neuer Adapter] smartstate:

                                @bananajoe
                                Bitte nochmal adapter neu installieren, dann ist der id Fehler weg

                                ok, Funktioniert jetzt.

                                Das hier liefert mir 13
                                f2a26157-966c-4836-af7e-15b8feab16bf-image.png
                                als Zahl im Datenpunkt.

                                Das hier liefert mir 26 ...
                                02daa60a-6e4d-4e68-a6bd-7f7dfe13784a-image.png
                                Im JSON sind dann die 13 Geräte die nicht available sind, also ok

                                1 Reply Last reply Reply Quote 0
                                • wendy2702
                                  wendy2702 @ChriD last edited by

                                  @chrid Hi,

                                  das sind Aliase:

                                  06ce43ac-cd0c-42a2-89b1-fc67a2c9e72f-grafik.png

                                  37e78929-f305-4f21-b7b5-1cbf0af94d90-grafik.png

                                  e6165ac7-e8cc-42e7-b2b4-185bf9f8573f-grafik.png

                                  Denke mir ist aber gerade aufgefallen warum es so sein koennte. Vermutlich liegt es an dern verschiedenen Zustaenden.

                                  Werde mal Sensoren mit den gleichen Zustaenden einstellen.

                                  C 1 Reply Last reply Reply Quote 0
                                  • C
                                    ChriD @wendy2702 last edited by ChriD

                                    @wendy2702
                                    Nein, das liegt daran das du kein "device" als parent für deine aliase hast und deine aliase eigentlich ja das device sind. Bitte benutze das stateObject stattdessen. Das device Object ist nur befüllt wenn es ein parent device gibt im object tree.
                                    Das stateObject ist dann genau das jeweilige alias objekt
                                    dea19b7d-0436-48fe-b4e8-a5bf810ddf94-image.png

                                    Einfach deviceObject mit stateObject austauschen

                                    wendy2702 1 Reply Last reply Reply Quote 0
                                    • wendy2702
                                      wendy2702 @ChriD last edited by wendy2702

                                      @chrid OK.

                                      Teste ich wenn ich wieder zu Hause bin.

                                      EDIT: OK die Fenster werden jetzt angezeigt. Allerdings steht da ja jetzt der komplette Name des Objekts drin:

                                      alias.0.Fenster.Fenster_Schlafzimmer;alias.0.Fenster.Fenster_Wohnzimmer
                                      

                                      Hier wäre es natürlich Wünschenswert wenn nur der Name: "Schlafzimmer, Wohnzimmer" usw. stehen würde.

                                      C 1 Reply Last reply Reply Quote 0
                                      • C
                                        ChriD @wendy2702 last edited by ChriD

                                        @wendy2702
                                        Dann kannst du das einfach ändern indem du den code in der Funktion anpasst auf:

                                        return params.stateObject.common.name
                                        
                                        wendy2702 1 Reply Last reply Reply Quote 0
                                        • wendy2702
                                          wendy2702 @ChriD last edited by

                                          @chrid sagte in [Neuer Adapter] smartstate:

                                          @wendy2702
                                          Dann kannst du das einfach ändern indem du den code in der Funktion anpasst auf:

                                          return params.stateObject.common.name
                                          

                                          OK.

                                          Ich frage mal ganz frech: Kann man, sprich du, das nicht direkt in den Adapter einbauen?

                                          C 1 Reply Last reply Reply Quote 0
                                          • C
                                            ChriD @wendy2702 last edited by

                                            @wendy2702
                                            Vielleicht habe ich mich etwas unklar ausgedrückt, aber du kannst das einfach hier ganz einfach an der Oberfläche ändern:
                                            2c40106f-55b4-4a2b-b7ed-f75467690975-image.png

                                            Ich weiß nicht recht was ich da anpassen sollte? Das standardmäßig der "common.name" anstatt die "id" benutzt wird? Andere User möchten vll. aber die Id als Standard und nicht den Namen. 🤷‍♂️

                                            Ist das so ein großes Problem?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            663
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            34
                                            2301
                                            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