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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. Material Design Widets: Netzwerk Status

NEWS

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

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

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

Material Design Widets: Netzwerk Status

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
280 Beiträge 50 Kommentatoren 51.9k Aufrufe 65 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.
  • B bergi_37

    @Glasfaser
    Mist, jetzt habe ich den Datenpunkt gerade gelöscht. Und so angelegt:

    1.png

    Fehlermeldung bleibt gleich.

    Das hatte ich bereits vorher eingerichtet:

    Folgende NPM-Module müsst ihr in eurer Javascript-Instanz hinzufügen: moment, moment-timezone, moment-duration-format

    Außerdem bitte die Einstellung "Erlaube das Kommando setObject" in eurer Javascript-Instanz aktivieren

    2.png

    Soll ich den View und das Skript nochmal neu einfügen. Und wo genau muss das Skript hin?

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

    @bergi_37

    Hast du jetzt alle Datenpunkte jetzt so , wie ich es oben gezeigt habe !?

    Ich hoffe du schaust dir alles im Runtime an !?

    Wird der Datenpunkt 0_userdata.0.vis.NetzwerkStatus.jsonList nach dem Start des Scripts gefüllt .

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

    B 1 Antwort Letzte Antwort
    0
    • GlasfaserG Glasfaser

      @bergi_37

      Hast du jetzt alle Datenpunkte jetzt so , wie ich es oben gezeigt habe !?

      Ich hoffe du schaust dir alles im Runtime an !?

      Wird der Datenpunkt 0_userdata.0.vis.NetzwerkStatus.jsonList nach dem Start des Scripts gefüllt .

      B Offline
      B Offline
      bergi_37
      schrieb am zuletzt editiert von bergi_37
      #172

      @glasfaser

      So sieht es jetzt in den Objekten aus:

      3.png

      Ja, starte das ganze als Runtime:
      4.png

      Meinst du das mit befüllt:
      5.png

      EDIT: Habe es glaube ich, hinbekommen. ES lag daran das ich das Skript unter Skripte in der Menüstruktur anlegen musste. Ich bin fälschlierweise davon ausgegangen, dass das beim WIdget eingetragen werden muss!

      GlasfaserG 1 Antwort Letzte Antwort
      0
      • B bergi_37

        @glasfaser

        So sieht es jetzt in den Objekten aus:

        3.png

        Ja, starte das ganze als Runtime:
        4.png

        Meinst du das mit befüllt:
        5.png

        EDIT: Habe es glaube ich, hinbekommen. ES lag daran das ich das Skript unter Skripte in der Menüstruktur anlegen musste. Ich bin fälschlierweise davon ausgegangen, dass das beim WIdget eingetragen werden muss!

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

        @bergi_37

        Das meine ich :

        1.JPG

        gehe in die View und wähle den Datenpunkt nochmal neu an .

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

        B 1 Antwort Letzte Antwort
        0
        • GlasfaserG Glasfaser

          @bergi_37

          Das meine ich :

          1.JPG

          gehe in die View und wähle den Datenpunkt nochmal neu an .

          B Offline
          B Offline
          bergi_37
          schrieb am zuletzt editiert von
          #174

          @glasfaser

          Sieht jetzt besser aus und klappt anscheinend auch. Habe aber immer noch nicht die beiden anderen Einträge: sortMode und filterMode...

          6.png

          GlasfaserG 1 Antwort Letzte Antwort
          0
          • B bergi_37

            @glasfaser

            Sieht jetzt besser aus und klappt anscheinend auch. Habe aber immer noch nicht die beiden anderen Einträge: sortMode und filterMode...

            6.png

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

            @bergi_37

            Die mußt du doch auch anlegen , habe ich dir schon mehrmals gesagt !

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

            B 1 Antwort Letzte Antwort
            0
            • GlasfaserG Glasfaser

              @bergi_37

              Die mußt du doch auch anlegen , habe ich dir schon mehrmals gesagt !

              B Offline
              B Offline
              bergi_37
              schrieb am zuletzt editiert von
              #176

              @glasfaser

              Ok, das habe ich so nicht verstanden. Sorry. Jetzt wird alles angezeigt. Danke für deine Hilfe!!

              GlasfaserG 1 Antwort Letzte Antwort
              0
              • B bergi_37

                @glasfaser

                Ok, das habe ich so nicht verstanden. Sorry. Jetzt wird alles angezeigt. Danke für deine Hilfe!!

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

                @bergi_37 sagte in Material Design Widets: Netzwerk Status:

                Jetzt wird alles angezeigt. Danke für deine Hilfe!!

                Dann ist ja gut .... ;)

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

                Stephan SchleichS 1 Antwort Letzte Antwort
                0
                • GlasfaserG Glasfaser

                  @bergi_37 sagte in Material Design Widets: Netzwerk Status:

                  Jetzt wird alles angezeigt. Danke für deine Hilfe!!

                  Dann ist ja gut .... ;)

                  Stephan SchleichS Offline
                  Stephan SchleichS Offline
                  Stephan Schleich
                  schrieb am zuletzt editiert von
                  #178

                  @all hat das schon jemand geschafft auf fb-checkpresence umzubauen und würde sein Script teilen?

                  1 Antwort Letzte Antwort
                  0
                  • M Machinima

                    In Anlehnung an die Views Skript Status und Adapter Status mit den Material Design Widgets habe ich mir eine View mit den Geräten aus dem TR064-Adapter erstellt, siehe nachfolgender Screenshot.

                    Netzwerkgeräte VIS.png

                    Github: Link

                    Voraussetzung:

                    • Material Design Widgets v0.2.66

                    Funktionen:

                    • Anzeige des Netzwerkstatus euer Geräte aus dem TR064-Adapter (online, offline)
                    • Anzeige von Werten des Adapters (IP-Adresse, letzte An- und Abmeldung)
                    • Einträge, die mit einem Link hinterlegt wurden, können per Klick auf das Symbol in einem neuen Browser-Tab geöffnet werden
                    • Sortier und Filter Funktion
                    • Einstellungen, siehe im Skript Sektion Einstellungen, Funktion der Einstellungen ist dort als Kommentar beschrieben.

                    View zum Importieren (für Material Design Icons):

                    {
                      "settings": {
                        "style": {
                          "background_class": ""
                        },
                        "theme": "redmond",
                        "sizex": "",
                        "sizey": "",
                        "gridSize": "",
                        "useBackground": false,
                        "snapType": null
                      },
                      "widgets": {
                        "e00001": {
                          "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%",
                            "background-color": "#44739e",
                            "height": "50px",
                            "z-index": "0"
                          },
                          "widgetSet": "basic"
                        },
                        "e00002": {
                          "tpl": "tplVis-materialdesign-Select",
                          "data": {
                            "oid": "0_userdata.0.vis.NetzwerkStatus.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\": \"Gerätename\",\n\t\t\"value\": \"name\",\n\t\t\"icon\": \"sort-alphabetical\"\n\t},\n\t{\n\t\t\"text\": \"IP Adresse\",\n\t\t\"value\": \"ipAddress\",\n\t\t\"icon\": \"ip\"\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"
                        },
                        "e00003": {
                          "tpl": "tplVis-materialdesign-Select",
                          "data": {
                            "oid": "0_userdata.0.vis.NetzwerkStatus.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\": \"online\",\n\t\t\"value\": \"online\",\n\t\t\"icon\": \"network\"\n\t},\n\t{\n\t\t\"text\": \"offline\",\n\t\t\"value\": \"offline\",\n\t\t\"icon\": \"network-off-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": "",
                            "clearIconColor": "#ffffff"
                          },
                          "style": {
                            "left": "calc(50% + 10px)",
                            "top": "0px",
                            "z-index": "1",
                            "width": "calc(50% - 20px)",
                            "height": "40px"
                          },
                          "widgetSet": "materialdesign"
                        },
                        "e00004": {
                          "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,
                            "maxItemsperRow": "8",
                            "json_string_oid": "0_userdata.0.vis.NetzwerkStatus.jsonList",
                            "labelFontSize": "22",
                            "subLabelFontSize": "14",
                            "labelFontFamily": "RobotoCondensed-Regular",
                            "horizontalIconContainerWidth": "70",
                            "buttonHeight": "",
                            "iconHeight": "35",
                            "iconItemMinWidth": "300",
                            "buttonLayout": "round",
                            "autoLockAfter": "10",
                            "lockIconTop": "5",
                            "lockIconLeft": "5",
                            "lockFilterGrayscale": "30",
                            "lockApplyOnlyOnImage": "true",
                            "subLabelFontFamily": "RobotoCondensed-BoldItalic",
                            "subLabelFontColor": "black",
                            "verticalIconContainerHeight": "70"
                          },
                          "style": {
                            "left": "",
                            "top": "50px",
                            "width": "100%",
                            "height": "calc(100% - 50px)",
                            "overflow-y": "auto"
                          },
                          "widgetSet": "materialdesign"
                        }
                      },
                      "name": "330_System_NetzwerkStatus",
                      "filterList": []
                    }
                    

                    Skript (mit Material Design Icons):

                    /* Versionshistorie:
                     * 
                     * 1.0.2:
                     * - neu: Anzeige der letzten An- und Abmeldung
                     * - neu: Verwendung eigener Bilder möglich
                     * 
                     * 1.0.1:
                     * - neu: In dem Mapping der IP-Adressen kann jetzt eine URL vergeben werden ('http' oder direkt eine spezifische URL)
                     * - geändert: Styling der Details
                     * - entfernt: MAC-Adresse
                     * 
                     * 1.0.0:
                     * - Initial Release
                     */
                    
                    const moment = require("moment");
                     
                    // Skript Einstellungen *************************************************************************************************************************************************
                     
                    let dpList = '0_userdata.0.vis.NetzwerkStatus.jsonList';          // Datenpunkt für IconList Widget (Typ: Zeichenkette (String))
                     
                    let dpSortMode = '0_userdata.0.vis.NetzwerkStatus.sortMode';      // Datenpunkt für Sortieren (Typ: Zeichenkette (String))
                    let dpFilterMode = '0_userdata.0.vis.NetzwerkStatus.filterMode';  // Datenpunkt für Filter (Typ: Zeichenkette (String))
                     
                    const checkInterval = 30;                                         // Interval wie oft Status der Skripte aktualisiert werden soll (in Sekunden)
                     
                    let sprache = 'de';                                               // Sprache für formatierung letzte Änderung
                    let formatierungLastChange = "ddd DD.MM - HH:mm";                 // Formatierung letzte Änderung -> siehe momentjs library
                    
                    let imagePath = '/vis.0/myImages/networkDevices/'                 // Pfad zu den verwendeten Bildern (bitte über den VIS Dateimanager hochladen)
                                                                                      // nach Variable imagePath suchen und die entsprechenden Zeilen aus- bzw. einkommentieren
                                                                                      // Das Bild (Dateiformat png) in der Mapping-Liste hinterlegen
                    let defaultImage = 'ip-network-outline';                          // Standardbild, falls kein Bild angegeben wurde (Material Design Icons)
                    //let defaultImage = `${imagePath}default.png`;                   // Standardbild, falls kein Bild angegeben wurde (eigenes Bild)
                     
                    let farbeGeraetOnline = 'green';                                  // Status Bar Farbe wenn Geräte online ist
                    let farbeGeraetOffline = 'FireBrick';                             // Status Bar Farbe wenn Geräte offline ist
                     
                    let sortResetAfter = 120;                                         // Sortierung nach X Sekunden auf sortReset zurücksetzen (0=deaktiviert)
                    let sortReset = 'name'                                            // Sortierung auf die zurückgesetzt werden soll
                     
                    let filterResetAfter = 120;                                       // Filter nach X Sekunden zurücksetzen (0=deaktiviert)
                    
                    const deviceNames = 
                    [{ ip: "192.168.178.20", alias: "NAS",                           image: "nas",                   link: "http://diskstation:5000" },
                     { ip: "192.168.178.37", alias: "Gosund Küchenlicht",            image: "toggle-switch-outline", link: "http" },
                     { ip: "192.168.178.45", alias: "Homematic Raspi",               image: "server",                link: "http" },
                     { ip: "192.168.178.32", alias: "OnePlus 3T",                    image: "cellphone" }
                    ];
                     
                    // **********************************************************************************************************************************************************************
                     
                    // Fomate für moment Lib
                    moment.locale(sprache);
                    
                    // auf Änderungen aktiver Skripts hören
                    let activeSelector = `[id=tr-064.*.devices.*.active]`;
                    let deviceActiveList = $(activeSelector);
                    if (deviceActiveList.length === 0) {
                        // Fehlermeldung ausgeben, wenn selector kein result liefert
                        console.error(`no result for selector '${activeSelector}'`)
                    } else {
                        // listener nur für Änderung bei alive
                        deviceActiveList.on(netzwerkStatus);
                    } 
                     
                    // auf Änderungen der Sortieung hören
                    on({ id: dpSortMode, change: 'any' }, netzwerkStatus);
                    on({ id: dpSortMode, change: 'any' }, resetSort);
                     
                    // // auf Änderungen der Filter hören
                    on({ id: dpFilterMode, change: 'any' }, netzwerkStatus);
                    on({ id: dpFilterMode, change: 'any' }, resetFilter);
                     
                     
                    // Funktion adapterStatus alle x Sekunden ausführen
                    schedule('*/' + checkInterval + ' * * * * *', netzwerkStatus);
                     
                    function netzwerkStatus() {
                        try {
                            let deviceList = [];
                     
                            for (var i = 0; i <= deviceActiveList.length - 1; i++) {
                                let id = deviceActiveList[i].replace('.active', '');
                                let obj = getObject(id);
                     
                                let pattern = /(?:\d{1,3}\.){3}\d{1,3}/i;
                    
                                let ipAddress = obj.common.name.match(pattern)[0];
                                let image = defaultImage;
                                let deviceName = obj.common.name.replace(/ \((?:\d{1,3}\.){3}\d{1,3}\)/g, '');
                                let device = deviceNames.find(element => element.ip == ipAddress);
                                let listType = 'text';
                                let buttonLink = '';
                    
                                if(device) {
                                    deviceName = device.alias;
                                    image = device.image;
                                    //image = `${imagePath}${device.image}.png`;
                    
                                    if(device.link) {
                                        listType = 'buttonLink';
                    
                                        if(device.link == 'http') {
                                            buttonLink = `http://${ipAddress}`;
                                        } else {
                                            buttonLink = device.link;
                                        }
                                    }
                                }
                    
                                let macAddress = obj.native.mac;
                                let imageColor = 'black';
                                let statusBarColor = farbeGeraetOffline;
                                let status = 2;
                     
                                if (getState(deviceActiveList[i]).val) {
                                    statusBarColor = farbeGeraetOnline;
                                    status = 1;
                                }
                    
                                if(listType === 'buttonLink') {
                                    deviceName = `<span style="text-decoration: underline">${deviceName}</span>`                
                                }
                    
                                let lastSignIn = 'noch nicht angemeldet';
                                let lastSignOff = 'noch nicht abgemeldet';
                    
                                // Letzte Anmeldung auslesen
                                if(existsState(id + '.lastActive')) {
                                    lastSignIn = 'angemeldet seit: ' + moment((getState(id + '.lastActive').val)).format("DD.MM.YY HH:mm:ss");
                                }        
                    
                                // Letzte Abmeldung auslesen
                                if(existsState(id + '.lastInactive')) {
                                    lastSignOff = 'abgemeldet seit: ' + moment((getState(id + '.lastInactive').val)).format("DD.MM.YY HH:mm:ss");
                                }
                    
                                let subText = `<div style="color: black; font-family: RobotoCondensed-BoldItalic">${ipAddress}</div>
                                               <div style="color: grey; font-family: RobotoCondensed-Regular">${lastSignIn}</div>
                                               <div style="color: grey; font-family: RobotoCondensed-Regular">${lastSignOff}</div>`
                     
                                deviceList.push({
                                    text: deviceName,
                                    subText: subText,
                                    statusBarColor: statusBarColor,
                                    image: image,
                                    imageColor: imageColor,
                                    listType: listType,
                                    buttonLink: buttonLink,
                                    showValueLabel: false,
                                    name: deviceName,
                                    ipAddress: ipAddress,
                                    status: status
                                });
                            }
                     
                            let sortMode = myHelper().getStateValueIfExist(dpSortMode, 'name');
                     
                            if (sortMode === 'name' || sortMode === 'ipAddress') {
                                deviceList.sort(function (a, b) {
                                    return a[sortMode].toLowerCase() == b[sortMode].toLowerCase() ? 0 : +(a[sortMode].toLowerCase() > b[sortMode].toLowerCase()) || -1;
                                });
                            } else if (sortMode === 'status') {
                                deviceList.sort(function (a, b) {
                                    return a[sortMode] == b[sortMode] ? 0 : +(a[sortMode] < b[sortMode]) || -1;
                                });
                            } else {
                                // default: nach name sortieren
                                sortMode = 'name'
                                deviceList.sort(function (a, b) {
                                    return a[sortMode].toLowerCase() == b[sortMode].toLowerCase() ? 0 : +(a[sortMode].toLowerCase() > b[sortMode].toLowerCase()) || -1;
                                });
                            }
                     
                     
                            let filterMode = myHelper().getStateValueIfExist(dpFilterMode, null);
                     
                            if (filterMode && filterMode !== null && filterMode !== '') {
                                if (filterMode === 'offline') {
                                    deviceList = deviceList.filter(function (item) {
                                        return item.status === 2;
                                    });
                                } else if (filterMode === 'online') {
                                    deviceList = deviceList.filter(function (item) {
                                        return item.status === 1;
                                    });
                                }
                            }
                     
                     
                            let result = JSON.stringify(deviceList);
                            if (getState(dpList) !== result) {
                                setState(dpList, result, true);
                            }
                     
                        } catch (err) {
                            console.error(`[netzwerkStatus] error: ${err.message}, stack: ${err.stack}`);
                        }
                    }
                     
                    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);
                        }
                    }
                     
                    // Beim Staren des Skriptes Adapter Status abrufen
                    netzwerkStatus();
                     
                    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;
                                }
                            }
                        }
                    }
                    

                    Folgende NPM-Module müsst ihr in eurer Javascript-Instanz hinzufügen: moment, moment-timezone, moment-duration-format
                    Außerdem bitte die Einstellung "Erlaube das Kommando setObject" in eurer Javascript-Instanz aktivieren

                    M Offline
                    M Offline
                    Maas-Meister
                    schrieb am zuletzt editiert von
                    #179

                    Folgende NPM-Module müsst ihr in eurer Javascript-Instanz hinzufügen: moment, moment-timezone, moment-duration-format
                    Außerdem bitte die Einstellung "Erlaube das Kommando setObject" in eurer Javascript-Instanz aktivieren

                    Moin Gruppe,
                    ich finde mich gerade erst im Material Design Adapter ein.

                    • Wie füge ich die o.g. Javascript Instanzen ein?
                    • Das Script lege ich wie gewohnt in "Global" ab?

                    Mfg

                    sigi234S 1 Antwort Letzte Antwort
                    0
                    • M Maas-Meister

                      Folgende NPM-Module müsst ihr in eurer Javascript-Instanz hinzufügen: moment, moment-timezone, moment-duration-format
                      Außerdem bitte die Einstellung "Erlaube das Kommando setObject" in eurer Javascript-Instanz aktivieren

                      Moin Gruppe,
                      ich finde mich gerade erst im Material Design Adapter ein.

                      • Wie füge ich die o.g. Javascript Instanzen ein?
                      • Das Script lege ich wie gewohnt in "Global" ab?

                      Mfg

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

                      @maas-meister sagte in Material Design Widets: Netzwerk Status:

                      Folgende NPM-Module müsst ihr in eurer Javascript-Instanz hinzufügen: moment, moment-timezone, moment-duration-format
                      Außerdem bitte die Einstellung "Erlaube das Kommando setObject" in eurer Javascript-Instanz aktivieren

                      Moin Gruppe,
                      ich finde mich gerade erst im Material Design Adapter ein.

                      • Wie füge ich die o.g. Javascript Instanzen ein?

                      Screenshot (3359)_LI.jpg

                      • Das Script lege ich wie gewohnt in "Global" ab?

                      Nein:

                      Screenshot (3361)_LI.jpg

                      Mfg

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

                      M 1 Antwort Letzte Antwort
                      1
                      • sigi234S sigi234

                        @maas-meister sagte in Material Design Widets: Netzwerk Status:

                        Folgende NPM-Module müsst ihr in eurer Javascript-Instanz hinzufügen: moment, moment-timezone, moment-duration-format
                        Außerdem bitte die Einstellung "Erlaube das Kommando setObject" in eurer Javascript-Instanz aktivieren

                        Moin Gruppe,
                        ich finde mich gerade erst im Material Design Adapter ein.

                        • Wie füge ich die o.g. Javascript Instanzen ein?

                        Screenshot (3359)_LI.jpg

                        • Das Script lege ich wie gewohnt in "Global" ab?

                        Nein:

                        Screenshot (3361)_LI.jpg

                        Mfg

                        M Offline
                        M Offline
                        Maas-Meister
                        schrieb am zuletzt editiert von
                        #181

                        @sigi234

                        Danke für deine ausführliche Erklärung :-)

                        R 1 Antwort Letzte Antwort
                        0
                        • M Maas-Meister

                          @sigi234

                          Danke für deine ausführliche Erklärung :-)

                          R Offline
                          R Offline
                          Rosi8818
                          schrieb am zuletzt editiert von Rosi8818
                          #182

                          erstmal Danke für das tolle Script :+1:

                          ich hab es bei mir eingerichtet und alles geändert was zu ändern gab (ähm angepasst meine ich).
                          Einzig was nicht funktioniert (habe ich nichts dran geändert) sind die oberen Punkte Sortieren und Filtern

                          Da kommt egal was ich aussuche immer

                          e8272df5-f699-4c9f-bf9d-74ce9eb3c809-image.png

                          Muss ich hier noch etwas in den "Daten der Lsite" - jsons anpassen?

                          Eben noch gesehen das die Datenpunkte 0_userdata.0.Tabellen.NetzwerkStatus.sortMode und 0_userdata.0.Tabellen.NetzwerkStatus.FilterMode nicht gefüllt sind

                          hier der angelegte SortMode

                          {
                            "_id": "0_userdata.0.Tabellen.NetzwerkStatus.sortMode",
                            "type": "state",
                            "common": {
                              "name": "NetzwerkStatus.sortMode",
                              "role": "",
                              "type": "string",
                              "read": true,
                              "write": true,
                              "desc": "Manuell erzeugt",
                              "def": ""
                            },
                            "native": {},
                            "from": "system.adapter.admin.0",
                            "user": "system.user.admin",
                            "ts": 1615994652464,
                            "acl": {
                              "object": 1636,
                              "state": 1636,
                              "owner": "system.user.admin",
                              "ownerGroup": "system.group.administrator"
                            }
                          }
                          
                          GarganoG 1 Antwort Letzte Antwort
                          0
                          • R Offline
                            R Offline
                            Rosi8818
                            schrieb am zuletzt editiert von
                            #183

                            ich werde noch narrisch, die genze Zeit (seit gestern) lief alles, jetzt habe ich ständig diesen Fehler im Logfile aber die Ansicht läuft (bis auf filtern und sortieren). In der Instanz sind ale Module eingetragen. Warum erst jetzt der Fehler und wo kann ich ansetzen, hat einer 'ne Idee?

                            javascript.0 (27282) script.js.Hilfsscripte.Statusabfrage: [netzwerkStatus] error: Cannot read property '0' of null, stack: TypeError: Cannot read property '0' of null at netzwerkStatus (script.js.Hilfsscripte.Statusabfrage:159:59) at script.js.Hilfsscripte.Statusabfrage:297:1 at script.js.Hilfsscripte.Statusabfrage:325:3 at Script.runInContext (vm.js:130:18) at Script.runInNewContext (vm.js:135:17) at execute (/opt/iobroker/node_modules/iobroker.javascript/main.js:1423:27) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1622:38) at /opt/iobroker/node_modules/iobroker.javascript/main.js:1722:17 at /opt/iobroker/node_modules/iobroker.javascript/main.js:1238:17 at /opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:616:17
                            

                            weiter unten habe ich eben noch folgendes gelesen
                            4d241fe6-c153-41f8-9388-151b91a40d31-image.png

                            1 Antwort Letzte Antwort
                            0
                            • R Rosi8818

                              erstmal Danke für das tolle Script :+1:

                              ich hab es bei mir eingerichtet und alles geändert was zu ändern gab (ähm angepasst meine ich).
                              Einzig was nicht funktioniert (habe ich nichts dran geändert) sind die oberen Punkte Sortieren und Filtern

                              Da kommt egal was ich aussuche immer

                              e8272df5-f699-4c9f-bf9d-74ce9eb3c809-image.png

                              Muss ich hier noch etwas in den "Daten der Lsite" - jsons anpassen?

                              Eben noch gesehen das die Datenpunkte 0_userdata.0.Tabellen.NetzwerkStatus.sortMode und 0_userdata.0.Tabellen.NetzwerkStatus.FilterMode nicht gefüllt sind

                              hier der angelegte SortMode

                              {
                                "_id": "0_userdata.0.Tabellen.NetzwerkStatus.sortMode",
                                "type": "state",
                                "common": {
                                  "name": "NetzwerkStatus.sortMode",
                                  "role": "",
                                  "type": "string",
                                  "read": true,
                                  "write": true,
                                  "desc": "Manuell erzeugt",
                                  "def": ""
                                },
                                "native": {},
                                "from": "system.adapter.admin.0",
                                "user": "system.user.admin",
                                "ts": 1615994652464,
                                "acl": {
                                  "object": 1636,
                                  "state": 1636,
                                  "owner": "system.user.admin",
                                  "ownerGroup": "system.group.administrator"
                                }
                              }
                              
                              GarganoG Offline
                              GarganoG Offline
                              Gargano
                              schrieb am zuletzt editiert von
                              #184

                              @rosi8818 die Namen der DP's sind nicht richtig :
                              .vis fehlt.

                              const dpSortMode = '0_userdata.0.vis.NetzwerkStatus.sortMode';      // Datenpunkt für Sortieren (Typ: Zeichenkette (String))
                              const dpFilterMode = '0_userdata.0.vis.NetzwerkStatus.filterMode';  // Datenpunkt für Filter (Typ: Zeichenkette (String))
                               
                              

                              Deshalb setze ich die DP's immer automatisch :

                              // Skript Einstellungen *************************************************************************************************************************************************
                               
                              const dpList = '0_userdata.0.vis.NetzwerkStatus.jsonList';          // Datenpunkt für IconList Widget (Typ: Zeichenkette (String))
                               
                              const dpSortMode = '0_userdata.0.vis.NetzwerkStatus.sortMode';      // Datenpunkt für Sortieren (Typ: Zeichenkette (String))
                              const dpFilterMode = '0_userdata.0.vis.NetzwerkStatus.filterMode';  // Datenpunkt für Filter (Typ: Zeichenkette (String))
                               
                              const createStateList = [
                                  {name :dpList, type:"string", role : "value"},
                                  {name :dpSortMode, type:"string", role : "value"},
                                  {name :dpFilterMode, type:"string", role : "value"}
                              ]
                               
                              // create states if not exists 
                              async function createMyState(item) {
                                  if (!existsState(item.name)) {
                                  await createStateAsync(item.name, { 
                                          type: item.type,
                                          min: 0,
                                          def: 0,
                                          role: item.role 
                                      });    
                                  }
                              }
                              
                              async function makeMyStateList (array) {
                                  // map array to promises
                                  const promises = array.map(createMyState);
                                  await Promise.all(promises);
                              }
                              
                               
                              async function main () {
                                  await makeMyStateList(createStateList);
                              }
                              
                              main(); 
                              
                              R 1 Antwort Letzte Antwort
                              0
                              • GarganoG Gargano

                                @rosi8818 die Namen der DP's sind nicht richtig :
                                .vis fehlt.

                                const dpSortMode = '0_userdata.0.vis.NetzwerkStatus.sortMode';      // Datenpunkt für Sortieren (Typ: Zeichenkette (String))
                                const dpFilterMode = '0_userdata.0.vis.NetzwerkStatus.filterMode';  // Datenpunkt für Filter (Typ: Zeichenkette (String))
                                 
                                

                                Deshalb setze ich die DP's immer automatisch :

                                // Skript Einstellungen *************************************************************************************************************************************************
                                 
                                const dpList = '0_userdata.0.vis.NetzwerkStatus.jsonList';          // Datenpunkt für IconList Widget (Typ: Zeichenkette (String))
                                 
                                const dpSortMode = '0_userdata.0.vis.NetzwerkStatus.sortMode';      // Datenpunkt für Sortieren (Typ: Zeichenkette (String))
                                const dpFilterMode = '0_userdata.0.vis.NetzwerkStatus.filterMode';  // Datenpunkt für Filter (Typ: Zeichenkette (String))
                                 
                                const createStateList = [
                                    {name :dpList, type:"string", role : "value"},
                                    {name :dpSortMode, type:"string", role : "value"},
                                    {name :dpFilterMode, type:"string", role : "value"}
                                ]
                                 
                                // create states if not exists 
                                async function createMyState(item) {
                                    if (!existsState(item.name)) {
                                    await createStateAsync(item.name, { 
                                            type: item.type,
                                            min: 0,
                                            def: 0,
                                            role: item.role 
                                        });    
                                    }
                                }
                                
                                async function makeMyStateList (array) {
                                    // map array to promises
                                    const promises = array.map(createMyState);
                                    await Promise.all(promises);
                                }
                                
                                 
                                async function main () {
                                    await makeMyStateList(createStateList);
                                }
                                
                                main(); 
                                
                                R Offline
                                R Offline
                                Rosi8818
                                schrieb am zuletzt editiert von
                                #185

                                @gargano ah okay Danke, werde ich wieder zurück stellen. Ich dachte wenn ich die manuell woanders anlege und im Script ändere dann sollte das auch gehen. Ich probiere es aus und melde mich hier.

                                1 Antwort Letzte Antwort
                                0
                                • R Offline
                                  R Offline
                                  Rosi8818
                                  schrieb am zuletzt editiert von Rosi8818
                                  #186

                                  hab es geändert, das gleiche in grün... leider
                                  9c09cdad-9058-4363-9346-fae9bcb6a357-image.png

                                  Was mir jetzt auffällt nach der Änderung, sind die DP angelegt (automatisch) aber nicht gefüllt nach neustarten des Scripts.
                                  Ich habe langsam das Gefühl ich habe ein falsches Script, die automatische Anlegung der DP war bei mir garnicht im Script vorhanden..

                                  eb76c1b2-9e38-45a6-8cfa-c1cd41618093-image.png

                                  GarganoG 1 Antwort Letzte Antwort
                                  0
                                  • R Rosi8818

                                    hab es geändert, das gleiche in grün... leider
                                    9c09cdad-9058-4363-9346-fae9bcb6a357-image.png

                                    Was mir jetzt auffällt nach der Änderung, sind die DP angelegt (automatisch) aber nicht gefüllt nach neustarten des Scripts.
                                    Ich habe langsam das Gefühl ich habe ein falsches Script, die automatische Anlegung der DP war bei mir garnicht im Script vorhanden..

                                    eb76c1b2-9e38-45a6-8cfa-c1cd41618093-image.png

                                    GarganoG Offline
                                    GarganoG Offline
                                    Gargano
                                    schrieb am zuletzt editiert von
                                    #187

                                    @rosi8818 sagte in Material Design Widets: Netzwerk Status:

                                    Ich habe langsam das Gefühl ich habe ein falsches Script, die automatische Anlegung der DP war bei mir garnicht im Script vorhanden..

                                    Ich hab das Script vom GitHub, Link ist ganz oben.
                                    Das automatische Anlegen der DP's sind auch nicht im Original Script, das hab ich bei mir dazugefügt.

                                    R 1 Antwort Letzte Antwort
                                    0
                                    • GarganoG Gargano

                                      @rosi8818 sagte in Material Design Widets: Netzwerk Status:

                                      Ich habe langsam das Gefühl ich habe ein falsches Script, die automatische Anlegung der DP war bei mir garnicht im Script vorhanden..

                                      Ich hab das Script vom GitHub, Link ist ganz oben.
                                      Das automatische Anlegen der DP's sind auch nicht im Original Script, das hab ich bei mir dazugefügt.

                                      R Offline
                                      R Offline
                                      Rosi8818
                                      schrieb am zuletzt editiert von
                                      #188

                                      @gargano okay, danke das hab ich auch aber trotzdem bleibt der Fehler...
                                      mich macht folgendes stutzig, das in der Zeile ->

                                      const moment = require("moment"); 
                                      

                                      dort ist das "moment" rot unsterstrichen. Ich habe die drei npm Module im Adapter eingetragen, das hängt ja glaube ich zusammen

                                      GarganoG 1 Antwort Letzte Antwort
                                      0
                                      • R Rosi8818

                                        @gargano okay, danke das hab ich auch aber trotzdem bleibt der Fehler...
                                        mich macht folgendes stutzig, das in der Zeile ->

                                        const moment = require("moment"); 
                                        

                                        dort ist das "moment" rot unsterstrichen. Ich habe die drei npm Module im Adapter eingetragen, das hängt ja glaube ich zusammen

                                        GarganoG Offline
                                        GarganoG Offline
                                        Gargano
                                        schrieb am zuletzt editiert von Gargano
                                        #189

                                        @rosi8818 Ist bei mir auch unterstrichen, geht trotzdem
                                        Hast Du mehrere Instanzen von Javascript und in allen die npm Module eingetragen ?

                                        Starte mal den TR064 Adapter neu und dann nochmal das Script starten, wenn der TR 064 grün ist.
                                        Sind Devices im TR064 Adapter ?

                                        Und versuch mal folgendes : im Original Script Zeile 192
                                        (mit der autom. DP's Erstellung ca. Zeile 226)
                                        oberhalb von function resetSort()

                                        if (getState(dpList) !== result) {
                                        

                                        ändern in

                                        if (getState(dpList).val !== result) {
                                        
                                        R 1 Antwort Letzte Antwort
                                        0
                                        • GarganoG Gargano

                                          @rosi8818 Ist bei mir auch unterstrichen, geht trotzdem
                                          Hast Du mehrere Instanzen von Javascript und in allen die npm Module eingetragen ?

                                          Starte mal den TR064 Adapter neu und dann nochmal das Script starten, wenn der TR 064 grün ist.
                                          Sind Devices im TR064 Adapter ?

                                          Und versuch mal folgendes : im Original Script Zeile 192
                                          (mit der autom. DP's Erstellung ca. Zeile 226)
                                          oberhalb von function resetSort()

                                          if (getState(dpList) !== result) {
                                          

                                          ändern in

                                          if (getState(dpList).val !== result) {
                                          
                                          R Offline
                                          R Offline
                                          Rosi8818
                                          schrieb am zuletzt editiert von
                                          #190

                                          @gargano ich habe

                                          • eine Instanz des JavaScript und
                                          • die drei Module sind eingetragen
                                          • die Zeile geändert aber auch hier das gleiche Bild
                                          • Die TR064 Adapter habe ich neu gestartet, gewartet bis grün und das Script anschl. auch neu gestartet.
                                            Im Adapter sind auch Devices.
                                          • Ich habe auch im Script nur einen Adapter ausprobiert, das gleiche Bild
                                            irgend etwas übersehe ich, ich werde narrisch
                                          GarganoG 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

                                          696

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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