NEWS
Fehlermeldung angelegtes Objekt
-
Hallo,
ich bekomme jeden Tag um 4.45Uhr die selbe Fehlermeldung:javascript.0 2023-08-10 04:45:00.010 warn at processImmediate (node:internal/timers:478:21) javascript.0 2023-08-10 04:45:00.010 warn at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/scheduler.js:96:109) javascript.0 2023-08-10 04:45:00.010 warn at Object.cb (script.js.common.Zeitsteuerung.TV_Küche_Sommer:3:3) javascript.0 2023-08-10 04:45:00.009 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1730:20) javascript.0 2023-08-10 04:45:00.003 warn You are assigning a boolean to the state "javascript.0 2023-08-10 04:45:00.010 warn at processImmediate (node:internal/timers:478:21) javascript.0 2023-08-10 04:45:00.010 warn at Immediate._onImmediate (/opt/iobroker/node_modules/iobroker.javascript/lib/scheduler.js:96:109) javascript.0 2023-08-10 04:45:00.010 warn at Object.cb (script.js.common.Zeitsteuerung.TV_Küche_Sommer:3:3) javascript.0 2023-08-10 04:45:00.009 warn at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1730:20) javascript.0 2023-08-10 04:45:00.003 warn You are assigning a boolean to the state "0_userdata.0.App.Smartstecker_Kombiniert.03-TV-Küche-Ein" which expects a string. Please fix your code to use a string or change the state type to boolean. This warning might become an error in future versions. which expects a string. Please fix your code to use a string or change the state type to boolean. This warning might become an error in future versions.
Also kontrollierte ich unter den Instanzen, "0_userdata.0.App.Smartstecker_Kombiniert.03-TV-Küche-Ein":
{ "common": { "name": "Taster.TV-Küche-Ein", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }, "type": "state", "_id": "0_userdata.0.App.Smartstecker_Kombiniert.03-TV-Küche-Ein", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1653116179595 }
Alles scheint gleich wie bei den übrigen angelegten Objekten.
Es funktioniert auch.
Woher kommt der Fehler?
Danke
Oliver -
@oliver1972 sagte in Fehlermeldung angelegtes Objekt:
You are assigning a boolean to the state "0_userdata.0.App.Smartstecker_Kombiniert.03-TV-Küche-Ein" which expects a string. Please fix your code to use a string or change the state type to boolean. This warning might become an error in future versions. which expects a string. Please fix your code to use a string or change the state type to boolean. This warning might become an error in future versions.
Sollte ja selbsterklärend sein.
Zeig mal wie Du den DP beschreibst bitte. -
@oliver1972 sagte in Fehlermeldung angelegtes Objekt:
Alles scheint gleich wie bei den übrigen angelegten Objekten.
das kann ohne weiteres sein!
Aber istdas gewollt u d richtig?@oliver1972 sagte in Fehlermeldung angelegtes Objekt:
Es funktioniert auch.
klar, steht ja auch in der Meldung.
-
@oliver1972 sagte: "0_userdata.0.App.Smartstecker_Kombiniert.03-TV-Küche-Ein":
Dem Namen nach vermute ich, dass der DP vom Typ "boolean" sein muss.
{ "common": { "name": "Taster.TV-Küche-Ein", "desc": "Manuell erzeugt", "role": "button", "type": "boolean", "read": true, "write": true, "def": false },
-
Vieleicht schreibe ich Euch noch ein paar Infos.
Mit den Datenpunkten steure ich über der App Shortcuts verschiedene Gruppen von Geräten.
Folgendes Blockly greift dann auf den Datenpunkt zu:
In diesen Fall schalte ich die Antennenanlage, Sat und TV ein.
Einen ähnlichen Datenpunkt habe ich zum Ausschalten:{ "common": { "name": "Taster.TV-Küche-Aus", "desc": "Manuell erzeugt", "role": "state", "type": "string", "read": true, "write": true, "def": "" }, "type": "state", "_id": "0_userdata.0.App.Smartstecker_Kombiniert.03-TV-Küche-Aus", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1653116143949 }
So steuere ich viele Geräte Kombiniert oder einzeln über das Smartphone.
Keine anderen Geräte gebn diese Fehlermeldung, obwohl es immer wieder gleich aufgebaut ist.
Bei allen anderen ist der Typ auch string... -
This post is deleted! -
@oliver1972 sagte: Bei allen anderen ist der Typ auch string...
Was offenbar falsch ist. Das Skript "common.Zeitsteuerung.TV_Küche_Sommer" schreibt um 4:45 Uhr einen Logikwert in den Datenpunkt "Taster.TV-Küche-Ein".
-
@paul53 Ja, es gibt tatsächlich eine Zeitsteuerung die um 4.45Uhr dieTV Anlage morgens einschaltet:
Ist das der Grund, wie kann ich das ändern, das keine Fehlermeldungen kommen?
-
@oliver1972 sagte: Ist das der Grund?
Ja, das ist der Grund.
@oliver1972 sagte in Fehlermeldung angelegtes Objekt:
wie kann ich das ändern, das keine Fehlermeldungen kommen?
Die Datenpunkteigenschaften "type", "role" und "def" so ändern wie hier gezeigt.
-
@oliver1972 sagte in Fehlermeldung angelegtes Objekt:
Ist das der Grund,
ja! das Skript schreibt einen Logikwert, was für den Zweck auch richtig wäre.
was macht denn
@oliver1972 sagte in Fehlermeldung angelegtes Objekt:
steure ich über der App Shortcuts
-
@oliver1972 sagte in Fehlermeldung angelegtes Objekt:
o steuere ich viele Geräte Kombiniert oder einzeln über das Smartphone.
Keine anderen Geräte gebn diese Fehlermeldung, obwohl es immer wieder gleich aufgebaut ist.
Bei allen anderen ist der Typ auch string...Verwendest Du in diesen Datenpunkten auch Umlaute wie hier konkret das "ü"? Man kann und es ist nicht "verboten" Umlaute in DP zu verwenden, aber es kann an diversen Stellen zu Problemen führen.
Ro75.
-
@paul53 Habe alles geändert und werde dann morgen schauen, ob die Fehlermeldung nicht mehr kommt. Sollte ich diese änderung bei allen anderen ändern? Habe 14 Geräte die ich auf dieser Weise über "Taster" auf den Smartphone steure.
@homoran sagte in Fehlermeldung angelegtes Objekt:
App Shortcuts
Über der App kann ich Taster auf den Smartphone mit bestimmten funktionen anlegen. Diese werden dann im Iobroker mit den Adapter: simple-api.0 ausgeführt.@ro75 sagte in Fehlermeldung angelegtes Objekt:
Verwendest Du in diesen Datenpunkten auch Umlaute wie hier konkret das "ü"?
Ja, habe einige Umlaute bei Datenpunkten, hatte eigentlich damit nie Probleme, soll ich diese besser alle entfernen? -
@oliver1972 sagte: über "Taster" auf den Smartphone steure.
Taster sind i.d.R. vom Typ "boolean" mit der Rolle "button".
Die geänderten Datenpunkte funktionieren mit der App? -
@paul53 Ja sie funktionieren.
Bekam kurz nach den umstellen folgende Fehlermeldung:admin.0 2023-08-10 18:10:32.474 warn This object will not be created in future versions. Please report this to the developer. admin.0 2023-08-10 18:10:32.473 warn Object 0_userdata.0.App.Smartstecker_Kombiniert.03-TV-Küche-Ein is invalid: Default value has to be type "boolean" but received type "string"
Vieleicht nur wegen der Umstellung?
So sieht der Datenpunkt jetzt aus:
{ "common": { "name": "Taster.TV-Küche-Ein", "desc": "Manuell erzeugt", "role": "button", "type": "boolean", "read": true, "write": true, "def": "false" }, "type": "state", "_id": "0_userdata.0.App.Smartstecker_Kombiniert.03-TV-Küche-Ein", "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" }, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1691683832473 }
Ich warte mal ab, ob ich morgen früh keine Fehlermeldung mehr bekomme, dann werde ich alle ändern.
Vielen Dank an alle! -
@oliver1972 sagte: So sieht der Datenpunkt jetzt aus:
Ändere Zeile 9:
"def": false
-
@paul53 sagte in Fehlermeldung angelegtes Objekt:
"def": false
Ok, geändert, keine weitere Fehlermeldung...