Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. View Adapter Status

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.9k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.4k

View Adapter Status

Scheduled Pinned Locked Moved Praktische Anwendungen (Showcase)
view adapterview
212 Posts 31 Posters 37.4k Views 52 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • NegaleinN Negalein

    @ub-privat sagte in View Adapter Status:

    keine Zustandsdarstellung, leider...

    probier mal dies.
    Ist jetzt nur das Admin-Icon und der Hintergrund.

    Musst die ID noch anpassen.

    [{"tpl":"tplValueListHtml8","data":{"oid":"system.adapter.admin.0.connected","count":"1","value0":"","value1":"","style1":"background-color: #02c908","style0":"background-color: #ff0000","value2":"333","style2":"background-color: orange","test_list":"0","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis.0/VIS/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis.0/VIS/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis.0/VIS/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"name":"Admin_Hintergrund","g_visibility":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide"},"style":{"left":"30px","top":"97px","color":"white","text-align":"left","font-family":"Arial, Helvetica, sans-serif","font-style":"normal","font-variant":"normal","font-weight":"bold","font-size":"large","width":"54px","height":"54px","z-index":"10","overflow-x":"","border-radius":"12px","box-shadow":"2px 2px 3px rgba(20, 20, 20, 50)"},"widgetSet":"basic"},{"tpl":"tplImage","data":{"g_fixed":true,"g_visibility":false,"g_css_font_text":true,"g_css_background":true,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"g_last_change":false,"refreshInterval":"0","lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"src":"/vis.0/VIS/Meine_Icons/Adapter_Icons/admin.png","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"name":"Admin_Bild","visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide"},"style":{"left":"32px","top":"99px","width":"46px","height":"46px","background":"#424242","border-radius":"10px","background-color":"#424242","border-style":"solid","border-width":"2px","z-index":"10","border-color":"#424242"},"widgetSet":"basic"}]
    
    ub.privatU Offline
    ub.privatU Offline
    ub.privat
    wrote on last edited by
    #62

    @Negalein & @sigi234

    perfekt! Jetzt klappt's!!!! Jippi... GROSSES DANKESCHÖN:+1: :+1:
    311e2fad-b7ce-43d6-a151-2e4e00650b9e-grafik.png

    Aber nun interessiert mich brennend, wo der Fehler steckt...
    Wenn ich die Einstellungen durchschaue, kann ich nicht wirklich einen Fehler entdecken!?

    sigi234S 1 Reply Last reply
    0
    • ub.privatU ub.privat

      @Negalein & @sigi234

      perfekt! Jetzt klappt's!!!! Jippi... GROSSES DANKESCHÖN:+1: :+1:
      311e2fad-b7ce-43d6-a151-2e4e00650b9e-grafik.png

      Aber nun interessiert mich brennend, wo der Fehler steckt...
      Wenn ich die Einstellungen durchschaue, kann ich nicht wirklich einen Fehler entdecken!?

      sigi234S Online
      sigi234S Online
      sigi234
      Forum Testing Most Active
      wrote on last edited by
      #63

      @ub-privat sagte in View Adapter Status:

      Aber nun interessiert mich brennend, wo der Fehler steckt...
      Wenn ich die Einstellungen durchschaue, kann ich nicht wirklich einen Fehler entdecken!?

      Entscheidend ist der z-index und die Größe vom Bild und es darf der Border Rahmen nicht aktiviert werden.

      Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
      Immer Daten sichern!

      ub.privatU 1 Reply Last reply
      1
      • sigi234S sigi234

        @ub-privat sagte in View Adapter Status:

        Aber nun interessiert mich brennend, wo der Fehler steckt...
        Wenn ich die Einstellungen durchschaue, kann ich nicht wirklich einen Fehler entdecken!?

        Entscheidend ist der z-index und die Größe vom Bild und es darf der Border Rahmen nicht aktiviert werden.

        ub.privatU Offline
        ub.privatU Offline
        ub.privat
        wrote on last edited by
        #64

        @sigi234

        ok, werde demnoch mal die gesamt VIS durchforsten... Das beste daran, wieder etwas gelernt! DANKE

        1 Reply Last reply
        0
        • K Kuddel

          @Oli ich habe mir deinen View kopiert und passe den gerade an.

          Leider wird das Bild nicht korrekt angezeigt.

          Im Datenobjekt selber, sind die Werte aber korrekt eingetragen:

          546e6a0a-8941-4dba-83dc-4b7bbcab3101-grafik.png

          EDIT: Das Bild wird doch korrekt angezeigt.

          Kann ich es auch unter "Signalbilder" verwenen, damit das Bild blinkt, wenn der Adapter nicht connected ist ?

          EDIT2: Funktioniert. Im VIS Editor werden die BIlder nur nicht angezeigt, in der letzlichen VIS schon

          O Offline
          O Offline
          Oli
          wrote on last edited by Oli
          #65

          @Kuddel

          freut mich, dass es funktioniert und ich dir auch mal was zur Verfügung stellen konnte :-)

          Verbesserungsvorschläge nehme ich immer gerne entgegen.

          Gruß
          Oliver

          K 1 Reply Last reply
          0
          • G Offline
            G Offline
            G4l4h4d
            wrote on last edited by G4l4h4d
            #66

            Ich habe auch das Problem das der Status sich nicht ändert, allerdings ändert sich der Zustand in den Objekten auch nicht.
            Habe meine hue und meine NAS mal Stromlos geschaltet aber in den Objekten ändert sich der Status nicht. Er zeigt immer noch true an und auch die restlichen DP aktualiseren sich nicht.

            hue_1.png

            Woran könnte das liegen?

            1 Reply Last reply
            0
            • O Oli

              @Kuddel

              freut mich, dass es funktioniert und ich dir auch mal was zur Verfügung stellen konnte :-)

              Verbesserungsvorschläge nehme ich immer gerne entgegen.

              K Offline
              K Offline
              Kuddel
              wrote on last edited by Kuddel
              #67

              @Oli ich habe meine Übersicht jetzt soweit auf dein Skript angepasst.

              Ich habe einen zusätzliche DP (Alive) erstellt, um den Adapter per VIS zu deaktivieren.

              Leider setzt der Schalter in der VIS die jweilige Instanz nicht auf false.

              Hast du eine Idee dazu ?

              31ad5f4e-c3f4-49ab-ba18-221467511dfa-grafik.png

              Schalter für den Adapter Alexa2

              [{"tpl":"tplHqButton","data":{"oid":"javascript.0.Adapter.Adapter2.Alive","min":"false","max":"true","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":"0","signals-icon-0":"{javascript.0.Adapter.Adapter2.Bild}","signals-icon-size-0":"40","signals-blink-0":true,"signals-horz-0":"10","signals-vert-0":"10","signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":"1","signals-icon-1":"{javascript.0.Adapter.Adapter2.Bild}","signals-icon-size-1":"40","signals-blink-1":false,"signals-horz-1":"10","signals-vert-1":"10","signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":"2","signals-icon-2":"{javascript.0.Adapter.Adapter2.Bild}","signals-icon-size-2":"40","signals-blink-2":true,"signals-horz-2":"10","signals-vert-2":"10","signals-hide-edit-2":false,"pushButton":false,"usejQueryStyle":false,"g_visibility":false,"styleActive":"hq-button-no-background","name":"Bild","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15","gestures-swipeLeft-limit":"-1","gestures-rotateLeft-limit":"2","styleNormal":"hq-button-no-background","testActive":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"descriptionLeft":"Side brush lifetime reset","descriptionLeftDisabled":true,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-oid-0":"javascript.0.Adapter.Adapter2.Connected","signals-oid-1":"javascript.0.Adapter.Adapter2.Connected","g_center":true,"iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","signals-oid-2":"javascript.0.Adapter.Adapter2.Connected"},"style":{"left":"25px","top":"5px","width":"50px","height":"50px","border-width":"","border-style":"","border-color":"","border-radius":"10px","z-index":"20","text-align":"center","font-size":"small","box-shadow":"","background":"#212121","background-color":"#212121"},"widgetSet":"hqwidgets"}]
              

              O 1 Reply Last reply
              0
              • K Kuddel

                @Oli ich habe meine Übersicht jetzt soweit auf dein Skript angepasst.

                Ich habe einen zusätzliche DP (Alive) erstellt, um den Adapter per VIS zu deaktivieren.

                Leider setzt der Schalter in der VIS die jweilige Instanz nicht auf false.

                Hast du eine Idee dazu ?

                31ad5f4e-c3f4-49ab-ba18-221467511dfa-grafik.png

                Schalter für den Adapter Alexa2

                [{"tpl":"tplHqButton","data":{"oid":"javascript.0.Adapter.Adapter2.Alive","min":"false","max":"true","timeAsInterval":"true","infoLeftFontSize":"12","infoFontRightSize":"12","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":"0","signals-icon-0":"{javascript.0.Adapter.Adapter2.Bild}","signals-icon-size-0":"40","signals-blink-0":true,"signals-horz-0":"10","signals-vert-0":"10","signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":"1","signals-icon-1":"{javascript.0.Adapter.Adapter2.Bild}","signals-icon-size-1":"40","signals-blink-1":false,"signals-horz-1":"10","signals-vert-1":"10","signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":"2","signals-icon-2":"{javascript.0.Adapter.Adapter2.Bild}","signals-icon-size-2":"40","signals-blink-2":true,"signals-horz-2":"10","signals-vert-2":"10","signals-hide-edit-2":false,"pushButton":false,"usejQueryStyle":false,"g_visibility":false,"styleActive":"hq-button-no-background","name":"Bild","infoLeftPaddingLeft":"15","infoLeftPaddingRight":"50","infoRightPaddingRight":"15","gestures-swipeLeft-limit":"-1","gestures-rotateLeft-limit":"2","styleNormal":"hq-button-no-background","testActive":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"descriptionLeft":"Side brush lifetime reset","descriptionLeftDisabled":true,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","signals-oid-0":"javascript.0.Adapter.Adapter2.Connected","signals-oid-1":"javascript.0.Adapter.Adapter2.Connected","g_center":true,"iconName":"","btIconWidth":"56","offsetAuto":"true","leftOffset":"15","topOffset":"55","signals-oid-2":"javascript.0.Adapter.Adapter2.Connected"},"style":{"left":"25px","top":"5px","width":"50px","height":"50px","border-width":"","border-style":"","border-color":"","border-radius":"10px","z-index":"20","text-align":"center","font-size":"small","box-shadow":"","background":"#212121","background-color":"#212121"},"widgetSet":"hqwidgets"}]
                

                O Offline
                O Offline
                Oli
                wrote on last edited by
                #68

                @Kuddel

                das wollte ich eigentlich mit dem Connected Datenpunkt so machen, hat auch nicht funktioniert.

                Hast du schon mal versucht mit dem Schalter ein zusätzliches Script auszuführen?

                Ich würde mir noch einen Datenpunkt anlegen, nur für den Schalter, sobald sich dieser ändert, dass zusätzliche Script starten.

                Kann ich aber erst heute Abend testen, wenn ich zu Hause bin.

                Gruß
                Oliver

                K 1 Reply Last reply
                0
                • O Oli

                  @Kuddel

                  das wollte ich eigentlich mit dem Connected Datenpunkt so machen, hat auch nicht funktioniert.

                  Hast du schon mal versucht mit dem Schalter ein zusätzliches Script auszuführen?

                  Ich würde mir noch einen Datenpunkt anlegen, nur für den Schalter, sobald sich dieser ändert, dass zusätzliche Script starten.

                  Kann ich aber erst heute Abend testen, wenn ich zu Hause bin.

                  K Offline
                  K Offline
                  Kuddel
                  wrote on last edited by
                  #69

                  @Oli den Schalter sleber habe ich mir aus meiner VIS kopiert, wo der Alive DP fest hinterlegt war.

                  In der Konfiguration kann man die Instanz dann auch deaktivieren.

                  O 1 Reply Last reply
                  0
                  • K Kuddel

                    @Oli den Schalter sleber habe ich mir aus meiner VIS kopiert, wo der Alive DP fest hinterlegt war.

                    In der Konfiguration kann man die Instanz dann auch deaktivieren.

                    O Offline
                    O Offline
                    Oli
                    wrote on last edited by Oli
                    #70

                    @Kuddel

                    versuche mal im Wiget die oid in Schweifklammern zu setzen

                    Edit:
                    Habe es getestet funktioniert bei mir mit den Klammern.

                    Gruß
                    Oliver

                    K 1 Reply Last reply
                    0
                    • O Oli

                      @Kuddel

                      versuche mal im Wiget die oid in Schweifklammern zu setzen

                      Edit:
                      Habe es getestet funktioniert bei mir mit den Klammern.

                      K Offline
                      K Offline
                      Kuddel
                      wrote on last edited by
                      #71

                      @Oli echt ? Bei mir geht es nicht.

                      Magst du vllt. deinen Schalter exportieren und zur Verfügung stellen?

                      O 1 Reply Last reply
                      0
                      • K Kuddel

                        @Oli echt ? Bei mir geht es nicht.

                        Magst du vllt. deinen Schalter exportieren und zur Verfügung stellen?

                        O Offline
                        O Offline
                        Oli
                        wrote on last edited by
                        #72

                        @Kuddel

                        ich hab den von dir genommen :-)

                        ich habe das beim Bing Adapter ausprobiert, dieser ging allerdings nach kurzer Zeit von sich aus wieder auf true, woran das liegt kann ich dir nicht sagen.

                        Habe noch einen kleinen Fehler im Script gefunden

                        if(connect == false){
                                        var con = 0;    
                                    } else {                
                                        var con = 1;
                                        var strStatePath = devicenameName + ".info.connection";
                                        if (isState(strStatePath, true)) {
                                            var connectS = getState(devicenameName + ".info.connection").val;
                                            if (connectS == false) {
                                                con = 2;
                                            }                                                                        
                                        } 
                                    }
                                                          
                                }
                        

                        Steht bei mir im Script ab Zeile 33.

                        Gruß
                        Oliver

                        1 Reply Last reply
                        0
                        • sigi234S sigi234

                          @Bachmann77 sagte in View Adapter Status:

                          @sigi234
                          hät ja gern mal gesehen wie deine komplette vis aussieht :)

                          Ja ist nur ein Ausschnitt davon.

                          Ich baue gerade meine komplette Vis auf vis-materialdesign von @Scrounger um. Hier einige Beispiele:

                          Screenshot (542).png

                          Screenshot (540).png

                          Screenshot (538).png

                          Screenshot (536).png

                          Screenshot (534).png

                          Screenshot (532).png

                          Screenshot (530).png

                          Screenshot (528).png

                          Das Menü lässt sich natürlich ausblenden.

                          S Offline
                          S Offline
                          saeft_2003
                          Most Active
                          wrote on last edited by
                          #73

                          @sigi234 sagte in View Adapter Status:

                          @Bachmann77 sagte in View Adapter Status:

                          @sigi234
                          hät ja gern mal gesehen wie deine komplette vis aussieht :)

                          Ja ist nur ein Ausschnitt davon.

                          Ich baue gerade meine komplette Vis auf vis-materialdesign von @Scrounger um. Hier einige Beispiele:

                          Screenshot (540).png

                          Würdest du mir die widgets mit denen du den Füllstand des Toners anzeigen lässt zu Verfügung stellen?

                          sigi234S 1 Reply Last reply
                          0
                          • S saeft_2003

                            @sigi234 sagte in View Adapter Status:

                            @Bachmann77 sagte in View Adapter Status:

                            @sigi234
                            hät ja gern mal gesehen wie deine komplette vis aussieht :)

                            Ja ist nur ein Ausschnitt davon.

                            Ich baue gerade meine komplette Vis auf vis-materialdesign von @Scrounger um. Hier einige Beispiele:

                            Screenshot (540).png

                            Würdest du mir die widgets mit denen du den Füllstand des Toners anzeigen lässt zu Verfügung stellen?

                            sigi234S Online
                            sigi234S Online
                            sigi234
                            Forum Testing Most Active
                            wrote on last edited by
                            #74

                            @saeft_2003 sagte in View Adapter Status:

                            Würdest du mir die widgets mit denen du den Füllstand des Toners anzeigen lässt zu Verfügung stellen?

                            Widget_Toner.txt

                            Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                            Immer Daten sichern!

                            M 1 Reply Last reply
                            1
                            • S Offline
                              S Offline
                              saeft_2003
                              Most Active
                              wrote on last edited by
                              #75

                              Danke :-) :+1:

                              1 Reply Last reply
                              0
                              • ScroungerS Offline
                                ScroungerS Offline
                                Scrounger
                                Developer
                                wrote on last edited by Scrounger
                                #76

                                @sigi234 vielen Dank für die Inspiration für den Adapter Status.

                                Da ich aber ein fauler Mensch bin ;) und keine Lust habe jedes Mal das Widget anpassen zu müssen, wenn ich einen neuen Adapter hinzufüge oder entferne, habe ich das ganze mit nem Skript und meinem IconList Widget dynamisch erzeugt. (Adapter Version v0.2.59 - demnächst im latest !!!)
                                Vorteil des Widget ist, dass es responsiv ist (ein layout für Handy, Tablet, Desktop) und man auch noch die Adapter starten bzw. neustarten kann :sunglasses:

                                iconList_adapterStatus.gif

                                View zum importieren

                                {
                                  "settings": {
                                    "style": {
                                      "background_class": ""
                                    },
                                    "theme": "redmond",
                                    "sizex": "",
                                    "sizey": "",
                                    "gridSize": "",
                                    "snapType": null
                                  },
                                  "widgets": {
                                    "e00001": {
                                      "tpl": "tplVis-materialdesign-Icon-List",
                                      "data": {
                                        "g_fixed": false,
                                        "g_visibility": false,
                                        "g_css_font_text": false,
                                        "g_css_background": false,
                                        "g_css_shadow_padding": false,
                                        "g_css_border": false,
                                        "g_gestures": false,
                                        "g_signals": false,
                                        "g_last_change": false,
                                        "visibility-cond": "==",
                                        "visibility-val": 1,
                                        "visibility-groups-action": "hide",
                                        "wrapItems": "true",
                                        "listItemDataMethod": "jsonStringObject",
                                        "countListItems": "1",
                                        "vibrateOnMobilDevices": "50",
                                        "listLayout": "card",
                                        "itemLayout": "horizontal",
                                        "listType0": "text",
                                        "showValueLabel0": "true",
                                        "listType1": "text",
                                        "showValueLabel1": "true",
                                        "signals-cond-0": "==",
                                        "signals-val-0": true,
                                        "signals-icon-0": "/vis/signals/lowbattery.png",
                                        "signals-icon-size-0": 0,
                                        "signals-blink-0": false,
                                        "signals-horz-0": 0,
                                        "signals-vert-0": 0,
                                        "signals-hide-edit-0": false,
                                        "signals-cond-1": "==",
                                        "signals-val-1": true,
                                        "signals-icon-1": "/vis/signals/lowbattery.png",
                                        "signals-icon-size-1": 0,
                                        "signals-blink-1": false,
                                        "signals-horz-1": 0,
                                        "signals-vert-1": 0,
                                        "signals-hide-edit-1": false,
                                        "signals-cond-2": "==",
                                        "signals-val-2": true,
                                        "signals-icon-2": "/vis/signals/lowbattery.png",
                                        "signals-icon-size-2": 0,
                                        "signals-blink-2": false,
                                        "signals-horz-2": 0,
                                        "signals-vert-2": 0,
                                        "signals-hide-edit-2": false,
                                        "lc-type": "last-change",
                                        "lc-is-interval": true,
                                        "lc-is-moment": false,
                                        "lc-format": "",
                                        "lc-position-vert": "top",
                                        "lc-position-horz": "right",
                                        "lc-offset-vert": 0,
                                        "lc-offset-horz": 0,
                                        "lc-font-size": "12px",
                                        "lc-font-family": "",
                                        "lc-font-style": "",
                                        "lc-bkg-color": "",
                                        "lc-color": "",
                                        "lc-border-width": "0",
                                        "lc-border-style": "",
                                        "lc-border-color": "",
                                        "lc-border-radius": 10,
                                        "lc-zindex": 0,
                                        "jsonStringObject": "{0_userdata.0.vis.AdapterStatus.jsonList}",
                                        "maxItemsperRow": "6",
                                        "iconHeight": "60",
                                        "verticalIconContainerWidth": "100",
                                        "labelFontSize": "20",
                                        "labelFontFamily": "RobotoCondensed-Regular",
                                        "iconItemMinWidth": "290",
                                        "labelFontColor": "",
                                        "valueFontFamily": "",
                                        "subLabelFontFamily": "RobotoCondensed-Regular",
                                        "subLabelFontSize": "14",
                                        "subLabelFontColor": "#000000",
                                        "oid": "0_userdata.0.AdapterStatus.jsonList",
                                        "label0": ""
                                      },
                                      "style": {
                                        "left": "0px",
                                        "top": "0px",
                                        "width": "100%",
                                        "height": "100%",
                                        "overflow-y": "auto"
                                      },
                                      "widgetSet": "materialdesign"
                                    }
                                  },
                                  "name": "AdapterStatus",
                                  "filterList": []
                                }
                                

                                Skript, Datenpunkte müsst ihr entsprechend erstellen und anpassen - siehe Kommentare im skript!
                                Achtung wenn ich Bindings verwende geht meine vis in die Knie, deshalb wird das skript zyklisch aufgerufen.

                                // Imports
                                const moment = require("moment");
                                const momentDurationFormatSetup = require("moment-duration-format");
                                moment.locale("de");
                                
                                // Fomate für moment Lib
                                let durationFormat = "dd[T] hh[h] mm[m]";
                                
                                let adapterSelector = `[id=system.adapter.*.alive]`;
                                let adapterAliveList = $(adapterSelector);
                                
                                // Datenpunkt für IconList Widget
                                let dpList = '0_userdata.0.vis.AdapterStatus.jsonList';
                                
                                // Datenpunkt für Adapter restart
                                let dpAdapterRestart = '0_userdata.0.vis.AdapterStatus.restartTrigger';
                                
                                // interval die adapterStatus Funktion augerufen wird (in Sekunden)
                                const checkInterval = 30;
                                
                                // Fehlermeldung ausgeben, wenn selector kein result liefert
                                if (adapterAliveList.length === 0) {
                                    console.error(`no result for selector '${adapterSelector}'`)
                                }
                                
                                adapterAliveList.on(adapterStatus);                                             // listener nur für Änderung bei alive
                                
                                // Funktion adapterStatus alle x Sekunden ausführen
                                schedule('*/'+ checkInterval + ' * * * * *', adapterStatus);
                                
                                function adapterStatus() {
                                    let adapterList = [];
                                
                                    try {
                                        for (var i = 0; i <= adapterAliveList.length - 1; i++) {
                                            let id = adapterAliveList[i].replace('.alive', '');
                                            let obj = getObject(adapterAliveList[i].replace('.alive', ''));
                                
                                            let nameArray = id.replace('system.adapter.', '').split(".");
                                
                                            let name = nameArray[0];
                                            name = name.charAt(0).toUpperCase() + name.slice(1);
                                
                                            let nameWithInstance = name;
                                            let adapterInstance = nameArray[1];
                                            if (adapterInstance > 0) {
                                                nameWithInstance = name + '.' + adapterInstance;
                                            }
                                
                                            let uptime = `{d:${id + '.uptime'};Math.floor( ((d)/60/60/24) )}T {h:${id + '.uptime'};Math.floor( ((h)/60/60) % 24 )}h 
                                            {m:${id + '.uptime'};Math.floor( ((m)/60) % 60 )}m`
                                
                                            let text = `<div style="display: flex; flex-direction: row; line-height: 1.5; padding-right: 8px; align-items: center;">
                                                            <div style="flex: 1">${nameWithInstance}</div>
                                                            <div style="color: grey; font-size: 12px; font-family: RobotoCondensed-LightItalic;">v${obj.common.version}</div>
                                                        </div>`
                                
                                            let subText = `<div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                <div style="flex: 1">CPU</div>
                                                                <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.cpu').val} % %</div>
                                                            </div>
                                                            <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                <div style="flex: 1">RAM total</div>
                                                                <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memHeapTotal').val} MB</div>
                                                            </div>
                                                            <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                <div style="flex: 1">RAM verwendet</div>
                                                                <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memHeapUsed').val} MB</div>
                                                            </div>
                                                            <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                <div style="flex: 1">RAM reserviert</div>
                                                                <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memRss').val} MB</div>
                                                            </div>
                                                            <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                <div style="flex: 1">Betriebszeit</div>
                                                                <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${moment.duration(getState(id + '.uptime').val, 'seconds').format(durationFormat, 0)}</div>
                                                            </div>`
                                
                                            adapterList.push({
                                                text: text,
                                                subText: subText,
                                                image: `/${nameArray[0]}.admin/${obj.common.icon}`,
                                                listType: "buttonState",
                                                objectId: dpAdapterRestart,
                                                buttonStateValue: id,
                                                statusBarColor: getStatusColor(),
                                                showValueLabel: false
                                            })
                                
                                            function getStatusColor() {
                                                let statusBarColor = 'FireBrick';
                                                if (getState(adapterAliveList[i]).val === true) {
                                                    statusBarColor = 'green';
                                                }
                                    
                                                if (obj.common.enabled === false) {
                                                    // Adapter ist deaktiviert
                                                    statusBarColor = 'darkgrey';
                                                }
                                    
                                                if (obj.common.mode === 'schedule') {
                                                    // Adapter ist zeitgesteuert
                                                    statusBarColor = 'orange';
                                                }
                                    
                                                return statusBarColor;
                                            }
                                        }
                                
                                    } catch (err) {
                                        console.error(`[adapterStatus] error: ${err.message}, stack: ${err.stack}`);
                                    }
                                
                                    let result = JSON.stringify(adapterList);
                                    if (getState(dpList) !== result) {
                                        setState(dpList, result, true);
                                    }
                                }
                                
                                adapterStatus();
                                
                                // Funktion um Adapter zu starten / neu starten
                                on({ id: dpAdapterRestart }, function (obj) {
                                    var adapter = getObject(obj.state.val.toString());
                                
                                    if (adapter.common.enabled === false) {
                                        // Adapter deaktiviert -> starten
                                        adapter.common.enabled = true;
                                    }
                                
                                    setObject(obj.state.val, adapter);
                                    console.log(`${obj.state.val.replace('system.adapter.', '')} neugestartet`);
                                });
                                

                                Javascript Adapter muss folgende libraries importieren und setObject aktiviert sein!
                                c5bd712d-c6a9-4d5a-8245-b1e405a229be-grafik.png

                                Weiß jemand noch wie wo man den Status abgreifen kann das ein Update für den Adapter zur Verfügung steht? Dann könnte ich noch ein Badget einfügen.

                                <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

                                <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

                                NegaleinN sigi234S 3 Replies Last reply
                                2
                                • ScroungerS Scrounger

                                  @sigi234 vielen Dank für die Inspiration für den Adapter Status.

                                  Da ich aber ein fauler Mensch bin ;) und keine Lust habe jedes Mal das Widget anpassen zu müssen, wenn ich einen neuen Adapter hinzufüge oder entferne, habe ich das ganze mit nem Skript und meinem IconList Widget dynamisch erzeugt. (Adapter Version v0.2.59 - demnächst im latest !!!)
                                  Vorteil des Widget ist, dass es responsiv ist (ein layout für Handy, Tablet, Desktop) und man auch noch die Adapter starten bzw. neustarten kann :sunglasses:

                                  iconList_adapterStatus.gif

                                  View zum importieren

                                  {
                                    "settings": {
                                      "style": {
                                        "background_class": ""
                                      },
                                      "theme": "redmond",
                                      "sizex": "",
                                      "sizey": "",
                                      "gridSize": "",
                                      "snapType": null
                                    },
                                    "widgets": {
                                      "e00001": {
                                        "tpl": "tplVis-materialdesign-Icon-List",
                                        "data": {
                                          "g_fixed": false,
                                          "g_visibility": false,
                                          "g_css_font_text": false,
                                          "g_css_background": false,
                                          "g_css_shadow_padding": false,
                                          "g_css_border": false,
                                          "g_gestures": false,
                                          "g_signals": false,
                                          "g_last_change": false,
                                          "visibility-cond": "==",
                                          "visibility-val": 1,
                                          "visibility-groups-action": "hide",
                                          "wrapItems": "true",
                                          "listItemDataMethod": "jsonStringObject",
                                          "countListItems": "1",
                                          "vibrateOnMobilDevices": "50",
                                          "listLayout": "card",
                                          "itemLayout": "horizontal",
                                          "listType0": "text",
                                          "showValueLabel0": "true",
                                          "listType1": "text",
                                          "showValueLabel1": "true",
                                          "signals-cond-0": "==",
                                          "signals-val-0": true,
                                          "signals-icon-0": "/vis/signals/lowbattery.png",
                                          "signals-icon-size-0": 0,
                                          "signals-blink-0": false,
                                          "signals-horz-0": 0,
                                          "signals-vert-0": 0,
                                          "signals-hide-edit-0": false,
                                          "signals-cond-1": "==",
                                          "signals-val-1": true,
                                          "signals-icon-1": "/vis/signals/lowbattery.png",
                                          "signals-icon-size-1": 0,
                                          "signals-blink-1": false,
                                          "signals-horz-1": 0,
                                          "signals-vert-1": 0,
                                          "signals-hide-edit-1": false,
                                          "signals-cond-2": "==",
                                          "signals-val-2": true,
                                          "signals-icon-2": "/vis/signals/lowbattery.png",
                                          "signals-icon-size-2": 0,
                                          "signals-blink-2": false,
                                          "signals-horz-2": 0,
                                          "signals-vert-2": 0,
                                          "signals-hide-edit-2": false,
                                          "lc-type": "last-change",
                                          "lc-is-interval": true,
                                          "lc-is-moment": false,
                                          "lc-format": "",
                                          "lc-position-vert": "top",
                                          "lc-position-horz": "right",
                                          "lc-offset-vert": 0,
                                          "lc-offset-horz": 0,
                                          "lc-font-size": "12px",
                                          "lc-font-family": "",
                                          "lc-font-style": "",
                                          "lc-bkg-color": "",
                                          "lc-color": "",
                                          "lc-border-width": "0",
                                          "lc-border-style": "",
                                          "lc-border-color": "",
                                          "lc-border-radius": 10,
                                          "lc-zindex": 0,
                                          "jsonStringObject": "{0_userdata.0.vis.AdapterStatus.jsonList}",
                                          "maxItemsperRow": "6",
                                          "iconHeight": "60",
                                          "verticalIconContainerWidth": "100",
                                          "labelFontSize": "20",
                                          "labelFontFamily": "RobotoCondensed-Regular",
                                          "iconItemMinWidth": "290",
                                          "labelFontColor": "",
                                          "valueFontFamily": "",
                                          "subLabelFontFamily": "RobotoCondensed-Regular",
                                          "subLabelFontSize": "14",
                                          "subLabelFontColor": "#000000",
                                          "oid": "0_userdata.0.AdapterStatus.jsonList",
                                          "label0": ""
                                        },
                                        "style": {
                                          "left": "0px",
                                          "top": "0px",
                                          "width": "100%",
                                          "height": "100%",
                                          "overflow-y": "auto"
                                        },
                                        "widgetSet": "materialdesign"
                                      }
                                    },
                                    "name": "AdapterStatus",
                                    "filterList": []
                                  }
                                  

                                  Skript, Datenpunkte müsst ihr entsprechend erstellen und anpassen - siehe Kommentare im skript!
                                  Achtung wenn ich Bindings verwende geht meine vis in die Knie, deshalb wird das skript zyklisch aufgerufen.

                                  // Imports
                                  const moment = require("moment");
                                  const momentDurationFormatSetup = require("moment-duration-format");
                                  moment.locale("de");
                                  
                                  // Fomate für moment Lib
                                  let durationFormat = "dd[T] hh[h] mm[m]";
                                  
                                  let adapterSelector = `[id=system.adapter.*.alive]`;
                                  let adapterAliveList = $(adapterSelector);
                                  
                                  // Datenpunkt für IconList Widget
                                  let dpList = '0_userdata.0.vis.AdapterStatus.jsonList';
                                  
                                  // Datenpunkt für Adapter restart
                                  let dpAdapterRestart = '0_userdata.0.vis.AdapterStatus.restartTrigger';
                                  
                                  // interval die adapterStatus Funktion augerufen wird (in Sekunden)
                                  const checkInterval = 30;
                                  
                                  // Fehlermeldung ausgeben, wenn selector kein result liefert
                                  if (adapterAliveList.length === 0) {
                                      console.error(`no result for selector '${adapterSelector}'`)
                                  }
                                  
                                  adapterAliveList.on(adapterStatus);                                             // listener nur für Änderung bei alive
                                  
                                  // Funktion adapterStatus alle x Sekunden ausführen
                                  schedule('*/'+ checkInterval + ' * * * * *', adapterStatus);
                                  
                                  function adapterStatus() {
                                      let adapterList = [];
                                  
                                      try {
                                          for (var i = 0; i <= adapterAliveList.length - 1; i++) {
                                              let id = adapterAliveList[i].replace('.alive', '');
                                              let obj = getObject(adapterAliveList[i].replace('.alive', ''));
                                  
                                              let nameArray = id.replace('system.adapter.', '').split(".");
                                  
                                              let name = nameArray[0];
                                              name = name.charAt(0).toUpperCase() + name.slice(1);
                                  
                                              let nameWithInstance = name;
                                              let adapterInstance = nameArray[1];
                                              if (adapterInstance > 0) {
                                                  nameWithInstance = name + '.' + adapterInstance;
                                              }
                                  
                                              let uptime = `{d:${id + '.uptime'};Math.floor( ((d)/60/60/24) )}T {h:${id + '.uptime'};Math.floor( ((h)/60/60) % 24 )}h 
                                              {m:${id + '.uptime'};Math.floor( ((m)/60) % 60 )}m`
                                  
                                              let text = `<div style="display: flex; flex-direction: row; line-height: 1.5; padding-right: 8px; align-items: center;">
                                                              <div style="flex: 1">${nameWithInstance}</div>
                                                              <div style="color: grey; font-size: 12px; font-family: RobotoCondensed-LightItalic;">v${obj.common.version}</div>
                                                          </div>`
                                  
                                              let subText = `<div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                  <div style="flex: 1">CPU</div>
                                                                  <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.cpu').val} % %</div>
                                                              </div>
                                                              <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                  <div style="flex: 1">RAM total</div>
                                                                  <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memHeapTotal').val} MB</div>
                                                              </div>
                                                              <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                  <div style="flex: 1">RAM verwendet</div>
                                                                  <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memHeapUsed').val} MB</div>
                                                              </div>
                                                              <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                  <div style="flex: 1">RAM reserviert</div>
                                                                  <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memRss').val} MB</div>
                                                              </div>
                                                              <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                  <div style="flex: 1">Betriebszeit</div>
                                                                  <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${moment.duration(getState(id + '.uptime').val, 'seconds').format(durationFormat, 0)}</div>
                                                              </div>`
                                  
                                              adapterList.push({
                                                  text: text,
                                                  subText: subText,
                                                  image: `/${nameArray[0]}.admin/${obj.common.icon}`,
                                                  listType: "buttonState",
                                                  objectId: dpAdapterRestart,
                                                  buttonStateValue: id,
                                                  statusBarColor: getStatusColor(),
                                                  showValueLabel: false
                                              })
                                  
                                              function getStatusColor() {
                                                  let statusBarColor = 'FireBrick';
                                                  if (getState(adapterAliveList[i]).val === true) {
                                                      statusBarColor = 'green';
                                                  }
                                      
                                                  if (obj.common.enabled === false) {
                                                      // Adapter ist deaktiviert
                                                      statusBarColor = 'darkgrey';
                                                  }
                                      
                                                  if (obj.common.mode === 'schedule') {
                                                      // Adapter ist zeitgesteuert
                                                      statusBarColor = 'orange';
                                                  }
                                      
                                                  return statusBarColor;
                                              }
                                          }
                                  
                                      } catch (err) {
                                          console.error(`[adapterStatus] error: ${err.message}, stack: ${err.stack}`);
                                      }
                                  
                                      let result = JSON.stringify(adapterList);
                                      if (getState(dpList) !== result) {
                                          setState(dpList, result, true);
                                      }
                                  }
                                  
                                  adapterStatus();
                                  
                                  // Funktion um Adapter zu starten / neu starten
                                  on({ id: dpAdapterRestart }, function (obj) {
                                      var adapter = getObject(obj.state.val.toString());
                                  
                                      if (adapter.common.enabled === false) {
                                          // Adapter deaktiviert -> starten
                                          adapter.common.enabled = true;
                                      }
                                  
                                      setObject(obj.state.val, adapter);
                                      console.log(`${obj.state.val.replace('system.adapter.', '')} neugestartet`);
                                  });
                                  

                                  Javascript Adapter muss folgende libraries importieren und setObject aktiviert sein!
                                  c5bd712d-c6a9-4d5a-8245-b1e405a229be-grafik.png

                                  Weiß jemand noch wie wo man den Status abgreifen kann das ein Update für den Adapter zur Verfügung steht? Dann könnte ich noch ein Badget einfügen.

                                  NegaleinN Offline
                                  NegaleinN Offline
                                  Negalein
                                  Global Moderator
                                  wrote on last edited by
                                  #77

                                  @Scrounger sagte in View Adapter Status:

                                  Datenpunkte müsst ihr entsprechend erstellen und anpassen

                                  Als was müssen die DP angelegt werden (Zeichenkette, Werteliste, ...)

                                  Danke

                                  ° Node.js: 20.17.0 NPM: 10.8.2
                                  ° Proxmox, Ubuntu 22.04.3 LTS
                                  ° Fixer ---> iob fix

                                  ScroungerS 1 Reply Last reply
                                  0
                                  • NegaleinN Negalein

                                    @Scrounger sagte in View Adapter Status:

                                    Datenpunkte müsst ihr entsprechend erstellen und anpassen

                                    Als was müssen die DP angelegt werden (Zeichenkette, Werteliste, ...)

                                    Danke

                                    ScroungerS Offline
                                    ScroungerS Offline
                                    Scrounger
                                    Developer
                                    wrote on last edited by
                                    #78

                                    @Negalein
                                    Zeichenkette

                                    <a href="https://github.com/Scrounger/ioBroker.linkeddevices">LinkedDevices Adapter</a>

                                    <a href="https://github.com/Scrounger/ioBroker.vis-materialdesign">Material Design Widgets</a>

                                    1 Reply Last reply
                                    1
                                    • ScroungerS Scrounger

                                      @sigi234 vielen Dank für die Inspiration für den Adapter Status.

                                      Da ich aber ein fauler Mensch bin ;) und keine Lust habe jedes Mal das Widget anpassen zu müssen, wenn ich einen neuen Adapter hinzufüge oder entferne, habe ich das ganze mit nem Skript und meinem IconList Widget dynamisch erzeugt. (Adapter Version v0.2.59 - demnächst im latest !!!)
                                      Vorteil des Widget ist, dass es responsiv ist (ein layout für Handy, Tablet, Desktop) und man auch noch die Adapter starten bzw. neustarten kann :sunglasses:

                                      iconList_adapterStatus.gif

                                      View zum importieren

                                      {
                                        "settings": {
                                          "style": {
                                            "background_class": ""
                                          },
                                          "theme": "redmond",
                                          "sizex": "",
                                          "sizey": "",
                                          "gridSize": "",
                                          "snapType": null
                                        },
                                        "widgets": {
                                          "e00001": {
                                            "tpl": "tplVis-materialdesign-Icon-List",
                                            "data": {
                                              "g_fixed": false,
                                              "g_visibility": false,
                                              "g_css_font_text": false,
                                              "g_css_background": false,
                                              "g_css_shadow_padding": false,
                                              "g_css_border": false,
                                              "g_gestures": false,
                                              "g_signals": false,
                                              "g_last_change": false,
                                              "visibility-cond": "==",
                                              "visibility-val": 1,
                                              "visibility-groups-action": "hide",
                                              "wrapItems": "true",
                                              "listItemDataMethod": "jsonStringObject",
                                              "countListItems": "1",
                                              "vibrateOnMobilDevices": "50",
                                              "listLayout": "card",
                                              "itemLayout": "horizontal",
                                              "listType0": "text",
                                              "showValueLabel0": "true",
                                              "listType1": "text",
                                              "showValueLabel1": "true",
                                              "signals-cond-0": "==",
                                              "signals-val-0": true,
                                              "signals-icon-0": "/vis/signals/lowbattery.png",
                                              "signals-icon-size-0": 0,
                                              "signals-blink-0": false,
                                              "signals-horz-0": 0,
                                              "signals-vert-0": 0,
                                              "signals-hide-edit-0": false,
                                              "signals-cond-1": "==",
                                              "signals-val-1": true,
                                              "signals-icon-1": "/vis/signals/lowbattery.png",
                                              "signals-icon-size-1": 0,
                                              "signals-blink-1": false,
                                              "signals-horz-1": 0,
                                              "signals-vert-1": 0,
                                              "signals-hide-edit-1": false,
                                              "signals-cond-2": "==",
                                              "signals-val-2": true,
                                              "signals-icon-2": "/vis/signals/lowbattery.png",
                                              "signals-icon-size-2": 0,
                                              "signals-blink-2": false,
                                              "signals-horz-2": 0,
                                              "signals-vert-2": 0,
                                              "signals-hide-edit-2": false,
                                              "lc-type": "last-change",
                                              "lc-is-interval": true,
                                              "lc-is-moment": false,
                                              "lc-format": "",
                                              "lc-position-vert": "top",
                                              "lc-position-horz": "right",
                                              "lc-offset-vert": 0,
                                              "lc-offset-horz": 0,
                                              "lc-font-size": "12px",
                                              "lc-font-family": "",
                                              "lc-font-style": "",
                                              "lc-bkg-color": "",
                                              "lc-color": "",
                                              "lc-border-width": "0",
                                              "lc-border-style": "",
                                              "lc-border-color": "",
                                              "lc-border-radius": 10,
                                              "lc-zindex": 0,
                                              "jsonStringObject": "{0_userdata.0.vis.AdapterStatus.jsonList}",
                                              "maxItemsperRow": "6",
                                              "iconHeight": "60",
                                              "verticalIconContainerWidth": "100",
                                              "labelFontSize": "20",
                                              "labelFontFamily": "RobotoCondensed-Regular",
                                              "iconItemMinWidth": "290",
                                              "labelFontColor": "",
                                              "valueFontFamily": "",
                                              "subLabelFontFamily": "RobotoCondensed-Regular",
                                              "subLabelFontSize": "14",
                                              "subLabelFontColor": "#000000",
                                              "oid": "0_userdata.0.AdapterStatus.jsonList",
                                              "label0": ""
                                            },
                                            "style": {
                                              "left": "0px",
                                              "top": "0px",
                                              "width": "100%",
                                              "height": "100%",
                                              "overflow-y": "auto"
                                            },
                                            "widgetSet": "materialdesign"
                                          }
                                        },
                                        "name": "AdapterStatus",
                                        "filterList": []
                                      }
                                      

                                      Skript, Datenpunkte müsst ihr entsprechend erstellen und anpassen - siehe Kommentare im skript!
                                      Achtung wenn ich Bindings verwende geht meine vis in die Knie, deshalb wird das skript zyklisch aufgerufen.

                                      // Imports
                                      const moment = require("moment");
                                      const momentDurationFormatSetup = require("moment-duration-format");
                                      moment.locale("de");
                                      
                                      // Fomate für moment Lib
                                      let durationFormat = "dd[T] hh[h] mm[m]";
                                      
                                      let adapterSelector = `[id=system.adapter.*.alive]`;
                                      let adapterAliveList = $(adapterSelector);
                                      
                                      // Datenpunkt für IconList Widget
                                      let dpList = '0_userdata.0.vis.AdapterStatus.jsonList';
                                      
                                      // Datenpunkt für Adapter restart
                                      let dpAdapterRestart = '0_userdata.0.vis.AdapterStatus.restartTrigger';
                                      
                                      // interval die adapterStatus Funktion augerufen wird (in Sekunden)
                                      const checkInterval = 30;
                                      
                                      // Fehlermeldung ausgeben, wenn selector kein result liefert
                                      if (adapterAliveList.length === 0) {
                                          console.error(`no result for selector '${adapterSelector}'`)
                                      }
                                      
                                      adapterAliveList.on(adapterStatus);                                             // listener nur für Änderung bei alive
                                      
                                      // Funktion adapterStatus alle x Sekunden ausführen
                                      schedule('*/'+ checkInterval + ' * * * * *', adapterStatus);
                                      
                                      function adapterStatus() {
                                          let adapterList = [];
                                      
                                          try {
                                              for (var i = 0; i <= adapterAliveList.length - 1; i++) {
                                                  let id = adapterAliveList[i].replace('.alive', '');
                                                  let obj = getObject(adapterAliveList[i].replace('.alive', ''));
                                      
                                                  let nameArray = id.replace('system.adapter.', '').split(".");
                                      
                                                  let name = nameArray[0];
                                                  name = name.charAt(0).toUpperCase() + name.slice(1);
                                      
                                                  let nameWithInstance = name;
                                                  let adapterInstance = nameArray[1];
                                                  if (adapterInstance > 0) {
                                                      nameWithInstance = name + '.' + adapterInstance;
                                                  }
                                      
                                                  let uptime = `{d:${id + '.uptime'};Math.floor( ((d)/60/60/24) )}T {h:${id + '.uptime'};Math.floor( ((h)/60/60) % 24 )}h 
                                                  {m:${id + '.uptime'};Math.floor( ((m)/60) % 60 )}m`
                                      
                                                  let text = `<div style="display: flex; flex-direction: row; line-height: 1.5; padding-right: 8px; align-items: center;">
                                                                  <div style="flex: 1">${nameWithInstance}</div>
                                                                  <div style="color: grey; font-size: 12px; font-family: RobotoCondensed-LightItalic;">v${obj.common.version}</div>
                                                              </div>`
                                      
                                                  let subText = `<div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                      <div style="flex: 1">CPU</div>
                                                                      <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.cpu').val} % %</div>
                                                                  </div>
                                                                  <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                      <div style="flex: 1">RAM total</div>
                                                                      <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memHeapTotal').val} MB</div>
                                                                  </div>
                                                                  <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                      <div style="flex: 1">RAM verwendet</div>
                                                                      <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memHeapUsed').val} MB</div>
                                                                  </div>
                                                                  <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                      <div style="flex: 1">RAM reserviert</div>
                                                                      <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memRss').val} MB</div>
                                                                  </div>
                                                                  <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                      <div style="flex: 1">Betriebszeit</div>
                                                                      <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${moment.duration(getState(id + '.uptime').val, 'seconds').format(durationFormat, 0)}</div>
                                                                  </div>`
                                      
                                                  adapterList.push({
                                                      text: text,
                                                      subText: subText,
                                                      image: `/${nameArray[0]}.admin/${obj.common.icon}`,
                                                      listType: "buttonState",
                                                      objectId: dpAdapterRestart,
                                                      buttonStateValue: id,
                                                      statusBarColor: getStatusColor(),
                                                      showValueLabel: false
                                                  })
                                      
                                                  function getStatusColor() {
                                                      let statusBarColor = 'FireBrick';
                                                      if (getState(adapterAliveList[i]).val === true) {
                                                          statusBarColor = 'green';
                                                      }
                                          
                                                      if (obj.common.enabled === false) {
                                                          // Adapter ist deaktiviert
                                                          statusBarColor = 'darkgrey';
                                                      }
                                          
                                                      if (obj.common.mode === 'schedule') {
                                                          // Adapter ist zeitgesteuert
                                                          statusBarColor = 'orange';
                                                      }
                                          
                                                      return statusBarColor;
                                                  }
                                              }
                                      
                                          } catch (err) {
                                              console.error(`[adapterStatus] error: ${err.message}, stack: ${err.stack}`);
                                          }
                                      
                                          let result = JSON.stringify(adapterList);
                                          if (getState(dpList) !== result) {
                                              setState(dpList, result, true);
                                          }
                                      }
                                      
                                      adapterStatus();
                                      
                                      // Funktion um Adapter zu starten / neu starten
                                      on({ id: dpAdapterRestart }, function (obj) {
                                          var adapter = getObject(obj.state.val.toString());
                                      
                                          if (adapter.common.enabled === false) {
                                              // Adapter deaktiviert -> starten
                                              adapter.common.enabled = true;
                                          }
                                      
                                          setObject(obj.state.val, adapter);
                                          console.log(`${obj.state.val.replace('system.adapter.', '')} neugestartet`);
                                      });
                                      

                                      Javascript Adapter muss folgende libraries importieren und setObject aktiviert sein!
                                      c5bd712d-c6a9-4d5a-8245-b1e405a229be-grafik.png

                                      Weiß jemand noch wie wo man den Status abgreifen kann das ein Update für den Adapter zur Verfügung steht? Dann könnte ich noch ein Badget einfügen.

                                      sigi234S Online
                                      sigi234S Online
                                      sigi234
                                      Forum Testing Most Active
                                      wrote on last edited by
                                      #79

                                      @Scrounger sagte in View Adapter Status:

                                      Weiß jemand noch wie wo man den Status abgreifen kann das ein Update für den Adapter zur Verfügung steht? Dann könnte ich noch ein Badget einfügen.

                                      //  Adapter Update Notification Script
                                      /*
                                      *   @author Moritz Heusinger <moritz.heusinger@gmail.com>
                                      *   The scripts checks for adapter upgrades, everyday at 06:00 p.m., if there 
                                      *   are upgrades available it will send an E-Mail to the configured receiverMail.
                                      *
                                      *   Requirement: Running instance of the E-Mail adapter; Admin >= 3.6
                                      *
                                      *   logging:        if true, information will be logged
                                      *   senderMail:     mail address of the sender
                                      *   receiverMail:   target mail address
                                      */
                                      
                                      const logging = true;
                                      
                                      const senderMail = 'xxxxxxxxxxt';
                                      const receiverMail = 'xxxxxxxxxxxt';
                                      
                                      on({id: 'admin.0.info.updatesJson', ack: true, change: 'ne'}, (obj) => {
                                          if(!getState('admin.0.info.newUpdates').val) return;
                                          if (logging) log('New adapter updates are available', 'info');
                                          let upgradeable = JSON.parse(obj.state.val);
                                          let text = 'Die folgenden Adapter sind aktualisierbar:\n';
                                          for (let adapter in upgradeable) {
                                              text += 'Adapter ' + JSON.stringify(adapter) + ' kann von ' + 
                                                  upgradeable[adapter].installedVersion + ' auf ' + 
                                                  upgradeable[adapter].availableVersion + ' aktualisiert werden.\n';
                                          } // endFor
                                          sendTo('email', {
                                                  from:    senderMail,
                                                  to:      receiverMail,
                                                  subject: 'Es sind neue Adapter Updates für deinen ioBroker verfügbar',
                                                  text:    text
                                          });
                                      });
                                      

                                      Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                      Immer Daten sichern!

                                      ScroungerS 1 Reply Last reply
                                      1
                                      • ScroungerS Scrounger

                                        @sigi234 vielen Dank für die Inspiration für den Adapter Status.

                                        Da ich aber ein fauler Mensch bin ;) und keine Lust habe jedes Mal das Widget anpassen zu müssen, wenn ich einen neuen Adapter hinzufüge oder entferne, habe ich das ganze mit nem Skript und meinem IconList Widget dynamisch erzeugt. (Adapter Version v0.2.59 - demnächst im latest !!!)
                                        Vorteil des Widget ist, dass es responsiv ist (ein layout für Handy, Tablet, Desktop) und man auch noch die Adapter starten bzw. neustarten kann :sunglasses:

                                        iconList_adapterStatus.gif

                                        View zum importieren

                                        {
                                          "settings": {
                                            "style": {
                                              "background_class": ""
                                            },
                                            "theme": "redmond",
                                            "sizex": "",
                                            "sizey": "",
                                            "gridSize": "",
                                            "snapType": null
                                          },
                                          "widgets": {
                                            "e00001": {
                                              "tpl": "tplVis-materialdesign-Icon-List",
                                              "data": {
                                                "g_fixed": false,
                                                "g_visibility": false,
                                                "g_css_font_text": false,
                                                "g_css_background": false,
                                                "g_css_shadow_padding": false,
                                                "g_css_border": false,
                                                "g_gestures": false,
                                                "g_signals": false,
                                                "g_last_change": false,
                                                "visibility-cond": "==",
                                                "visibility-val": 1,
                                                "visibility-groups-action": "hide",
                                                "wrapItems": "true",
                                                "listItemDataMethod": "jsonStringObject",
                                                "countListItems": "1",
                                                "vibrateOnMobilDevices": "50",
                                                "listLayout": "card",
                                                "itemLayout": "horizontal",
                                                "listType0": "text",
                                                "showValueLabel0": "true",
                                                "listType1": "text",
                                                "showValueLabel1": "true",
                                                "signals-cond-0": "==",
                                                "signals-val-0": true,
                                                "signals-icon-0": "/vis/signals/lowbattery.png",
                                                "signals-icon-size-0": 0,
                                                "signals-blink-0": false,
                                                "signals-horz-0": 0,
                                                "signals-vert-0": 0,
                                                "signals-hide-edit-0": false,
                                                "signals-cond-1": "==",
                                                "signals-val-1": true,
                                                "signals-icon-1": "/vis/signals/lowbattery.png",
                                                "signals-icon-size-1": 0,
                                                "signals-blink-1": false,
                                                "signals-horz-1": 0,
                                                "signals-vert-1": 0,
                                                "signals-hide-edit-1": false,
                                                "signals-cond-2": "==",
                                                "signals-val-2": true,
                                                "signals-icon-2": "/vis/signals/lowbattery.png",
                                                "signals-icon-size-2": 0,
                                                "signals-blink-2": false,
                                                "signals-horz-2": 0,
                                                "signals-vert-2": 0,
                                                "signals-hide-edit-2": false,
                                                "lc-type": "last-change",
                                                "lc-is-interval": true,
                                                "lc-is-moment": false,
                                                "lc-format": "",
                                                "lc-position-vert": "top",
                                                "lc-position-horz": "right",
                                                "lc-offset-vert": 0,
                                                "lc-offset-horz": 0,
                                                "lc-font-size": "12px",
                                                "lc-font-family": "",
                                                "lc-font-style": "",
                                                "lc-bkg-color": "",
                                                "lc-color": "",
                                                "lc-border-width": "0",
                                                "lc-border-style": "",
                                                "lc-border-color": "",
                                                "lc-border-radius": 10,
                                                "lc-zindex": 0,
                                                "jsonStringObject": "{0_userdata.0.vis.AdapterStatus.jsonList}",
                                                "maxItemsperRow": "6",
                                                "iconHeight": "60",
                                                "verticalIconContainerWidth": "100",
                                                "labelFontSize": "20",
                                                "labelFontFamily": "RobotoCondensed-Regular",
                                                "iconItemMinWidth": "290",
                                                "labelFontColor": "",
                                                "valueFontFamily": "",
                                                "subLabelFontFamily": "RobotoCondensed-Regular",
                                                "subLabelFontSize": "14",
                                                "subLabelFontColor": "#000000",
                                                "oid": "0_userdata.0.AdapterStatus.jsonList",
                                                "label0": ""
                                              },
                                              "style": {
                                                "left": "0px",
                                                "top": "0px",
                                                "width": "100%",
                                                "height": "100%",
                                                "overflow-y": "auto"
                                              },
                                              "widgetSet": "materialdesign"
                                            }
                                          },
                                          "name": "AdapterStatus",
                                          "filterList": []
                                        }
                                        

                                        Skript, Datenpunkte müsst ihr entsprechend erstellen und anpassen - siehe Kommentare im skript!
                                        Achtung wenn ich Bindings verwende geht meine vis in die Knie, deshalb wird das skript zyklisch aufgerufen.

                                        // Imports
                                        const moment = require("moment");
                                        const momentDurationFormatSetup = require("moment-duration-format");
                                        moment.locale("de");
                                        
                                        // Fomate für moment Lib
                                        let durationFormat = "dd[T] hh[h] mm[m]";
                                        
                                        let adapterSelector = `[id=system.adapter.*.alive]`;
                                        let adapterAliveList = $(adapterSelector);
                                        
                                        // Datenpunkt für IconList Widget
                                        let dpList = '0_userdata.0.vis.AdapterStatus.jsonList';
                                        
                                        // Datenpunkt für Adapter restart
                                        let dpAdapterRestart = '0_userdata.0.vis.AdapterStatus.restartTrigger';
                                        
                                        // interval die adapterStatus Funktion augerufen wird (in Sekunden)
                                        const checkInterval = 30;
                                        
                                        // Fehlermeldung ausgeben, wenn selector kein result liefert
                                        if (adapterAliveList.length === 0) {
                                            console.error(`no result for selector '${adapterSelector}'`)
                                        }
                                        
                                        adapterAliveList.on(adapterStatus);                                             // listener nur für Änderung bei alive
                                        
                                        // Funktion adapterStatus alle x Sekunden ausführen
                                        schedule('*/'+ checkInterval + ' * * * * *', adapterStatus);
                                        
                                        function adapterStatus() {
                                            let adapterList = [];
                                        
                                            try {
                                                for (var i = 0; i <= adapterAliveList.length - 1; i++) {
                                                    let id = adapterAliveList[i].replace('.alive', '');
                                                    let obj = getObject(adapterAliveList[i].replace('.alive', ''));
                                        
                                                    let nameArray = id.replace('system.adapter.', '').split(".");
                                        
                                                    let name = nameArray[0];
                                                    name = name.charAt(0).toUpperCase() + name.slice(1);
                                        
                                                    let nameWithInstance = name;
                                                    let adapterInstance = nameArray[1];
                                                    if (adapterInstance > 0) {
                                                        nameWithInstance = name + '.' + adapterInstance;
                                                    }
                                        
                                                    let uptime = `{d:${id + '.uptime'};Math.floor( ((d)/60/60/24) )}T {h:${id + '.uptime'};Math.floor( ((h)/60/60) % 24 )}h 
                                                    {m:${id + '.uptime'};Math.floor( ((m)/60) % 60 )}m`
                                        
                                                    let text = `<div style="display: flex; flex-direction: row; line-height: 1.5; padding-right: 8px; align-items: center;">
                                                                    <div style="flex: 1">${nameWithInstance}</div>
                                                                    <div style="color: grey; font-size: 12px; font-family: RobotoCondensed-LightItalic;">v${obj.common.version}</div>
                                                                </div>`
                                        
                                                    let subText = `<div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                        <div style="flex: 1">CPU</div>
                                                                        <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.cpu').val} % %</div>
                                                                    </div>
                                                                    <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                        <div style="flex: 1">RAM total</div>
                                                                        <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memHeapTotal').val} MB</div>
                                                                    </div>
                                                                    <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                        <div style="flex: 1">RAM verwendet</div>
                                                                        <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memHeapUsed').val} MB</div>
                                                                    </div>
                                                                    <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                        <div style="flex: 1">RAM reserviert</div>
                                                                        <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${getState(id + '.memRss').val} MB</div>
                                                                    </div>
                                                                    <div style="display: flex; flex-direction: row; line-height: 1.3; padding-left: 1px; padding-right: 8px; align-items: center;">
                                                                        <div style="flex: 1">Betriebszeit</div>
                                                                        <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${moment.duration(getState(id + '.uptime').val, 'seconds').format(durationFormat, 0)}</div>
                                                                    </div>`
                                        
                                                    adapterList.push({
                                                        text: text,
                                                        subText: subText,
                                                        image: `/${nameArray[0]}.admin/${obj.common.icon}`,
                                                        listType: "buttonState",
                                                        objectId: dpAdapterRestart,
                                                        buttonStateValue: id,
                                                        statusBarColor: getStatusColor(),
                                                        showValueLabel: false
                                                    })
                                        
                                                    function getStatusColor() {
                                                        let statusBarColor = 'FireBrick';
                                                        if (getState(adapterAliveList[i]).val === true) {
                                                            statusBarColor = 'green';
                                                        }
                                            
                                                        if (obj.common.enabled === false) {
                                                            // Adapter ist deaktiviert
                                                            statusBarColor = 'darkgrey';
                                                        }
                                            
                                                        if (obj.common.mode === 'schedule') {
                                                            // Adapter ist zeitgesteuert
                                                            statusBarColor = 'orange';
                                                        }
                                            
                                                        return statusBarColor;
                                                    }
                                                }
                                        
                                            } catch (err) {
                                                console.error(`[adapterStatus] error: ${err.message}, stack: ${err.stack}`);
                                            }
                                        
                                            let result = JSON.stringify(adapterList);
                                            if (getState(dpList) !== result) {
                                                setState(dpList, result, true);
                                            }
                                        }
                                        
                                        adapterStatus();
                                        
                                        // Funktion um Adapter zu starten / neu starten
                                        on({ id: dpAdapterRestart }, function (obj) {
                                            var adapter = getObject(obj.state.val.toString());
                                        
                                            if (adapter.common.enabled === false) {
                                                // Adapter deaktiviert -> starten
                                                adapter.common.enabled = true;
                                            }
                                        
                                            setObject(obj.state.val, adapter);
                                            console.log(`${obj.state.val.replace('system.adapter.', '')} neugestartet`);
                                        });
                                        

                                        Javascript Adapter muss folgende libraries importieren und setObject aktiviert sein!
                                        c5bd712d-c6a9-4d5a-8245-b1e405a229be-grafik.png

                                        Weiß jemand noch wie wo man den Status abgreifen kann das ein Update für den Adapter zur Verfügung steht? Dann könnte ich noch ein Badget einfügen.

                                        sigi234S Online
                                        sigi234S Online
                                        sigi234
                                        Forum Testing Most Active
                                        wrote on last edited by sigi234
                                        #80

                                        @Scrounger

                                        13:02:30.106	warn	javascript.0 (8000) at getStatusColor (script.js.Sigi.Adapter_Abfrage:93:21)
                                        13:02:30.106	warn	javascript.0 (8000) at Object.adapterStatus (script.js.Sigi.Adapter_Abfrage:87:33)
                                        

                                        Screenshot (1768).png

                                        Screenshot (1770).png

                                        Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                        Immer Daten sichern!

                                        1 Reply Last reply
                                        0
                                        • NegaleinN Offline
                                          NegaleinN Offline
                                          Negalein
                                          Global Moderator
                                          wrote on last edited by
                                          #81

                                          @Scrounger

                                          hab auch jetzt alle 30 Sekunden Warn-Meldungen

                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.167	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:86:33)
                                          javascript.0	2020-02-22 14:16:30.166	warn	(5214) at getStatusColor (script.js.System.Adapterliste:92:21)
                                          javascript.0	2020-02-22 14:16:30.166	warn	(5214) getState "system.adapter.devices.0.alive" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.164	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.164	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.164	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.164	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.164	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.164	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.164	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.163	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.163	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:76:136)
                                          javascript.0	2020-02-22 14:16:30.163	warn	(5214) getState "system.adapter.devices.0.uptime" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.163	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.163	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.163	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.163	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.162	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.162	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.162	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.162	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.162	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:72:120)
                                          javascript.0	2020-02-22 14:16:30.161	warn	(5214) getState "system.adapter.devices.0.memRss" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.160	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:68:120)
                                          javascript.0	2020-02-22 14:16:30.159	warn	(5214) getState "system.adapter.devices.0.memHeapUsed" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.159	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.159	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.159	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.159	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.159	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.159	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.157	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.157	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.157	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:64:120)
                                          javascript.0	2020-02-22 14:16:30.157	warn	(5214) getState "system.adapter.devices.0.memHeapTotal" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.157	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.157	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.156	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.156	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.156	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.156	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.156	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.156	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.156	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:60:120)
                                          javascript.0	2020-02-22 14:16:30.155	warn	(5214) getState "system.adapter.devices.0.cpu" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.149	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.149	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.149	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.149	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.149	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.149	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.149	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.148	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.148	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:86:33)
                                          javascript.0	2020-02-22 14:16:30.148	warn	(5214) at getStatusColor (script.js.System.Adapterliste:92:21)
                                          javascript.0	2020-02-22 14:16:30.148	warn	(5214) getState "system.adapter.fontui.0.alive" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.146	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.146	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.146	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.146	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.146	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.146	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.146	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.145	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.145	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:76:136)
                                          javascript.0	2020-02-22 14:16:30.145	warn	(5214) getState "system.adapter.fontui.0.uptime" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.145	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.145	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.145	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.145	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.145	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:72:120)
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) getState "system.adapter.fontui.0.memRss" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.144	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.143	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.143	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.143	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.143	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.143	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:68:120)
                                          javascript.0	2020-02-22 14:16:30.143	warn	(5214) getState "system.adapter.fontui.0.memHeapUsed" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.143	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.142	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.142	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.142	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.142	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.142	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.142	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.142	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.142	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:64:120)
                                          javascript.0	2020-02-22 14:16:30.140	warn	(5214) getState "system.adapter.fontui.0.memHeapTotal" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.140	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.140	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.140	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.140	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.140	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.140	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.140	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.139	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.139	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:60:120)
                                          javascript.0	2020-02-22 14:16:30.139	warn	(5214) getState "system.adapter.fontui.0.cpu" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.096	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.096	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.096	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.096	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.096	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.095	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.095	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.095	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.095	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:60:120)
                                          javascript.0	2020-02-22 14:16:30.094	warn	(5214) getState "system.adapter.places.0.cpu" not found (3)
                                          javascript.0	2020-02-22 14:16:30.066	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.066	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.066	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.066	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.066	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.066	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.066	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.065	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.065	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:86:33)
                                          javascript.0	2020-02-22 14:16:30.065	warn	(5214) at getStatusColor (script.js.System.Adapterliste:92:21)
                                          javascript.0	2020-02-22 14:16:30.064	warn	(5214) getState "system.adapter.proxy.0.alive" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.062	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:76:136)
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) getState "system.adapter.proxy.0.uptime" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.061	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.060	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:72:120)
                                          javascript.0	2020-02-22 14:16:30.060	warn	(5214) getState "system.adapter.proxy.0.memRss" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.060	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.060	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.060	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.060	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.060	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.059	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.059	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.059	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.059	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:68:120)
                                          javascript.0	2020-02-22 14:16:30.059	warn	(5214) getState "system.adapter.proxy.0.memHeapUsed" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.058	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:64:120)
                                          javascript.0	2020-02-22 14:16:30.057	warn	(5214) getState "system.adapter.proxy.0.memHeapTotal" not found (3) states[id]=null
                                          javascript.0	2020-02-22 14:16:30.057	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.057	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.057	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.057	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.057	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.057	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.057	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.056	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.056	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:60:120)
                                          javascript.0	2020-02-22 14:16:30.056	warn	(5214) getState "system.adapter.proxy.0.cpu" not found (3)
                                          javascript.0	2020-02-22 14:16:30.050	warn	(5214) at Timer.processTimers (timers.js:223:10)
                                          javascript.0	2020-02-22 14:16:30.050	warn	(5214) at listOnTimeout (timers.js:263:5)
                                          javascript.0	2020-02-22 14:16:30.050	warn	(5214) at tryOnTimeout (timers.js:300:5)
                                          javascript.0	2020-02-22 14:16:30.050	warn	(5214) at ontimeout (timers.js:436:11)
                                          javascript.0	2020-02-22 14:16:30.049	warn	(5214) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:501:7)
                                          javascript.0	2020-02-22 14:16:30.049	warn	(5214) at /opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:543:11
                                          javascript.0	2020-02-22 14:16:30.049	warn	(5214) at Job.invoke (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-schedule/lib/schedule.js:173:10)
                                          javascript.0	2020-02-22 14:16:30.049	warn	(5214) at Job.nodeSchedule.scheduleJob [as job] (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1340:34)
                                          javascript.0	2020-02-22 14:16:30.049	warn	(5214) at Object.adapterStatus (script.js.System.Adapterliste:60:120)
                                          javascript.0	2020-02-22 14:16:30.048	warn	(5214) getState "system.adapter.systeminfo.0.cpu" not found (3)
                                          

                                          ° Node.js: 20.17.0 NPM: 10.8.2
                                          ° Proxmox, Ubuntu 22.04.3 LTS
                                          ° Fixer ---> iob fix

                                          sigi234S 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          454

                                          Online

                                          32.4k

                                          Users

                                          81.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe