NEWS
vis-2-widgets-collection
-
@Mirtl Das können die Widgets noch nicht, da es ein ganz anderer Ansatz wäre. Aber es gibt ja noch viele andere Widgets für vis-2, z.B. die inventwo. Da kenne ich mich aber zu wenig aus, um dir jetzt konkret sagen zu können, ob das geht oder nicht.
@carsten04 Danke für die Antwort. Die gängigen Widgets habe ich alle durch. Da ist kein einziges dabei, das meine Wünsche unterstützen würde (oder ich bin zu doof, es zu kapieren).
Dann bleibt mir halt nur der Weg des händischen anpassens. -
Aktuelle Version 2.4.0 Veröffentlichungsdatum 01.03.2026 Github Link https://github.com/Steiger04/ioBroker.vis-2-widgets-collection Hallo Alle,
ich bin gerade dabei für die Vis 2 Widgets zu entwickeln. Der Adapter kann jetzt als npm-Package installiert werden und steht auch im Beta-Repo zur Verfügung:
iobroker url iobroker.vis-2-widgets-collection@latestoder

Danach dann unter Adapter im Admin eine Instanz anlegen.oder

Z.Z. gibt es neun Widgets, nämlich State, ButtonGroup, RadioGroup, Slider, Switch, Checkbox, Select, Dialog und Gauge, mit denen man schon einige Anwendungsfälle abdecken kann. Mit der Zeit werden nach und nach weitere Widgets dazukommen.
Zum Schluß noch ein kleiner Eindruck was man mit z.B. dem State-Widget schon machen kann und ein paar Einstellmöglichkeiten:

Einstellungen:



Feedback bitte hier oder auf GitHub.
Grüße
CarstenHallo, kannst du beim Auswahlwidget nur lesen einbauen?


{ "type": "state", "common": { "name": "552", "type": "number", "role": "level", "write": false, "read": true, "def": 0, "states": { "0": "Inactive", "1": "Ready", "2": "DelayedStart", "3": "Run", "4": "Pause", "5": "ActionRequired", "6": "Finished", "7": "Error", "8": "Aborting" } }, "native": {}, "from": "system.adapter.cloudless-homeconnect.0", "user": "system.user.admin", "ts": 1740755632019, "_id": "cloudless-homeconnect.0.xxxxxxxxxxx.Status.OperationState", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Ist ein GS und ich möchte den Status angezeigt bekommen.
-
Hallo, kannst du beim Auswahlwidget nur lesen einbauen?


{ "type": "state", "common": { "name": "552", "type": "number", "role": "level", "write": false, "read": true, "def": 0, "states": { "0": "Inactive", "1": "Ready", "2": "DelayedStart", "3": "Run", "4": "Pause", "5": "ActionRequired", "6": "Finished", "7": "Error", "8": "Aborting" } }, "native": {}, "from": "system.adapter.cloudless-homeconnect.0", "user": "system.user.admin", "ts": 1740755632019, "_id": "cloudless-homeconnect.0.xxxxxxxxxxx.Status.OperationState", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Ist ein GS und ich möchte den Status angezeigt bekommen.
-
@sigi234 Wenn es Dir nur um den Status geht, dann nehme doch das State Widget mit "Nur Anzeige" aktiviert, oder habe ich Dich falsch verstanden?

@carsten04 sagte in vis-2-widgets-collection:
@sigi234 Wenn es Dir nur um den Status geht, dann nehme doch das State Widget mit "Nur Anzeige" aktiviert, oder habe ich Dich falsch verstanden?
Diese Option habe ich bei mir nicht. Ich habe mal nur Zustände genommen.

-
@carsten04 sagte in vis-2-widgets-collection:
@sigi234 Wenn es Dir nur um den Status geht, dann nehme doch das State Widget mit "Nur Anzeige" aktiviert, oder habe ich Dich falsch verstanden?
Diese Option habe ich bei mir nicht. Ich habe mal nur Zustände genommen.

@sigi234 "Nur Anzeige" wird dann dargestellt, wenn common.write=true. Wenn write in common fehlt, oder auf false gesetzt ist, fehlt die Checkbox. Ich werde bei einem der nächsten Patches es so machen, dass die Checkbox immer dargestellt wird. Das Problem mit read und write in common ist, dass es leider nicht durchgänig bei allen States durch die zugehörigen Adapter richtig gesetzt wird (manchmal fehlen die Einträge komplett) und ioBroker macht hier auch keine Vorgaben. Man kann sich auf die Einträge in common daher leider nicht verlassen, ansonsten wären read und write natürlich für das Verhalten eines Widgets perfekt nutzbar.
-
Irgendwie hat sich das Verhalten des Licht Widgets geändert....
Ich schaffe es bei den Hue Leuchten nicht mehr, dass bei
hue.0.xxx.on = false Bild 1
und bei
hue.0.xxx.on = true Bild 2
angezeigt wird.
Bei dem wird immer das Bild der eingeschaltenen Lampe angezeigt. Hat vor kurzem (weiß aber nicht bei welcher Version) noch geklappt. Ist mir nur erst gestern aufgefallen[ { "tpl": "tplLight2CollectionWidget", "data": { "bindings": [], "iconXOffset": "0px", "g_common": true, "iconYOffset": "0px", "noHeaderIcon": false, "header": "", "footer": "", "basePadding": 0, "baseElevation": 0, "background": "", "frameBackground": "", "sampleInterval": false, "g_light": true, "sampleIntervalValue": 200, "delay": 300, "colorLightButton": true, "colorLightDelayLongPress": 500, "colorLightModalHeight": 300, "colorLightSliderWidth": 1, "colorLightBorderWidth": 3, "colorLightPadding": 1, "colorLightUIComponent": "wheel", "colorWheelLightness": false, "colorLightType": "h/s/v/cct", "colorLightCtMin": 2000, "colorLightCtMax": 6500, "colorLightSwitchOid": "hue.0.Esstisch.on", "colorLightBrightnessOid": "hue.0.Esstisch.level", "colorLightHueOid": "hue.0.Esstisch.hue", "colorLightSaturationOid": "hue.0.Esstisch.sat", "colorLightTemperatureOid": "hue.0.Esstisch.ct", "colorLightRedOid": "hue.0.Esstisch.r", "colorLightGreenOid": "hue.0.Esstisch.g", "colorLightBlueOid": "hue.0.Esstisch.b", "colorLightSwitchOidObject": { "_id": "hue.0.Esstisch.on", "name": "Esstisch.on", "type": "boolean", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 100 }, "icon": "_PRJ_NAME/bulb_on.png", "write": true, "onlyDisplay": false, "minValue": 0, "maxValue": 100, "values_count": 2, "value1": "false", "alias1": "FALSE", "value2": "true", "alias2": "TRUE", "iconSize": 0, "iconSmall1": "", "iconColor1": "red", "iconSize1": 100, "iconSmall2": "", "iconColor2": "green", "iconSize2": 100, "colorLightBrightnessOidObject": { "_id": "hue.0.Esstisch.level", "name": "Esstisch.level", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 100 }, "colorLightHueOidObject": { "_id": "hue.0.Esstisch.hue", "name": "Esstisch.hue", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "°", "minValue": 0, "maxValue": 360 }, "colorLightSaturationOidObject": { "_id": "hue.0.Esstisch.sat", "name": "Esstisch.sat", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 254 }, "colorLightTemperatureOidObject": { "_id": "hue.0.Esstisch.ct", "name": "Esstisch.ct", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "°K", "minValue": 2000, "maxValue": 6536 }, "colorLightRedOidObject": { "_id": "hue.0.Esstisch.r", "name": "Esstisch.r", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 255 }, "colorLightGreenOidObject": { "_id": "hue.0.Esstisch.g", "name": "Esstisch.g", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 255 }, "colorLightBlueOidObject": { "_id": "hue.0.Esstisch.b", "name": "Esstisch.b", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 255 }, "noHeader": true, "noFooter": true, "iconSmall": "", "background1": "rgba(0,0,0,0)", "backgroundColor1": "rgba(0,0,0,0)", "frameBackground1": "rgba(0,0,0,0)", "frameBackgroundColor1": "rgba(0,0,0,0)", "background2": "rgba(0,0,0,0)", "backgroundColor2": "rgba(0,0,0,0)", "frameBackground2": "rgba(0,0,0,0)", "frameBackgroundColor2": "rgba(0,0,0,0)", "noCard": true, "backgroundColor": "rgba(0,0,0,0)", "frameBackgroundColor": "rgba(0,0,0,0)", "colorLightBorderColor": "rgba(0,0,0,0)", "icon1": "_PRJ_NAME/bulb_off.png", "icon2": "_PRJ_NAME/bulb_on.png", "name": "Licht Estisch", "comment": null, "class": null, "filterkey": null, "multi-views": null, "locked": null, "g_fixed": true }, "style": { "bindings": [ "z-index" ], "left": "325px", "top": 44, "width": "100px", "height": "100px", "position": "", "z-index": "3" }, "widgetSet": "vis-2-widgets-collection", "_id": "i000001" } ] -
Irgendwie hat sich das Verhalten des Licht Widgets geändert....
Ich schaffe es bei den Hue Leuchten nicht mehr, dass bei
hue.0.xxx.on = false Bild 1
und bei
hue.0.xxx.on = true Bild 2
angezeigt wird.
Bei dem wird immer das Bild der eingeschaltenen Lampe angezeigt. Hat vor kurzem (weiß aber nicht bei welcher Version) noch geklappt. Ist mir nur erst gestern aufgefallen[ { "tpl": "tplLight2CollectionWidget", "data": { "bindings": [], "iconXOffset": "0px", "g_common": true, "iconYOffset": "0px", "noHeaderIcon": false, "header": "", "footer": "", "basePadding": 0, "baseElevation": 0, "background": "", "frameBackground": "", "sampleInterval": false, "g_light": true, "sampleIntervalValue": 200, "delay": 300, "colorLightButton": true, "colorLightDelayLongPress": 500, "colorLightModalHeight": 300, "colorLightSliderWidth": 1, "colorLightBorderWidth": 3, "colorLightPadding": 1, "colorLightUIComponent": "wheel", "colorWheelLightness": false, "colorLightType": "h/s/v/cct", "colorLightCtMin": 2000, "colorLightCtMax": 6500, "colorLightSwitchOid": "hue.0.Esstisch.on", "colorLightBrightnessOid": "hue.0.Esstisch.level", "colorLightHueOid": "hue.0.Esstisch.hue", "colorLightSaturationOid": "hue.0.Esstisch.sat", "colorLightTemperatureOid": "hue.0.Esstisch.ct", "colorLightRedOid": "hue.0.Esstisch.r", "colorLightGreenOid": "hue.0.Esstisch.g", "colorLightBlueOid": "hue.0.Esstisch.b", "colorLightSwitchOidObject": { "_id": "hue.0.Esstisch.on", "name": "Esstisch.on", "type": "boolean", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 100 }, "icon": "_PRJ_NAME/bulb_on.png", "write": true, "onlyDisplay": false, "minValue": 0, "maxValue": 100, "values_count": 2, "value1": "false", "alias1": "FALSE", "value2": "true", "alias2": "TRUE", "iconSize": 0, "iconSmall1": "", "iconColor1": "red", "iconSize1": 100, "iconSmall2": "", "iconColor2": "green", "iconSize2": 100, "colorLightBrightnessOidObject": { "_id": "hue.0.Esstisch.level", "name": "Esstisch.level", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 100 }, "colorLightHueOidObject": { "_id": "hue.0.Esstisch.hue", "name": "Esstisch.hue", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "°", "minValue": 0, "maxValue": 360 }, "colorLightSaturationOidObject": { "_id": "hue.0.Esstisch.sat", "name": "Esstisch.sat", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 254 }, "colorLightTemperatureOidObject": { "_id": "hue.0.Esstisch.ct", "name": "Esstisch.ct", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "°K", "minValue": 2000, "maxValue": 6536 }, "colorLightRedOidObject": { "_id": "hue.0.Esstisch.r", "name": "Esstisch.r", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 255 }, "colorLightGreenOidObject": { "_id": "hue.0.Esstisch.g", "name": "Esstisch.g", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 255 }, "colorLightBlueOidObject": { "_id": "hue.0.Esstisch.b", "name": "Esstisch.b", "type": "number", "icon": null, "write": true, "onlyDisplay": false, "unit": "", "minValue": 0, "maxValue": 255 }, "noHeader": true, "noFooter": true, "iconSmall": "", "background1": "rgba(0,0,0,0)", "backgroundColor1": "rgba(0,0,0,0)", "frameBackground1": "rgba(0,0,0,0)", "frameBackgroundColor1": "rgba(0,0,0,0)", "background2": "rgba(0,0,0,0)", "backgroundColor2": "rgba(0,0,0,0)", "frameBackground2": "rgba(0,0,0,0)", "frameBackgroundColor2": "rgba(0,0,0,0)", "noCard": true, "backgroundColor": "rgba(0,0,0,0)", "frameBackgroundColor": "rgba(0,0,0,0)", "colorLightBorderColor": "rgba(0,0,0,0)", "icon1": "_PRJ_NAME/bulb_off.png", "icon2": "_PRJ_NAME/bulb_on.png", "name": "Licht Estisch", "comment": null, "class": null, "filterkey": null, "multi-views": null, "locked": null, "g_fixed": true }, "style": { "bindings": [ "z-index" ], "left": "325px", "top": 44, "width": "100px", "height": "100px", "position": "", "z-index": "3" }, "widgetSet": "vis-2-widgets-collection", "_id": "i000001" } ]@Merlin123 Nutze das Widget auch seit heute und kann das Verhalten bestätigen. Ein Neustart von VIS-2 behebt bei mir das Thema.
-
@Merlin123 Nutze das Widget auch seit heute und kann das Verhalten bestätigen. Ein Neustart von VIS-2 behebt bei mir das Thema.
@Lucky_ESA hat bei mir leider nicht geholfen :(
@carsten04 Hast Du ne Idee, wieso das nicht klappt?
-
gibt es keine Idee, wieso bei mir der Status der Hue Lampen nicht mehr richtig angezeigt wird? :(
-
@Merlin123 Ist mit dem nächsten Fix wieder fein. Hatte nur die letzten zwei Wochen keine Zeit.
@carsten04 Ok. Super :) Danke für die Info!
-
@carsten04 Ok. Super :) Danke für die Info!
-
Die neue Version v2.4.0 enthält jetzt auch ein JsonTableWidget.

Dieses erlaubt (fast) beliebige JSON-Arrays in einer Tabelle darzustellen. Das übergebene JSON wird analysiert und dann werden automatisch sinnvolle Spalten generiert.
Das Widget hat sehr viele Einstellmöglichkeiten und daher auch eine gewisse Komplexität. Ich habe versucht das ganze so userfriendly wie möglich zu entwickeln.
Vom Prinzip habt ihr immer die Möglichkeit (wie bei allen anderen Widgets auch) die Basiseinstellungen in der zugehörigen vis-2 Editorgruppe einzustellen. Darüberhinaus gibt es auch einen Spalteneditor der für jede Spalte sehr viele individuelle Einstellungen / Formatierungseinstellungen zulässt.
Es wäre schön wenn der ein oder andere intensiv testen und dann hier berichten könnte.
-
@Merlin123 Es gibt jetzt eine neue Version v2.4.0. Da sollte alles wieder funktionieren.
@carsten04 Sieht gut aus! Symbole sind jetzt wieder so wie sie sein sollen. Danke :)
-
Die neue Version v2.4.0 enthält jetzt auch ein JsonTableWidget.

Dieses erlaubt (fast) beliebige JSON-Arrays in einer Tabelle darzustellen. Das übergebene JSON wird analysiert und dann werden automatisch sinnvolle Spalten generiert.
Das Widget hat sehr viele Einstellmöglichkeiten und daher auch eine gewisse Komplexität. Ich habe versucht das ganze so userfriendly wie möglich zu entwickeln.
Vom Prinzip habt ihr immer die Möglichkeit (wie bei allen anderen Widgets auch) die Basiseinstellungen in der zugehörigen vis-2 Editorgruppe einzustellen. Darüberhinaus gibt es auch einen Spalteneditor der für jede Spalte sehr viele individuelle Einstellungen / Formatierungseinstellungen zulässt.
Es wäre schön wenn der ein oder andere intensiv testen und dann hier berichten könnte.
@carsten04 sagte in vis-2-widgets-collection:
Es wäre schön wenn der ein oder andere intensiv testen und dann hier berichten könnte.
Ein sehr mächtiges Tabellen Widget! Super arbeit, meinen Respekt.
Läuft bis jetzt einwandfrei. -
@carsten04 sagte in vis-2-widgets-collection:
Es wäre schön wenn der ein oder andere intensiv testen und dann hier berichten könnte.
Ein sehr mächtiges Tabellen Widget! Super arbeit, meinen Respekt.
Läuft bis jetzt einwandfrei. -
@MCU Der type in common von Deinem Objekt device-watcher.0.devices.batteryList muss JSON oder String sein.
@carsten04 Tja, ich dachte das wäre so, aber:

Eigentlich ist doch type:string, role: json Standard bei den Adaptern?
Ich mach da mal ein Issue auf.
Oder könntest du evtl. eine Abfrage einbauen, mit der man das Problem löst?https://github.com/iobroker-community-adapters/ioBroker.device-watcher/issues/624
-
@carsten04 Tja, ich dachte das wäre so, aber:

Eigentlich ist doch type:string, role: json Standard bei den Adaptern?
Ich mach da mal ein Issue auf.
Oder könntest du evtl. eine Abfrage einbauen, mit der man das Problem löst?https://github.com/iobroker-community-adapters/ioBroker.device-watcher/issues/624
-
@MCU .. es gibt da Unterschiede zwischen Listen und Tabellen. Das kenne ich von unseren Widgest. Wir hatten dafür zwei verschiedene Widgest erstellt.
Nicht jedes json eignet sich für ein Tabellen-Widget.


