aboutsummaryrefslogtreecommitdiff
path: root/src/lib/helpers
diff options
context:
space:
mode:
authorAutumn <git@autumnfo.rest>2026-05-12 18:31:59 +0100
committerAutumn <git@autumnfo.rest>2026-05-12 18:31:59 +0100
commita8addc5aaaecca292b7d2bdc3a848a795329a3b4 (patch)
tree6c28cdb7f0644708b0a66fe3062b7cbcbc549547 /src/lib/helpers
parent56ccdf34d5a820fbdabb3674b2392b9d1e2b1ecf (diff)
[api] added device toggling API route
Diffstat (limited to 'src/lib/helpers')
-rw-r--r--src/lib/helpers/device.ts20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/lib/helpers/device.ts b/src/lib/helpers/device.ts
new file mode 100644
index 0000000..42076cb
--- /dev/null
+++ b/src/lib/helpers/device.ts
@@ -0,0 +1,20 @@
+//
+// ~~~ device helper utilities
+//
+
+// imports
+import { sendMessage } from "@lib/mqtt.ts"
+import allDevices from "@lib/config/devices.ts"
+
+// set state
+export async function setState(device, state) {
+
+ const deviceInfo = allDevices.find((dev) => dev.id === device)
+
+ if (!deviceInfo) return false
+
+ const deviceTopic = `${deviceInfo.mqtt}/set`
+ const deviceMessage = JSON.stringify({ "state": state })
+
+ return sendMessage(deviceTopic, deviceMessage)
+}