Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. SONOFF NSPanel mit Lovelace UI

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    SONOFF NSPanel mit Lovelace UI

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      ticaki Developer @Takahara last edited by

      @takahara
      Welche Scriptversion nutzt du und gibt es beim Start einen Fehler im Log?

      T 1 Reply Last reply Reply Quote 1
      • T
        Takahara @ticaki last edited by

        @ticaki

        TypeScript v4.4.0.11 zur Steuerung des SONOFF NSPanel mit dem ioBroker by @Armilar / @TT-Tom / @ticaki / @Britzelpuf / @Sternmiere / @ravenS0ne

        • abgestimmt auf TFT 53 / v4.4.0 / BerryDriver 9 / Tasmota 14.3.0

        Ja, gibt es:

        2025-06-06 10_58_16-Window.png

        Danke schon mal für deine Rückmeldung.

        VG Takahara

        Neuschwansteini 1 Reply Last reply Reply Quote 0
        • Neuschwansteini
          Neuschwansteini @Takahara last edited by

          @takahara

          ich kann zwar die Fehlermeldung nicht lesen, da kleiner Screenshot (besser als Text in Codetags ), aber soweit ich mich erinnern kann, gabs mit dem Update auf die 8.9.x auch eine neue Version vom Script 4.5.x, das den Fehler behebt..

          Update Tasmota, Berrydriver und das Script dann sollte es mit 8.9.2 laufen.

          T 1 Reply Last reply Reply Quote 2
          • Armilar
            Armilar Most Active Forum Testing @Takahara last edited by Armilar

            @takahara

            gibt es irgendwelche Hinweise im Log?

            Bei mir schnurren alle Panels schon seit langer Zeit auf JS v.8.9.2 - an der Version kann es nicht wirklich liegen...

            Ah - mal wieder zu spät... diverse Sachen nicht gelesen 😉

            Wie in den vorherigen Beiträgen bereits des Öfteren erwähnt, ist der Fehler bereits in einer höhere Script Versionen im Zusammenhang mit dem JS-Adapter gefixt...

            1 Reply Last reply Reply Quote 2
            • T
              Takahara @Neuschwansteini last edited by

              @neuschwansteini said in SONOFF NSPanel mit Lovelace UI:

              Update Tasmota, Berrydriver und das Script dann sollte es mit 8.9.2 laufen.

              Gibt es dafür eine Anleitung im Forum? Das Script muss ich sicherlich herunterladen und dann meine persönlichen Änderungen (erneut) anpassen.

              Aber wie kann ich Tasmota / Berrydriver updaten?

              VG Takahara

              Neuschwansteini Armilar 2 Replies Last reply Reply Quote 0
              • Neuschwansteini
                Neuschwansteini @Takahara last edited by Neuschwansteini

                @takahara

                siehe Wiki auf Git, unter Update/Upgrade
                Link ist oben im ersten Beitrag

                T 1 Reply Last reply Reply Quote 2
                • Armilar
                  Armilar Most Active Forum Testing @Takahara last edited by Armilar

                  @takahara

                  Der Berry ist immer noch aktuell und Tasmota muss nicht zwingend aktualisiert werden... Da hat sich für uns nicht wirklich viel getan...

                  Falls Tasmota doch geupdatet werden soll, geht das entweder über das Service-Menü oder im Tasmota unter 289f4472-a540-4868-bf9e-da8ecf25737e-image.png

                  1 Reply Last reply Reply Quote 2
                  • T
                    Takahara @Neuschwansteini last edited by

                    @neuschwansteini said in SONOFF NSPanel mit Lovelace UI:

                    siehe Wiki auf Git, unter Update/Upgrade
                    Link ist oben im ersten Beitrag

                    Hallo. Wenn ich dich richtig verstehe, muss man das aktuelle Script https://raw.githubusercontent.com/joBr99/nspanel-lovelace-ui/main/ioBroker/NsPanelTs.ts herunterladen und wieder alle spezifischen Anpassungen vornehmen, richtig?

                    Gibt es einen smarteren/ "einfacheren" Weg das aktuelle Script an die User-spezifischen Anforderungen anzupassen?

                    Armilar T 2 Replies Last reply Reply Quote 0
                    • Armilar
                      Armilar Most Active Forum Testing @Takahara last edited by Armilar

                      @takahara

                      ich habe zwar nicht mehr alle Ändeerungen ab der 4.4.X in meiner Erinnerung, aber meines Erachtens gab es im oberen Teil keine "Breaking Changes"...

                      Daher würde ich mir:

                      • zunächst das alte Script sichern
                      • dann den unteren Teil austauschen (ab: "DE: Ab hier keine Konfiguration mehr" bis ganz unten)

                      und das Script mal starten

                      Ebenfalls muss dann die TFT mit:

                      FlashNextion http://nspanel.de/nspanel-v4.7.1.tft
                      

                      auf die 4.7.1 angehoben werden... Da gab es Änderungen...

                      Falls dann keine Reaktion, dann der beschriebene längere Weg...

                      1 Reply Last reply Reply Quote 1
                      • M
                        Matzeit last edited by

                        ich habe meine Panels alle geupdatet (TFT direkt am Panel - musste dann aber wie woanders geschrieben meine Tasmota Version auch updaten da sich der Updatebalken am Display nicht bewegt hatte). Tasmota jetzt 14.6.0, Skripte auf 4.7.1.2.
                        Node.js habe ich auf 20.9.2. Javascript Adapter auf 8.9.2.

                        Laufen wieder.

                        1 Reply Last reply Reply Quote 1
                        • T
                          ticaki Developer @Takahara last edited by ticaki

                          @takahara

                          Ja gibt es, das steht alles in der Wiki.

                          1 Reply Last reply Reply Quote 3
                          • Nobody else
                            Nobody else last edited by

                            Hallo Zusammen,

                            Habe folgendes Problem, ist mir eher durch Zufall aufgefallen .
                            Ich habe node.js 20.19.2 aber mein Panel meint ich hätte 16.19.0

                            Ich habe heute das script, tft und tasmota auf aktuellen stand gebracht nur ändert das nix an der falschen node.js die das Panel liest.

                            T 1 Reply Last reply Reply Quote 0
                            • T
                              TT-Tom @Nobody else last edited by TT-Tom

                              @nobody-else

                              Das Panel liest nur den DP vom Iobroker aus. Hast Du nach dem Node Update mal den iobroker neu gestartet? Bzw. Den ganzen Rechner.

                              Ggf kannst du dir mit

                              iob diag 
                              

                              dein System mal ansehen

                              Nobody else 1 Reply Last reply Reply Quote 0
                              • Nobody else
                                Nobody else @TT-Tom last edited by

                                @tt-tom

                                Seit den letzten Node update, hatte ich den Rechner schon mehrmals Neugestartet, es wird ja auch alles im iobroker richtig angezeigt.
                                Nur wenn ich das Ns Panel skript starte steht die Meldung in den Fenster unter dem skript.

                                *** NodeJS-Installation ***
                                
                                /usr/bin/nodejs         v20.19.2
                                /usr/bin/node           v20.19.2
                                /usr/bin/npm            10.8.2
                                /usr/bin/npx            10.8.2
                                /usr/bin/corepack       0.31.0
                                
                                nodejs:
                                  Installed: 20.19.2-1nodesource1
                                  Candidate: 20.19.2-1nodesource1
                                  Version table:
                                 *** 20.19.2-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                        100 /var/lib/dpkg/status
                                     20.19.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.19.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.18.3-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.18.2-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.18.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.18.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.17.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.16.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.15.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.15.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.14.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.13.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.13.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.12.2-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.12.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.12.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.11.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.11.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.10.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.9.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.8.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.8.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.7.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.6.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.6.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.5.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.5.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.4.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.3.1-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.3.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.2.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.1.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     20.0.0-1nodesource1 1001
                                        500 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages
                                     18.19.0+dfsg-6~deb12u2 500
                                        500 http://deb.debian.org/debian bookworm/main amd64 Packages
                                     18.19.0+dfsg-6~deb12u1 500
                                        500 http://security.debian.org/debian-security bookworm-security/main amd64 Packages
                                
                                
                                T 1 Reply Last reply Reply Quote 0
                                • T
                                  TT-Tom @Nobody else last edited by TT-Tom

                                  @nobody-else

                                  stell bitte mal im Objektordner die Ansicht auf Experte um und zeige mal diesen Datenbaum

                                  system.host.
                                  
                                  Nobody else GregorS 2 Replies Last reply Reply Quote 1
                                  • Nobody else
                                    Nobody else @TT-Tom last edited by

                                    @tt-tom
                                    ich habe den Fehler gefunden, es war in diesen Datenbaum, da waren noch DP´s von alt Systemen drin, da ich mit den iobroker mehrmals umgezogen bin und da hat er sich die Version gezogen.
                                    Habe die DP´s gelöscht und jetzt passt es auch mit der Version.
                                    Danke für den Tipp mit den Datenbaum.

                                    1 Reply Last reply Reply Quote 2
                                    • GregorS
                                      GregorS @TT-Tom last edited by GregorS

                                      Hallo Zusammen,

                                      nach dem Update der Spriptausführung auf 8.9.2 haben sich mein e NSPanels aufgehangen.
                                      Bin zurück zu 8.8.3, jetzt funktionieren sie wieder.
                                      Nutze das Script V 4.4.0.1

                                      Habe mir das neue Script 4.7.1.2 heruntergeladen und angepasst.
                                      Beim Starten des Scripts bekomme ich folgende Fehlermeldungen:

                                      script.js.NSPanel_3_V4_7_1_2: TypeScript compilation failed: let, vwIconColor: number[] = [], ^ ERROR: An element access expression should take an argument. export const config: Config = { ^ ERROR: This expression is not callable. Type '{ pages: (PageEntities | PageGrid | PageQR)[]; subPages: (PageEntities | PageGrid)[]; leftScreensaverEntity: undefined[]; bottomScreensaverEntity: ({ ...; } | ... 3 more ... | { ...; })[]; ... 12 more ...; if(existsState: any): void; }' has no call signatures. const: scriptVersion, string = 'v4.7.1.2', ^ ERROR: Cannot find name 'scriptVersion'. Did you mean 'javaScriptVersion'? const: tft_version, string = 'v4.7.1', ^ ERROR: Cannot find name 'tft_version'. const: desired_display_firmware_version = 56, ^ ERROR: Cannot find name 'desired_display_firmware_version'. const: berry_driver_version = 9, ^ ERROR: Cannot find name 'berry_driver_version'. const: tasmotaOtaUrl, string = 'http://ota.tasmota.com/tasmota32/release/', ^ ERROR: Cannot find name 'tasmotaOtaUrl'. let, timeoutSlider: any, ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, timeoutSlider: any, ^ ERROR: 'any' only refers to a type, but is being used as a value here. let, vwIconColor: number[] = [], ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, vwIconColor: number[] = [], ^ ERROR: 'number' only refers to a type, but is being used as a value here. let, weatherForecast: boolean, ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, weatherForecast: boolean, ^ ERROR: 'boolean' only refers to a type, but is being used as a value here. let, pageCounter: number = 0, ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, pageCounter: number = 0, ^ ERROR: 'number' only refers to a type, but is being used as a value here. let, alwaysOn: boolean = false, ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, alwaysOn: boolean = false, ^ ERROR: 'boolean' only refers to a type, but is being used as a value here. let, valueHiddenCards: boolean = false, ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, valueHiddenCards: boolean = false, ^ ERROR: 'boolean' only refers to a type, but is being used as a value here. await createStateAsync(NSPanel_Path + 'IoBroker.ScriptVersion', scriptVersion, { type: 'string', write: false }); ^ ERROR: Cannot find name 'scriptVersion'. setIfExists(NSPanel_Path + 'IoBroker.ScriptVersion', scriptVersion, null, true); ^ ERROR: Cannot find name 'scriptVersion'. await createStateAsync(NSPanel_Path + 'Display_Firmware.desiredVersion', desired_display_firmware_version, { type: 'number', write: false }); ^ ERROR: Cannot find name 'desired_display_firmware_version'. await setStateAsync(NSPanel_Path + 'Display_Firmware.desiredVersion', desired_display_firmware_version, true); ^ ERROR: Cannot find name 'desired_display_firmware_version'. log('Desired TFT Firmware: ' + desired_display_firmware_version + ' / ' + tft_version, 'info'); ^ ERROR: Cannot find name 'desired_display_firmware_version'. log('Desired TFT Firmware: ' + desired_display_firmware_version + ' / ' + tft_version, 'info'); ^ ERROR: Cannot find name 'tft_version'. await createStateAsync(NSPanel_Path + 'Display_Firmware.TFT.desiredVersion', String(desired_display_firmware_version), { type: 'string', write: false }); ^ ERROR: Cannot find name 'desired_display_firmware_version'. await setStateAsync(NSPanel_Path + 'Display_Firmware.TFT.desiredVersion', String(desired_display_firmware_version) + ' / ' + tft_version, true); ^ ERROR: Cannot find name 'desired_display_firmware_version'. await setStateAsync(NSPanel_Path + 'Display_Firmware.TFT.desiredVersion', String(desired_display_firmware_version) + ' / ' + tft_version, true); ^ ERROR: Cannot find name 'tft_version'. valueHiddenCards = obj.state.val; ^ ERROR: Cannot assign to 'valueHiddenCards' because it is a constant. alwaysOn = false; ^ ERROR: Cannot find name 'alwaysOn'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. alwaysOn = false; ^ ERROR: Cannot find name 'alwaysOn'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. alwaysOn = false; ^ ERROR: Cannot find name 'alwaysOn'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. notification = notification + '~' + v_popupNotifyFontIdText + '~' + Icons.GetIcon(v_popupNotifyIcon) + '~' + v_popupNotifyIconColor; ^ ERROR: Cannot find name 'Icons'. weatherForecast = obj.state.val; ^ ERROR: Cannot find name 'weatherForecast'. if (parseFloat(getState(NSPanel_Path + 'Berry_Driver.currentVersion').val) < berry_driver_version) { ^ ERROR: Cannot find name 'berry_driver_version'. 'Verfügbare Version: ' + String(berry_driver_version), ^ ERROR: Cannot find name 'berry_driver_version'. if (parseInt(getState(NSPanel_Path + 'Display_Firmware.currentVersion').val) < desired_display_firmware_version) { ^ ERROR: Cannot find name 'desired_display_firmware_version'. 'Verfügbare Version: ' + String(desired_display_firmware_version), ^ ERROR: Cannot find name 'desired_display_firmware_version'. desired_display_firmware_url = `http://nspanel.de/nspanel-us-l-${tft_version}.tft`; ^ ERROR: Cannot find name 'tft_version'. desired_display_firmware_url = `http://nspanel.de/nspanel-us-p-${tft_version}.tft`; ^ ERROR: Cannot find name 'tft_version'. desired_display_firmware_url = `http://nspanel.de/nspanel-${tft_version}.tft`; ^ ERROR: Cannot find name 'tft_version'. await setStateAsync(NSPanel_Path + 'TFT_Firmware.onlineVersion', <iobJS.State>{ val: tft_version, ack: true }); ^ ERROR: Cannot find name 'tft_version'. let urlString = `http://${get_current_tasmota_ip_address()}/cm?cmnd=OtaUrl ${tasmotaOtaUrl}${tasmotaOtaVersion}`; ^ ERROR: Cannot find name 'tasmotaOtaUrl'. urlString = `http://${get_current_tasmota_ip_address()}/cm?user=${tasmota_web_admin_user}&password=${tasmota_web_admin_password}&cmnd=OtaUrl ${tasmotaOtaUrl}${tasmotaOtaVersion}`; ^ ERROR: Cannot find name 'tasmotaOtaUrl'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : iconId; ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('window-open'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('window-open'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : iconId; ^ ERROR: Cannot find name 'Icons'. ? Icons.GetIcon(pageItem.icon) ^ ERROR: Cannot find name 'Icons'. ? Icons.GetIcon('thermometer') ^ ERROR: Cannot find name 'Icons'. : Icons.GetIcon('information-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = Icons.GetIcon(getState(pageItem.id + '.USERICON').val); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('window-open'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('window-open'); ^ ERROR: Cannot find name 'Icons'. let icon_up = Icons.GetIcon('arrow-up'); ^ ERROR: Cannot find name 'Icons'. let icon_stop = Icons.GetIcon('stop'); ^ ERROR: Cannot find name 'Icons'. let icon_down = Icons.GetIcon('arrow-down'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('garage'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('garage'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('garage-open'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('garage-open'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('garage-open'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('garage-open'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-open') : Icons.GetIcon('window-open-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'door' ? Icons.GetIcon('door-closed') : Icons.GetIcon('window-closed-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : iconId; ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('motion-sensor'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('motion-sensor'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('motion-sensor'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('motion-sensor'); ^ ERROR: Cannot find name 'Icons'. ? Icons.GetIcon(pageItem.icon) ^ ERROR: Cannot find name 'Icons'. ? Icons.GetIcon('thermometer') ^ ERROR: Cannot find name 'Icons'. : Icons.GetIcon('information-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = Icons.GetIcon(getState(pageItem.id + '.USERICON').val); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('gesture-tap-button'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('timer-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('timer-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('fan'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('fan'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lock'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lock'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lock'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lock'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lock-open-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lock-open-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('plus-minus-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('plus-minus-variant'); ^ ERROR: Cannot find name 'Icons'. iconId = Icons.GetIcon('volume-low'); ^ ERROR: Cannot find name 'Icons'. iconId = Icons.GetIcon('volume-medium'); ^ ERROR: Cannot find name 'Icons'. iconId = Icons.GetIcon('volume-high'); ^ ERROR: Cannot find name 'Icons'. iconId = Icons.GetIcon('volume-mute'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('alert-outline'); ^ ERROR: Cannot find name 'Icons'. iconId = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('alert-outline'); ^ ERROR: Cannot find name 'Icons'. if (Icons.GetIcon(itemFahrzeug) != '') { ^ ERROR: Cannot find name 'Icons'. iconId = Icons.GetIcon(itemFahrzeug); ^ ERROR: Cannot find name 'Icons'. if (page.type == 'cardThermo' && pageCounter == 0 && page.items[0].alwaysOnDisplay != undefined) { ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. if (id && existsObject(id) && alwaysOn == false) { ^ ERROR: Cannot find name 'alwaysOn'. alwaysOn = true; ^ ERROR: Cannot find name 'alwaysOn'. else if (id && existsObject(id) && page.type == 'cardThermo' && pageCounter == 1) { ^ ERROR: Cannot find name 'pageCounter'. bt[i++] = Icons.GetIcon('alpha-a-circle') + '~' + rgb_dec565(On) + '~1~' + 'AUTT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('alpha-a-circle') + '~33840~1~' + 'AUTT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('alpha-m-circle') + '~' + rgb_dec565(On) + '~1~' + 'MANT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('alpha-m-circle') + '~33840~1~' + 'MANT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('party-popper') + '~' + rgb_dec565(On) + '~1~' + 'PART' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('party-popper') + '~33840~1~' + 'PART' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('palm-tree') + '~' + rgb_dec565(On) + '~1~' + 'VACT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('palm-tree') + '~33840~1~' + 'VACT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('fast-forward-60') + '~' + rgb_dec565(On) + '~1~' + 'BOOT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i++] = Icons.GetIcon('fast-forward-60') + '~33840~1~' + 'BOOT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('water-percent') + '~65504~1~' + 'HUM' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('water-percent') + '~63488~1~' + 'HUM' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('water-percent') + '~2016~1~' + 'HUM' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('water-percent') + '~65504~1~' + 'HUM' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('water-percent') + '~63488~1~' + 'HUM' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('battery-low') + '~63488~1~' + 'LBAT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('battery-high') + '~2016~1~' + 'LBAT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('account-wrench') + '~60897~1~' + 'MAIN' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('account-wrench') + '~33840~1~' + 'MAIN' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('wifi-off') + '~63488~1~' + 'WLAN' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('wifi') + '~2016~1~' + 'WLAN' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('power-standby') + '~2016~1~' + 'POWER' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('power-standby') + '~33840~1~' + 'POWER' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('alert-circle') + '~63488~1~' + 'ERR' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('alert-circle') + '~33840~1~' + 'ERR' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('briefcase-check') + '~2016~1~' + 'WORK' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('briefcase-check') + '~33840~1~' + 'WORK' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('window-open-variant') + '~63488~1~' + 'WIN' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[i - 1] = Icons.GetIcon('window-closed-variant') + '~2016~1~' + 'WIN' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'AUTO' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~1~' + 'AUTO' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'COOL' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~1~' + 'COOL' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'HEAT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~1~' + 'HEAT' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'ECO' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~1~' + 'ECO' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'FAN_ONLY' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~1~' + 'FAN_ONLY' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'DRY' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~1~' + 'DRY' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'ECO' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[iconIndex] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~0~' + 'ECO' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[7] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'SWING' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[7] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~1~' + 'SWING' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[0] = Icons.GetIcon(tempIcon) + '~' + tempIconOffColor + '~1~' + 'POWER' + '~'; ^ ERROR: Cannot find name 'Icons'. bt[0] = Icons.GetIcon(tempIcon) + '~' + tempIconOnColor + '~1~' + 'POWER' + '~'; ^ ERROR: Cannot find name 'Icons'. if (useMediaEvents && pageCounter == 1) { ^ ERROR: Cannot find name 'pageCounter'. if (useMediaEvents && pageCounter == 1) { ^ ERROR: Cannot find name 'pageCounter'. if (page.type == 'cardMedia' && pageCounter == 0 && page.items[0].alwaysOnDisplay != undefined) { ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. if (alwaysOn == false) { ^ ERROR: Cannot find name 'alwaysOn'. alwaysOn = true; ^ ERROR: Cannot find name 'alwaysOn'. else if (page.type == 'cardMedia' && pageCounter == 1) { ^ ERROR: Cannot find name 'pageCounter'. alwaysOn = true; ^ ERROR: Cannot find name 'alwaysOn'. else if (page.type == 'cardMedia' && pageCounter == -1) { ^ ERROR: Cannot find name 'pageCounter'. let media_icon = Icons.GetIcon('playlist-music'); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon('spotify'); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon(page.items[0].playerMediaIcon); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon('alpha-s-circle'); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon(page.items[0].playerMediaIcon); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon('alpha-b-circle'); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon(page.items[0].playerMediaIcon); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon('dlna'); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon(page.items[0].playerMediaIcon); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon('alpha-a-circle'); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon(page.items[0].playerMediaIcon); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon('clock-time-twelve-outline'); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon(page.items[0].playerMediaIcon); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon('alpha-m-circle'); ^ ERROR: Cannot find name 'Icons'. media_icon = Icons.GetIcon(page.items[0].playerMediaIcon); ^ ERROR: Cannot find name 'Icons'. let iconplaypause = Icons.GetIcon('pause'); //pause ^ ERROR: Cannot find name 'Icons'. let shuffle_icon = Icons.GetIcon('shuffle-variant'); //shuffle ^ ERROR: Cannot find name 'Icons'. shuffle_icon = Icons.GetIcon('shuffle-disabled'); //shuffle ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('pause'); //pause ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('play'); //play ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('pause'); //pause ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('play'); //play ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('pause'); //pause ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('play'); //play ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('play'); //play ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('pause'); //pause ^ ERROR: Cannot find name 'Icons'. iconplaypause = Icons.GetIcon('play'); //play ^ ERROR: Cannot find name 'Icons'. speakerListString = 'input_sel' + '~' + tid + '?speakerlist' + '~' + Icons.GetIcon('speaker') + '~' + speakerListIconCol + '~' + findLocale('media', 'speaker') + '~' + 'media0~'; ^ ERROR: Cannot find name 'Icons'. Icons.GetIcon('playlist-play') + ^ ERROR: Cannot find name 'Icons'. 'input_sel' + '~' + tid + '?tracklist' + '~' + Icons.GetIcon('animation-play-outline') + '~' + trackListIconCol + '~' + findLocale('media', 'tracklist') + '~' + 'media2~'; ^ ERROR: Cannot find name 'Icons'. 'input_sel' + '~' + tid + '?equalizer' + '~' + Icons.GetIcon('equalizer-outline') + '~' + equalizerListIconCol + '~' + findLocale('media', 'equalizer') + '~' + 'media3~'; ^ ERROR: Cannot find name 'Icons'. 'input_sel' + '~' + tid + '?favorites' + '~' + Icons.GetIcon('playlist-star') + '~' + equalizerListIconCol + '~' + findLocale('media', 'favorites') + '~' + 'media3~'; ^ ERROR: Cannot find name 'Icons'. let repeatIcon = Icons.GetIcon('repeat-variant'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-variant'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-once'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-variant'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-variant'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-once'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-variant'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-once'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-once'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-variant'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat'); ^ ERROR: Cannot find name 'Icons'. repeatIcon = Icons.GetIcon('repeat-once'); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon('shield-home'); //icon*~* ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon('shield-off'); //icon*~* ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon('shield'); //icon*~* ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon('bell-ring'); //iconcolor*~* ^ ERROR: Cannot find name 'Icons'. let icon = Icons.GetIcon('lock-remove'); //iconcolor*~* ^ ERROR: Cannot find name 'Icons'. let iconId1 = Icons.GetIcon('wifi'); ^ ERROR: Cannot find name 'Icons'. let iconId2 = Icons.GetIcon('key'); ^ ERROR: Cannot find name 'Icons'. iconId2 = getState(page.items[0].id + '.SWITCH').val ? Icons.GetIcon('router-wireless') : Icons.GetIcon('router-wireless-off'); ^ ERROR: Cannot find name 'Icons'. iconId2 = getState(page.items[0].id + '.SWITCH').val ? Icons.GetIcon('router-wireless') : Icons.GetIcon('router-wireless-off'); ^ ERROR: Cannot find name 'Icons'. if (page.type == 'cardPower' && pageCounter == 0 && page.items[0].alwaysOnDisplay != undefined) { ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. if (alwaysOn == false) { ^ ERROR: Cannot find name 'alwaysOn'. alwaysOn = true; ^ ERROR: Cannot find name 'alwaysOn'. else if (page.type == 'cardPower' && pageCounter == 1) { ^ ERROR: Cannot find name 'pageCounter'. power_string = power_string + Icons.GetIcon(array_icon[i + 1]) + '~'; // icon~ ^ ERROR: Cannot find name 'Icons'. Icons.GetIcon(array_icon[0]) + ^ ERROR: Cannot find name 'Icons'. if (alwaysOn == true) { ^ ERROR: Cannot find name 'alwaysOn'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. alwaysOn = false; ^ ERROR: Cannot find name 'alwaysOn'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. if (timeoutSlider) { ^ ERROR: Cannot find name 'timeoutSlider'. clearTimeout(timeoutSlider); ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = null; ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = setTimeout(async function () { ^ ERROR: Cannot find name 'timeoutSlider'. if (timeoutSlider) { ^ ERROR: Cannot find name 'timeoutSlider'. clearTimeout(timeoutSlider); ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = null; ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = setTimeout(async function () { ^ ERROR: Cannot find name 'timeoutSlider'. if (timeoutSlider) { ^ ERROR: Cannot find name 'timeoutSlider'. clearTimeout(timeoutSlider); ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = null; ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = setTimeout(async function () { ^ ERROR: Cannot find name 'timeoutSlider'. if (timeoutSlider) { ^ ERROR: Cannot find name 'timeoutSlider'. clearTimeout(timeoutSlider); ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = null; ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = setTimeout(async function () { ^ ERROR: Cannot find name 'timeoutSlider'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 0; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. pageCounter = 1; ^ ERROR: Cannot find name 'pageCounter'. if (timeoutSlider) { ^ ERROR: Cannot find name 'timeoutSlider'. clearTimeout(timeoutSlider); ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = null; ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = setTimeout(async function () { ^ ERROR: Cannot find name 'timeoutSlider'. if (timeoutSlider) { ^ ERROR: Cannot find name 'timeoutSlider'. clearTimeout(timeoutSlider); ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = null; ^ ERROR: Cannot find name 'timeoutSlider'. timeoutSlider = setTimeout(async function () { ^ ERROR: Cannot find name 'timeoutSlider'. navigationString = 'button~bUp~' + Icons.GetIcon(activePage.parentIcon); ^ ERROR: Cannot find name 'Icons'. navigationString = 'button~bUp~' + Icons.GetIcon('arrow-up-bold') + '~' + rgb_dec565(White); ^ ERROR: Cannot find name 'Icons'. navigationString = 'button~bSubPrev~' + Icons.GetIcon(activePage.prevIcon); ^ ERROR: Cannot find name 'Icons'. navigationString = 'button~bSubPrev~' + Icons.GetIcon('arrow-left-bold') + '~' + rgb_dec565(White); ^ ERROR: Cannot find name 'Icons'. navigationString += '~~~button~bHome~' + Icons.GetIcon(activePage!.homeIcon); ^ ERROR: Cannot find name 'Icons'. navigationString += '~~~button~bHome~' + Icons.GetIcon('home') + '~' + rgb_dec565(White) + '~~'; ^ ERROR: Cannot find name 'Icons'. navigationString += '~~~button~bSubNext~' + Icons.GetIcon(activePage.nextIcon); ^ ERROR: Cannot find name 'Icons'. navigationString += '~~~button~bSubNext~' + Icons.GetIcon('arrow-right-bold') + '~' + rgb_dec565(White) + '~~'; ^ ERROR: Cannot find name 'Icons'. const getNavigationStringForPage = (icon: string, color: number) => `button~bUp~${Icons.GetIcon(icon)}~${color} ~~~delete~~~~~`; ^ ERROR: Cannot find name 'Icons'. const prevIcon = activePage && activePage.prevIcon ? Icons.GetIcon(activePage!.prevIcon) : Icons.GetIcon('arrow-left-bold'); ^ ERROR: Cannot find name 'Icons'. const prevIcon = activePage && activePage.prevIcon ? Icons.GetIcon(activePage!.prevIcon) : Icons.GetIcon('arrow-left-bold'); ^ ERROR: Cannot find name 'Icons'. const nextIcon = activePage && activePage.nextIcon ? Icons.GetIcon(activePage!.nextIcon) : Icons.GetIcon('arrow-right-bold'); ^ ERROR: Cannot find name 'Icons'. const nextIcon = activePage && activePage.nextIcon ? Icons.GetIcon(activePage!.nextIcon) : Icons.GetIcon('arrow-right-bold'); ^ ERROR: Cannot find name 'Icons'. let icon = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. let icon = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. let icon2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. let icon2 = pageItem.icon2 !== undefined ? Icons.GetIcon(pageItem.icon2) : Icons.GetIcon('lightbulb-outline'); ^ ERROR: Cannot find name 'Icons'. icon = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. icon = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. icon = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : role == 'socket' ? Icons.GetIcon('power-socket-de') : Icons.GetIcon('lightbulb'); ^ ERROR: Cannot find name 'Icons'. icon = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('window-open'); ^ ERROR: Cannot find name 'Icons'. icon = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : Icons.GetIcon('window-open'); ^ ERROR: Cannot find name 'Icons'. let icon_up = Icons.GetIcon('arrow-up'); ^ ERROR: Cannot find name 'Icons'. let icon_stop = Icons.GetIcon('stop'); ^ ERROR: Cannot find name 'Icons'. let icon_down = Icons.GetIcon('arrow-down'); ^ ERROR: Cannot find name 'Icons'. iconTiltLeft = Icons.GetIcon('arrow-top-right'); ^ ERROR: Cannot find name 'Icons'. iconTiltStop = Icons.GetIcon('stop'); ^ ERROR: Cannot find name 'Icons'. iconTiltRight = Icons.GetIcon('arrow-bottom-left'); ^ ERROR: Cannot find name 'Icons'. Icons.GetIcon(vIcon) + ^ ERROR: Cannot find name 'Icons'. icon = pageItem.icon !== undefined ? Icons.GetIcon(pageItem.icon) : 'fan'; ^ ERROR: Cannot find name 'Icons'. weatherForecast = getState(NSPanel_Path + 'ScreensaverInfo.weatherForecast').val; ^ ERROR: Cannot find name 'weatherForecast'. entityIcon = Icons.GetIcon(GetDasWetterIcon(parseInt(icon))); ^ ERROR: Cannot find name 'Icons'. entityIcon = Icons.GetIcon(GetAccuWeatherIcon(parseInt(icon))); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(iconName); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(leftScreensaverEntity.ScreensaverEntityIconOn); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(leftScreensaverEntity.ScreensaverEntityIconOff); ^ ERROR: Cannot find name 'Icons'. if (weatherForecast) { ^ ERROR: Cannot find name 'weatherForecast'. payloadString += '~' + '~' + Icons.GetIcon(sun) + '~' + rgb_dec565(MSYellow) + '~' + 'Sonne' + '~' + formatDate(getDateObject(arraySunEvent[nextSunEvent]), 'hh:mm') + '~'; ^ ERROR: Cannot find name 'Icons'. payloadString += '~' + '~' + Icons.GetIcon(WeatherIcon) + '~' + WheatherColor + '~' + DayOfWeek + '~' + tempMinMaxString + '~'; ^ ERROR: Cannot find name 'Icons'. Icons.GetIcon(config.bottomScreensaverEntity[4].ScreensaverEntityIconOn) + ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(iconName); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(entity.ScreensaverEntityIconOn); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(entity.ScreensaverEntityIconOff); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(iconName); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(indicatorScreensaverEntity.ScreensaverEntityIconOn); ^ ERROR: Cannot find name 'Icons'. icon = Icons.GetIcon(indicatorScreensaverEntity.ScreensaverEntityIconOff); ^ ERROR: Cannot find name 'Icons'. ScreensaverEntityIconOn: config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOn ? Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOn) : '', ^ ERROR: Cannot find name 'Icons'. ScreensaverEntityIconOff: config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOff ? Icons.GetIcon(config.mrIcon1ScreensaverEntity.ScreensaverEntityIconOff) : '', ^ ERROR: Cannot find name 'Icons'. ScreensaverEntityIconOn: config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOn ? Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOn) : '', ^ ERROR: Cannot find name 'Icons'. ScreensaverEntityIconOff: config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOff ? Icons.GetIcon(config.mrIcon2ScreensaverEntity.ScreensaverEntityIconOff) : '', ^ ERROR: Cannot find name 'Icons'. payloadString += Icons.GetIcon(icon); ^ ERROR: Cannot find name 'Icons'. vwIcon[0] = vwIconColor[0]; ^ ERROR: Cannot find name 'vwIconColor'. vwIcon[1] = vwIconColor[1]; ^ ERROR: Cannot find name 'vwIconColor'. vwIcon[2] = vwIconColor[2]; ^ ERROR: Cannot find name 'vwIconColor'. vwIcon[3] = vwIconColor[3]; ^ ERROR: Cannot find name 'vwIconColor'. vwIcon[4] = vwIconColor[4]; ^ ERROR: Cannot find name 'vwIconColor'. if (weatherForecast) { ^ ERROR: Cannot find name 'weatherForecast'. vwIcon[1] = vwIconColor[1]; ^ ERROR: Cannot find name 'vwIconColor'. vwIcon[2] = vwIconColor[2]; ^ ERROR: Cannot find name 'vwIconColor'. vwIcon[3] = vwIconColor[3]; ^ ERROR: Cannot find name 'vwIconColor'. vwIcon[4] = vwIconColor[4]; ^ ERROR: Cannot find name 'vwIconColor'. return Icons.GetIcon(item.icon) || iconId; ^ ERROR: Cannot find name 'Icons'. return Icons.GetIcon(ss.ScreensaverEntityIconSelect[ss.ScreensaverEntityIconSelect.length - 1].icon) || iconId; ^ ERROR: Cannot find name 'Icons'. return ((iconKey && existsState(iconKey) && Icons.GetIcon(getState(iconKey).val)) || ^ ERROR: Cannot find name 'Icons'. Icons.GetIcon(iconKey) || ^ ERROR: Cannot find name 'Icons'. (def && defIndex !== undefined ? Icons.GetIcon(def[defIndex]) : undefined) || ^ ERROR: Cannot find name 
                                      

                                      Kann es an der Scriptversion liegen?
                                      Tasmota ist 14.6.0

                                      /usr/bin/nodejs v20.19.2
                                      /usr/bin/node v20.19.2
                                      /usr/bin/npm 10.8.2
                                      /usr/bin/npx 10.8.2
                                      /usr/bin/corepack 0.31.0

                                      js-controller: 7.0.6
                                      admin: 7.6.17
                                      javascript: 8.8.3

                                      Danke für Eure Hilfe

                                      Gregor

                                      Neuschwansteini T 2 Replies Last reply Reply Quote 0
                                      • Neuschwansteini
                                        Neuschwansteini @GregorS last edited by

                                        @gregors Klar, kann auch nicht funktionieren, bitte immer alles aktuell halten.
                                        Javascript Adapter und Scripte passen immer zueinander, eine alte Version mit einer neuen geht in dem Fall nicht.

                                        Lies hier doch mal durch, das Thema hatten wir jetzt so oft in den letzten Tagen..

                                        1 Reply Last reply Reply Quote 2
                                        • T
                                          TT-Tom @GregorS last edited by

                                          @gregors

                                          Im Wiki gibt es eine Anleitung zum Upgrade des Script. Grade bei großen Versionssprüngen, sollte so vorgegangen werden.
                                          update

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

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          984
                                          Online

                                          31.7k
                                          Users

                                          79.8k
                                          Topics

                                          1.3m
                                          Posts

                                          lovelace ui nspanel sonoff
                                          261
                                          7179
                                          4892305
                                          Loading More Posts
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          The ioBroker Community 2014-2023
                                          logo