diff --git a/README.md b/README.md index 51231f56..67534c81 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,7 @@ For the first generation, see [node-shellies](https://github.com/alexryd/node-sh * [Shelly Plus 2 PM](https://shelly-api-docs.shelly.cloud/gen2/Devices/ShellyPlus2PM) * [Shelly Plus I4](https://shelly-api-docs.shelly.cloud/gen2/Devices/ShellyPlusI4) * [Shelly Plus Plug US](https://shelly-api-docs.shelly.cloud/gen2/Devices/ShellyPlugUS) +* [Shelly Plus WallDimmer](https://shelly-api-docs.shelly.cloud/gen2/Devices/ShellyPlusWallDimmer) * [Shelly Plus H&T](https://shelly-api-docs.shelly.cloud/gen2/Devices/ShellyPlusHT) 1 * [Shelly Pro 1](https://shelly-api-docs.shelly.cloud/gen2/Devices/ShellyPro1) * [Shelly Pro 1 PM](https://shelly-api-docs.shelly.cloud/gen2/Devices/ShellyPro1PM) diff --git a/src/devices/index.ts b/src/devices/index.ts index 68a2fa10..64c74c7b 100644 --- a/src/devices/index.ts +++ b/src/devices/index.ts @@ -6,6 +6,7 @@ export * from './shelly-plus-2-pm'; export * from './shelly-plus-ht'; export * from './shelly-plus-i4'; export * from './shelly-plus-plug-us'; +export * from './shelly-plus-wd'; export * from './shelly-pro-1'; export * from './shelly-pro-1-pm'; export * from './shelly-pro-2'; diff --git a/src/devices/shelly-plus-wd.ts b/src/devices/shelly-plus-wd.ts new file mode 100644 index 00000000..4abd8bdb --- /dev/null +++ b/src/devices/shelly-plus-wd.ts @@ -0,0 +1,38 @@ +import { component, Device } from './base'; +import { + BluetoothLowEnergy, + Cloud, + Mqtt, + OutboundWebSocket, + Script, + Light, + WiFi, +} from '../components'; + +export class ShellyPlusWallDimmer extends Device { + static readonly model: string = 'SNDM-0013US'; + static readonly modelName: string = 'Shelly Plus WallDimmer'; + + @component + readonly wifi = new WiFi(this); + + @component + readonly bluetoothLowEnergy = new BluetoothLowEnergy(this); + + @component + readonly cloud = new Cloud(this); + + @component + readonly mqtt = new Mqtt(this); + + @component + readonly outboundWebSocket = new OutboundWebSocket(this); + + @component + readonly light0 = new Light(this, 0); + + @component + readonly script = new Script(this); +} + +Device.registerClass(ShellyPlusWallDimmer);