NEWS
-
@jleg sagte in Test Adapter iQontrol 1.6.x Vis:
in Sachen "Layout" sogar von der besseren Hälfte akzeptiert wird - danke dafür!
Jepp - kann ich bestätigen. Der "WAF" ist sehr hoch.

Habe da noch eine Frage.
Wie bekomme ich vor dem Datum einen Text. Datum ist ein Wert unter "INFO_A" im Gerätetyp "Info-Text".
"ist die nächste Leerung" ist unter "Array bearbeiten: INFO_A", dann Schraubenschlüssel, eingetragen unter "Einheit".

Ich hätte gerne das der Text so aussieht "Am 17.02.2021 ist die nächste Leerung".
Geht das?
-
@s-bormann sagte in Test Adapter iQontrol 1.6.x Vis:
@kueppert sagte in Test Adapter iQontrol 1.6.x Vis:
Hallo in die Runde,
ich möchte gern einen User-DP manuell mit einer Zahl befüllen können. Wähle ich also Gerät "Wert" aus und verknüpfe "State" mit meinem User-Datenpunkt.
Hab auch mit dem Schraubenschlüssel was eingetragen:

Allerdings habe ich in iQontrol beim Klicken auf das Icon nur die Möglichkeit, den Wert 0-100 auszuwählen (der kann weg, ich brauche nur ein Eingabefeld) via Regler, keine Möglichkeit, selber einen Wert einzutragen.

Ziel: Ich möchte über den User-DP meinen Stromzähler vom Haus loggen und den Wert via iQontrol schreiben können.Jmd eine Idee, wie ich das bewerkstellige?
Hi,
versuch mal, o es geht, wenn man den Type von Nummer auf Zeichenfolge umstellt. Ist dann zwar eigentlich falsch - bringt aber ein Eingabefeld zu Tage
Hi,
habe das jetzt mal selbst getestet - und Du hast Recht:
Wenn der Wert des Datenpunktes eine Zahl ist und keine spezielle Rolle definiert ist, wird der Typ zu Zahl zurück-konvertiert. Habe das Verhalten jetzt mal in der aktuellen Github-Version geändert, so dass bei mir jetzt das Eingabefeld erscheint.@all: Bitte ausführlich testen, ob das zu ungewünschten Seiteneffekten führt (d.h. konkret, ob alle Dialogfelder nach wie vor korrekt funktionieren - bei mir hat alles weiter wie gewohnt funktioniert, aber da es hier praktisch unendlich viele Kombinationsmöglichkeiten gibt, kann es schon sein, dass es in einigen Fällen zu Problemen kommt).
VG!
@s-bormann funktioniert bei mir mit meinem Datenpunkt jetzt
vielen DankNACHTRAG: Kommnando zurück...war mein TestDP, der eh schon auf Zeichenfolge stand. Bei dem anderen, der auf Number steht, gehts noch nicht. Hab von Git installiert, Versionsnummer hat sich nicht geändert. Muss ich einen anderen GIT-Link verwenden für die neue Version?
-
Habe da noch eine Frage.
Wie bekomme ich vor dem Datum einen Text. Datum ist ein Wert unter "INFO_A" im Gerätetyp "Info-Text".
"ist die nächste Leerung" ist unter "Array bearbeiten: INFO_A", dann Schraubenschlüssel, eingetragen unter "Einheit".

Ich hätte gerne das der Text so aussieht "Am 17.02.2021 ist die nächste Leerung".
Geht das?
@beowolf said in Test Adapter iQontrol 1.6.x Vis:
Habe da noch eine Frage.
Wie bekomme ich vor dem Datum einen Text. Datum ist ein Wert unter "INFO_A" im Gerätetyp "Info-Text".
"ist die nächste Leerung" ist unter "Array bearbeiten: INFO_A", dann Schraubenschlüssel, eingetragen unter "Einheit".

Ich hätte gerne das der Text so aussieht "Am 17.02.2021 ist die nächste Leerung".
Geht das?
Musst du dir wahrscheinlich als Text in einem Datenpunkt zusammenbauen und den Datenpunkt dann dort anzeigen.
-
Habe da noch eine Frage.
Wie bekomme ich vor dem Datum einen Text. Datum ist ein Wert unter "INFO_A" im Gerätetyp "Info-Text".
"ist die nächste Leerung" ist unter "Array bearbeiten: INFO_A", dann Schraubenschlüssel, eingetragen unter "Einheit".

Ich hätte gerne das der Text so aussieht "Am 17.02.2021 ist die nächste Leerung".
Geht das?
-
@beowolf du könntest dir z.b. ein icon mit Am machen...
<-- is ein .png
schriftart latürnich dementsprechend...@s-bormann mir ist bei deinem Alias Adapter ein kleiner Bug aufgefallen:

-
@kueppert Hallo, habe mein Problem mit der Umwandlung number zu string immer noch nicht gelöst, irgentwie finde ich die Lösung nicht. Habe einen Alias angelegt mit dem Type string. Der Wert wird aber noch immer nicht richtig angezeigt. (Zahl mit Punkt). Muss ich im "alias read" Feld noch einen Javascript Befehl eintragen damit die Zahl in einen String umgewandelt wird.
Danke für die Hilfe ... -
@s-bormann mir ist bei deinem Alias Adapter ein kleiner Bug aufgefallen:

@martinschm sagte in Test Adapter iQontrol 1.6.x Vis:
@s-bormann mir ist bei deinem Alias Adapter ein kleiner Bug aufgefallen:

Sehr aufmerksam! Wird korrigiert, danke!
-
@kueppert Hallo, habe mein Problem mit der Umwandlung number zu string immer noch nicht gelöst, irgentwie finde ich die Lösung nicht. Habe einen Alias angelegt mit dem Type string. Der Wert wird aber noch immer nicht richtig angezeigt. (Zahl mit Punkt). Muss ich im "alias read" Feld noch einen Javascript Befehl eintragen damit die Zahl in einen String umgewandelt wird.
Danke für die Hilfe ...@fredje ich habe dafür das Skript von paul wie folgt angepasst:
///https://forum.iobroker.net/topic/27295/vorlage-alias-per-skript-erzeugen ///VAR-Konvertierung: https://forum.iobroker.net/topic/33747/alias-best-practices-wie-kann-man-es-besser-machen/39 // Original-Datenpunkt const idOrigin = 'tankerkoenig.0.stations.3.diesel.feed'/*diesel feed*/; // Alias-Datenpunkt const idAlias = 'Spritpreise.JETDiesel'; var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom; // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich nameAlias = 'JETDiesel'; // desc = 'per Script erstellt'; typeAlias = 'string'; // 'boolean' oder 'number' oder 'switch' oder 'state' oder 'string' read = "val.toFixed(2).replace('.',',')"; // Erkennung "Aus" --> false erfolgt automatisch // write = "val ? 'Ein' : 'Aus'"; // role = 'indicator.lowbat'; // 'switch.light' oder 'value.temperature' oder 'window.value' oder 'indicator.lowbat' // min = 0; // nur Zahlen // max = 100; // nur Zahlen unit = '€'; // nur für Zahlen, z.B. '%' oder '°C' oder ' ' wenn keine Unit! // states = {true: 'leer', false: 'voll'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein) custom = {}; // verhindert doppelte Ausführung von history, telegram, mqtt-client, ... function createAlias(idSrc, idDst) { if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn'); else { var obj = {}; obj.type = 'state'; obj.common = getObject(idSrc).common; obj.common.alias = {}; obj.common.alias.id = idSrc; if(typeAlias) obj.common.type = typeAlias; if(obj.common.read !== false && read) obj.common.alias.read = read; if(obj.common.write !== false && write) obj.common.alias.write = write; if(nameAlias) obj.common.name = nameAlias; if(role) obj.common.role = role; if(desc) obj.common.desc = desc; if(min !== undefined) obj.common.min = min; if(max !== undefined) obj.common.max = max; if(unit) obj.common.unit = unit; if(states) obj.common.states = states; if(custom && obj.common.custom) obj.common.custom = custom; if(obj.common.icon) delete obj.common.icon; obj.native = {}; setObject(idDst, obj); } } createAlias(idOrigin, 'alias.0.' + idAlias); -
@kueppert Hallo, habe mein Problem mit der Umwandlung number zu string immer noch nicht gelöst, irgentwie finde ich die Lösung nicht. Habe einen Alias angelegt mit dem Type string. Der Wert wird aber noch immer nicht richtig angezeigt. (Zahl mit Punkt). Muss ich im "alias read" Feld noch einen Javascript Befehl eintragen damit die Zahl in einen String umgewandelt wird.
Danke für die Hilfe ...@fredje sagte in Test Adapter iQontrol 1.6.x Vis:
@kueppert Hallo, habe mein Problem mit der Umwandlung number zu string immer noch nicht gelöst, irgentwie finde ich die Lösung nicht. Habe einen Alias angelegt mit dem Type string. Der Wert wird aber noch immer nicht richtig angezeigt. (Zahl mit Punkt). Muss ich im "alias read" Feld noch einen Javascript Befehl eintragen damit die Zahl in einen String umgewandelt wird.
Danke für die Hilfe ...Habs nicht selbst getestet, aber versuch vielleicht mal bei alias.read
val.toString()einzutragen, ggf. geht das dann? -
@s-bormann funktioniert bei mir mit meinem Datenpunkt jetzt
vielen DankNACHTRAG: Kommnando zurück...war mein TestDP, der eh schon auf Zeichenfolge stand. Bei dem anderen, der auf Number steht, gehts noch nicht. Hab von Git installiert, Versionsnummer hat sich nicht geändert. Muss ich einen anderen GIT-Link verwenden für die neue Version?
@kueppert sagte in Test Adapter iQontrol 1.6.x Vis:
@s-bormann funktioniert bei mir mit meinem Datenpunkt jetzt
vielen DankNACHTRAG: Kommnando zurück...war mein TestDP, der eh schon auf Zeichenfolge stand. Bei dem anderen, der auf Number steht, gehts noch nicht. Hab von Git installiert, Versionsnummer hat sich nicht geändert. Muss ich einen anderen GIT-Link verwenden für die neue Version?
Hi,
nein, bei den Github-Versionen ändert sich leider die Versionsnummer nicht. Wenn die Installation ohne Probleme durchläuft, dann kann man davon ausgehen, dass es die aktuellste Dev-Version ist.Manchmal muss man allerdings noch ein manuelles Upload machen. Und manchmal den ioBroker neu durchstarten, damit die Caches geleert werden (das kann man umgehen, wenn man in der
/opt/iobroker/iobroker-data/iobroker.jsonden Eintrag"noFileCache"auftruesetzt).Ich habe es jetzt bei mir gerade noch mal probiert:
Ich habe einen DP vom Typnumberangelegt, ihn dann über das Schraubenschlüssel-Symbol für iQontrol aufZeichenfolgeumgestellt und die OptionAdd option to enter free textaktiviert:{ "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1615645022314, "common": { "name": "TestInputString", "role": "", "type": "number", "desc": "Manuell erzeugt", "unit": "%", "min": 0, "max": 100, "read": true, "write": true, "def": false, "custom": { "iqontrol.0": { "enabled": true, "readonly": false, "invert": false, "confirm": false, "pincode": "", "unit": "kWh", "unit_zero": "kWh", "unit_one": "kWh", "min": "", "max": "", "step": "", "type": "string", "role": "state", "targetValueId": "", "statesAddInput": true, "statesAddInputCaption": "Zählerstand", "showOnlyTargetValues": false, "states": {}, "roundDigits": 0 } } }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "javascript.0.Test.TestInputString", "type": "state" }
Das führt zu folgendem Ergbnis:


Und wenn ich auf Zählerstand klicke, kommt ein Eingabefeld.
Hilft das?
-
@s-bormann Dank Iqontrol habe ich nun auch endlich eine Visualisierung, die trotz völligen Talentmangels in Sachen "Layout" sogar von der besseren Hälfte akzeptiert wird - danke dafür!

Ein kleines Problem habe ich allerdings aktuell mit der Anzeige des DWD-Adapters (Wetter-Warnmeldungen) - ich bin mir sicher, dass das anfangs einwandfrei klappte, plötzlich jetzt aber nicht mehr. Ich benutze das Gerät "Popup", und habe in "additional_info" die Datenpunkte
dwd.0.warning.begin
dwd.0.warning.endWährend in den Objekten die Zeiten normal angezeigt werden
Fri Mar 12 2021 10:00:00 GMT+0100 (Mitteleuropäische Normalzeit)steht nun im Iqontrol Popup nur noch
Beginn: aN.aN.NaN, aN:aN Ende: aN.aN.NaN, aN:aNDer Datentyp ist timestamp - und das offenbar "schon immer" (RAW: "ts": 1612643567563).
Ich dachte erst, ich könnte die Anzeige per "Schraubenschlüssel" korrigieren - dort gibt's aber nur "String", "Nummer" oder "Bool". Übersehe ich da was, oder geht das schlicht nicht (mehr)?@jleg sagte in Test Adapter iQontrol 1.6.x Vis:
@s-bormann Dank Iqontrol habe ich nun auch endlich eine Visualisierung, die trotz völligen Talentmangels in Sachen "Layout" sogar von der besseren Hälfte akzeptiert wird - danke dafür!

Ein kleines Problem habe ich allerdings aktuell mit der Anzeige des DWD-Adapters (Wetter-Warnmeldungen) - ich bin mir sicher, dass das anfangs einwandfrei klappte, plötzlich jetzt aber nicht mehr. Ich benutze das Gerät "Popup", und habe in "additional_info" die Datenpunkte
dwd.0.warning.begin
dwd.0.warning.endWährend in den Objekten die Zeiten normal angezeigt werden
Fri Mar 12 2021 10:00:00 GMT+0100 (Mitteleuropäische Normalzeit)steht nun im Iqontrol Popup nur noch
Beginn: aN.aN.NaN, aN:aN Ende: aN.aN.NaN, aN:aNDer Datentyp ist timestamp - und das offenbar "schon immer" (RAW: "ts": 1612643567563).
Ich dachte erst, ich könnte die Anzeige per "Schraubenschlüssel" korrigieren - dort gibt's aber nur "String", "Nummer" oder "Bool". Übersehe ich da was, oder geht das schlicht nicht (mehr)?Hi,
stimmt, das konnte ich unter bestimmten Vorraussetzungen nachstellen. Ist in der aktuellen Github-Version korrigiert. Bitte noch mal testen, wenn es klappt, mache ich eine offizielle Version draus.LG
-
@kueppert sagte in Test Adapter iQontrol 1.6.x Vis:
@s-bormann funktioniert bei mir mit meinem Datenpunkt jetzt
vielen DankNACHTRAG: Kommnando zurück...war mein TestDP, der eh schon auf Zeichenfolge stand. Bei dem anderen, der auf Number steht, gehts noch nicht. Hab von Git installiert, Versionsnummer hat sich nicht geändert. Muss ich einen anderen GIT-Link verwenden für die neue Version?
Hi,
nein, bei den Github-Versionen ändert sich leider die Versionsnummer nicht. Wenn die Installation ohne Probleme durchläuft, dann kann man davon ausgehen, dass es die aktuellste Dev-Version ist.Manchmal muss man allerdings noch ein manuelles Upload machen. Und manchmal den ioBroker neu durchstarten, damit die Caches geleert werden (das kann man umgehen, wenn man in der
/opt/iobroker/iobroker-data/iobroker.jsonden Eintrag"noFileCache"auftruesetzt).Ich habe es jetzt bei mir gerade noch mal probiert:
Ich habe einen DP vom Typnumberangelegt, ihn dann über das Schraubenschlüssel-Symbol für iQontrol aufZeichenfolgeumgestellt und die OptionAdd option to enter free textaktiviert:{ "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1615645022314, "common": { "name": "TestInputString", "role": "", "type": "number", "desc": "Manuell erzeugt", "unit": "%", "min": 0, "max": 100, "read": true, "write": true, "def": false, "custom": { "iqontrol.0": { "enabled": true, "readonly": false, "invert": false, "confirm": false, "pincode": "", "unit": "kWh", "unit_zero": "kWh", "unit_one": "kWh", "min": "", "max": "", "step": "", "type": "string", "role": "state", "targetValueId": "", "statesAddInput": true, "statesAddInputCaption": "Zählerstand", "showOnlyTargetValues": false, "states": {}, "roundDigits": 0 } } }, "native": {}, "acl": { "object": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1636 }, "_id": "javascript.0.Test.TestInputString", "type": "state" }
Das führt zu folgendem Ergbnis:


Und wenn ich auf Zählerstand klicke, kommt ein Eingabefeld.
Hilft das?
-
@fredje sagte in Test Adapter iQontrol 1.6.x Vis:
@kueppert Hallo, habe mein Problem mit der Umwandlung number zu string immer noch nicht gelöst, irgentwie finde ich die Lösung nicht. Habe einen Alias angelegt mit dem Type string. Der Wert wird aber noch immer nicht richtig angezeigt. (Zahl mit Punkt). Muss ich im "alias read" Feld noch einen Javascript Befehl eintragen damit die Zahl in einen String umgewandelt wird.
Danke für die Hilfe ...Habs nicht selbst getestet, aber versuch vielleicht mal bei alias.read
val.toString()einzutragen, ggf. geht das dann?@s-bormann sagte in Test Adapter iQontrol 1.6.x Vis:
val.toString()
Hallo, hatte ich auch schon probiert auch val.toFixed(2). Hat leider nichts gebracht.
Danke ... -
@s-bormann sagte in Test Adapter iQontrol 1.6.x Vis:
val.toString()
Hallo, hatte ich auch schon probiert auch val.toFixed(2). Hat leider nichts gebracht.
Danke ... -
@fredje ich habe dafür das Skript von paul wie folgt angepasst:
///https://forum.iobroker.net/topic/27295/vorlage-alias-per-skript-erzeugen ///VAR-Konvertierung: https://forum.iobroker.net/topic/33747/alias-best-practices-wie-kann-man-es-besser-machen/39 // Original-Datenpunkt const idOrigin = 'tankerkoenig.0.stations.3.diesel.feed'/*diesel feed*/; // Alias-Datenpunkt const idAlias = 'Spritpreise.JETDiesel'; var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom; // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich nameAlias = 'JETDiesel'; // desc = 'per Script erstellt'; typeAlias = 'string'; // 'boolean' oder 'number' oder 'switch' oder 'state' oder 'string' read = "val.toFixed(2).replace('.',',')"; // Erkennung "Aus" --> false erfolgt automatisch // write = "val ? 'Ein' : 'Aus'"; // role = 'indicator.lowbat'; // 'switch.light' oder 'value.temperature' oder 'window.value' oder 'indicator.lowbat' // min = 0; // nur Zahlen // max = 100; // nur Zahlen unit = '€'; // nur für Zahlen, z.B. '%' oder '°C' oder ' ' wenn keine Unit! // states = {true: 'leer', false: 'voll'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein) custom = {}; // verhindert doppelte Ausführung von history, telegram, mqtt-client, ... function createAlias(idSrc, idDst) { if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn'); else { var obj = {}; obj.type = 'state'; obj.common = getObject(idSrc).common; obj.common.alias = {}; obj.common.alias.id = idSrc; if(typeAlias) obj.common.type = typeAlias; if(obj.common.read !== false && read) obj.common.alias.read = read; if(obj.common.write !== false && write) obj.common.alias.write = write; if(nameAlias) obj.common.name = nameAlias; if(role) obj.common.role = role; if(desc) obj.common.desc = desc; if(min !== undefined) obj.common.min = min; if(max !== undefined) obj.common.max = max; if(unit) obj.common.unit = unit; if(states) obj.common.states = states; if(custom && obj.common.custom) obj.common.custom = custom; if(obj.common.icon) delete obj.common.icon; obj.native = {}; setObject(idDst, obj); } } createAlias(idOrigin, 'alias.0.' + idAlias);@kueppert sagte in Test Adapter iQontrol 1.6.x Vis:
///https://forum.iobroker.net/topic/27295/vorlage-alias-per-skript-erzeugen
Hallo, hatte deine Antwort übersehen. Habe nun auch das script angepasst und ausgeführt. Alias wird angelegt. Bekomme folgenden fehler im Log:
javascript.0 2021-03-17 10:40:58.503 error (6142) Invalid read function for undefined: val.toFixed(2).replace('.',',') => TypeError: val.toFixed is not a function
-
@kueppert sagte in Test Adapter iQontrol 1.6.x Vis:
///https://forum.iobroker.net/topic/27295/vorlage-alias-per-skript-erzeugen
Hallo, hatte deine Antwort übersehen. Habe nun auch das script angepasst und ausgeführt. Alias wird angelegt. Bekomme folgenden fehler im Log:
javascript.0 2021-03-17 10:40:58.503 error (6142) Invalid read function for undefined: val.toFixed(2).replace('.',',') => TypeError: val.toFixed is not a function
@fredje oh, sorry...stimmt...
nimm bitte dieses Skript:///https://forum.iobroker.net/topic/27295/vorlage-alias-per-skript-erzeugen ///VAR-Konvertierung: https://forum.iobroker.net/topic/33747/alias-best-practices-wie-kann-man-es-besser-machen/39 // Original-Datenpunkt const idOrigin = 'tankerkoenig.0.stations.1.diesel.short'/*diesel short*/; // Alias-Datenpunkt const idAlias = 'Spritpreise.ESSODiesel'; var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom; // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich nameAlias = 'JETDiesel'; // desc = 'per Script erstellt'; typeAlias = 'string'; // 'boolean' oder 'number' oder 'switch' oder 'state' oder 'string' read = "val.replace('.', ',')"; // Erkennung "Aus" --> false erfolgt automatisch // write = "val ? 'Ein' : 'Aus'"; // role = 'indicator.lowbat'; // 'switch.light' oder 'value.temperature' oder 'window.value' oder 'indicator.lowbat' // min = 0; // nur Zahlen // max = 100; // nur Zahlen unit = '€'; // nur für Zahlen, z.B. '%' oder '°C' oder ' ' wenn keine Unit! // states = {true: 'leer', false: 'voll'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein) custom = {}; // verhindert doppelte Ausführung von history, telegram, mqtt-client, ... function createAlias(idSrc, idDst) { if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn'); else { var obj = {}; obj.type = 'state'; obj.common = getObject(idSrc).common; obj.common.alias = {}; obj.common.alias.id = idSrc; if(typeAlias) obj.common.type = typeAlias; if(obj.common.read !== false && read) obj.common.alias.read = read; if(obj.common.write !== false && write) obj.common.alias.write = write; if(nameAlias) obj.common.name = nameAlias; if(role) obj.common.role = role; if(desc) obj.common.desc = desc; if(min !== undefined) obj.common.min = min; if(max !== undefined) obj.common.max = max; if(unit) obj.common.unit = unit; if(states) obj.common.states = states; if(custom && obj.common.custom) obj.common.custom = custom; if(obj.common.icon) delete obj.common.icon; obj.native = {}; setObject(idDst, obj); } } createAlias(idOrigin, 'alias.0.' + idAlias); -
@fredje oh, sorry...stimmt...
nimm bitte dieses Skript:///https://forum.iobroker.net/topic/27295/vorlage-alias-per-skript-erzeugen ///VAR-Konvertierung: https://forum.iobroker.net/topic/33747/alias-best-practices-wie-kann-man-es-besser-machen/39 // Original-Datenpunkt const idOrigin = 'tankerkoenig.0.stations.1.diesel.short'/*diesel short*/; // Alias-Datenpunkt const idAlias = 'Spritpreise.ESSODiesel'; var typeAlias, read, write, nameAlias, role, desc, min, max, unit, states, custom; // Folgende kommentieren, wenn keine Änderung der Eigenschaft erforderlich nameAlias = 'JETDiesel'; // desc = 'per Script erstellt'; typeAlias = 'string'; // 'boolean' oder 'number' oder 'switch' oder 'state' oder 'string' read = "val.replace('.', ',')"; // Erkennung "Aus" --> false erfolgt automatisch // write = "val ? 'Ein' : 'Aus'"; // role = 'indicator.lowbat'; // 'switch.light' oder 'value.temperature' oder 'window.value' oder 'indicator.lowbat' // min = 0; // nur Zahlen // max = 100; // nur Zahlen unit = '€'; // nur für Zahlen, z.B. '%' oder '°C' oder ' ' wenn keine Unit! // states = {true: 'leer', false: 'voll'}; // Zahlen (Multistate) oder Logikwert (z.B. Aus/Ein) custom = {}; // verhindert doppelte Ausführung von history, telegram, mqtt-client, ... function createAlias(idSrc, idDst) { if(existsState(idDst)) log(idDst + ' schon vorhanden !', 'warn'); else { var obj = {}; obj.type = 'state'; obj.common = getObject(idSrc).common; obj.common.alias = {}; obj.common.alias.id = idSrc; if(typeAlias) obj.common.type = typeAlias; if(obj.common.read !== false && read) obj.common.alias.read = read; if(obj.common.write !== false && write) obj.common.alias.write = write; if(nameAlias) obj.common.name = nameAlias; if(role) obj.common.role = role; if(desc) obj.common.desc = desc; if(min !== undefined) obj.common.min = min; if(max !== undefined) obj.common.max = max; if(unit) obj.common.unit = unit; if(states) obj.common.states = states; if(custom && obj.common.custom) obj.common.custom = custom; if(obj.common.icon) delete obj.common.icon; obj.native = {}; setObject(idDst, obj); } } createAlias(idOrigin, 'alias.0.' + idAlias); -
@jleg sagte in Test Adapter iQontrol 1.6.x Vis:
@s-bormann Dank Iqontrol habe ich nun auch endlich eine Visualisierung, die trotz völligen Talentmangels in Sachen "Layout" sogar von der besseren Hälfte akzeptiert wird - danke dafür!

Ein kleines Problem habe ich allerdings aktuell mit der Anzeige des DWD-Adapters (Wetter-Warnmeldungen) - ich bin mir sicher, dass das anfangs einwandfrei klappte, plötzlich jetzt aber nicht mehr. Ich benutze das Gerät "Popup", und habe in "additional_info" die Datenpunkte
dwd.0.warning.begin
dwd.0.warning.endWährend in den Objekten die Zeiten normal angezeigt werden
Fri Mar 12 2021 10:00:00 GMT+0100 (Mitteleuropäische Normalzeit)steht nun im Iqontrol Popup nur noch
Beginn: aN.aN.NaN, aN:aN Ende: aN.aN.NaN, aN:aNDer Datentyp ist timestamp - und das offenbar "schon immer" (RAW: "ts": 1612643567563).
Ich dachte erst, ich könnte die Anzeige per "Schraubenschlüssel" korrigieren - dort gibt's aber nur "String", "Nummer" oder "Bool". Übersehe ich da was, oder geht das schlicht nicht (mehr)?Hi,
stimmt, das konnte ich unter bestimmten Vorraussetzungen nachstellen. Ist in der aktuellen Github-Version korrigiert. Bitte noch mal testen, wenn es klappt, mache ich eine offizielle Version draus.LG
@s-bormann sagte in Test Adapter iQontrol 1.6.x Vis:
Hi,
stimmt, das konnte ich unter bestimmten Vorraussetzungen nachstellen. Ist in der aktuellen Github-Version korrigiert. Bitte noch mal testen, wenn es klappt, mache ich eine offizielle Version draus.Ja, klappt nun wieder, danke! Kleine weitere "kosmetische Frage": An selber Stelle (gleiches "Popup") ist der Datenpunkt "dwd.0.warning.text" (string) als "Info_A" (bzw. Info_B für ...warning1.text) hinterlegt. Wenn der leer ist, macht da Iqontrol leider "0" draus, statt "nix":

-
@s-bormann sagte in Test Adapter iQontrol 1.6.x Vis:
Hi,
stimmt, das konnte ich unter bestimmten Vorraussetzungen nachstellen. Ist in der aktuellen Github-Version korrigiert. Bitte noch mal testen, wenn es klappt, mache ich eine offizielle Version draus.Ja, klappt nun wieder, danke! Kleine weitere "kosmetische Frage": An selber Stelle (gleiches "Popup") ist der Datenpunkt "dwd.0.warning.text" (string) als "Info_A" (bzw. Info_B für ...warning1.text) hinterlegt. Wenn der leer ist, macht da Iqontrol leider "0" draus, statt "nix":

-
@s-bormann
Erstmal vielen Dank für den geilen Adapter!
Kurze Frage, kann auch ohne eine Umwandlung eine json Tabelle in iQontrol genutzt werden? oder muss ich diese erst in eine html Tabelle umwandeln?
Lg@tschaeens said in Test Adapter iQontrol 1.6.x Vis:
Kurze Frage, kann auch ohne eine Umwandlung eine json Tabelle in iQontrol genutzt werden? oder muss ich diese erst in eine html Tabelle umwandeln?
Wie sieht denn deine Json-Tabelle aus?
Schau mal in github issue #152, hab da mal meinen letzten Stand meines Widgets hochgeladen.Das Widget (also als html auspacken) einfach in iQontrol unter "Bilder/Widgets" in das Verzeichnis
/userwidgets(musst du ggf. vorher erstellen) hochladen. Dann eine neue Kachel mit TypWidgeterstellen und unterBACKGROUND_URLdann dein hochgeladenes Widget auswählen. Über den Stift dahinter bekommst du dann ein paar grundlegende Einstellungen für das Widget und kannst den Datenpunkt auswählen, wo dein JSON hinterlegt ist.Ist bislang noch sehr rudimentär. Es unterstützt mehrere Spalten im Json, ist dahingehend dynamisch. Als Typ wird nur String und Boolean unterstützt. Für den Boolean-Wert wird dann ein Icon dargestellt, welches du in den Widget-Einstellungen auswählen kannst.
Sieht dann in etwa so aus:
