diff options
| author | Autumn <git@autumnfo.rest> | 2026-05-12 18:31:59 +0100 |
|---|---|---|
| committer | Autumn <git@autumnfo.rest> | 2026-05-12 18:31:59 +0100 |
| commit | a8addc5aaaecca292b7d2bdc3a848a795329a3b4 (patch) | |
| tree | 6c28cdb7f0644708b0a66fe3062b7cbcbc549547 /src/lib | |
| parent | 56ccdf34d5a820fbdabb3674b2392b9d1e2b1ecf (diff) | |
[api] added device toggling API route
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/helpers/device.ts | 20 |
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) +} |
