Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  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.3k

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

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

View Adapter Status

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
view adapterview
212 Beiträge 31 Kommentatoren 37.0k Aufrufe 52 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ub.privatU ub.privat

    @Scrounger

    Guten entspannten Guten Abend!

    Mit meinem langsam wachsendem Verständnis in der Anwendung deiner MEISTERWERKE versuche ich mich wieder mal.
    Der Adapter-View ist ganz großes Kino. Leider verende ich beim "Trailer".
    Was habe ich bisher gemacht:

    1. notwendige Einstellungen im JS Adapter vorgenommen:
      636f2623-a41a-4cb3-9d92-74154a05890a-grafik.png

    2. Script eingestellt:
      8dc9c5a6-9444-406b-9893-ff3085e48816-grafik.png
      Leider mit Warnungen...

    3. Datenpunkte angelegt:
      e43630b0-51fd-45da-bb06-73d650def20c-grafik.png
      f1a758b3-22cb-45af-a95f-02f71bbb4c93-grafik.png
      Leider werden keine Werte erzeugt.

    4. View importiert:
      70e9844b-fb88-4b82-b2d1-0696d71594e4-grafik.png
      Mit entsprechender Warnung.

    5. NUN IST GUTER RAT TEUER - wo mache ich wie weiter????
      Lesse den Tread hoch und runter, aber die Erleeuchtung will sich nicht einstellen...

    sigi234S Online
    sigi234S Online
    sigi234
    Forum Testing Most Active
    schrieb am zuletzt editiert von sigi234
    #160

    @ub-privat

    Hast du die Aktuelle Version? 0.2.62

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

    ub.privatU 1 Antwort Letzte Antwort
    0
    • ub.privatU ub.privat

      @Scrounger

      Guten entspannten Guten Abend!

      Mit meinem langsam wachsendem Verständnis in der Anwendung deiner MEISTERWERKE versuche ich mich wieder mal.
      Der Adapter-View ist ganz großes Kino. Leider verende ich beim "Trailer".
      Was habe ich bisher gemacht:

      1. notwendige Einstellungen im JS Adapter vorgenommen:
        636f2623-a41a-4cb3-9d92-74154a05890a-grafik.png

      2. Script eingestellt:
        8dc9c5a6-9444-406b-9893-ff3085e48816-grafik.png
        Leider mit Warnungen...

      3. Datenpunkte angelegt:
        e43630b0-51fd-45da-bb06-73d650def20c-grafik.png
        f1a758b3-22cb-45af-a95f-02f71bbb4c93-grafik.png
        Leider werden keine Werte erzeugt.

      4. View importiert:
        70e9844b-fb88-4b82-b2d1-0696d71594e4-grafik.png
        Mit entsprechender Warnung.

      5. NUN IST GUTER RAT TEUER - wo mache ich wie weiter????
        Lesse den Tread hoch und runter, aber die Erleeuchtung will sich nicht einstellen...

      ScroungerS Offline
      ScroungerS Offline
      Scrounger
      Developer
      schrieb am zuletzt editiert von Scrounger
      #161

      @ub-privat
      Hast du das skript 1:1 kopiert?
      Die Fehlermeldung bezieht sich auf Zeile 518-520 - das skript hat aber nur 339 Zeilen.

      Und laut deinem Screenshot hast du irgendwas an dem Skript verändert. Weil ab Zeile 8 müssten die settings zu sehen sein.

      Und bitte das vollständige log posten, also aus dem reiter 'log' im admin bereich.

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

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

      ub.privatU sigi234S 2 Antworten Letzte Antwort
      0
      • sigi234S sigi234

        @ub-privat

        Hast du die Aktuelle Version? 0.2.62

        ub.privatU Offline
        ub.privatU Offline
        ub.privat
        schrieb am zuletzt editiert von
        #162

        @sigi234

        Ja, habe ich!

        55a826c9-570b-4526-a076-055ee0a94089-grafik.png

        1 Antwort Letzte Antwort
        0
        • ScroungerS Scrounger

          @ub-privat
          Hast du das skript 1:1 kopiert?
          Die Fehlermeldung bezieht sich auf Zeile 518-520 - das skript hat aber nur 339 Zeilen.

          Und laut deinem Screenshot hast du irgendwas an dem Skript verändert. Weil ab Zeile 8 müssten die settings zu sehen sein.

          Und bitte das vollständige log posten, also aus dem reiter 'log' im admin bereich.

          ub.privatU Offline
          ub.privatU Offline
          ub.privat
          schrieb am zuletzt editiert von
          #163

          @Scrounger

          Bin mir keiner Änderung bewußt!
          Würdest du das AKTUELLESTE Script nochmals bitte verlinken!?
          DANKE.

          sigi234S 1 Antwort Letzte Antwort
          0
          • ScroungerS Scrounger

            Sodele nochmal eine neue Version des Skriptes

            Voraussetzung Material Design Widgets v0.2.62 (demnächst im latest) !!!

            • mehr Farbeinstellung
            • Sortier Funktion
            • Filter Funktion - wäre sicher als nächster Wunsch gekommen, deshalb hab ich es schon mal eingebaut ;-)
              (Benötigt ihr weitere schaut ins skript und passt es auf eure Bedürfnisse an)
            • Adapter Modus wird angezeigt
            • Fehler behoben

            AdapterStatus.gif

            Ist auch im Online Beispiel enthalten

            View:

            {
              "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,
                    "json_string_oid": "0_userdata.0.vis.AdapterStatus.jsonList",
                    "maxItemsperRow": "6",
                    "iconItemMinWidth": "300",
                    "iconHeight": "60",
                    "buttonHeight": "100",
                    "labelFontSize": "22",
                    "subLabelFontSize": "14",
                    "subLabelFontColor": "#000000",
                    "labelFontFamily": "RobotoCondensed-Regular",
                    "subLabelFontFamily": "RobotoCondensed-Light",
                    "horizontalIconContainerWidth": "120"
                  },
                  "style": {
                    "left": "0px",
                    "top": "50px",
                    "width": "100%",
                    "height": "calc(100% - 50px)",
                    "overflow-x": "",
                    "overflow-y": "auto",
                    "z-index": "1"
                  },
                  "widgetSet": "materialdesign"
                },
                "e00002": {
                  "tpl": "tplHtml",
                  "data": {
                    "g_fixed": false,
                    "g_visibility": false,
                    "g_css_font_text": false,
                    "g_css_background": true,
                    "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",
                    "refreshInterval": "0",
                    "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
                  },
                  "style": {
                    "left": "0",
                    "top": "0",
                    "width": "100%",
                    "height": "50px",
                    "background-color": "#44739e"
                  },
                  "widgetSet": "basic"
                },
                "e00003": {
                  "tpl": "tplVis-materialdesign-Select",
                  "data": {
                    "oid": "0_userdata.0.vis.AdapterStatus.sortMode",
                    "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",
                    "inputType": "text",
                    "inputLayout": "regular",
                    "showInputMessageAlways": "true",
                    "showInputCounter": false,
                    "clearIconShow": false,
                    "listDataMethod": "jsonStringObject",
                    "countSelectItems": "1",
                    "listPosition": "bottom",
                    "showSelectedIcon": "prepend-inner",
                    "showValue": false,
                    "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,
                    "inputLabelText": "Sortieren nach",
                    "inputLabelColor": "#ffffff",
                    "inputLabelFontFamily": "RobotoCondensed-LightItalic",
                    "collapseIconColor": "#ffffff",
                    "collapseIconSize": "",
                    "jsonStringObject": "[\n\t{\n\t\t\"text\": \"Adaptername\",\n\t\t\"value\": \"name\",\n\t\t\"icon\": \"sort-alphabetical\"\n\t},\n\t{\n\t\t\"text\": \"Status\",\n\t\t\"value\": \"status\",\n\t\t\"icon\": \"information-variant\"\n\t},\t\n\t{\n\t\t\"text\": \"Modus\",\n\t\t\"value\": \"mode\",\n\t\t\"icon\": \"view-dashboard\"\n\t},\n\t{\n\t\t\"text\": \"Updates verfügbar\",\n\t\t\"value\": \"hasUpdates\",\n\t\t\"icon\": \"package-down\"\n\t},\n\t{\n\t\t\"text\": \"CPU\",\n\t\t\"value\": \"cpu\",\n\t\t\"icon\": \"cpu-64-bit\"\n\t},\n\t{\n\t\t\"text\": \"RAM total\",\n\t\t\"value\": \"memHeapTotal\",\n\t\t\"icon\": \"memory\"\n\t},\n\t{\n\t\t\"text\": \"RAM verwendet\",\n\t\t\"value\": \"memHeapUsed\",\n\t\t\"icon\": \"memory\"\n\t},\n\t{\n\t\t\"text\": \"RAM reserviert\",\n\t\t\"value\": \"memRss\",\n\t\t\"icon\": \"memory\"\n\t},\n\t{\n\t\t\"text\": \"Betriebszeit\",\n\t\t\"value\": \"uptime\",\n\t\t\"icon\": \"clock-check-outline\"\n\t}\n]",
                    "listPositionOffset": true,
                    "inputLayoutBackgroundColor": "transparent",
                    "inputLabelColorSelected": "#ffffff",
                    "inputTranslateX": "-15",
                    "clearIcon": "",
                    "inputLayoutBorderColorHover": "#ffffff",
                    "inputLayoutBorderColorSelected": "#ffffff",
                    "inputLayoutBorderColor": "#a1a1a1",
                    "listItemFontColor": "",
                    "inputTextColor": "#ffffff",
                    "inputTextFontFamily": "RobotoCondensed-LightItalic",
                    "prepandIcon": "",
                    "prepandIconColor": "",
                    "prepandIconSize": "",
                    "prepandInnerIcon": "",
                    "prepandInnerIconColor": "#ffffff",
                    "prepandInnerIconSize": "18",
                    "collapseIcon": "",
                    "inputTranslateY": "-12",
                    "listIconSelectedColor": "#44739e",
                    "listIconColor": "",
                    "appendOuterIcon": "",
                    "appendOuterIconSize": "2",
                    "listItemFont": "RobotoCondensed-Regular",
                    "listItemRippleEffectColor": "",
                    "inputLayoutBackgroundColorSelected": "",
                    "inputLayoutBackgroundColorHover": ""
                  },
                  "style": {
                    "left": "10px",
                    "top": "0px",
                    "z-index": "1",
                    "width": "calc(50% - 20px)",
                    "height": "40px"
                  },
                  "widgetSet": "materialdesign"
                },
                "e00004": {
                  "tpl": "tplVis-materialdesign-Select",
                  "data": {
                    "oid": "0_userdata.0.vis.AdapterStatus.filterMode",
                    "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",
                    "inputType": "text",
                    "inputLayout": "regular",
                    "showInputMessageAlways": "true",
                    "showInputCounter": false,
                    "clearIconShow": true,
                    "listDataMethod": "jsonStringObject",
                    "countSelectItems": "1",
                    "listPosition": "bottom",
                    "showSelectedIcon": "prepend-inner",
                    "showValue": false,
                    "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,
                    "inputLabelText": "Filtern nach",
                    "inputLabelColor": "#ffffff",
                    "inputLabelFontFamily": "RobotoCondensed-LightItalic",
                    "collapseIconColor": "#ffffff",
                    "collapseIconSize": "",
                    "jsonStringObject": "[\n\t{\n\t\t\"text\": \"nicht verbunden\",\n\t\t\"value\": \"notConnected\",\n\t\t\"icon\": \"network-off\"\n\t},\n\t{\n\t\t\"text\": \"deaktiviert\",\n\t\t\"value\": \"deactivated\",\n\t\t\"icon\": \"checkbox-blank-outline\"\n\t},\t\n\t{\n\t\t\"text\": \"aktiviert\",\n\t\t\"value\": \"activated\",\n\t\t\"icon\": \"checkbox-intermediate\"\n\t},\n\t{\n\t\t\"text\": \"Updates verfügbar\",\n\t\t\"value\": \"hasUpdates\",\n\t\t\"icon\": \"package-down\"\n\t}\n]",
                    "listPositionOffset": true,
                    "inputLayoutBackgroundColor": "transparent",
                    "inputLabelColorSelected": "#ffffff",
                    "inputTranslateX": "-15",
                    "clearIcon": "",
                    "inputLayoutBorderColorHover": "#ffffff",
                    "inputLayoutBorderColorSelected": "#ffffff",
                    "inputLayoutBorderColor": "#a1a1a1",
                    "listItemFontColor": "",
                    "inputTextColor": "#ffffff",
                    "inputTextFontFamily": "RobotoCondensed-LightItalic",
                    "prepandIcon": "",
                    "prepandIconColor": "",
                    "prepandIconSize": "",
                    "prepandInnerIcon": "",
                    "prepandInnerIconColor": "#ffffff",
                    "prepandInnerIconSize": "18",
                    "collapseIcon": "",
                    "inputTranslateY": "-12",
                    "listIconSelectedColor": "#44739e",
                    "listIconColor": "",
                    "appendOuterIcon": "",
                    "appendOuterIconSize": "2",
                    "listItemFont": "RobotoCondensed-Regular",
                    "listItemRippleEffectColor": "",
                    "inputLayoutBackgroundColorSelected": "",
                    "inputLayoutBackgroundColorHover": "",
                    "clearIconColor": "#ffffff"
                  },
                  "style": {
                    "left": "calc(50% + 10px)",
                    "top": "0px",
                    "z-index": "1",
                    "width": "calc(50% - 20px)",
                    "height": "40px"
                  },
                  "widgetSet": "materialdesign"
                }
              },
              "name": "AdapterStatus",
              "filterList": []
            }
            

            Skript

            // Imports -> müssen im Javascript Adapter unter 'Zusätzliche NPM-Module' eingetragen sein
            const moment = require("moment");
            const momentDurationFormatSetup = require("moment-duration-format");
            
            
            // Skript Einstellungen *************************************************************************************************************************************************
            
            let dpList = '0_userdata.0.vis.AdapterStatus.jsonList';                     // Datenpunkt für IconList Widget (Typ: Zeichenkette (String))
            let dpAdapterRestart = '0_userdata.0.vis.AdapterStatus.restartTrigger';     // Datenpunkt für Adapter restart (Typ: Zeichenkette (String))
            
            let dpSortMode = '0_userdata.0.vis.AdapterStatus.sortMode';                 // Datenpunkt für Sortieren (Typ: Zeichenkette (String))
            let dpFilterMode = '0_userdata.0.vis.AdapterStatus.filterMode';             // Datenpunkt für Filter (Typ: Zeichenkette (String))
            
            let adminUpdatesList = 'admin.0.info.updatesList';                          // Datenpunkt Admin Adapter für verfübare Updates der Adapter
            
            const checkInterval = 30;                                                   // Interval wie oft Status der Adapter aktualisiert werden soll (in Sekunden)
            
            let sprache = 'de';                                                         // Sprache für formatierung Dauer 
            let formatierungDauer = "dd[T] hh[h] mm[m]";                                // Formatierung der Dauer -> siehe momentjs library
            
            let neustarten = true;                                                      // true: Adapter wird neugestartet, false: Adapter wird gestoppt oder gestartet
            
            let farbeAdapterAktiv = 'green';                                            // Status Bar Farbe wenn Adapter aktiv ist
            let farbeAdapterNichtAktiv = 'FireBrick';                                   // Status Bar Farbe wenn Adapter nicht aktiv ist oder Fehler vorliegt
            let farbeAdapterDeaktiviert = 'darkgrey';                                   // Status Bar Farbe wenn Adapter deaktiviert ist
            let farbeAdapterNichtVerbunden = 'yellow';                                  // Status Bar Farbe wenn Adapter nicht verbunden ist
            let farbeAdapterZeitgesteuert = 'lightgreen';                               // Status Bar Farbe wenn Adapter zeitgesteuert ist
            let farbeAdapterErweiterung = '#44739e';                                    // Status Bar Farbe wenn Adapter Erweiterung ist
            let farbeAdapterSystem = '#44739e';                                         // Status Bar Farbe wenn Adapter mit System gestartet wird
            
            let sortResetAfter = 120;                                                   // Sortierung nach X Sekunden auf sortReset zurücksetzen (0=deaktiviert)
            let sortReset = 'memHeapUsed'                                               // Sortierung auf die zurückgesetzt werden soll
            
            let filterResetAfter = 120;                                                 // Filter nach X Sekunden zurücksetzen (0=deaktiviert)
            
            // **********************************************************************************************************************************************************************
            
            
            // Fomate für moment Lib
            moment.locale(sprache);
            
            // auf .alive Änderungen hören
            let aliveSelector = `[id=system.adapter.*.alive]`;
            let adapterAliveList = $(aliveSelector);
            if (adapterAliveList.length === 0) {
                // Fehlermeldung ausgeben, wenn selector kein result liefert
                console.error(`no result for selector '${aliveSelector}'`)
            } else {
                // listener nur für Änderung bei alive
                adapterAliveList.on(adapterStatus);
            }
            
            // auf .connection Änderungen hören
            let connectionSelector = `[id=*.info.connection]`;
            let adapterConnectionList = $(connectionSelector);
            if (adapterConnectionList.length === 0) {
                // Fehlermeldung ausgeben, wenn selector kein result liefert
                console.error(`no result for selector '${connectionSelector}'`)
            } else {
                // listener nur für Änderung bei alive
                adapterConnectionList.on(adapterStatus);
            }
            
            // auf .connected Änderungen hören
            let connectedSelector = `[id=system.adapter.*.connected]`;
            let adapterConnectedList = $(connectedSelector);
            if (adapterConnectedList.length === 0) {
                // Fehlermeldung ausgeben, wenn selector kein result liefert
                console.error(`no result for selector '${connectedSelector}'`)
            } else {
                // listener nur für Änderung bei alive
                adapterConnectedList.on(adapterStatus);
            }
            
            // auf Änderungen der Sortieung hören
            on({ id: dpSortMode, change: 'any' }, adapterStatus);
            on({ id: dpSortMode, change: 'any' }, resetSort);
            
            // auf Änderungen der Filter hören
            on({ id: dpFilterMode, change: 'any' }, adapterStatus);
            on({ id: dpFilterMode, change: 'any' }, resetFilter);
            
            // Funktion adapterStatus alle x Sekunden ausführen
            schedule('*/' + checkInterval + ' * * * * *', adapterStatus);
            
            function adapterStatus() {
                // Funktion um Status der Adapter abzurufen und als JSON String für das Material Design Widget IconList aufbereiten
                let adapterList = [];
                let updateList = myHelper().getStateValueIfExist(adminUpdatesList);
            
                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 (parseInt(adapterInstance) > 0) {
                            nameWithInstance = name + '.' + adapterInstance;
                        }
            
                        let uptime = (existsState(id + '.uptime')) ? moment.duration(getState(id + '.uptime').val, 'seconds').format(formatierungDauer, 0) : '-';
                        let image = (myHelper().checkCommonPropertyExist(obj, 'icon')) ? `/${nameArray[0]}.admin/${obj.common.icon}` : 'image-off-outline';
            
                        let hasUpdates = updateList && updateList.includes(nameArray[0]);
                        let newVersion = (hasUpdates) ? '<span class="mdi mdi-update" style="color: #ec0909;"></span>' : '';
            
                        let text = `<div style="display: flex; flex-direction: row; line-height: 1.5; padding-right: 8px; align-items: center;">
                                        <div style="flex: 1">${newVersion} ${nameWithInstance}</div>
                                        <div style="color: grey; font-size: 12px; font-family: RobotoCondensed-LightItalic;">${myHelper().getCommonPropertyIfExist(obj, 'version', '-', 'v', '')}</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;">${myHelper().getStateValueIfExist(id + '.cpu', '-', '', ' %')}</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;">${myHelper().getStateValueIfExist(id + '.memHeapTotal', '-', '', ' 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;">${myHelper().getStateValueIfExist(id + '.memHeapUsed', '-', '', ' 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;">${myHelper().getStateValueIfExist(id + '.memRss', '-', '', ' 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;">${uptime}</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;">Modus</div>
                                            <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${myHelper().getCommonPropertyIfExist(obj, 'mode', '-')}</div>
                                        </div>`
            
                        let statusBarColor = farbeAdapterNichtAktiv;
                        let status = 3;
            
                        if (myHelper().getStateValueIfExist(adapterAliveList[i]) === 'true') {
                            statusBarColor = farbeAdapterAktiv;
                            status = 0;
            
                            if (existsState(id.replace('system.adapter.', '') + '.info.connection')) {
                                if (!getState(id.replace('system.adapter.', '') + '.info.connection').val) {
                                    statusBarColor = farbeAdapterNichtVerbunden;
                                    status = 4;
                                }
                            } else {
                                if (myHelper().getStateValueIfExist(adapterAliveList[i].replace('.alive', '.connected')) === 'false') {
                                    statusBarColor = farbeAdapterNichtVerbunden;
                                    status = 4;
                                }
                            }
                        }
            
                        if (myHelper().getCommonPropertyIfExist(obj, 'mode') === 'schedule') {
                            // Adapter ist zeitgesteuert
                            statusBarColor = farbeAdapterZeitgesteuert;
                            status = 1;
                        }
            
                        if (myHelper().getCommonPropertyIfExist(obj, 'mode') === 'extension') {
                            // Adapter ist Extension
                            statusBarColor = farbeAdapterErweiterung;
                            status = 1;
                        }
            
                        if (myHelper().getCommonPropertyIfExist(obj, 'mode') === 'once') {
                            // Adapter wird mit System gestartet
                            statusBarColor = farbeAdapterSystem;
                            status = 1;
                        }
            
                        if (myHelper().getCommonPropertyIfExist(obj, 'enabled', false).toString() === 'false') {
                            // Adapter ist deaktiviert
                            statusBarColor = farbeAdapterDeaktiviert;
                            status = 2;
                        }
            
                        adapterList.push({
                            text: text,
                            subText: subText,
                            image: image,
                            listType: "buttonState",
                            objectId: dpAdapterRestart,
                            buttonStateValue: id,
                            statusBarColor: statusBarColor,
                            showValueLabel: false,
                            name: name,
                            mode: myHelper().getCommonPropertyIfExist(obj, 'mode'),
                            hasUpdates: hasUpdates,
                            cpu: parseFloat(myHelper().getStateValueIfExist(id + '.cpu', '0')),
                            memHeapTotal: parseFloat(myHelper().getStateValueIfExist(id + '.memHeapTotal', '0')),
                            memHeapUsed: parseFloat(myHelper().getStateValueIfExist(id + '.memHeapUsed', '0')),
                            memRss: parseFloat(myHelper().getStateValueIfExist(id + '.memRss', '0')),
                            uptime: parseFloat(myHelper().getStateValueIfExist(id + '.uptime', 0)),
                            status: status
                        })
                    }
            
                } catch (err) {
                    console.error(`[adapterStatus] error: ${err.message}, stack: ${err.stack}`);
                }
            
                let sortMode = myHelper().getStateValueIfExist(dpSortMode, 'name');
            
                if (sortMode === 'name' || sortMode === 'mode') {
                    adapterList.sort(function (a, b) {
                        return a[sortMode] == b[sortMode] ? 0 : +(a[sortMode] > b[sortMode]) || -1;
                    });
                } else if (sortMode === 'hasUpdates' || sortMode === 'cpu' || sortMode === 'memHeapTotal' || sortMode === 'memHeapUsed' || sortMode === 'memRss' || sortMode === 'uptime' || sortMode === 'status') {
                    adapterList.sort(function (a, b) {
                        return a[sortMode] == b[sortMode] ? 0 : +(a[sortMode] < b[sortMode]) || -1;
                    });
                } else {
                    // default: nach name sortieren
                    sortMode = 'name'
                    adapterList.sort(function (a, b) {
                        return a[sortMode] == b[sortMode] ? 0 : +(a[sortMode] > b[sortMode]) || -1;
                    });
                }
            
                // Filter: not connected, updates, deaktiviert, aktiviert
            
                let filterMode = myHelper().getStateValueIfExist(dpFilterMode, null);
            
                if (filterMode && filterMode !== null && filterMode !== '') {
                    if (filterMode === 'hasUpdates') {
                        adapterList = adapterList.filter(function (item) {
                            return item.hasUpdates === true;
                        });
                    } else if (filterMode === 'notConnected') {
                        adapterList = adapterList.filter(function (item) {
                            return item.status === 4;
                        });
                    } else if (filterMode === 'deactivated') {
                        adapterList = adapterList.filter(function (item) {
                            return item.status === 2;
                        });
                    } else if (filterMode === 'activated') {
                        adapterList = adapterList.filter(function (item) {
                            return item.status <= 1;
                        });
                    }
                }
            
                // adapterList = adapterList.filter(function(item){
                //     return item.status === 4;
                // })
            
                let result = JSON.stringify(adapterList);
                if (getState(dpList) !== result) {
                    setState(dpList, result, true);
                }
            
            
            }
            
            // Beim Staren des Skriptes Adapter Status abrufen
            adapterStatus();
            
            // Funktion um Adapter zu starten / neu starten
            on({ id: dpAdapterRestart }, function (obj) {
                var adapter = getObject(obj.state.val.toString());
            
                if (neustarten) {
                    if (adapter.common && adapter.common.enabled === false) {
                        // Adapter deaktiviert -> starten
                        adapter.common.enabled = true;
                    }
                } else {
                    if (adapter.common && adapter.common.enabled) {
                        adapter.common.enabled = !adapter.common.enabled;
                    } else {
                        adapter.common.enabled = true;
                    }
                }
            
                setObject(obj.state.val, adapter);
                console.log(`${obj.state.val.replace('system.adapter.', '')} neugestartet`);
            });
            
            
            function resetSort() {
                let sortMode = myHelper().getStateValueIfExist(dpSortMode, null);
            
                if (sortResetAfter > 0) {
                    setTimeout(function () {
                        if (sortMode !== null && sortMode === myHelper().getStateValueIfExist(dpSortMode, null)) {
                            setState(dpSortMode, sortReset);
                        }
                    }, sortResetAfter * 1000);
                }
            }
            
            function resetFilter() {
                let filterMode = myHelper().getStateValueIfExist(dpFilterMode, null);
            
                if (filterResetAfter > 0) {
                    setTimeout(function () {
                        if (filterMode !== null && filterMode === myHelper().getStateValueIfExist(dpFilterMode, null)) {
                            setState(dpFilterMode, '');
                        }
                    }, filterResetAfter * 1000);
                }
            }
            
            function myHelper() {
                return {
                    getStateValueIfExist: function (id, nullValue = undefined, prepand = '', append = '') {
                        if (existsState(id)) {
                            return prepand + getState(id).val + append;
                        } else {
                            return nullValue;
                        }
                    },
                    getCommonPropertyIfExist: function (object, prop, nullValue = undefined, prepand = '', append = '') {
                        if (myHelper().checkCommonPropertyExist(object, prop)) {
                            return prepand + object.common[prop] + append;
                        } else {
                            return nullValue;
                        }
                    },
                    checkCommonPropertyExist: function (object, prop) {
                        if (object && object.common && object.common[prop]) {
                            return true;
                        } else {
                            return false;
                        }
                    }
                }
            }
            
            ub.privatU Offline
            ub.privatU Offline
            ub.privat
            schrieb am zuletzt editiert von
            #164

            @Scrounger

            Habe dieses Script verwendet und das hat nach dem kopieren 679 Zeilen

            061b470e-7109-4136-9a9f-65a404a4b0f9-grafik.png

            Leerzeilen sind natürlich mitgezählt...

            1 Antwort Letzte Antwort
            0
            • ub.privatU ub.privat

              @Scrounger

              Bin mir keiner Änderung bewußt!
              Würdest du das AKTUELLESTE Script nochmals bitte verlinken!?
              DANKE.

              sigi234S Online
              sigi234S Online
              sigi234
              Forum Testing Most Active
              schrieb am zuletzt editiert von sigi234
              #165

              @ub-privat sagte in View Adapter Status:

              @Scrounger

              Bin mir keiner Änderung bewußt!
              Würdest du das AKTUELLESTE Script nochmals bitte verlinken!?
              DANKE.

              Edit: Falsches Skript gewesen.

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

              1 Antwort Letzte Antwort
              0
              • ScroungerS Scrounger

                @ub-privat
                Hast du das skript 1:1 kopiert?
                Die Fehlermeldung bezieht sich auf Zeile 518-520 - das skript hat aber nur 339 Zeilen.

                Und laut deinem Screenshot hast du irgendwas an dem Skript verändert. Weil ab Zeile 8 müssten die settings zu sehen sein.

                Und bitte das vollständige log posten, also aus dem reiter 'log' im admin bereich.

                sigi234S Online
                sigi234S Online
                sigi234
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #166

                @Scrounger sagte in View Adapter Status:

                das skript hat aber nur 339 Zeilen.

                Ich habe 310?

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

                ScroungerS 1 Antwort Letzte Antwort
                0
                • sigi234S sigi234

                  @Scrounger sagte in View Adapter Status:

                  das skript hat aber nur 339 Zeilen.

                  Ich habe 310?

                  ScroungerS Offline
                  ScroungerS Offline
                  Scrounger
                  Developer
                  schrieb am zuletzt editiert von
                  #167

                  @sigi234
                  https://forum.iobroker.net/topic/26533/view-adapter-status/142

                  Hatte ich geschrieben das ich es nochmal dort aktualisiert habe ;)

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

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

                  ub.privatU 1 Antwort Letzte Antwort
                  0
                  • ScroungerS Scrounger

                    @sigi234
                    https://forum.iobroker.net/topic/26533/view-adapter-status/142

                    Hatte ich geschrieben das ich es nochmal dort aktualisiert habe ;)

                    ub.privatU Offline
                    ub.privatU Offline
                    ub.privat
                    schrieb am zuletzt editiert von ub.privat
                    #168

                    @Scrounger
                    @sigi234

                    Habe es nochmals kopiert und neu angelegt.
                    Hat nunmehr die "339" Zeilen und ab Zeile 8 beginnen die settings.
                    8cf1a33b-c14a-4c94-be2f-c5a8dbeb44e7-grafik.png
                    1b9067a5-733f-49de-910a-fdd1efdb13be-grafik.png

                    Folgende Warnung wird immer in Zeile 259 - 260 ausgewiesen:

                    27.2.2020, 20:44:17.792	[info ]: javascript.0 (31416) Stop script script.js.Adapter_MaterialDesignWidget
                    27.2.2020, 20:44:22.557	[info ]: javascript.0 (31416) Start javascript script.js.Adapter_MaterialDesignWidget
                    27.2.2020, 20:44:23.017	[warn ]: javascript.0 (31416)     at adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:44:23.017	[warn ]: javascript.0 (31416)     at script.js.Adapter_MaterialDesignWidget:267:1
                    27.2.2020, 20:44:23.018	[warn ]: javascript.0 (31416)     at adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:44:23.019	[warn ]: javascript.0 (31416)     at script.js.Adapter_MaterialDesignWidget:267:1
                    27.2.2020, 20:44:23.019	[info ]: javascript.0 (31416) script.js.Adapter_MaterialDesignWidget: registered 105 subscriptions and 1 schedule
                    27.2.2020, 20:44:30.196	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:44:30.199	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:44:32.200	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:44:32.204	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:44:33.250	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:44:33.252	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:00.287	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:00.291	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:02.541	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:02.545	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:02.857	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:02.859	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:03.452	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:03.456	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:09.499	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:09.503	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:11.106	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:11.109	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:17.548	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:17.552	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:29.638	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:29.641	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:30.233	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:30.242	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:32.297	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:32.300	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:45:33.280	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:45:33.281	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:46:00.359	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:46:00.364	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:46:04.589	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:46:04.591	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:46:04.772	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:46:04.775	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:46:05.625	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:46:05.628	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:46:30.164	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:46:30.167	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:46:31.916	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:46:31.919	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:46:32.858	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:46:32.860	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:47:00.326	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:47:00.331	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:47:02.429	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:47:02.431	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:47:02.669	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:47:02.672	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:47:03.396	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:47:03.399	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:48:30.164	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:48:30.167	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:48:31.763	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:48:31.770	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:48:32.770	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:48:32.771	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:49:00.258	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:49:00.261	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:49:02.564	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:49:02.568	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:49:02.817	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:49:02.819	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:49:03.517	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:49:03.521	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:49:32.178	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:49:32.180	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:49:33.143	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:49:33.146	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:50:00.338	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:50:00.342	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:50:02.898	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:50:02.901	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:50:03.205	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:50:03.207	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:50:03.885	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:50:03.892	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    27.2.2020, 20:50:09.069	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                    27.2.2020, 20:50:09.073	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                    
                    Das steht im Script:
                    
                    ![20bd8d6a-e81d-48de-a58b-2ab78550537b-grafik.png](/assets/uploads/files/1582833432058-20bd8d6a-e81d-48de-a58b-2ab78550537b-grafik.png) 
                    
                    ScroungerS 1 Antwort Letzte Antwort
                    0
                    • ub.privatU ub.privat

                      @Scrounger
                      @sigi234

                      Habe es nochmals kopiert und neu angelegt.
                      Hat nunmehr die "339" Zeilen und ab Zeile 8 beginnen die settings.
                      8cf1a33b-c14a-4c94-be2f-c5a8dbeb44e7-grafik.png
                      1b9067a5-733f-49de-910a-fdd1efdb13be-grafik.png

                      Folgende Warnung wird immer in Zeile 259 - 260 ausgewiesen:

                      27.2.2020, 20:44:17.792	[info ]: javascript.0 (31416) Stop script script.js.Adapter_MaterialDesignWidget
                      27.2.2020, 20:44:22.557	[info ]: javascript.0 (31416) Start javascript script.js.Adapter_MaterialDesignWidget
                      27.2.2020, 20:44:23.017	[warn ]: javascript.0 (31416)     at adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:44:23.017	[warn ]: javascript.0 (31416)     at script.js.Adapter_MaterialDesignWidget:267:1
                      27.2.2020, 20:44:23.018	[warn ]: javascript.0 (31416)     at adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:44:23.019	[warn ]: javascript.0 (31416)     at script.js.Adapter_MaterialDesignWidget:267:1
                      27.2.2020, 20:44:23.019	[info ]: javascript.0 (31416) script.js.Adapter_MaterialDesignWidget: registered 105 subscriptions and 1 schedule
                      27.2.2020, 20:44:30.196	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:44:30.199	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:44:32.200	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:44:32.204	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:44:33.250	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:44:33.252	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:00.287	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:00.291	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:02.541	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:02.545	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:02.857	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:02.859	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:03.452	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:03.456	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:09.499	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:09.503	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:11.106	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:11.109	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:17.548	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:17.552	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:29.638	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:29.641	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:30.233	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:30.242	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:32.297	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:32.300	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:45:33.280	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:45:33.281	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:46:00.359	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:46:00.364	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:46:04.589	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:46:04.591	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:46:04.772	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:46:04.775	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:46:05.625	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:46:05.628	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:46:30.164	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:46:30.167	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:46:31.916	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:46:31.919	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:46:32.858	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:46:32.860	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:47:00.326	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:47:00.331	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:47:02.429	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:47:02.431	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:47:02.669	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:47:02.672	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:47:03.396	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:47:03.399	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:48:30.164	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:48:30.167	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:48:31.763	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:48:31.770	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:48:32.770	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:48:32.771	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:49:00.258	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:49:00.261	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:49:02.564	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:49:02.568	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:49:02.817	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:49:02.819	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:49:03.517	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:49:03.521	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:49:32.178	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:49:32.180	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:49:33.143	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:49:33.146	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:50:00.338	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:50:00.342	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:50:02.898	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:50:02.901	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:50:03.205	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:50:03.207	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:50:03.885	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:50:03.892	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      27.2.2020, 20:50:09.069	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:259:9)
                      27.2.2020, 20:50:09.073	[warn ]: javascript.0 (31416)     at Object.adapterStatus (script.js.Adapter_MaterialDesignWidget:260:9)
                      
                      Das steht im Script:
                      
                      ![20bd8d6a-e81d-48de-a58b-2ab78550537b-grafik.png](/assets/uploads/files/1582833432058-20bd8d6a-e81d-48de-a58b-2ab78550537b-grafik.png) 
                      
                      ScroungerS Offline
                      ScroungerS Offline
                      Scrounger
                      Developer
                      schrieb am zuletzt editiert von
                      #169

                      @ub-privat

                      Datenpunkt bei dir 0_userdata.0.AdapterStatus.sortMode

                      Datenpunkt im skript 0_userdata.0.vis.AdapterStatus.sortMode

                      D.h. Datenpunkte findet er nicht.

                      <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 Antwort Letzte Antwort
                      0
                      • ub.privatU ub.privat

                        @Scrounger

                        Guten entspannten Guten Abend!

                        Mit meinem langsam wachsendem Verständnis in der Anwendung deiner MEISTERWERKE versuche ich mich wieder mal.
                        Der Adapter-View ist ganz großes Kino. Leider verende ich beim "Trailer".
                        Was habe ich bisher gemacht:

                        1. notwendige Einstellungen im JS Adapter vorgenommen:
                          636f2623-a41a-4cb3-9d92-74154a05890a-grafik.png

                        2. Script eingestellt:
                          8dc9c5a6-9444-406b-9893-ff3085e48816-grafik.png
                          Leider mit Warnungen...

                        3. Datenpunkte angelegt:
                          e43630b0-51fd-45da-bb06-73d650def20c-grafik.png
                          f1a758b3-22cb-45af-a95f-02f71bbb4c93-grafik.png
                          Leider werden keine Werte erzeugt.

                        4. View importiert:
                          70e9844b-fb88-4b82-b2d1-0696d71594e4-grafik.png
                          Mit entsprechender Warnung.

                        5. NUN IST GUTER RAT TEUER - wo mache ich wie weiter????
                          Lesse den Tread hoch und runter, aber die Erleeuchtung will sich nicht einstellen...

                        GlasfaserG Offline
                        GlasfaserG Offline
                        Glasfaser
                        schrieb am zuletzt editiert von Glasfaser
                        #170

                        @ub-privat sagte in View Adapter Status:

                        f1a758b3-22cb-45af-a95f-02f71bbb4c93-grafik.png
                        Leider werden keine Werte erzeugt.

                        Die Datenpunkte sind im Skript :

                        0_userdata.0.vis.AdapterStatus.jsonList
                        

                        deine sind :

                        0_userdata.0.AdapterStatus.jsonList
                        

                        EDIT : @Scrounger war schneller :)

                        Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                        ub.privatU 1 Antwort Letzte Antwort
                        0
                        • GlasfaserG Glasfaser

                          @ub-privat sagte in View Adapter Status:

                          f1a758b3-22cb-45af-a95f-02f71bbb4c93-grafik.png
                          Leider werden keine Werte erzeugt.

                          Die Datenpunkte sind im Skript :

                          0_userdata.0.vis.AdapterStatus.jsonList
                          

                          deine sind :

                          0_userdata.0.AdapterStatus.jsonList
                          

                          EDIT : @Scrounger war schneller :)

                          ub.privatU Offline
                          ub.privatU Offline
                          ub.privat
                          schrieb am zuletzt editiert von
                          #171

                          @Glasfaser
                          @Scrounger

                          Vielen Dank! dieses kleine "vis" :angry: hat so eine riesige Wirkung.
                          Tata... es funzt!
                          a2c28e35-904e-4e01-8d29-4ebe391dbe1b-grafik.png
                          Vielen Dank!

                          Nun noch schick und schön alá @sigi234 und die Visu ist wieder um einen View reicher!

                          DANKE :+1: :+1:

                          1 Antwort Letzte Antwort
                          0
                          • smartboartS Offline
                            smartboartS Offline
                            smartboart
                            schrieb am zuletzt editiert von
                            #172

                            Tolle Sache!!! Danke für view und script...Wie wäre es das Script noch um einen Filter und Sortierung nach Instanz zu erweitern?

                            ScroungerS 1 Antwort Letzte Antwort
                            0
                            • ScroungerS Scrounger

                              Sodele nochmal eine neue Version des Skriptes

                              Voraussetzung Material Design Widgets v0.2.62 (demnächst im latest) !!!

                              • mehr Farbeinstellung
                              • Sortier Funktion
                              • Filter Funktion - wäre sicher als nächster Wunsch gekommen, deshalb hab ich es schon mal eingebaut ;-)
                                (Benötigt ihr weitere schaut ins skript und passt es auf eure Bedürfnisse an)
                              • Adapter Modus wird angezeigt
                              • Fehler behoben

                              AdapterStatus.gif

                              Ist auch im Online Beispiel enthalten

                              View:

                              {
                                "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,
                                      "json_string_oid": "0_userdata.0.vis.AdapterStatus.jsonList",
                                      "maxItemsperRow": "6",
                                      "iconItemMinWidth": "300",
                                      "iconHeight": "60",
                                      "buttonHeight": "100",
                                      "labelFontSize": "22",
                                      "subLabelFontSize": "14",
                                      "subLabelFontColor": "#000000",
                                      "labelFontFamily": "RobotoCondensed-Regular",
                                      "subLabelFontFamily": "RobotoCondensed-Light",
                                      "horizontalIconContainerWidth": "120"
                                    },
                                    "style": {
                                      "left": "0px",
                                      "top": "50px",
                                      "width": "100%",
                                      "height": "calc(100% - 50px)",
                                      "overflow-x": "",
                                      "overflow-y": "auto",
                                      "z-index": "1"
                                    },
                                    "widgetSet": "materialdesign"
                                  },
                                  "e00002": {
                                    "tpl": "tplHtml",
                                    "data": {
                                      "g_fixed": false,
                                      "g_visibility": false,
                                      "g_css_font_text": false,
                                      "g_css_background": true,
                                      "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",
                                      "refreshInterval": "0",
                                      "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
                                    },
                                    "style": {
                                      "left": "0",
                                      "top": "0",
                                      "width": "100%",
                                      "height": "50px",
                                      "background-color": "#44739e"
                                    },
                                    "widgetSet": "basic"
                                  },
                                  "e00003": {
                                    "tpl": "tplVis-materialdesign-Select",
                                    "data": {
                                      "oid": "0_userdata.0.vis.AdapterStatus.sortMode",
                                      "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",
                                      "inputType": "text",
                                      "inputLayout": "regular",
                                      "showInputMessageAlways": "true",
                                      "showInputCounter": false,
                                      "clearIconShow": false,
                                      "listDataMethod": "jsonStringObject",
                                      "countSelectItems": "1",
                                      "listPosition": "bottom",
                                      "showSelectedIcon": "prepend-inner",
                                      "showValue": false,
                                      "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,
                                      "inputLabelText": "Sortieren nach",
                                      "inputLabelColor": "#ffffff",
                                      "inputLabelFontFamily": "RobotoCondensed-LightItalic",
                                      "collapseIconColor": "#ffffff",
                                      "collapseIconSize": "",
                                      "jsonStringObject": "[\n\t{\n\t\t\"text\": \"Adaptername\",\n\t\t\"value\": \"name\",\n\t\t\"icon\": \"sort-alphabetical\"\n\t},\n\t{\n\t\t\"text\": \"Status\",\n\t\t\"value\": \"status\",\n\t\t\"icon\": \"information-variant\"\n\t},\t\n\t{\n\t\t\"text\": \"Modus\",\n\t\t\"value\": \"mode\",\n\t\t\"icon\": \"view-dashboard\"\n\t},\n\t{\n\t\t\"text\": \"Updates verfügbar\",\n\t\t\"value\": \"hasUpdates\",\n\t\t\"icon\": \"package-down\"\n\t},\n\t{\n\t\t\"text\": \"CPU\",\n\t\t\"value\": \"cpu\",\n\t\t\"icon\": \"cpu-64-bit\"\n\t},\n\t{\n\t\t\"text\": \"RAM total\",\n\t\t\"value\": \"memHeapTotal\",\n\t\t\"icon\": \"memory\"\n\t},\n\t{\n\t\t\"text\": \"RAM verwendet\",\n\t\t\"value\": \"memHeapUsed\",\n\t\t\"icon\": \"memory\"\n\t},\n\t{\n\t\t\"text\": \"RAM reserviert\",\n\t\t\"value\": \"memRss\",\n\t\t\"icon\": \"memory\"\n\t},\n\t{\n\t\t\"text\": \"Betriebszeit\",\n\t\t\"value\": \"uptime\",\n\t\t\"icon\": \"clock-check-outline\"\n\t}\n]",
                                      "listPositionOffset": true,
                                      "inputLayoutBackgroundColor": "transparent",
                                      "inputLabelColorSelected": "#ffffff",
                                      "inputTranslateX": "-15",
                                      "clearIcon": "",
                                      "inputLayoutBorderColorHover": "#ffffff",
                                      "inputLayoutBorderColorSelected": "#ffffff",
                                      "inputLayoutBorderColor": "#a1a1a1",
                                      "listItemFontColor": "",
                                      "inputTextColor": "#ffffff",
                                      "inputTextFontFamily": "RobotoCondensed-LightItalic",
                                      "prepandIcon": "",
                                      "prepandIconColor": "",
                                      "prepandIconSize": "",
                                      "prepandInnerIcon": "",
                                      "prepandInnerIconColor": "#ffffff",
                                      "prepandInnerIconSize": "18",
                                      "collapseIcon": "",
                                      "inputTranslateY": "-12",
                                      "listIconSelectedColor": "#44739e",
                                      "listIconColor": "",
                                      "appendOuterIcon": "",
                                      "appendOuterIconSize": "2",
                                      "listItemFont": "RobotoCondensed-Regular",
                                      "listItemRippleEffectColor": "",
                                      "inputLayoutBackgroundColorSelected": "",
                                      "inputLayoutBackgroundColorHover": ""
                                    },
                                    "style": {
                                      "left": "10px",
                                      "top": "0px",
                                      "z-index": "1",
                                      "width": "calc(50% - 20px)",
                                      "height": "40px"
                                    },
                                    "widgetSet": "materialdesign"
                                  },
                                  "e00004": {
                                    "tpl": "tplVis-materialdesign-Select",
                                    "data": {
                                      "oid": "0_userdata.0.vis.AdapterStatus.filterMode",
                                      "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",
                                      "inputType": "text",
                                      "inputLayout": "regular",
                                      "showInputMessageAlways": "true",
                                      "showInputCounter": false,
                                      "clearIconShow": true,
                                      "listDataMethod": "jsonStringObject",
                                      "countSelectItems": "1",
                                      "listPosition": "bottom",
                                      "showSelectedIcon": "prepend-inner",
                                      "showValue": false,
                                      "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,
                                      "inputLabelText": "Filtern nach",
                                      "inputLabelColor": "#ffffff",
                                      "inputLabelFontFamily": "RobotoCondensed-LightItalic",
                                      "collapseIconColor": "#ffffff",
                                      "collapseIconSize": "",
                                      "jsonStringObject": "[\n\t{\n\t\t\"text\": \"nicht verbunden\",\n\t\t\"value\": \"notConnected\",\n\t\t\"icon\": \"network-off\"\n\t},\n\t{\n\t\t\"text\": \"deaktiviert\",\n\t\t\"value\": \"deactivated\",\n\t\t\"icon\": \"checkbox-blank-outline\"\n\t},\t\n\t{\n\t\t\"text\": \"aktiviert\",\n\t\t\"value\": \"activated\",\n\t\t\"icon\": \"checkbox-intermediate\"\n\t},\n\t{\n\t\t\"text\": \"Updates verfügbar\",\n\t\t\"value\": \"hasUpdates\",\n\t\t\"icon\": \"package-down\"\n\t}\n]",
                                      "listPositionOffset": true,
                                      "inputLayoutBackgroundColor": "transparent",
                                      "inputLabelColorSelected": "#ffffff",
                                      "inputTranslateX": "-15",
                                      "clearIcon": "",
                                      "inputLayoutBorderColorHover": "#ffffff",
                                      "inputLayoutBorderColorSelected": "#ffffff",
                                      "inputLayoutBorderColor": "#a1a1a1",
                                      "listItemFontColor": "",
                                      "inputTextColor": "#ffffff",
                                      "inputTextFontFamily": "RobotoCondensed-LightItalic",
                                      "prepandIcon": "",
                                      "prepandIconColor": "",
                                      "prepandIconSize": "",
                                      "prepandInnerIcon": "",
                                      "prepandInnerIconColor": "#ffffff",
                                      "prepandInnerIconSize": "18",
                                      "collapseIcon": "",
                                      "inputTranslateY": "-12",
                                      "listIconSelectedColor": "#44739e",
                                      "listIconColor": "",
                                      "appendOuterIcon": "",
                                      "appendOuterIconSize": "2",
                                      "listItemFont": "RobotoCondensed-Regular",
                                      "listItemRippleEffectColor": "",
                                      "inputLayoutBackgroundColorSelected": "",
                                      "inputLayoutBackgroundColorHover": "",
                                      "clearIconColor": "#ffffff"
                                    },
                                    "style": {
                                      "left": "calc(50% + 10px)",
                                      "top": "0px",
                                      "z-index": "1",
                                      "width": "calc(50% - 20px)",
                                      "height": "40px"
                                    },
                                    "widgetSet": "materialdesign"
                                  }
                                },
                                "name": "AdapterStatus",
                                "filterList": []
                              }
                              

                              Skript

                              // Imports -> müssen im Javascript Adapter unter 'Zusätzliche NPM-Module' eingetragen sein
                              const moment = require("moment");
                              const momentDurationFormatSetup = require("moment-duration-format");
                              
                              
                              // Skript Einstellungen *************************************************************************************************************************************************
                              
                              let dpList = '0_userdata.0.vis.AdapterStatus.jsonList';                     // Datenpunkt für IconList Widget (Typ: Zeichenkette (String))
                              let dpAdapterRestart = '0_userdata.0.vis.AdapterStatus.restartTrigger';     // Datenpunkt für Adapter restart (Typ: Zeichenkette (String))
                              
                              let dpSortMode = '0_userdata.0.vis.AdapterStatus.sortMode';                 // Datenpunkt für Sortieren (Typ: Zeichenkette (String))
                              let dpFilterMode = '0_userdata.0.vis.AdapterStatus.filterMode';             // Datenpunkt für Filter (Typ: Zeichenkette (String))
                              
                              let adminUpdatesList = 'admin.0.info.updatesList';                          // Datenpunkt Admin Adapter für verfübare Updates der Adapter
                              
                              const checkInterval = 30;                                                   // Interval wie oft Status der Adapter aktualisiert werden soll (in Sekunden)
                              
                              let sprache = 'de';                                                         // Sprache für formatierung Dauer 
                              let formatierungDauer = "dd[T] hh[h] mm[m]";                                // Formatierung der Dauer -> siehe momentjs library
                              
                              let neustarten = true;                                                      // true: Adapter wird neugestartet, false: Adapter wird gestoppt oder gestartet
                              
                              let farbeAdapterAktiv = 'green';                                            // Status Bar Farbe wenn Adapter aktiv ist
                              let farbeAdapterNichtAktiv = 'FireBrick';                                   // Status Bar Farbe wenn Adapter nicht aktiv ist oder Fehler vorliegt
                              let farbeAdapterDeaktiviert = 'darkgrey';                                   // Status Bar Farbe wenn Adapter deaktiviert ist
                              let farbeAdapterNichtVerbunden = 'yellow';                                  // Status Bar Farbe wenn Adapter nicht verbunden ist
                              let farbeAdapterZeitgesteuert = 'lightgreen';                               // Status Bar Farbe wenn Adapter zeitgesteuert ist
                              let farbeAdapterErweiterung = '#44739e';                                    // Status Bar Farbe wenn Adapter Erweiterung ist
                              let farbeAdapterSystem = '#44739e';                                         // Status Bar Farbe wenn Adapter mit System gestartet wird
                              
                              let sortResetAfter = 120;                                                   // Sortierung nach X Sekunden auf sortReset zurücksetzen (0=deaktiviert)
                              let sortReset = 'memHeapUsed'                                               // Sortierung auf die zurückgesetzt werden soll
                              
                              let filterResetAfter = 120;                                                 // Filter nach X Sekunden zurücksetzen (0=deaktiviert)
                              
                              // **********************************************************************************************************************************************************************
                              
                              
                              // Fomate für moment Lib
                              moment.locale(sprache);
                              
                              // auf .alive Änderungen hören
                              let aliveSelector = `[id=system.adapter.*.alive]`;
                              let adapterAliveList = $(aliveSelector);
                              if (adapterAliveList.length === 0) {
                                  // Fehlermeldung ausgeben, wenn selector kein result liefert
                                  console.error(`no result for selector '${aliveSelector}'`)
                              } else {
                                  // listener nur für Änderung bei alive
                                  adapterAliveList.on(adapterStatus);
                              }
                              
                              // auf .connection Änderungen hören
                              let connectionSelector = `[id=*.info.connection]`;
                              let adapterConnectionList = $(connectionSelector);
                              if (adapterConnectionList.length === 0) {
                                  // Fehlermeldung ausgeben, wenn selector kein result liefert
                                  console.error(`no result for selector '${connectionSelector}'`)
                              } else {
                                  // listener nur für Änderung bei alive
                                  adapterConnectionList.on(adapterStatus);
                              }
                              
                              // auf .connected Änderungen hören
                              let connectedSelector = `[id=system.adapter.*.connected]`;
                              let adapterConnectedList = $(connectedSelector);
                              if (adapterConnectedList.length === 0) {
                                  // Fehlermeldung ausgeben, wenn selector kein result liefert
                                  console.error(`no result for selector '${connectedSelector}'`)
                              } else {
                                  // listener nur für Änderung bei alive
                                  adapterConnectedList.on(adapterStatus);
                              }
                              
                              // auf Änderungen der Sortieung hören
                              on({ id: dpSortMode, change: 'any' }, adapterStatus);
                              on({ id: dpSortMode, change: 'any' }, resetSort);
                              
                              // auf Änderungen der Filter hören
                              on({ id: dpFilterMode, change: 'any' }, adapterStatus);
                              on({ id: dpFilterMode, change: 'any' }, resetFilter);
                              
                              // Funktion adapterStatus alle x Sekunden ausführen
                              schedule('*/' + checkInterval + ' * * * * *', adapterStatus);
                              
                              function adapterStatus() {
                                  // Funktion um Status der Adapter abzurufen und als JSON String für das Material Design Widget IconList aufbereiten
                                  let adapterList = [];
                                  let updateList = myHelper().getStateValueIfExist(adminUpdatesList);
                              
                                  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 (parseInt(adapterInstance) > 0) {
                                              nameWithInstance = name + '.' + adapterInstance;
                                          }
                              
                                          let uptime = (existsState(id + '.uptime')) ? moment.duration(getState(id + '.uptime').val, 'seconds').format(formatierungDauer, 0) : '-';
                                          let image = (myHelper().checkCommonPropertyExist(obj, 'icon')) ? `/${nameArray[0]}.admin/${obj.common.icon}` : 'image-off-outline';
                              
                                          let hasUpdates = updateList && updateList.includes(nameArray[0]);
                                          let newVersion = (hasUpdates) ? '<span class="mdi mdi-update" style="color: #ec0909;"></span>' : '';
                              
                                          let text = `<div style="display: flex; flex-direction: row; line-height: 1.5; padding-right: 8px; align-items: center;">
                                                          <div style="flex: 1">${newVersion} ${nameWithInstance}</div>
                                                          <div style="color: grey; font-size: 12px; font-family: RobotoCondensed-LightItalic;">${myHelper().getCommonPropertyIfExist(obj, 'version', '-', 'v', '')}</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;">${myHelper().getStateValueIfExist(id + '.cpu', '-', '', ' %')}</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;">${myHelper().getStateValueIfExist(id + '.memHeapTotal', '-', '', ' 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;">${myHelper().getStateValueIfExist(id + '.memHeapUsed', '-', '', ' 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;">${myHelper().getStateValueIfExist(id + '.memRss', '-', '', ' 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;">${uptime}</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;">Modus</div>
                                                              <div style="color: grey; font-size: 14px; font-family: RobotoCondensed-LightItalic;">${myHelper().getCommonPropertyIfExist(obj, 'mode', '-')}</div>
                                                          </div>`
                              
                                          let statusBarColor = farbeAdapterNichtAktiv;
                                          let status = 3;
                              
                                          if (myHelper().getStateValueIfExist(adapterAliveList[i]) === 'true') {
                                              statusBarColor = farbeAdapterAktiv;
                                              status = 0;
                              
                                              if (existsState(id.replace('system.adapter.', '') + '.info.connection')) {
                                                  if (!getState(id.replace('system.adapter.', '') + '.info.connection').val) {
                                                      statusBarColor = farbeAdapterNichtVerbunden;
                                                      status = 4;
                                                  }
                                              } else {
                                                  if (myHelper().getStateValueIfExist(adapterAliveList[i].replace('.alive', '.connected')) === 'false') {
                                                      statusBarColor = farbeAdapterNichtVerbunden;
                                                      status = 4;
                                                  }
                                              }
                                          }
                              
                                          if (myHelper().getCommonPropertyIfExist(obj, 'mode') === 'schedule') {
                                              // Adapter ist zeitgesteuert
                                              statusBarColor = farbeAdapterZeitgesteuert;
                                              status = 1;
                                          }
                              
                                          if (myHelper().getCommonPropertyIfExist(obj, 'mode') === 'extension') {
                                              // Adapter ist Extension
                                              statusBarColor = farbeAdapterErweiterung;
                                              status = 1;
                                          }
                              
                                          if (myHelper().getCommonPropertyIfExist(obj, 'mode') === 'once') {
                                              // Adapter wird mit System gestartet
                                              statusBarColor = farbeAdapterSystem;
                                              status = 1;
                                          }
                              
                                          if (myHelper().getCommonPropertyIfExist(obj, 'enabled', false).toString() === 'false') {
                                              // Adapter ist deaktiviert
                                              statusBarColor = farbeAdapterDeaktiviert;
                                              status = 2;
                                          }
                              
                                          adapterList.push({
                                              text: text,
                                              subText: subText,
                                              image: image,
                                              listType: "buttonState",
                                              objectId: dpAdapterRestart,
                                              buttonStateValue: id,
                                              statusBarColor: statusBarColor,
                                              showValueLabel: false,
                                              name: name,
                                              mode: myHelper().getCommonPropertyIfExist(obj, 'mode'),
                                              hasUpdates: hasUpdates,
                                              cpu: parseFloat(myHelper().getStateValueIfExist(id + '.cpu', '0')),
                                              memHeapTotal: parseFloat(myHelper().getStateValueIfExist(id + '.memHeapTotal', '0')),
                                              memHeapUsed: parseFloat(myHelper().getStateValueIfExist(id + '.memHeapUsed', '0')),
                                              memRss: parseFloat(myHelper().getStateValueIfExist(id + '.memRss', '0')),
                                              uptime: parseFloat(myHelper().getStateValueIfExist(id + '.uptime', 0)),
                                              status: status
                                          })
                                      }
                              
                                  } catch (err) {
                                      console.error(`[adapterStatus] error: ${err.message}, stack: ${err.stack}`);
                                  }
                              
                                  let sortMode = myHelper().getStateValueIfExist(dpSortMode, 'name');
                              
                                  if (sortMode === 'name' || sortMode === 'mode') {
                                      adapterList.sort(function (a, b) {
                                          return a[sortMode] == b[sortMode] ? 0 : +(a[sortMode] > b[sortMode]) || -1;
                                      });
                                  } else if (sortMode === 'hasUpdates' || sortMode === 'cpu' || sortMode === 'memHeapTotal' || sortMode === 'memHeapUsed' || sortMode === 'memRss' || sortMode === 'uptime' || sortMode === 'status') {
                                      adapterList.sort(function (a, b) {
                                          return a[sortMode] == b[sortMode] ? 0 : +(a[sortMode] < b[sortMode]) || -1;
                                      });
                                  } else {
                                      // default: nach name sortieren
                                      sortMode = 'name'
                                      adapterList.sort(function (a, b) {
                                          return a[sortMode] == b[sortMode] ? 0 : +(a[sortMode] > b[sortMode]) || -1;
                                      });
                                  }
                              
                                  // Filter: not connected, updates, deaktiviert, aktiviert
                              
                                  let filterMode = myHelper().getStateValueIfExist(dpFilterMode, null);
                              
                                  if (filterMode && filterMode !== null && filterMode !== '') {
                                      if (filterMode === 'hasUpdates') {
                                          adapterList = adapterList.filter(function (item) {
                                              return item.hasUpdates === true;
                                          });
                                      } else if (filterMode === 'notConnected') {
                                          adapterList = adapterList.filter(function (item) {
                                              return item.status === 4;
                                          });
                                      } else if (filterMode === 'deactivated') {
                                          adapterList = adapterList.filter(function (item) {
                                              return item.status === 2;
                                          });
                                      } else if (filterMode === 'activated') {
                                          adapterList = adapterList.filter(function (item) {
                                              return item.status <= 1;
                                          });
                                      }
                                  }
                              
                                  // adapterList = adapterList.filter(function(item){
                                  //     return item.status === 4;
                                  // })
                              
                                  let result = JSON.stringify(adapterList);
                                  if (getState(dpList) !== result) {
                                      setState(dpList, result, true);
                                  }
                              
                              
                              }
                              
                              // Beim Staren des Skriptes Adapter Status abrufen
                              adapterStatus();
                              
                              // Funktion um Adapter zu starten / neu starten
                              on({ id: dpAdapterRestart }, function (obj) {
                                  var adapter = getObject(obj.state.val.toString());
                              
                                  if (neustarten) {
                                      if (adapter.common && adapter.common.enabled === false) {
                                          // Adapter deaktiviert -> starten
                                          adapter.common.enabled = true;
                                      }
                                  } else {
                                      if (adapter.common && adapter.common.enabled) {
                                          adapter.common.enabled = !adapter.common.enabled;
                                      } else {
                                          adapter.common.enabled = true;
                                      }
                                  }
                              
                                  setObject(obj.state.val, adapter);
                                  console.log(`${obj.state.val.replace('system.adapter.', '')} neugestartet`);
                              });
                              
                              
                              function resetSort() {
                                  let sortMode = myHelper().getStateValueIfExist(dpSortMode, null);
                              
                                  if (sortResetAfter > 0) {
                                      setTimeout(function () {
                                          if (sortMode !== null && sortMode === myHelper().getStateValueIfExist(dpSortMode, null)) {
                                              setState(dpSortMode, sortReset);
                                          }
                                      }, sortResetAfter * 1000);
                                  }
                              }
                              
                              function resetFilter() {
                                  let filterMode = myHelper().getStateValueIfExist(dpFilterMode, null);
                              
                                  if (filterResetAfter > 0) {
                                      setTimeout(function () {
                                          if (filterMode !== null && filterMode === myHelper().getStateValueIfExist(dpFilterMode, null)) {
                                              setState(dpFilterMode, '');
                                          }
                                      }, filterResetAfter * 1000);
                                  }
                              }
                              
                              function myHelper() {
                                  return {
                                      getStateValueIfExist: function (id, nullValue = undefined, prepand = '', append = '') {
                                          if (existsState(id)) {
                                              return prepand + getState(id).val + append;
                                          } else {
                                              return nullValue;
                                          }
                                      },
                                      getCommonPropertyIfExist: function (object, prop, nullValue = undefined, prepand = '', append = '') {
                                          if (myHelper().checkCommonPropertyExist(object, prop)) {
                                              return prepand + object.common[prop] + append;
                                          } else {
                                              return nullValue;
                                          }
                                      },
                                      checkCommonPropertyExist: function (object, prop) {
                                          if (object && object.common && object.common[prop]) {
                                              return true;
                                          } else {
                                              return false;
                                          }
                                      }
                                  }
                              }
                              
                              S Offline
                              S Offline
                              skokarl
                              schrieb am zuletzt editiert von
                              #173

                              @Scrounger

                              Jetzt hast Du aber wieder einen rausgehauen mit der View und dem Script ... :grinning:

                              Super klasse !!!

                              IOBroker mit Proxmox auf Celeron Nuc mit 16 GB und Debian11, Sonos API, Echo Show 15 als Wandtablet, Homematic IP, HUE, Sonos, Echos, DS718+ als Backup

                              H 1 Antwort Letzte Antwort
                              0
                              • smartboartS smartboart

                                Tolle Sache!!! Danke für view und script...Wie wäre es das Script noch um einen Filter und Sortierung nach Instanz zu erweitern?

                                ScroungerS Offline
                                ScroungerS Offline
                                Scrounger
                                Developer
                                schrieb am zuletzt editiert von
                                #174

                                @smartboart sagte in View Adapter Status:

                                Tolle Sache!!! Danke für view und script...Wie wäre es das Script noch um einen Filter und Sortierung nach Instanz zu erweitern?

                                Filter gibt es doch schon?
                                Und was meinst du mit Sortierung nach Instanz, also was sollte nach Auswahl angezeigt werden?

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

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

                                O smartboartS 2 Antworten Letzte Antwort
                                0
                                • ScroungerS Scrounger

                                  @smartboart sagte in View Adapter Status:

                                  Tolle Sache!!! Danke für view und script...Wie wäre es das Script noch um einen Filter und Sortierung nach Instanz zu erweitern?

                                  Filter gibt es doch schon?
                                  Und was meinst du mit Sortierung nach Instanz, also was sollte nach Auswahl angezeigt werden?

                                  O Offline
                                  O Offline
                                  Oli
                                  schrieb am zuletzt editiert von
                                  #175

                                  @Scrounger

                                  Ist es möglich am Ende des Widget eine Fußzeile einzufügen?

                                  Inhalt könnte die letzte Ausführung und Farblegende sein.

                                  Gruß
                                  Oliver

                                  ScroungerS 1 Antwort Letzte Antwort
                                  0
                                  • O Oli

                                    @Scrounger

                                    Ist es möglich am Ende des Widget eine Fußzeile einzufügen?

                                    Inhalt könnte die letzte Ausführung und Farblegende sein.

                                    ScroungerS Offline
                                    ScroungerS Offline
                                    Scrounger
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #176

                                    @Oli
                                    Natürlich ist das möglich. Kann man mit den basic widgets sehr einfach realisieren, z.B. html widget für legenden farben und last change widget für letzte Änderung / Ausführung.

                                    <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 Antwort Letzte Antwort
                                    0
                                    • ScroungerS Scrounger

                                      @smartboart sagte in View Adapter Status:

                                      Tolle Sache!!! Danke für view und script...Wie wäre es das Script noch um einen Filter und Sortierung nach Instanz zu erweitern?

                                      Filter gibt es doch schon?
                                      Und was meinst du mit Sortierung nach Instanz, also was sollte nach Auswahl angezeigt werden?

                                      smartboartS Offline
                                      smartboartS Offline
                                      smartboart
                                      schrieb am zuletzt editiert von
                                      #177

                                      @Scrounger sagte in View Adapter Status:

                                      @smartboart sagte in View Adapter Status:

                                      Tolle Sache!!! Danke für view und script...Wie wäre es das Script noch um einen Filter und Sortierung nach Instanz zu erweitern?

                                      Filter gibt es doch schon?
                                      Und was meinst du mit Sortierung nach Instanz, also was sollte nach Auswahl angezeigt werden?

                                      z.B instanz .0 oder .1
                                      habe diverse Adapter mit mehreren Instanzen laufen.

                                      ScroungerS 1 Antwort Letzte Antwort
                                      0
                                      • smartboartS smartboart

                                        @Scrounger sagte in View Adapter Status:

                                        @smartboart sagte in View Adapter Status:

                                        Tolle Sache!!! Danke für view und script...Wie wäre es das Script noch um einen Filter und Sortierung nach Instanz zu erweitern?

                                        Filter gibt es doch schon?
                                        Und was meinst du mit Sortierung nach Instanz, also was sollte nach Auswahl angezeigt werden?

                                        z.B instanz .0 oder .1
                                        habe diverse Adapter mit mehreren Instanzen laufen.

                                        ScroungerS Offline
                                        ScroungerS Offline
                                        Scrounger
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #178

                                        @smartboart sagte in View Adapter Status:

                                        z.B instanz .0 oder .1
                                        habe diverse Adapter mit mehreren Instanzen laufen.

                                        Wird doch nach instanz sortiert - siehe ical:
                                        f8ccebef-dfbc-4a95-b09e-5ecc0d43c750-grafik.png

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

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

                                        smartboartS 1 Antwort Letzte Antwort
                                        0
                                        • ScroungerS Scrounger

                                          @smartboart sagte in View Adapter Status:

                                          z.B instanz .0 oder .1
                                          habe diverse Adapter mit mehreren Instanzen laufen.

                                          Wird doch nach instanz sortiert - siehe ical:
                                          f8ccebef-dfbc-4a95-b09e-5ecc0d43c750-grafik.png

                                          smartboartS Offline
                                          smartboartS Offline
                                          smartboart
                                          schrieb am zuletzt editiert von smartboart
                                          #179

                                          @Scrounger ja aber nicht gefiltert...
                                          Ist ja kein Muss...finde es super wie es ist...Aber wenn ich nach instanz 1 filter, sollte dann nur instanz 1 angezeigt werden. Hab mich vlt. ungenau ausgedrückt... Also einen zusätzlichen Filter für instanzen...

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          421

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe