Fehlermeldung bei Benutzung eines Java Scripts zum Schalten eines Virtual Device

Post Reply
RolfKunkel
Posts: 58
Joined: 03 Jan 2017 18:35

Fehlermeldung bei Benutzung eines Java Scripts zum Schalten eines Virtual Device

Post by RolfKunkel »

Liebe Forum-Nutzer,

ich möchte mit einem simplen Java Script ein virtuelles Device einschalten bekomme aber immer die Fehlermeldung
"Fehler beim Ausführen des Befehls: TypeError: Cannot read property 'performCommand' of null"

Wenn ich das Device mit diesem Befehl aus dem Browser heraus anschalte, funktioniert alles prima.
myIP:8083/ZAutomation/api/v1/devices/ZWayVDev_zway_43-0-37/command/off

Wenn ich es mit diesem JS probiere, bekomme ich immer die oben stehende Fehlermeldung.Das JS soll das Device 43 anschalten wenn das Dummy Device 328 ausgeschaltet wird.


var device_status2;
controller.devices.on("DummyDevice_328", "change:metrics:level", function()
{
device_status2 = controller.devices.get("DummyDevice_328").get("metrics:level");
if (device_status2==="off")
{
controller.devices("ZWayVDev_43-0-37").performCommand("on");
}
}
);

Kann mir jemand erklären, was ich falsch mache bzw. wo mein Denkfehler liegt.


Die Device Daten aus myIP:8083/ZAutomation/api/v1/devices
{
"creationTime": 1599153882,
"creatorId": 1,
"customIcons": {},
"deviceType": "switchBinary",
"h": 1016304240,
"hasHistory": false,
"id": "ZWayVDev_zway_43-0-37",
"location": 3,
"locationName": "Kueche",
"metrics": {
"icon": "switch",
"title": "Küchenfensterlampe (#43)",
"isFailed": false,
"level": "off"
},
gsaw
Posts: 78
Joined: 22 Aug 2016 00:26

Re: Fehlermeldung bei Benutzung eines Java Scripts zum Schalten eines Virtual Device

Post by gsaw »

Man sollte wahrscheinlich mit .get() ein Device holen.

Code: Select all

controller.devices.get("ZWayVDev_43-0-37")
So zumindest in Modulen zu finden. z.B. in LogicalRules/index.js

Code: Select all

var vDev = self.controller.devices.get(devState.device);
RolfKunkel
Posts: 58
Joined: 03 Jan 2017 18:35

Re: Fehlermeldung bei Benutzung eines Java Scripts zum Schalten eines Virtual Device

Post by RolfKunkel »

Vielen Dank. Werde ich gleich mal ausprobieren.
Post Reply