signalk-shelly2 1.3.0 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,5 +1,61 @@
1
1
  # signalk-shelly2
2
2
 
3
- This plugins support any Gen 2 or better Shelly Device.
3
+ A Signal K plugin for integrating Shelly Gen 2+ smart devices into your Signal K server. This plugin automatically discovers Shelly devices on your network and provides real-time monitoring and control capabilities.
4
4
 
5
- If you do not see any data you expect, please open an issue. Turn on debug for the plugin, you'll see a message in the log `Initial device status retrieved successfully from...` followed by some json data, please include that data in your issue.
5
+ ## Overview
6
+
7
+ This plugin supports any Gen 2 or better Shelly device, automatically discovering them via mDNS and connecting via WebSocket for real-time data updates. It maps Shelly device components to appropriate Signal K paths, enabling seamless integration with your marine electronics system.
8
+
9
+ ## Features
10
+
11
+ - **Automatic Device Discovery**: Uses mDNS to automatically find Shelly devices on your network
12
+ - **Real-time Updates**: WebSocket connection for instant status updates
13
+ - **Component Mapping**: Maps Shelly components to Signal K electrical and environmental paths
14
+ - **Device Control**: Send PUT messages to control switches, lights, and other controllable components
15
+ - **Reconnection Handling**: Automatic reconnection
16
+
17
+ ## Supported Shelly Component Types
18
+
19
+ The plugin does not support specific Shelly devices, instead it supports the following Shelly component types:
20
+
21
+ ### Electrical Components
22
+ - **`Switch`** - Basic on/off switches and relays → `electrical.switches`
23
+ - **`Light`** - Light controllers → `electrical.switches`
24
+ - **`RGB`** - RGB color lights → `electrical.switches`
25
+ - **`RGBW`** - RGBW color lights with white channel → `electrical.switches`
26
+
27
+ ### Energy Monitoring
28
+ - **`EM`** - Energy meter → `electrical.energymeter`
29
+ - **`EM1`** - Single-phase energy meter → `electrical.energymeter`
30
+ - **`PM1`** - Power meter → `electrical.powermeter`
31
+ - **`voltmeter`** - Voltage measurement → `electrical.voltmeter`
32
+
33
+ ### Environmental Sensors
34
+ - **`Temperature`** - Temperature sensors → `environment`
35
+ - **`Humidity`** - Humidity sensors → `environment`
36
+ - **`Smoke`** - Smoke detectors → `environment.smoke`
37
+
38
+ ### Input/Output
39
+ - **`Input`** - Digital inputs and sensors
40
+ - **`Devicepower`** - Device power and battery status
41
+
42
+ ## Confirmed Device Support
43
+ Please report any devices you've tested so that I can add to the list. Please open a issue.
44
+ - Shelly 1 Gen4 (S4SW-001X16EU)
45
+ - Shelly 1 Gen2
46
+
47
+ ## Troubleshooting
48
+
49
+ If you do not see any data you expect, please open an issue. Turn on debug logging for the plugin, and you'll see a message in the log `Initial device status retrieved successfully from...` followed by JSON data. Please include that data in your issue.
50
+
51
+ ## License
52
+
53
+ Apache-2.0
54
+
55
+ ## Contributing
56
+
57
+ Contributions are welcome! Please feel free to submit issues and pull requests.
58
+
59
+ ## Author
60
+
61
+ Scott Bender (scott@scottbender.net)
package/dist/device.d.ts CHANGED
@@ -47,7 +47,8 @@ export declare class Device {
47
47
  setComponentValue(component: string, idx: number, getKey: string, setKey: string, value: any): Promise<void>;
48
48
  getComponentStatus(component: string, idx: number): Promise<any>;
49
49
  getCapabilities(status: any): void;
50
- private getDevicePath;
50
+ private getMainComponent;
51
+ getDevicePath(key?: string): string;
51
52
  private getComponentProps;
52
53
  private getComponentPath;
53
54
  private getComponentDeltas;
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,mBAAmB,UAa/B,CAAA;AAeD,qBAAa,MAAM;IACjB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAO;IACxB,SAAS,EAAE,OAAO,CAAQ;IAC1B,eAAe,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAK;IAC/C,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAY;IACpC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAO;IAC3B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAO;IAEzB,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,iBAAiB,CAAY;IACrC,OAAO,CAAC,oBAAoB,CAAa;IACzC,OAAO,CAAC,gBAAgB,CAA8B;IACtD,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,gBAAgB,CAAiB;gBAGvC,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,GAAG,EACX,cAAc,EAAE,GAAG,EACnB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM;IAef,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,yBAAyB;IA0B3B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAuDhC,OAAO,CAAC,sBAAsB;IA8C9B,OAAO,CAAC,mBAAmB;IA4D3B,UAAU;IAwBV;;OAEG;IACH,cAAc;IAWd;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;OAEG;IACH,IAAI,oBAAoB,IAAI,MAAM,CAEjC;YAEa,IAAI;IAoCZ,IAAI;IASJ,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,GAAG;IAaN,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAOtE,eAAe,CAAC,MAAM,EAAE,GAAG;IAY3B,OAAO,CAAC,aAAa;IAQrB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,kBAAkB;IAoE1B,OAAO,CAAC,cAAc;IA+BtB,UAAU,CAAC,MAAM,EAAE,GAAG;IA6CtB,OAAO,CAAC,gBAAgB;IAkExB,QAAQ,CAAC,MAAM,EAAE,GAAG;IAkCpB,OAAO,CAAC,qBAAqB;IAwK7B,eAAe,CAAC,MAAM,EAAE,GAAG;IAM3B,YAAY,CACV,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,EAClC,EAAE,EAAE,GAAG,EACP,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO;;;CAiBvC"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAwBA,eAAO,MAAM,mBAAmB,UAc/B,CAAA;AA4BD,qBAAa,MAAM;IACjB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAO;IACxB,SAAS,EAAE,OAAO,CAAQ;IAC1B,eAAe,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAK;IAC/C,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,IAAI,EAAE,MAAM,GAAG,SAAS,CAAY;IACpC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAO;IAC3B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAO;IAEzB,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,GAAG,CAAK;IAChB,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,iBAAiB,CAAY;IACrC,OAAO,CAAC,oBAAoB,CAAa;IACzC,OAAO,CAAC,gBAAgB,CAA8B;IACtD,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,gBAAgB,CAAiB;gBAGvC,GAAG,EAAE,GAAG,EACR,MAAM,EAAE,GAAG,EACX,cAAc,EAAE,GAAG,EACnB,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM;IAef,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,yBAAyB;IA0B3B,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IAwDhC,OAAO,CAAC,sBAAsB;IA8C9B,OAAO,CAAC,mBAAmB;IA4D3B,UAAU;IAwBV;;OAEG;IACH,cAAc;IAWd;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;OAEG;IACH,IAAI,oBAAoB,IAAI,MAAM,CAEjC;YAEa,IAAI;IAoCZ,IAAI;IASJ,iBAAiB,CACrB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,GAAG;IAaN,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAOtE,eAAe,CAAC,MAAM,EAAE,GAAG;IAY3B,OAAO,CAAC,gBAAgB;IASxB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM;IAc1B,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,kBAAkB;IAoE1B,OAAO,CAAC,cAAc;IA+BtB,UAAU,CAAC,MAAM,EAAE,GAAG;IAgDtB,OAAO,CAAC,gBAAgB;IAkExB,QAAQ,CAAC,MAAM,EAAE,GAAG;IAkCpB,OAAO,CAAC,qBAAqB;IAwK7B,eAAe,CAAC,MAAM,EAAE,GAAG;IAM3B,YAAY,CACV,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,GAAG,EACV,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,EAClC,EAAE,EAAE,GAAG,EACP,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO;;;CAiBvC"}
package/dist/device.js CHANGED
@@ -32,8 +32,22 @@ exports.supportedComponents = [
32
32
  'humidity',
33
33
  'voltmeter',
34
34
  'input',
35
- 'smoke'
35
+ 'smoke',
36
+ 'devicepower'
36
37
  ];
38
+ const componentPaths = {
39
+ switch: 'electrical.switches',
40
+ light: 'electrical.switches',
41
+ rgb: 'electrical.switches',
42
+ rgbw: 'electrical.switches',
43
+ em: 'electrical.energymeter',
44
+ em1: 'electrical.energymeter',
45
+ pm1: 'electrical.powermeter',
46
+ temperature: 'environment',
47
+ humidity: 'environment',
48
+ voltmeter: 'electrical.voltmeter',
49
+ smoke: 'environment.smoke'
50
+ };
37
51
  const componentNames = {
38
52
  switch: 'Switch',
39
53
  light: 'Light',
@@ -129,6 +143,7 @@ class Device {
129
143
  this.debug(`Initial device status retrieved successfully from ${this.id}`);
130
144
  this.debug(JSON.stringify(result, null, 2));
131
145
  /*
146
+ result['devicepower:0'] = { battery: { V: 3.7, percent: 50 }, external: { present: true } }
132
147
  result['smoke:0'] = { alarm: false, mute: false }
133
148
  result['smoke:1'] = { alarm: true, mute: true }
134
149
  result['pm1:0'] = { freq: 10 }
@@ -329,12 +344,27 @@ class Device {
329
344
  }
330
345
  });
331
346
  }
347
+ getMainComponent() {
348
+ for (const component of exports.supportedComponents) {
349
+ if (this.componentCounts[component] > 0) {
350
+ return component;
351
+ }
352
+ }
353
+ return null;
354
+ }
332
355
  getDevicePath(key) {
356
+ const component = this.getMainComponent();
357
+ const deviceRoot = component
358
+ ? componentPaths[component]
359
+ : 'electrical.unknown';
333
360
  let name = this.deviceSettings?.devicePath;
334
- if (name === undefined) {
335
- name = this.name ? (0, camelcase_1.default)(this.name) : this.id;
361
+ if (name !== undefined && name.indexOf('.') === -1) {
362
+ name = `${deviceRoot}.${name}`;
336
363
  }
337
- return `electrical.switches.${name}${key ? '.' + key : ''}`;
364
+ else if (name === undefined) {
365
+ name = `${deviceRoot}.${this.name ? (0, camelcase_1.default)(this.name) : this.id}`;
366
+ }
367
+ return `${name}${key ? '.' + key : ''}`;
338
368
  }
339
369
  getComponentProps(component, relay) {
340
370
  return this.deviceSettings
@@ -448,10 +478,12 @@ class Device {
448
478
  value: this.name
449
479
  });
450
480
  }
451
- values.push({
452
- path: this.getDevicePath('model'),
453
- value: this.model
454
- });
481
+ if (this.model) {
482
+ values.push({
483
+ path: this.getDevicePath('model'),
484
+ value: this.model
485
+ });
486
+ }
455
487
  this.sentStaticDeltas = true;
456
488
  }
457
489
  exports.supportedComponents.forEach((component) => {
@@ -658,7 +690,7 @@ class Device {
658
690
  }
659
691
  exports.Device = Device;
660
692
  const temperatureConverter = (value) => {
661
- return value?.tC + 273.15;
693
+ return value + 273.15;
662
694
  };
663
695
  const humidityConverter = (value) => {
664
696
  return value / 100;
@@ -681,7 +713,8 @@ const commonSwitchPaths = [
681
713
  }
682
714
  },
683
715
  {
684
- key: `temperature`,
716
+ path: 'temperature',
717
+ key: `temperature.tC`,
685
718
  converter: temperatureConverter,
686
719
  meta: {
687
720
  units: 'K'
@@ -843,7 +876,8 @@ const componentReadPaths = {
843
876
  temperature: {
844
877
  paths: [
845
878
  {
846
- key: 'temperature',
879
+ key: 'tC',
880
+ path: 'temperature',
847
881
  converter: temperatureConverter,
848
882
  meta: {
849
883
  units: 'K'
@@ -1115,6 +1149,31 @@ const componentReadPaths = {
1115
1149
  key: 'ret_aenergy.minute_ts'
1116
1150
  }
1117
1151
  ]
1152
+ },
1153
+ devicepower: {
1154
+ paths: [
1155
+ {
1156
+ key: 'battery.V',
1157
+ path: 'battery.voltage',
1158
+ meta: {
1159
+ units: 'V'
1160
+ }
1161
+ },
1162
+ {
1163
+ key: 'battery.percent',
1164
+ converter: percentConverter,
1165
+ meta: {
1166
+ units: 'ratio'
1167
+ }
1168
+ },
1169
+ {
1170
+ key: 'external.present',
1171
+ path: 'externalPower',
1172
+ meta: {
1173
+ units: 'bool'
1174
+ }
1175
+ }
1176
+ ]
1118
1177
  }
1119
1178
  };
1120
1179
  function deepGet(obj, path) {
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,268 @@
1
+ import { Device } from './device';
1
2
  export default function (app: any): Plugin;
3
+ export declare const mockDevices: (app: any, plugin: any) => ({
4
+ device: Device;
5
+ status: {
6
+ 'devicepower:0': {
7
+ battery: {
8
+ V: number;
9
+ percent: number;
10
+ };
11
+ external: {
12
+ present: boolean;
13
+ };
14
+ };
15
+ 'smoke:0': {
16
+ alarm: boolean;
17
+ mute: boolean;
18
+ };
19
+ 'smoke:1'?: undefined;
20
+ 'pm1:0'?: undefined;
21
+ 'temperature:0'?: undefined;
22
+ 'humidity:0'?: undefined;
23
+ 'em1:0'?: undefined;
24
+ 'em:0'?: undefined;
25
+ 'rgb:0'?: undefined;
26
+ 'rgbw:0'?: undefined;
27
+ 'rgbw:1'?: undefined;
28
+ 'light:0'?: undefined;
29
+ 'light:1'?: undefined;
30
+ };
31
+ } | {
32
+ device: Device;
33
+ status: {
34
+ 'devicepower:0': {
35
+ battery: {
36
+ V: number;
37
+ percent: number;
38
+ };
39
+ external: {
40
+ present: boolean;
41
+ };
42
+ };
43
+ 'smoke:0': {
44
+ alarm: boolean;
45
+ mute: boolean;
46
+ };
47
+ 'smoke:1': {
48
+ alarm: boolean;
49
+ mute: boolean;
50
+ };
51
+ 'pm1:0'?: undefined;
52
+ 'temperature:0'?: undefined;
53
+ 'humidity:0'?: undefined;
54
+ 'em1:0'?: undefined;
55
+ 'em:0'?: undefined;
56
+ 'rgb:0'?: undefined;
57
+ 'rgbw:0'?: undefined;
58
+ 'rgbw:1'?: undefined;
59
+ 'light:0'?: undefined;
60
+ 'light:1'?: undefined;
61
+ };
62
+ } | {
63
+ device: Device;
64
+ status: {
65
+ 'pm1:0': {
66
+ freq: number;
67
+ voltage: number;
68
+ current: number;
69
+ apower: number;
70
+ aprtpower: number;
71
+ pf: number;
72
+ aenergy: {
73
+ total: number;
74
+ by_minute: number;
75
+ minute_ts: number;
76
+ };
77
+ ret_aenergy: {
78
+ total: number;
79
+ by_minute: number;
80
+ minute_ts: number;
81
+ };
82
+ };
83
+ 'devicepower:0'?: undefined;
84
+ 'smoke:0'?: undefined;
85
+ 'smoke:1'?: undefined;
86
+ 'temperature:0'?: undefined;
87
+ 'humidity:0'?: undefined;
88
+ 'em1:0'?: undefined;
89
+ 'em:0'?: undefined;
90
+ 'rgb:0'?: undefined;
91
+ 'rgbw:0'?: undefined;
92
+ 'rgbw:1'?: undefined;
93
+ 'light:0'?: undefined;
94
+ 'light:1'?: undefined;
95
+ };
96
+ } | {
97
+ device: Device;
98
+ status: {
99
+ 'temperature:0': {
100
+ tC: number;
101
+ };
102
+ 'humidity:0': {
103
+ rh: number;
104
+ };
105
+ 'devicepower:0'?: undefined;
106
+ 'smoke:0'?: undefined;
107
+ 'smoke:1'?: undefined;
108
+ 'pm1:0'?: undefined;
109
+ 'em1:0'?: undefined;
110
+ 'em:0'?: undefined;
111
+ 'rgb:0'?: undefined;
112
+ 'rgbw:0'?: undefined;
113
+ 'rgbw:1'?: undefined;
114
+ 'light:0'?: undefined;
115
+ 'light:1'?: undefined;
116
+ };
117
+ } | {
118
+ device: Device;
119
+ status: {
120
+ 'em1:0': {
121
+ freq: number;
122
+ voltage: number;
123
+ current: number;
124
+ act_power: number;
125
+ aprt_power: number;
126
+ pf: number;
127
+ };
128
+ 'devicepower:0'?: undefined;
129
+ 'smoke:0'?: undefined;
130
+ 'smoke:1'?: undefined;
131
+ 'pm1:0'?: undefined;
132
+ 'temperature:0'?: undefined;
133
+ 'humidity:0'?: undefined;
134
+ 'em:0'?: undefined;
135
+ 'rgb:0'?: undefined;
136
+ 'rgbw:0'?: undefined;
137
+ 'rgbw:1'?: undefined;
138
+ 'light:0'?: undefined;
139
+ 'light:1'?: undefined;
140
+ };
141
+ } | {
142
+ device: Device;
143
+ status: {
144
+ 'em:0': {
145
+ a_current: number;
146
+ a_voltage: number;
147
+ a_act_power: number;
148
+ a_aprt_power: number;
149
+ a_pf: number;
150
+ a_freq: number;
151
+ b_current: number;
152
+ b_voltage: number;
153
+ b_act_power: number;
154
+ b_aprt_power: number;
155
+ b_pf: number;
156
+ b_freq: number;
157
+ c_current: number;
158
+ c_voltage: number;
159
+ c_act_power: number;
160
+ c_aprt_power: number;
161
+ c_pf: number;
162
+ c_freq: number;
163
+ n_current: number;
164
+ n_voltage: number;
165
+ n_act_power: number;
166
+ n_aprt_power: number;
167
+ n_pf: number;
168
+ n_freq: number;
169
+ total_current: number;
170
+ total_act_power: number;
171
+ total_aprt_power: number;
172
+ user_calibrated_phase: string[];
173
+ };
174
+ 'devicepower:0'?: undefined;
175
+ 'smoke:0'?: undefined;
176
+ 'smoke:1'?: undefined;
177
+ 'pm1:0'?: undefined;
178
+ 'temperature:0'?: undefined;
179
+ 'humidity:0'?: undefined;
180
+ 'em1:0'?: undefined;
181
+ 'rgb:0'?: undefined;
182
+ 'rgbw:0'?: undefined;
183
+ 'rgbw:1'?: undefined;
184
+ 'light:0'?: undefined;
185
+ 'light:1'?: undefined;
186
+ };
187
+ } | {
188
+ device: Device;
189
+ status: {
190
+ 'rgb:0': {
191
+ output: boolean;
192
+ rgb: number[];
193
+ brightness: number;
194
+ white: number;
195
+ };
196
+ 'devicepower:0'?: undefined;
197
+ 'smoke:0'?: undefined;
198
+ 'smoke:1'?: undefined;
199
+ 'pm1:0'?: undefined;
200
+ 'temperature:0'?: undefined;
201
+ 'humidity:0'?: undefined;
202
+ 'em1:0'?: undefined;
203
+ 'em:0'?: undefined;
204
+ 'rgbw:0'?: undefined;
205
+ 'rgbw:1'?: undefined;
206
+ 'light:0'?: undefined;
207
+ 'light:1'?: undefined;
208
+ };
209
+ } | {
210
+ device: Device;
211
+ status: {
212
+ 'rgbw:0': {
213
+ output: boolean;
214
+ rgb: number[];
215
+ brightness: number;
216
+ white: number;
217
+ };
218
+ 'rgbw:1': {
219
+ output: boolean;
220
+ rgb: number[];
221
+ brightness: number;
222
+ white: number;
223
+ };
224
+ 'devicepower:0'?: undefined;
225
+ 'smoke:0'?: undefined;
226
+ 'smoke:1'?: undefined;
227
+ 'pm1:0'?: undefined;
228
+ 'temperature:0'?: undefined;
229
+ 'humidity:0'?: undefined;
230
+ 'em1:0'?: undefined;
231
+ 'em:0'?: undefined;
232
+ 'rgb:0'?: undefined;
233
+ 'light:0'?: undefined;
234
+ 'light:1'?: undefined;
235
+ };
236
+ } | {
237
+ device: Device;
238
+ status: {
239
+ 'light:0': {
240
+ output: boolean;
241
+ brightness: number;
242
+ pf: number;
243
+ freq: number;
244
+ ret_aenergy: {
245
+ total: number;
246
+ by_minute: number;
247
+ };
248
+ };
249
+ 'light:1': {
250
+ output: boolean;
251
+ brightness: number;
252
+ };
253
+ 'devicepower:0'?: undefined;
254
+ 'smoke:0'?: undefined;
255
+ 'smoke:1'?: undefined;
256
+ 'pm1:0'?: undefined;
257
+ 'temperature:0'?: undefined;
258
+ 'humidity:0'?: undefined;
259
+ 'em1:0'?: undefined;
260
+ 'em:0'?: undefined;
261
+ 'rgb:0'?: undefined;
262
+ 'rgbw:0'?: undefined;
263
+ 'rgbw:1'?: undefined;
264
+ };
265
+ })[];
2
266
  interface Plugin {
3
267
  start: (app: any) => void;
4
268
  stop: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAuBA,MAAM,CAAC,OAAO,WAAW,GAAG,EAAE,GAAG,UAiUhC;AAED,UAAU,MAAM;IACd,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;IACzB,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,GAAG,CAAA;IACX,QAAQ,EAAE,GAAG,CAAA;CACd"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,MAAM,EAAuB,MAAM,UAAU,CAAA;AAMtD,MAAM,CAAC,OAAO,WAAW,GAAG,EAAE,GAAG,UAiVhC;AAED,eAAO,MAAM,WAAW,GAAI,KAAK,GAAG,EAAE,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA6LhD,CAAA;AAED,UAAU,MAAM;IACd,KAAK,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAA;IACzB,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,GAAG,CAAA;IACX,QAAQ,EAAE,GAAG,CAAA;CACd"}