Помогите с правилами плз
Код
function thermostat(ThermoDevice, ThermoDeviceNo, TempDevice) {
var VirtualDeviceName = TempDevice + "_thermostat";
defineVirtualDevice(VirtualDeviceName, {
title:"Термостат " + TempDevice,
cells: {
"Температура": {
type:"temperature",
value:""
},
"Установка": {
type:"range",
value: 18,
min: 10,
max: 26
},
"Конвектор": {
type: "switch",
readonly: true,
value: false
},
"Управление": {
type: "switch",
readonly: false,
value: false
}
}
});
var ruleName = TempDevice.replace("/", "_") + "_rule";
defineRule ("ruleName", {
whenChanged: TempDevice + "/temperature",
then: function (newValue, devName, cellName) {
dev[TempDevice + "_thermostat"]["Температура"] = newValue;
if (newValue > dev[TempDevice + "_thermostat/Установка"]) {
dev[ThermoDevice][ThermoDeviceNo] = 0;
} else { dev[ThermoDevice][ThermoDeviceNo] = 1; }
dev[TempDevice + "_thermostat/Конвектор"] = dev[ThermoDevice][ThermoDeviceNo];
}
});
};
thermostat ("wb-mr3_79", "K2", "temp_kitchen");
thermostat ("wb-mr3_62", "K3", "temp_bathroom");
thermostat ("wb-mr3_79", "K1", "temp_bath_small");
Если оставляю только одно устройства (строки в самом низу), все хорошо. Два и больше:
Ошибка правила: Error: error error (rc -100)
anon native strict preventsyield
anon /usr/share/wb-rules-system/scripts/lib.js:251
thermostat /etc/wb-rules/thermo.js:40
anon /etc/wb-rules/thermo.js:45 preventsyield