NEWS
jsonConfig für jsonTab
-
@skb Hast du es mal mit
id: 'shuttercontrol.%INSTANCE%.control.autoAll',versucht Beim Button muss es z.B. die ID sein@simatec Probiert habe ich bereits vieles - leider ohne Erfolg.
Gehen wir mal chronologisch vor und nehmen nur einen Datenpunkt, der als Select fungieren soll.
Die Syntax dazu ist:
"mode": { "type": "state", "label": "tab_mode", "control": "select", "options": [ { "label": "tab_mode_deactivated", "value": 0 }, { "label": "tab_mode_manual", "value": 1 } ], "oid": "control.mode", "xs": 12, "sm": 12, "md": 12, "lg": 12, "xl": 12 },Dargestellt wird eine Number-Box. Hier kann ich zwar die Werte
ä
ndern - jedoch greift das Select nicht.

-
@simatec Probiert habe ich bereits vieles - leider ohne Erfolg.
Gehen wir mal chronologisch vor und nehmen nur einen Datenpunkt, der als Select fungieren soll.
Die Syntax dazu ist:
"mode": { "type": "state", "label": "tab_mode", "control": "select", "options": [ { "label": "tab_mode_deactivated", "value": 0 }, { "label": "tab_mode_manual", "value": 1 } ], "oid": "control.mode", "xs": 12, "sm": 12, "md": 12, "lg": 12, "xl": 12 },Dargestellt wird eine Number-Box. Hier kann ich zwar die Werte
ä
ndern - jedoch greift das Select nicht.

-
-
@skb Zeige mal den State. Der State muss vom Typ her zum json Eintrag passen. Ist da kein select definiert, zeigt er die nur den Wert an. Das w
ü
rde auch passieren, wenn du einen State vom Type String als Slider integrierst@simatec Ah, ok. Das macht allerdings Sinn. Der state ist tats
ä
chlich eine Number - aber, wie k
ö
nnte man ihn als "List" passend machen? Dann liegt wohl da der Fehler."type": "number", "role": "indicator", "read": true, "write": true, "def": 0, "states": { "0": "Deactivated", "1": "Manual", "2": "Only Surplus", "3": "Minimal + Surplus", "4": "Fast" }Allerdings steht ja in der Beschreibung der states, das
statesnur bei number oder string gilt. Somit m
ü
sste ja dann auch ein select bei jsonTab g
ü
ltig sein.Was ja auch nicht geht - wie es bei shuttercontrol klappt, eine Zahl ohne Box darzustellen:

"chargeCurrentDisplay": { "newLine": true, "type": "state", "label": "tab_chargeAmpere", "oid": "control.chargeCurrent", "narrow": true, "addColon": true, "readOnly": true, "blinkOnUpdate": true, "highlight": true, "unit": "A", "xs": 12, "sm": 12, "md": 6, "lg": 6, "xl": 6 },Sollte, wie bei shuttercontrol aussehen:

Edit: Ok, das geht - allerdings nur, wenn der state auch auf
write: falsesteht. Sollte das dann nicht eher immer so sein, wenn ich dies aufreadOnly: truestelle? -
@simatec Ah, ok. Das macht allerdings Sinn. Der state ist tats
ä
chlich eine Number - aber, wie k
ö
nnte man ihn als "List" passend machen? Dann liegt wohl da der Fehler."type": "number", "role": "indicator", "read": true, "write": true, "def": 0, "states": { "0": "Deactivated", "1": "Manual", "2": "Only Surplus", "3": "Minimal + Surplus", "4": "Fast" }Allerdings steht ja in der Beschreibung der states, das
statesnur bei number oder string gilt. Somit m
ü
sste ja dann auch ein select bei jsonTab g
ü
ltig sein.Was ja auch nicht geht - wie es bei shuttercontrol klappt, eine Zahl ohne Box darzustellen:

"chargeCurrentDisplay": { "newLine": true, "type": "state", "label": "tab_chargeAmpere", "oid": "control.chargeCurrent", "narrow": true, "addColon": true, "readOnly": true, "blinkOnUpdate": true, "highlight": true, "unit": "A", "xs": 12, "sm": 12, "md": 6, "lg": 6, "xl": 6 },Sollte, wie bei shuttercontrol aussehen:

Edit: Ok, das geht - allerdings nur, wenn der state auch auf
write: falsesteht. Sollte das dann nicht eher immer so sein, wenn ich dies aufreadOnly: truestelle?@skb said in jsonConfig f
ü
r jsonTab:"type": "number", "role": "indicator", "read": true, "write": true, : : }Bitte korrigiere die ROLE des States:
role indicator erfordert type BOOLEAN, READ-ONLY.
siehe https://github.com/ioBroker/ioBroker.docs/blob/master/docs/en/dev/stateroles.md#indicators-boolean-read-onlyHier w
ü
rde wahrscheinlich value[.xxx] oder info.status passen oder wenns schreibbar sein soll level[.x] -
@skb said in jsonConfig f
ü
r jsonTab:"type": "number", "role": "indicator", "read": true, "write": true, : : }Bitte korrigiere die ROLE des States:
role indicator erfordert type BOOLEAN, READ-ONLY.
siehe https://github.com/ioBroker/ioBroker.docs/blob/master/docs/en/dev/stateroles.md#indicators-boolean-read-onlyHier w
ü
rde wahrscheinlich value[.xxx] oder info.status passen oder wenns schreibbar sein soll level[.x] -
@skb
Ja ist schon klar - war nur als ein Hinweis gedacht weil ichs gesehen habe.
Sorry f
ü
r Unterbrechung /Randanmerkung.An sich sollte aber - weil du in einer der ersten Beitr
ä
ge gefragt hast - das oben angef
ü
hrte README auch f
ü
r tab passen. Wenn was nicht funktioniert w
ä
r es ein Issue im admin Adapter Repo. Funktionalit
ä
t sollte mit admin ausgeliefert werden. Also ggF den aktuellsten Admin gegentesten wenn du nicht eh am latest bin (stable wurde heute aktualissiert).Die Komponents der jsconConfig sind
ü
brigends da (https://github.com/ioBroker/ioBroker.admin/tree/master/packages/jsonConfig/src/JsonConfigComponent) kodiert. Falls du selbst suchen / schaun willst was da wie implementiert ist. -
M
ü
sste ein dropdown nicht so definiert sein?
https://github.com/ioBroker/ioBroker.admin/blob/master/packages/jsonConfig/README.md#select -
@oliverio Ja, wenn man es ohne
statenutzt, wird dies wohl so definiert. Das funktioniert auch. Allerdings nicht, wenn ich einen state habe, der alsnumberdefiniert ist und einestates-List beinhaltet.@SKB
Ich hab mal im source geschaut. Was mir auff
ä
llt ist, das der Typ select zwar definiert ist,
https://github.com/ioBroker/ioBroker.admin/blob/d64077fb7249005a1253de90eb54d0d84f019679/packages/jsonConfig/src/JsonConfigComponent/ConfigState.tsx#L47
Aber dann bei renderItem es f
ü
r diesen Typ keine Unterscheidung gibt, was dann die tats
ä
chliche Anzeige beeinflusst.
Also select wohl nicht umgesetzt wurde. Ist allerdings erstmal nur eine fl
ü
chtige Analyse, react ist da nicht immer alles gleich ersichtlich -
@SKB
Ich hab mal im source geschaut. Was mir auff
ä
llt ist, das der Typ select zwar definiert ist,
https://github.com/ioBroker/ioBroker.admin/blob/d64077fb7249005a1253de90eb54d0d84f019679/packages/jsonConfig/src/JsonConfigComponent/ConfigState.tsx#L47
Aber dann bei renderItem es f
ü
r diesen Typ keine Unterscheidung gibt, was dann die tats
ä
chliche Anzeige beeinflusst.
Also select wohl nicht umgesetzt wurde. Ist allerdings erstmal nur eine fl
ü
chtige Analyse, react ist da nicht immer alles gleich ersichtlich@oliverio Habe damit nun mal ein Bisschen getestet. Bei den
controlgeht eigentlich alles - bis auf eben das select.
Button kann schalten und walten - switch auch.Ich k
ö
nnte statt mit dem select auch mit einem Button leben - nur m
ü
sste ich dann die value, die der Button setzt auch auslesen k
ö
nnen, damit ich ggf. mit variant: outlinedz.B. den aktiven Wert in dem state erkenntlich machen kann. -
@oliverio Habe damit nun mal ein Bisschen getestet. Bei den
controlgeht eigentlich alles - bis auf eben das select.
Button kann schalten und walten - switch auch.Ich k
ö
nnte statt mit dem select auch mit einem Button leben - nur m
ü
sste ich dann die value, die der Button setzt auch auslesen k
ö
nnen, damit ich ggf. mit variant: outlinedz.B. den aktiven Wert in dem state erkenntlich machen kann. -
-
@mcm1957 Mir ging es im ersten Moment um das Verst
ä
ndnis - allerdings vermute ich nun einen Fehler. Habe ein Issue dazu erstellt. -
Als workaround k
ö
nntest du auch ein selectsendto nehmen und den State dann im Adapter lesen und setzen.(vermutlich)@oliverio Mit Sicherheit gibt es viele Ans
ä
tze, damit man irgendwie Daten erh
ä
lt - aber ich muss ja nicht states durch den Adapter schicken, damit ich Resultate bekomme, die eigentlich eine vorgesehene Funktion haben 
Ich denke, ein Issue wird erstmal gut sein, damit sich das jemand angucken kann und ggf. die Funktion richtig stellt.
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