forked from wirenboard/wb-rules
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsample1.js
More file actions
48 lines (44 loc) · 1.03 KB
/
Copy pathsample1.js
File metadata and controls
48 lines (44 loc) · 1.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
defineVirtualDevice("relayClicker", {
title: "Relay Clicker",
cells: {
enabled: {
type: "switch",
value: false
}
}
});
defineRule("startClicking", {
asSoonAs: function () {
return dev.relayClicker.enabled && (dev.uchm121rx["Input 0"] == "0");
},
then: function () {
startTicker("clickTimer", 1000);
}
});
defineRule("stopClicking", {
asSoonAs: function () {
return !dev.relayClicker.enabled || dev.uchm121rx["Input 0"] != "0";
},
then: function () {
timers.clickTimer.stop();
}
});
defineRule("doClick", {
when: function () {
return timers.clickTimer.firing;
},
then: function () {
dev.uchm121rx["Relay 0"] = !dev.uchm121rx["Relay 0"];
}
});
defineRule("echo", {
whenChanged: "wb-w1/00042d40ffff",
then: function (newValue, devName, cellName) {
runShellCommand("echo {}/{} = {}".format(devName, cellName, newValue), {
captureOutput: true,
exitCallback: function (exitCode, capturedOutput) {
log("cmd output: " + capturedOutput);
}
});
}
});