Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Javascript] Adapter-Instanzen überwachen

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    [Javascript] Adapter-Instanzen überwachen

    This topic has been deleted. Only users with topic management privileges can see it.
    • frana120500
      frana120500 @Acgua last edited by

      @acgua Historie wäre geil, dann könnte man eventuelle Fehlerquellen zeitlich eingrenzen

      Acgua 1 Reply Last reply Reply Quote 0
      • Acgua
        Acgua @frana120500 last edited by

        @frana120500
        cool, dachte ich mir auch, dann baue ich das noch ein.

        Welche JS-Adapter-Version setzt du denn ein? Bekommst du evtl. auch Warnungen wie You are assigning a string to the state (...) which expects a boolean. im Log?

        frana120500 1 Reply Last reply Reply Quote 0
        • ?
          A Former User @Acgua last edited by

          @acgua ja deswegen hat es mich gewundert und darum habe ich den Fehler hier rein gestellt. Für mich persönlich nicht schlimm, wie gesagt hab die zwei Datenpunkte auf String umgeändert. Aber ich weiß wie es ist das so eine Kleinigkeit einen stören kann und man wissen will wieso weshalb warum. Wenn ich später mal Zeit habe schaue ich mir das Skript auch mal in Ruhe an, vielleicht finde ich auch selbst heraus woher es kommen könnte. 🙂

          1 Reply Last reply Reply Quote 1
          • frana120500
            frana120500 @Acgua last edited by

            @acgua Hi, ich nutze den Script Adapter in Version 5.8.10... also die letzte Beta

            Ich bekomme aufgrund des Sonoff und des MQTT Adapters die folgenden Fehlermeldungen:

            You are assigning a string to the state "0_userdata.0.System.Adapter-Instanzen.sonoff_0.info.connected_with_device_service" which expects a boolean. Please fix your code to use a boolean or change the state type to string. This warning might become an error in future versions.

            You are assigning a string to the state "0_userdata.0.System.Adapter-Instanzen.mqtt_0.info.connected_with_device_service" which expects a boolean. Please fix your code to use a boolean or change the state type to string. This warning might become an error in future versions.
            Acgua 1 Reply Last reply Reply Quote 0
            • Acgua
              Acgua @frana120500 last edited by Acgua

              @frana120500
              Danke. Auch noch mal an @ciddi89 für deine Rückinfo.

              Dann muss ich mir das die Tage mal näher ansehen, gerade weil es auch im Latest (5.8.10) vorkommt, das ist sehr wichtig zu wissen.
              Ich habe nur beschränkt Zeit, daher brauche ich ggf. ein paar Tage, also bitte nicht wundern, aber ich kümmere mich darum.
              Ist nur eine Kleinigkeit und eher ein "Schönheitsfehler", weil sonst ja alles läuft, aber nervt mich 😁 und werde ich lösen, also die Ursache.

              ? 1 Reply Last reply Reply Quote 0
              • ?
                A Former User @Acgua last edited by

                @acgua hehe ja gerne doch. Mach dir kein Stress, wie du schon sagst: es ist nur ein Schönheitsfehler. Und ich kenne das nur zu gut mit der Zeit. Das Problem habe ich und viele andere auch hier.😬 Falls ich vorher schon was finde, gebe ich dir natürlich Bescheid. 🙂

                Acgua 1 Reply Last reply Reply Quote 1
                • Acgua
                  Acgua @Guest last edited by

                  @ciddi89 und @frana120500
                  Ich habe nun Version 0.0.2 veröffentlicht, Änderung:

                  • Acgua – Workaround aufgrund Issue #1 eingebaut. In manchen ioBroker-Umgebungen scheint die Abfrage von admin.0.info.connection (sowie bisher identifizierte Adapter mqtt und sonoff) kein Boolean zurückzugeben, sondern ein String wie etwa [2]admin, javascript. Ich kann es nicht reproduzieren aber habe ein Workaround eingebaut. Bei Ausgabe eines Strings (Länge > 1) wird angenommen, dass eine Verbindung besteht.

                  Hier übrigens die Änderungen im Script:
                  https://github.com/Acgua/ioBroker-Script-Adapter-Instances-Watcher/commit/08b171e5a93995eab65d9400bc049cc25760e382

                  Link zum Projekt: https://github.com/Acgua/ioBroker-Script-Adapter-Instances-Watcher

                  0 Acgua committed to Acgua/ioBroker-Script-Adapter-Instances-Watcher
                  Version 0.0.2
                  
                  Addressing issue #1 - https://github.com/Acgua/ioBroker-Script-Adapter-Instances-Watcher/issues/1
                  ? JLeg 2 Replies Last reply Reply Quote 0
                  • ?
                    A Former User @Acgua last edited by

                    @acgua danke, hab die neue Version gleich ausprobiert. 🙂 Vielen dank für die Arbeit. Das log sieht nun so aus:

                       2022-07-18 20:16:51.686	warn	script.js.Datenpunkte.ioBroker.Adapter-Instance-Watcher: admin.0.info.connection returns String "[1]admin", but boolean expected. We assume connection is true and continue.
                    
                    javascript.0
                    2022-07-18 20:16:07.087	warn	script.js.Datenpunkte.ioBroker.Adapter-Instance-Watcher: mqtt.0.info.connection returns String "remeha logger,Klimastation_0", but boolean expected. We assume connection is true and continue.
                    
                    javascript.0
                    2022-07-18 20:16:07.051	warn	script.js.Datenpunkte.ioBroker.Adapter-Instance-Watcher: admin.0.info.connection returns String "[2]admin, javascript", but boolean expected. We assume connection is true and continue.
                    
                    javascript.0
                    2022-07-18 20:16:06.973	info	script.js.Datenpunkte.ioBroker.Adapter-Instance-Watcher: ...Initialisierung erfolgreich abgeschlossen.
                    
                    javascript.0
                    2022-07-18 20:16:06.973	info	script.js.Datenpunkte.ioBroker.Adapter-Instance-Watcher: ...33 Adapter-Instanzen instanziiert: admin.0, alexa2.0, backitup.0, ble.0, chromecast.0, denon.0, device-reminder.0, device-watcher.0, discovery.0, fakeroku.0, harmony.0, hm-rega.0, hm-rpc.0, hm-rpc.1, influxdb.0, iot.0, javascript.0, logparser.0, lovelace.0, mihome-vacuum.0, mihome-vacuum.1, mqtt.0, net-tools.0, netatmo-crawler.0, pi-hole.0, pushover.0, sonos.0, switchbot-ble.0, tankerkoenig.0, unifi.0, web.0, yahka.0, zigbee.0
                    
                    javascript.0
                    2022-07-18 20:16:06.906	info	State value to set for "0_userdata.0.System.Adapter-Instanzen._all.notFunctioningList" has to be stringified but received type "object"
                    
                    javascript.0
                    2022-07-18 20:16:06.895	warn	This object will not be created in future versions. Please report this to the developer.
                    
                    javascript.0
                    2022-07-18 20:16:06.895	warn	Object 0_userdata.0.System.Adapter-Instanzen._all.notFunctioningList is invalid: Default value has to be stringified but received type "object"
                    
                    javascript.0
                    2022-07-18 20:16:06.869	info	script.js.Datenpunkte.ioBroker.Adapter-Instance-Watcher: registered 0 subscriptions and 0 schedules
                    
                    javascript.0
                    2022-07-18 20:16:06.868	info	script.js.Datenpunkte.ioBroker.Adapter-Instance-Watcher: Initialisiere Adapter-Instanzen-Script...
                    

                    Acgua 1 Reply Last reply Reply Quote 1
                    • david83
                      david83 last edited by david83

                      @Acgua

                      Hi, ich wollte das Script einmal ausprobieren und habe das npm Modul cron-parser aktiviert.
                      Dann das Log kontrolliert. Folgende Meldungen:

                      	2022-07-19 14:18:39.627	error	WARN deprecated coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
                      
                      javascript.0
                      2022-07-19 14:18:39.626	error	npm
                      
                      javascript.0
                      2022-07-19 14:18:39.599	error	WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
                      
                      javascript.0
                      2022-07-19 14:18:39.598	error	npm
                      
                      javascript.0
                      2022-07-19 14:18:39.577	error	WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
                      
                      javascript.0
                      2022-07-19 14:18:39.576	error	npm
                      
                      javascript.0
                      2022-07-19 14:18:39.538	error	WARN deprecated node-inspect@2.0.0: This module is part of Node.js core and does not need to be installed separately. It is now unmaintained.
                      
                      javascript.0
                      2022-07-19 14:18:39.537	error	npm
                      
                      javascript.0
                      2022-07-19 14:18:39.480	error	WARN deprecated har-validator@5.1.5: this library is no longer supported
                      
                      javascript.0
                      2022-07-19 14:18:39.479	error	npm
                      
                      javascript.0
                      2022-07-19 14:18:37.412	error	WARN config production Use `--omit=dev` instead.
                      
                      javascript.0
                      2022-07-19 14:18:37.411	error	npm
                      

                      Ist das so richtig?

                      mikeal created this issue in request/request

                      open Request’s Past, Present and Future #3142

                      david83 1 Reply Last reply Reply Quote 0
                      • frana120500
                        frana120500 last edited by frana120500

                        ich habe auch mal die 0.0.2 ausprobiert und erhalten folgende warnings im log:

                        javascript.0
                        2022-07-19 14:59:32.583	warn	script.js.Sonstiges.Adapter_Instanzen_überwachen: sonoff.0.info.connection returns String "Erzeugungszähler,Waschmaschine,Bürolampe,Gosund SP112,Gosund-Heizstab,3dDrucker,FritzBox_Steckdose,Staubsauger,Gosund-USV,Stehlampe,Gosund-Treppe-ESP32,Kinderzimmerlampe,GrosseGarage,Bewässerung,TasmoShelly-BJ", but boolean expected. We assume connection is true and continue.
                        
                        javascript.0
                        2022-07-19 14:59:32.582	warn	script.js.Sonstiges.Adapter_Instanzen_überwachen: mqtt.0.info.connection returns String "evcc-2142291184", but boolean expected. We assume connection is true and continue.
                        
                        1 Reply Last reply Reply Quote 1
                        • JLeg
                          JLeg @Acgua last edited by

                          @acgua sagte in [Javascript] Adapter-Instanzen überwachen:

                          In manchen ioBroker-Umgebungen scheint die Abfrage von admin.0.info.connection (sowie bisher identifizierte Adapter mqtt und sonoff) kein Boolean zurückzugeben, sondern ein String wie etwa [2]admin, javascript. Ich kann es nicht

                          nur FYI - der sonoff-Adapter z.B. enthält per Definition im besagten DP "Liste der verbundenen Geräte" - dürfte also nie "boolean" liefern... 😉

                          1 Reply Last reply Reply Quote 0
                          • david83
                            david83 @david83 last edited by

                            @david83 sagte in [Javascript] Adapter-Instanzen überwachen:

                            @Acgua

                            Hi, ich wollte das Script einmal ausprobieren und habe das npm Modul cron-parser aktiviert.
                            Dann das Log kontrolliert. Folgende Meldungen:

                            	2022-07-19 14:18:39.627	error	WARN deprecated coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
                            
                            javascript.0
                            2022-07-19 14:18:39.626	error	npm
                            
                            javascript.0
                            2022-07-19 14:18:39.599	error	WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
                            
                            javascript.0
                            2022-07-19 14:18:39.598	error	npm
                            
                            javascript.0
                            2022-07-19 14:18:39.577	error	WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
                            
                            javascript.0
                            2022-07-19 14:18:39.576	error	npm
                            
                            javascript.0
                            2022-07-19 14:18:39.538	error	WARN deprecated node-inspect@2.0.0: This module is part of Node.js core and does not need to be installed separately. It is now unmaintained.
                            
                            javascript.0
                            2022-07-19 14:18:39.537	error	npm
                            
                            javascript.0
                            2022-07-19 14:18:39.480	error	WARN deprecated har-validator@5.1.5: this library is no longer supported
                            
                            javascript.0
                            2022-07-19 14:18:39.479	error	npm
                            
                            javascript.0
                            2022-07-19 14:18:37.412	error	WARN config production Use `--omit=dev` instead.
                            
                            javascript.0
                            2022-07-19 14:18:37.411	error	npm
                            

                            Ist das so richtig?

                            Kann zu den Ausgaben im Log jemand mit etwas mehr Hintergrundwissen was sagen?

                            R Thomas Braun 2 Replies Last reply Reply Quote 0
                            • R
                              Rushmed Most Active @david83 last edited by

                              @david83 sagte in [Javascript] Adapter-Instanzen überwachen:

                              @david83 sagte in [Javascript] Adapter-Instanzen überwachen:

                              @Acgua

                              Hi, ich wollte das Script einmal ausprobieren und habe das npm Modul cron-parser aktiviert.
                              Dann das Log kontrolliert. Folgende Meldungen:

                              	2022-07-19 14:18:39.627	error	WARN deprecated coffee-script@1.12.7: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
                              
                              javascript.0
                              2022-07-19 14:18:39.626	error	npm
                              
                              javascript.0
                              2022-07-19 14:18:39.599	error	WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
                              
                              javascript.0
                              2022-07-19 14:18:39.598	error	npm
                              
                              javascript.0
                              2022-07-19 14:18:39.577	error	WARN deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
                              
                              javascript.0
                              2022-07-19 14:18:39.576	error	npm
                              
                              javascript.0
                              2022-07-19 14:18:39.538	error	WARN deprecated node-inspect@2.0.0: This module is part of Node.js core and does not need to be installed separately. It is now unmaintained.
                              
                              javascript.0
                              2022-07-19 14:18:39.537	error	npm
                              
                              javascript.0
                              2022-07-19 14:18:39.480	error	WARN deprecated har-validator@5.1.5: this library is no longer supported
                              
                              javascript.0
                              2022-07-19 14:18:39.479	error	npm
                              
                              javascript.0
                              2022-07-19 14:18:37.412	error	WARN config production Use `--omit=dev` instead.
                              
                              javascript.0
                              2022-07-19 14:18:37.411	error	npm
                              

                              Ist das so richtig?

                              Kann zu den Ausgaben im Log jemand mit etwas mehr Hintergrundwissen was sagen?

                              Würde mich auch interessieren.

                              1 Reply Last reply Reply Quote 0
                              • Thomas Braun
                                Thomas Braun Most Active @david83 last edited by

                                @david83

                                Alles harmlose Hinweise auf Änderungen. Die meisten werden sich mit künftigen Updates erledigen.

                                1 Reply Last reply Reply Quote 2
                                • T
                                  TotalEclipse @wilbur last edited by

                                  @wilbur said in [Javascript] Adapter-Instanzen überwachen:

                                  Ich hab dafür ein kleines Blockly nach diesem Muster: machs-smart.de
                                  Und das funktioniert bisher sehr zuverlässig.
                                  Das meldet, wenn eine Instanz nicht mehr läuft.

                                  Danke für die Inspirationen hier im Beitrag.
                                  Ich habs auch mit der machs-smart Methode durch Blockly gelöst.

                                  Bin zwar Senior Developer (allerdings nicht für JS haha), daher ist dieses grafische Programmieren mal ganz erfrischend 🙂

                                  Ich nutze es für die Überwachung des ZigBee Adapters, da ich eine Art Bewegungsmelder realisiert habe und mitbekommen muss, wenn die Geräte selbst durch ausgefallenen Adapter nicht erreichbar sind.

                                  1 Reply Last reply Reply Quote 0
                                  • Acgua
                                    Acgua @Guest last edited by

                                    @ciddi89 said in [Javascript] Adapter-Instanzen überwachen:

                                    @acgua danke, hab die neue Version gleich ausprobiert. 🙂 Vielen dank für die Arbeit. Das log sieht nun so aus:

                                    @frana120500 said in [Javascript] Adapter-Instanzen überwachen:

                                    ich habe auch mal die 0.0.2 ausprobiert und erhalten folgende warnings im log:

                                    @jleg said in [Javascript] Adapter-Instanzen überwachen:

                                    nur FYI - der sonoff-Adapter z.B. enthält per Definition im besagten DP "Liste der verbundenen Geräte" - dürfte also nie "boolean" liefern...

                                    Vielen Dank für eure Rückmeldungen.
                                    Ich werde das Script in einen eigenen Adapter umwandeln, da kann ich einfach vieles besser handhaben im Code als über ein Script im JS-Adapter.
                                    Wird aber noch etwas dauern.

                                    1 Reply Last reply Reply Quote 0
                                    • Acgua
                                      Acgua @wilbur last edited by

                                      @wilbur said in [Javascript] Adapter-Instanzen überwachen:

                                      Ich hab dafür ein kleines Blockly nach diesem Muster: machs-smart.de
                                      Und das funktioniert bisher sehr zuverlässig.
                                      Das meldet, wenn eine Instanz nicht mehr läuft.

                                      @totaleclipse said in [Javascript] Adapter-Instanzen überwachen:

                                      Danke für die Inspirationen hier im Beitrag.
                                      Ich habs auch mit der machs-smart Methode durch Blockly gelöst.
                                      Bin zwar Senior Developer (allerdings nicht für JS haha), daher ist dieses grafische Programmieren mal ganz erfrischend
                                      Ich nutze es für die Überwachung des ZigBee Adapters, da ich eine Art Bewegungsmelder realisiert habe und mitbekommen muss, wenn die Geräte selbst durch ausgefallenen Adapter nicht erreichbar sind.

                                      Sehr gut, wenn es immer zuverlässig funktioniert in diesen Use Cases ☺
                                      Hier wird wohl allerdings nur der system.adapter.<Instanz>.connected Datenpunkt abgefragt. Das funktioniert erst mal auch soweit, aber halt nicht zuverlässig, da es noch weitere Datenpunkte gibt, die auch zu betrachten sind, vor allem im Fehler-Fall des Adapters. Ich habe das teils hier beschrieben: https://github.com/Acgua/ioBroker-Script-Adapter-Instances-Watcher/
                                      Außerdem kann man bei Schedule-Adapter (wie: daswetter) den .connected-State nicht verwenden, der bleibt leer, auch wenn das Schedule zuverlässig läuft (oder nicht).

                                      T 1 Reply Last reply Reply Quote 0
                                      • T
                                        TotalEclipse @Acgua last edited by

                                        @acgua said in [Javascript] Adapter-Instanzen überwachen:

                                        Sehr gut, wenn es immer zuverlässig funktioniert in diesen Use Cases ☺
                                        Hier wird wohl allerdings nur der system.adapter.<Instanz>.connected Datenpunkt abgefragt. Das funktioniert erst mal auch soweit, aber halt nicht zuverlässig, da es noch weitere Datenpunkte gibt, die auch zu betrachten sind, vor allem im Fehler-Fall des Adapters. Ich habe das teils hier beschrieben: https://github.com/Acgua/ioBroker-Script-Adapter-Instances-Watcher/
                                        Außerdem kann man bei Schedule-Adapter (wie: daswetter) den .connected-State nicht verwenden, der bleibt leer, auch wenn das Schedule zuverlässig läuft (oder nicht).

                                        Danke für die ausführlichen Informationen.
                                        Dann werde ich mir dein Skript wohl doch mal genauer ansehen.
                                        Ich wollte deine Leistung auch keinesfalls schmälern, finde wie gesagt nur die grafische Methode zu "programmieren" sehr angenehm als Abwechslung. Aber natürlich blöd, wenn das nicht alle Fälle abdeckt.

                                        1 Reply Last reply Reply Quote 0
                                        • K
                                          Kusi last edited by

                                          Hallo @Acgua

                                          Danke für das Skript.
                                          Folgender Log-Eintrag erscheint bei mir, wenn ich eine Instanz lösche:

                                          
                                          javascript.0
                                          2023-09-11 02:49:27.045	error	script.js.Instanz_überprüfen.Instanz_Watcher: TypeError: Cannot read properties of undefined (reading 'name') at AdapterInstance.asyncUpdateInfoVariables (script.js.Instanz_überprüfen.Instanz_Watcher:317:44) at AdapterInstance._initAdapterInstance_StateUpdatesAsync (script.js.Instanz_überprüfen.Instanz_Watcher:298:17)
                                          
                                          javascript.0
                                          2023-09-11 02:49:27.045	warn	script.js.Instanz_überprüfen.Instanz_Watcher: Adapter object 'system.adapter.roomba.0' does not exist for given id 'roomba.0'.
                                          

                                          Ist dies ein Fehler im Skript?

                                          1 Reply Last reply Reply Quote 0
                                          • K
                                            Kusi last edited by

                                            @Acgua

                                            Beim erstmaligen Start des Skripts, habe ich folgendes im Log:

                                            
                                            javascript.0
                                            2023-09-11 02:55:26.240	error	WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
                                            
                                            javascript.0
                                            2023-09-11 02:55:26.238	error	npm
                                            
                                            javascript.0
                                            2023-09-11 02:55:26.099	error	deprecated uuid@3.4.0: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
                                            
                                            javascript.0
                                            2023-09-11 02:55:26.097	error	npm WARN
                                            
                                            javascript.0
                                            2023-09-11 02:55:26.010	error	WARN deprecated node-inspect@2.0.0: This module is part of Node.js core and does not need to be installed separately. It is now unmaintained.
                                            
                                            javascript.0
                                            2023-09-11 02:55:26.009	error	npm
                                            
                                            javascript.0
                                            2023-09-11 02:55:25.738	error	WARN deprecated har-validator@5.1.5: this library is no longer supported
                                            
                                            javascript.0
                                            2023-09-11 02:55:25.736	error	npm
                                            
                                            mikeal created this issue in request/request

                                            open Request’s Past, Present and Future #3142

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            912
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            12
                                            34
                                            3040
                                            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