NEWS
Test Adapter NSPanel-lovelace-ui v1.x.x
-
Ich finds nice. Erinnert mich an die virtuelle Möglichkeit, als man noch kein Panel hatte
-
Die aktuelle Version gefällt mir dann aber von "handling" nicht. Jeder browser hat eigenen session, bekommt eigenes virtuelles Panel mit eigenen states... hab schon 15 "panels" auf dem dev-server...
Ich baue das um virtuelle Panels die previews sind teilen sich die states mit dem orginal - mehrfach zugriffe sind synchron - heißt wenn man da mit mehreren session drauf zugreift zeigen alle das selbe an
Zusätzlich gibtts dann noch autarke virtuelle Panels, die man für ein tablet benutzen kann
-
Was mir noch aufgefallen ist. Welcher Klick ist notwendig für die Indikatoren? Single Clock, Double Click, Long Click? Am Panel klappt es mit einem Single Click, virtuell mit Double Click.
-
hm das passt zeitlich - hab vor ca. 30 Minuten angefangen das indikator problem untersuchen zu lassen - das wird mit dem nächsten upload gefixt.
Das hier ist noch nicht online, wird aber wohl in der nächsten Stunde in der branch verfügbar sein. Sage dann bescheid:Seit dem letzten Push, zwei Commits plus der uncommittete Stand von heute:
Committet
- Klone starten mit den Laufzeiteinstellungen des echten Panels, Web-Panels folgen Skript-Neuladungen, Grid-Schriftgröße im Browser,
Emulator-Referenzaufbau.
Uncommittet, fertig
- Ein Web-Panel pro Endpoint, alle Browser synchron, gemeinsamer Objektbaum mit dem echten Panel, alte _web-Bäume werden gelöscht.
- Eigenständige Web-Panels ohne Hardware, anlegbar in der Panel-Übersicht.
- Globale PIN mit Cookie, Admin-Links übergeben sie.
- HTTPS mit ioBroker-Zertifikaten, alle Vorschau-Links und Hinweistexte protokollabhängig.
- Optik-Abgleich mit den 41 Emulator-Bildern: Noto Sans, Nextion-Fonts, alle Karten, Popups und Screensaver-Layouts.
- Popup-Kopf-Icon in der Farbe der Entity.
- Bugfixes: Update-Icon beim Klon, Nav-Pfeile auf cardGrid, Schließen-Kreuz in popupSlider und popupThermo, Panel.loop lief nur einmal,
Indikator-Buttons bei Screensaver als Seite 0. - Admin: Buttons in der Panel-Übersicht je zur Hälfte, Web-Panel-Button nur bei aktivem Server.
Bis zum Push
- FIDO2 als PIN-Alternative, nur mit HTTPS, Bedingungen am Einrichtungsfeld.
- Klärung, warum der Indikator-Tastendruck beim Klon nicht ankommt.
EDIT: Ich sollte echt bis zum ende lesen - das hier " Am Panel klappt es mit einem Single Click, virtuell mit Double Click." hat geholfen - Danke
- Klone starten mit den Laufzeiteinstellungen des echten Panels, Web-Panels folgen Skript-Neuladungen, Grid-Schriftgröße im Browser,
-
@13patrick37
Hast du bei Tasmota eins vergeben oder du hast bei dem MQTT Einstellungen im Admin den Haken gesetzt bei Tasmota WebUI ??Welche Tasmota Version hast du installiert??
@TT-Tom weder noch. :D Keine Ahnung woran das lag.
Ich habe seit dem letzten Update allerdings das Problem, dass die Panels extrem langsam geworden sind. Da hilft manchmal nur ein Neustart des Adapters. Ist das Problem bekannt? WLAN Verbindung stabil.
-
Was mir noch aufgefallen ist. Welcher Klick ist notwendig für die Indikatoren? Single Clock, Double Click, Long Click? Am Panel klappt es mit einem Single Click, virtuell mit Double Click.
@patricknitsch
hab eine aktualisierte Version hoch geladen - sollte jetzt dichter am echten sein.Das ist ein React-App die sich wie ein echtes Panel mit dem adapter verbinden aber anstatt über mqtt per websocket quatscht - daher führt ein reload auch nicht zu einer Seitenaktualisierung, sondern zu einem "Panel"neustart.
-
Ich habe gleich noch eine technische Frage hinterher:
Ich bin dabei, alle Hauptbildschirme des Panels jeweils in ein Globalskript zu packen, dass ich darauf immer und überall Zugriff darauf habe.
Ich habe im global alles soweit angelegt. Ich möchte allerdings einen Ordner anklicken, um darauf zu kommen - nicht über das klicken nach links/rechts.Ähnlich wie hier:
{ navigate: true, id: null, targetPage: 'Garage', icon: 'hammer-screwdriver', onColor: White, name: 'Garage' },Muss ich beim Navigieren per Ordner noch irgendwas mit "global" hinterlegen? Komischerweise funktioniert es auch so.
-
Ich habe gleich noch eine technische Frage hinterher:
Ich bin dabei, alle Hauptbildschirme des Panels jeweils in ein Globalskript zu packen, dass ich darauf immer und überall Zugriff darauf habe.
Ich habe im global alles soweit angelegt. Ich möchte allerdings einen Ordner anklicken, um darauf zu kommen - nicht über das klicken nach links/rechts.Ähnlich wie hier:
{ navigate: true, id: null, targetPage: 'Garage', icon: 'hammer-screwdriver', onColor: White, name: 'Garage' },Muss ich beim Navigieren per Ordner noch irgendwas mit "global" hinterlegen? Komischerweise funktioniert es auch so.
Zwei fragen
Wenn du mit dem Admin deine Seiten erstellst, warum möchtest du das globalScript nutzen?Ich möchte allerdings einen Ordner anklicken, um darauf zu kommen - nicht über das klicken nach links/rechts
Das verstehe ich nicht ganz, was du da meinst. Ordner = Channel oder Folder?
Mit klick auf Icon eine Seite öffnen?
Soll das Icon einen Status anzeigen vom Channel? -
-
1.7.0 (2026-10-25)
- (ticaki) web panels: the panel UI in a web browser via http://<host>:8090/<topic>, no Tasmota needed - one web panel per address, all browsers on it stay in sync (new admin tab "Web panels")
- (ticaki) web panels: a real panel can be opened in the browser - the clone navigates on its own and shares the states tree
panels.<id>with the panel - (ticaki) web panels: standalone web panels without hardware - "Add web panel" in the panel overview (name, topic, model), configured by topic like a real panel
- (ticaki) web panels: optional PIN (
webPin) for all web panels, asked once per browser; HTTPS with the ioBroker certificates (webSecure); a FIDO2 security key can replace the PIN (HTTPS only) - (ticaki) web panels: look of the HMI - Noto Sans, Nextion font sizes, all page types, popups, the four screensaver layouts and the boot animation
- (ticaki) web panels: a lost connection to the adapter is shown (greyed out page), the browser reconnects after an adapter restart on its own
- (ticaki) admin: a button opens the web panel of a panel in a new tab (Maintain, panel settings, panel info), the host name of the links is configurable (
webHost) - (ticaki) screensaver: the indicator buttons (and the state
buttons.indicator-N) work again when the screensaver is the first page of the configuration - (ticaki) screensaver: a tap on an indicator sets
buttons.indicator-Nagain when the indicators do not act as buttons, and the command of the indicator runs once instead of twice (a switch was flipped back at once) - (ticaki) a panel that is offline gets the startup page offered every 5 s again (the panel loop never rescheduled itself)
- (ticaki) script config:
fontSize: 0on a grid item is no longer ignored
-
Zwei fragen
Wenn du mit dem Admin deine Seiten erstellst, warum möchtest du das globalScript nutzen?Ich möchte allerdings einen Ordner anklicken, um darauf zu kommen - nicht über das klicken nach links/rechts
Das verstehe ich nicht ganz, was du da meinst. Ordner = Channel oder Folder?
Mit klick auf Icon eine Seite öffnen?
Soll das Icon einen Status anzeigen vom Channel?@TT-Tom Vielleicht habe ich auch einfach einen Denkfehler.
Unten links "Garage" ist Pfad zur Garage. In der Garage habe ich ebenfalls ein NSPanel.
Meine Überlegung war, die eingerichtete Konfiguration der Garage im global zu speichern, dass ich auch von jedem anderen Panel darauf komme. Vielleicht denke ich zu kompliziert?
-
javascript.0 17:34:05.142 error Error by run: script.js.nspanel-lovelace-ui_0.nspanel_garten:351 javascript.0 17:34:05.144 error }).call(exports); javascript.0 17:34:05.146 error ^ javascript.0 17:34:05.148 error TypeError: (intermediate value)(...).call is not a function javascript.0 17:34:05.150 error at script.js.nspanel-lovelace-ui_0.nspanel_garten:351:4 javascript.0 17:34:05.151 error at Script.runInContext (node:vm:149:12) javascript.0 17:34:05.154 error Error: TypeError: id.includes is not a function javascript.0 17:34:05.155 error at getStateAsync (/opt/iobroker/node_modules/iobroker.javascript/build/lib/sandbox.js:2595:20) javascript.0 17:34:05.157 error at wrapped (/opt/iobroker/node_modules/iobroker.javascript/build/lib/sandbox.js:68:19) javascript.0 17:34:05.159 error at getStateMe (script.js.nspanel-lovelace-ui_0.nspanel_garten:175:22) javascript.0 17:34:05.161 error at script.js.nspanel-lovelace-ui_0.nspanel_garten:442:22 javascript.0 17:34:05.163 error at script.js.nspanel-lovelace-ui_0.nspanel_garten:1:1 javascript.0 17:34:05.165 error at Script.runInContext (node:vm:149:12) javascript.0 17:34:10.792 info Stopping scriptich hätte da ein Problem

keine änderung am script..
da fehlt wohl ne methode -
Error: TypeError: id.includes is not a function at getStateAsync (…/iobroker.javascript/build/lib/sandbox.js:2595:20) at wrapped (…/sandbox.js:68:19) at getStateMe (script.js.nspanel-lovelace-ui_0.nspanel_garten:175:22) ← hier at script.js.nspanel-lovelace-ui_0.nspanel_garten:442:22getStateMeist keine Funktion aus unserem codewenn du code unten einfügst, wird der vom adapter überschrieben immmer oberhalb von
/** ******************************************************************************** ******************************************************************************** ******************************************************************************** ******************************************************************************** ******************************************************************************** ******************************************************************************** ******************************************************************************** * END STOP END STOP END - No more configuration - END STOP END STOP END * ********************************************************************************bleiben
-
Error: TypeError: id.includes is not a function at getStateAsync (…/iobroker.javascript/build/lib/sandbox.js:2595:20) at wrapped (…/sandbox.js:68:19) at getStateMe (script.js.nspanel-lovelace-ui_0.nspanel_garten:175:22) ← hier at script.js.nspanel-lovelace-ui_0.nspanel_garten:442:22getStateMeist keine Funktion aus unserem codewenn du code unten einfügst, wird der vom adapter überschrieben immmer oberhalb von
/** ******************************************************************************** ******************************************************************************** ******************************************************************************** ******************************************************************************** ******************************************************************************** ******************************************************************************** ******************************************************************************** * END STOP END STOP END - No more configuration - END STOP END STOP END * ********************************************************************************bleiben
-
-
Bei mir hat in der Vergangenheit die Fehlermeldung sich auf den transpilierten Code bezogen und nicht auf ts.
- nach der funktion suchen
- Kleine Änderung und Skript neu transpilieren
Vielleicht hilft das.
-
@TT-Tom Vielleicht habe ich auch einfach einen Denkfehler.
Unten links "Garage" ist Pfad zur Garage. In der Garage habe ich ebenfalls ein NSPanel.
Meine Überlegung war, die eingerichtete Konfiguration der Garage im global zu speichern, dass ich auch von jedem anderen Panel darauf komme. Vielleicht denke ich zu kompliziert?
ja, das sollte so funktionieren. Du musst nur in dem Script von dem Garagen Panel die main von der Global verlinken. In dem Script der anderen Panels musst du eine Navigation auf die main der Global machen.
Zeige mal deine script einstellungen.
-
nach der funktion suchen
was soll ich nach der funktion suchen.. die ist global definiert ..hmmmmmmmmmmm
da komm jetzt ein undefined um die ecke...hhhhhmmmmmmmmmmmm.. merkwürdig .. ich such mal
im skript gucken obs doch drin steht und wenn nicht noch mal transpilieren vielleicht stehts in der javascript datei.
Ansonsten weiß ich nicht, im Skript wurde kaum was gemacht -
ja, das sollte so funktionieren. Du musst nur in dem Script von dem Garagen Panel die main von der Global verlinken. In dem Script der anderen Panels musst du eine Navigation auf die main der Global machen.
Zeige mal deine script einstellungen.
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden
