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

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

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

Material Design Widets: Netzwerk Status

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
280 Beiträge 50 Kommentatoren 52.0k 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 Offline
    B Offline
    bergi_37
    schrieb am zuletzt editiert von
    #162

    Ich bekomme die Abfrage auch nicht ans Laufen. Bekomme folgende Fehlermeldung:

    fehler.png

    Habe jetzt den ganzen Thread schon 2x gelesen aber ich finde die Lösung nicht. Ich finde zum Beispiel in den Objekten bei mir unter userdata auch keinen Ordner "NetzwerkStatus". Muss ich den selbst anlegen oder muss ich noch irgendeinen Adapter installieren?!

    So sieht das in den Objekten bei mir aus:
    objects - ioBroker.png

    In der tr-064 sind alle devices drin:
    tr-064 - ioBroker.png

    Hat jemand ne Idee?

    GlasfaserG 1 Antwort Letzte Antwort
    0
    • B bergi_37

      Ich bekomme die Abfrage auch nicht ans Laufen. Bekomme folgende Fehlermeldung:

      fehler.png

      Habe jetzt den ganzen Thread schon 2x gelesen aber ich finde die Lösung nicht. Ich finde zum Beispiel in den Objekten bei mir unter userdata auch keinen Ordner "NetzwerkStatus". Muss ich den selbst anlegen oder muss ich noch irgendeinen Adapter installieren?!

      So sieht das in den Objekten bei mir aus:
      objects - ioBroker.png

      In der tr-064 sind alle devices drin:
      tr-064 - ioBroker.png

      Hat jemand ne Idee?

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

      @bergi_37

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

      Muss ich den selbst anlegen

      Ja !

      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

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

        Muss ich den selbst anlegen

        Ja !

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

        @glasfaser

        Also einfach einen Ordner namens "NetzwerkStatus". Muss da noch irgendwas an Parametern eingetragen werden? Bin noch sehr frisch und hatte noch nie Berührungspunkten mit den Datenpunkten.

        1 Antwort Letzte Antwort
        0
        • GlasfaserG Offline
          GlasfaserG Offline
          Glasfaser
          schrieb am zuletzt editiert von Glasfaser
          #165

          @bergi_37
          Nein keine Parameter , nur als Zeichenkette erstellen .

          Du brauchst kein Ordner erstellen , mache es so , dann erfolgt es automatisch :

          1.JPG
          .

          So sieht es dann aus :

          2.JPG

          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
            Nein keine Parameter , nur als Zeichenkette erstellen .

            Du brauchst kein Ordner erstellen , mache es so , dann erfolgt es automatisch :

            1.JPG
            .

            So sieht es dann aus :

            2.JPG

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

            @glasfaser

            danke, da bin ich schon mal einen schritt weiter.

            Die Fehlermeldung bleibt die gleiche. Immerhin sieht es jetzt so in den Objekten aus:

            objects - ioBroker.png

            Also die beiden Dateien oder Unterordner "filterMode" und "sortMode" fehlen noch.

            Eine Frage zum Skript. Muss ich das unter Widgets in den Script Bereich einfügen oder muss das unter Skripte in der Navigationsbar in der allgemeinen Übersicht.

            NegaleinN 1 Antwort Letzte Antwort
            0
            • B bergi_37

              @glasfaser

              danke, da bin ich schon mal einen schritt weiter.

              Die Fehlermeldung bleibt die gleiche. Immerhin sieht es jetzt so in den Objekten aus:

              objects - ioBroker.png

              Also die beiden Dateien oder Unterordner "filterMode" und "sortMode" fehlen noch.

              Eine Frage zum Skript. Muss ich das unter Widgets in den Script Bereich einfügen oder muss das unter Skripte in der Navigationsbar in der allgemeinen Übersicht.

              NegaleinN Offline
              NegaleinN Offline
              Negalein
              Global Moderator
              schrieb am zuletzt editiert von Negalein
              #167

              @bergi_37 sagte in Material Design Widets: Netzwerk Status:

              Die Fehlermeldung bleibt die gleiche

              du hast es als vis.NetzwerkStatus.jsonListangelegt.
              Richtig wäre jsonList

              Kommando retour. Hab geschielt! ;)

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

              GlasfaserG 1 Antwort Letzte Antwort
              1
              • GlasfaserG Offline
                GlasfaserG Offline
                Glasfaser
                schrieb am zuletzt editiert von Glasfaser
                #168

                @bergi_37

                Was ist mit den anderen Datenpunkten !?

                Hast du das auch gemacht :

                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
                

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

                1 Antwort Letzte Antwort
                0
                • NegaleinN Negalein

                  @bergi_37 sagte in Material Design Widets: Netzwerk Status:

                  Die Fehlermeldung bleibt die gleiche

                  du hast es als vis.NetzwerkStatus.jsonListangelegt.
                  Richtig wäre jsonList

                  Kommando retour. Hab geschielt! ;)

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

                  @negalein
                  der Objektbaum ist schon richtig

                  EDIT :
                  hast du schon gesehn :)

                  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

                    @negalein
                    der Objektbaum ist schon richtig

                    EDIT :
                    hast du schon gesehn :)

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

                    @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 1 Antwort Letzte Antwort
                    0
                    • 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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          888

                                          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