NEWS
[Neuer Adapter] smartstate
-
2023-02-07 19:22:36.514 - error: smartstate.0 (1886549) uncaught exception: id is not defined 2023-02-07 19:22:36.518 - error: smartstate.0 (1886549) ReferenceError: id is not defined at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.smartstate/main.js:568:2) at Module._compile (node:internal/modules/cjs/loader:1165:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10) at Module.load (node:internal/modules/cjs/loader:1043:32) at Function.Module._load (node:internal/modules/cjs/loader:878:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) at node:internal/main/run_main_module:22:47 2023-02-07 19:22:36.519 - error: smartstate.0 (1886549) id is not defined 2023-02-07 19:22:37.022 - warn: smartstate.0 (1886549) Terminated (UNCAUGHT_EXCEPTION): Without reason 2023-02-07 19:22:38.793 - warn: smartstate.0 (1886549) Unable to increase LUA script timeout: Connection is closed. 2023-02-07 19:22:39.071 - error: host.iobroker instance system.adapter.smartstate.0 terminated with code 6 (UNCAUGHT_EXCEPTION) 2023-02-07 19:22:39.071 - info: host.iobroker Restart adapter system.adapter.smartstate.0 because enabled 2023-02-07 19:22:48.824 - info: admin.2 (1701438) ==> Connected system.user.admin from 192.168.1.32 2023-02-07 19:23:09.381 - info: host.iobroker instance system.adapter.smartstate.0 started with pid 1887274 2023-02-07 19:23:10.598 - error: smartstate.0 (1887274) uncaught exception: id is not defined 2023-02-07 19:23:10.601 - error: smartstate.0 (1887274) ReferenceError: id is not defined at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.smartstate/main.js:568:2) at Module._compile (node:internal/modules/cjs/loader:1165:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10) at Module.load (node:internal/modules/cjs/loader:1043:32) at Function.Module._load (node:internal/modules/cjs/loader:878:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) at node:internal/main/run_main_module:22:47 2023-02-07 19:23:10.602 - error: smartstate.0 (1887274) id is not defined 2023-02-07 19:23:11.110 - warn: smartstate.0 (1887274) Terminated (UNCAUGHT_EXCEPTION): Without reason 2023-02-07 19:23:11.775 - error: smartstate.0 (1887274) uncaught exception: Connection is closed. 2023-02-07 19:23:11.777 - error: smartstate.0 (1887274) Error: Connection is closed. at close (/opt/iobroker/node_modules/ioredis/built/redis/event_handler.js:184:25) at Socket.<anonymous> (/opt/iobroker/node_modules/ioredis/built/redis/event_handler.js:151:20) at Object.onceWrapper (node:events:628:26) at Socket.emit (node:events:513:28) at TCP.<anonymous> (node:net:301:12) 2023-02-07 19:23:11.781 - error: smartstate.0 (1887274) Connection is closed. 2023-02-07 19:23:12.261 - error: host.iobroker instance system.adapter.smartstate.0 terminated with code 6 (UNCAUGHT_EXCEPTION) 2023-02-07 19:23:12.263 - info: host.iobroker Restart adapter system.adapter.smartstate.0 because enabled 2023-02-07 19:23:42.528 - info: host.iobroker instance system.adapter.smartstate.0 started with pid 1887422 2023-02-07 19:23:43.517 - error: smartstate.0 (1887422) uncaught exception: id is not defined 2023-02-07 19:23:43.519 - error: smartstate.0 (1887422) ReferenceError: id is not defined at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.smartstate/main.js:568:2) at Module._compile (node:internal/modules/cjs/loader:1165:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10) at Module.load (node:internal/modules/cjs/loader:1043:32) at Function.Module._load (node:internal/modules/cjs/loader:878:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) at node:internal/main/run_main_module:22:47 2023-02-07 19:23:43.520 - error: smartstate.0 (1887422) id is not defined 2023-02-07 19:23:44.022 - warn: smartstate.0 (1887422) Terminated (UNCAUGHT_EXCEPTION): Without reason 2023-02-07 19:23:44.716 - error: host.iobroker instance system.adapter.smartstate.0 terminated with code 6 (UNCAUGHT_EXCEPTION) 2023-02-07 19:23:44.717 - info: host.iobroker Restart adapter system.adapter.smartstate.0 because enabled 2023-02-07 19:23:44.717 - warn: host.iobroker Do not restart adapter system.adapter.smartstate.0 because restart loop detected
-
@bananajoe
ok, einmal gelöscht und neu anlegen ...
Immer noch Fehler:
2023-02-07 19:26:00.559 - error: smartstate.0 (1888687) id is not defined 2023-02-07 19:26:01.061 - warn: smartstate.0 (1888687) Terminated (UNCAUGHT_EXCEPTION): Without reason 2023-02-07 19:26:01.744 - error: host.iobroker instance system.adapter.smartstate.0 terminated with code 6 (UNCAUGHT_EXCEPTION) 2023-02-07 19:26:01.746 - info: host.iobroker Do not restart adapter system.adapter.smartstate.0 because disabled or deleted 2023-02-07 19:27:44.398 - info: admin.2 (1701438) <== Disconnect system.user.admin from 192.168.1.32 2023-02-07 19:28:01.423 - info: host.iobroker "system.adapter.smartstate.0" enabled 2023-02-07 19:28:02.529 - info: host.iobroker instance system.adapter.smartstate.0 started with pid 1890004 2023-02-07 19:28:03.725 - error: smartstate.0 (1890004) uncaught exception: id is not defined 2023-02-07 19:28:03.727 - error: smartstate.0 (1890004) ReferenceError: id is not defined at Object.<anonymous> (/opt/iobroker/node_modules/iobroker.smartstate/main.js:568:2) at Module._compile (node:internal/modules/cjs/loader:1165:14) at Object.Module._extensions..js (node:internal/modules/cjs/loader:1219:10) at Module.load (node:internal/modules/cjs/loader:1043:32) at Function.Module._load (node:internal/modules/cjs/loader:878:12) at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12) at node:internal/main/run_main_module:22:47
-
@chrid sagte in [Neuer Adapter] smartstate:
Im Hintergrund habe ich grundsätzlich dafür schon eine Funktion eingebaut dass man den Rückgabewert des oder der states (pattern) anpassen kann. D.h du würdest dann in der Pattern Zeile noch ein Feld haben wo du dann einfach "value = !value" reinschreiben könntest. Das ist halt aber wirklich ein Feld wo man im Endeffekt validen javascript code reinschreiben müsste.
Oder hättest du eine Idee wie man das schöner bzw. Userfreundlicher lösen könnte?Als Ankreuzfeld in den Einstellungen. bspw Wert negieren.
Du müsstest ja durch das Pattern sowieso ermitteln wieviel Datenpunkte selektiert werden.
Wenn von 10 Geräten 4 an sind, dann ergibt ohne Kreuz das Ergebnis 4
und mit ankreuzen 10-4 = 6 -
Adapter Installiert und so eingestellt:
Dann kommt im Object nur das:
-
@bananajoe
Bitte nochmal adapter neu installieren, dann ist der id Fehler weg -
@wendy2702
Danke für die Rückmeldung. Bei mir siehts mit den gleichen Einstellungen so aus:
Unter welchen Objekten liegen den die "Fenster" states?
Sind die unter "devices"? oder "channels"?
Magst du mir einen Screenshot vom Tree posten?
So in etwa, nur halt mit den Fensterkontakten: -
@chrid bin auf Dienstreise. Eventuell heute Abend oder morgen Abend kann ich den liefern.
-
@chrid sagte in [Neuer Adapter] smartstate:
@bananajoe
Bitte nochmal adapter neu installieren, dann ist der id Fehler wegok, Funktioniert jetzt.
Das hier liefert mir 13
als Zahl im Datenpunkt.Das hier liefert mir 26 ...
Im JSON sind dann die 13 Geräte die nichtavailable
sind, also ok -
@chrid Hi,
das sind Aliase:
Denke mir ist aber gerade aufgefallen warum es so sein koennte. Vermutlich liegt es an dern verschiedenen Zustaenden.
Werde mal Sensoren mit den gleichen Zustaenden einstellen.
-
@wendy2702
Nein, das liegt daran das du kein "device" als parent für deine aliase hast und deine aliase eigentlich ja das device sind. Bitte benutze dasstateObject
stattdessen. Das device Object ist nur befüllt wenn es ein parent device gibt im object tree.
DasstateObject
ist dann genau das jeweilige alias objekt
Einfach
deviceObject
mitstateObject
austauschen -
@chrid OK.
Teste ich wenn ich wieder zu Hause bin.
EDIT: OK die Fenster werden jetzt angezeigt. Allerdings steht da ja jetzt der komplette Name des Objekts drin:
alias.0.Fenster.Fenster_Schlafzimmer;alias.0.Fenster.Fenster_Wohnzimmer
Hier wäre es natürlich Wünschenswert wenn nur der Name: "Schlafzimmer, Wohnzimmer" usw. stehen würde.
-
@wendy2702
Dann kannst du das einfach ändern indem du den code in der Funktion anpasst auf:return params.stateObject.common.name
-
@chrid sagte in [Neuer Adapter] smartstate:
@wendy2702
Dann kannst du das einfach ändern indem du den code in der Funktion anpasst auf:return params.stateObject.common.name
OK.
Ich frage mal ganz frech: Kann man, sprich du, das nicht direkt in den Adapter einbauen?
-
@wendy2702
Vielleicht habe ich mich etwas unklar ausgedrückt, aber du kannst das einfach hier ganz einfach an der Oberfläche ändern:
Ich weiß nicht recht was ich da anpassen sollte? Das standardmäßig der "common.name" anstatt die "id" benutzt wird? Andere User möchten vll. aber die Id als Standard und nicht den Namen.
Ist das so ein großes Problem?
-
@chrid sagte in [Neuer Adapter] smartstate:
@wendy2702
Vielleicht habe ich mich etwas unklar ausgedrückt, aber du kannst das einfach hier ganz einfach an der Oberfläche ändern:
Ich weiß nicht recht was ich da anpassen sollte? Das standardmäßig der "common.name" anstatt die "id" benutzt wird? Andere User möchten vll. aber die Id als Standard und nicht den Namen.
Ist das so ein großes Problem?
Mir ist schon klar das ich das an der stelle ändern muss.
Allerdings würde ich persönlich bei einem Adapter bevorzugen wenn man das entweder per Drop down oder checkbox selektieren könnte.
Was man allerdings mit der ID will/anfangen kann weiss ich eh nicht.