signalk-shelly2 1.7.1 → 1.7.3

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
@@ -52,6 +52,7 @@ Please report any devices you've tested so that I can add to the list. Please op
52
52
 
53
53
  - Shelly 1 Gen4 (S4SW-001X16EU)
54
54
  - Shelly Plus 1 Gen2 (SNSW-001X16EU, SNSW-001X15UL)
55
+ - Shelly Plus RGBW Gen2 (SNDC-0D4P10WW)
55
56
 
56
57
  ## Troubleshooting
57
58
 
@@ -95,7 +95,7 @@ class Component {
95
95
  [setKey]: value
96
96
  });
97
97
  const status = await this.getStatus();
98
- if (status[getKey] !== value) {
98
+ if (JSON.stringify(status[getKey]) != JSON.stringify(value)) {
99
99
  throw new Error(`Failed to set ${this.componentName} ${this.componentId} to ${value}`);
100
100
  }
101
101
  this.device.sendDeltas({
@@ -1 +1 @@
1
- {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../src/components/Component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../src/components/Component.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RGB.d.ts","sourceRoot":"","sources":["../../src/components/RGB.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAgB,MAAM,qBAAqB,CAAA;AAE9E,qBAAa,GAAI,SAAQ,KAAK;gBAE1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,OAAO;IAWnB,cAAc,CAAC,MAAM,EAAE,GAAG,GAAG,SAAS,EAAE;IAgCxC,OAAO,IAAI,IAAI,EAAE;IAiCjB,QAAQ,IAAI,aAAa,EAAE;IAY3B,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI;CA0EnC"}
1
+ {"version":3,"file":"RGB.d.ts","sourceRoot":"","sources":["../../src/components/RGB.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAgB,MAAM,qBAAqB,CAAA;AAY9E,qBAAa,GAAI,SAAQ,KAAK;gBAE1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,OAAO;IAWnB,cAAc,CAAC,MAAM,EAAE,GAAG,GAAG,SAAS,EAAE;IAiCxC,OAAO,IAAI,IAAI,EAAE;IAiCjB,QAAQ,IAAI,aAAa,EAAE;IAY3B,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI;CA4CnC"}
@@ -16,6 +16,14 @@
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.RGB = void 0;
18
18
  const Light_1 = require("./Light");
19
+ const success = {
20
+ state: 'COMPLETED',
21
+ statusCode: 200
22
+ };
23
+ const error = {
24
+ state: 'COMPLETED',
25
+ statusCode: 400
26
+ };
19
27
  class RGB extends Light_1.Light {
20
28
  constructor(device, componentId, componentName, apiName, skPath, flatten) {
21
29
  super(device, componentId, componentName || 'rgb', apiName || 'RGB', skPath || 'electrical.switches', flatten);
@@ -33,7 +41,8 @@ class RGB extends Light_1.Light {
33
41
  return (rgb[0] == preset.red &&
34
42
  rgb[1] == preset.green &&
35
43
  rgb[2] == preset.blue &&
36
- (preset.white === undefined || rgb[3] == preset.white) &&
44
+ (preset.white === undefined ||
45
+ componentStatus.white == preset.white) &&
37
46
  (preset.bright === 0 ||
38
47
  componentStatus.brightness == preset.bright));
39
48
  });
@@ -90,55 +99,22 @@ class RGB extends Light_1.Light {
90
99
  app.registerPutHandler('vessels.self', this.getComponentPath('preset'), (context, path, value, cb) => {
91
100
  const preset = this.device.deviceSettings.presets.find((preset) => preset.name == value);
92
101
  if (!preset || value === 'Unknown') {
93
- return {
94
- state: 'COMPLETED',
95
- statusCode: 400,
96
- message: `invalid preset ${value}`
97
- };
102
+ return { ...error, message: `invalid preset ${value}` };
98
103
  }
99
104
  const rgb = [preset.red, preset.green, preset.blue];
105
+ const promises = [this.setValue('rgb', 'rgb', rgb)];
100
106
  if (preset.white !== undefined) {
101
- rgb.push(preset.white);
107
+ promises.push(this.setValue('white', 'white', preset.white));
102
108
  }
103
- this.device
104
- .send(`${this.apiName}.Set`, {
105
- id: this.componentId,
106
- rgb
107
- })
109
+ if (preset.bright !== undefined && preset.bright !== 0) {
110
+ promises.push(this.setValue('brightness', 'brightness', preset.bright));
111
+ }
112
+ Promise.all(promises)
108
113
  .then(() => {
109
- if (preset.bright === undefined || preset.bright === 0) {
110
- cb({
111
- state: 'COMPLETED',
112
- statusCode: 200
113
- });
114
- }
115
- else {
116
- this.device
117
- .send(`${this.apiName}.Set`, {
118
- id: this.componentId,
119
- brightness: preset.bright
120
- })
121
- .then(() => {
122
- cb({
123
- state: 'COMPLETED',
124
- statusCode: 200
125
- });
126
- })
127
- .catch((err) => {
128
- cb({
129
- state: 'COMPLETED',
130
- statusCode: 400,
131
- message: err.message
132
- });
133
- });
134
- }
114
+ cb(success);
135
115
  })
136
116
  .catch((err) => {
137
- cb({
138
- state: 'COMPLETED',
139
- statusCode: 400,
140
- message: err.message
141
- });
117
+ cb({ ...error, message: err.message });
142
118
  });
143
119
  return { state: 'PENDING' };
144
120
  });
@@ -1 +1 @@
1
- {"version":3,"file":"RGB.js","sourceRoot":"","sources":["../../src/components/RGB.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;AAGH,mCAA+B;AAI/B,MAAa,GAAI,SAAQ,aAAK;IAC5B,YACE,MAAc,EACd,WAAmB,EACnB,aAAsB,EACtB,OAAgB,EAChB,MAAe,EACf,OAAiB;QAEjB,KAAK,CACH,MAAM,EACN,WAAW,EACX,aAAa,IAAI,KAAK,EACtB,OAAO,IAAI,KAAK,EAChB,MAAM,IAAI,qBAAqB,EAC/B,OAAO,CACR,CAAA;IACH,CAAC;IACD,cAAc,CAAC,MAAW;QACxB,MAAM,MAAM,GAAgB,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;QACxD,IACE,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO;YACnC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAC7C,CAAC;YACD,IAAI,MAAM,GAAG,IAAI,CAAA;YACjB,MAAM,eAAe,GACnB,MAAM,CAAC,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC,CAAA;YACrD,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,GAAG,GAAa,eAAe,CAAC,GAAG,CAAA;gBACzC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;oBACtB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAW,EAAE,EAAE;wBAC/D,OAAO,CACL,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,GAAG;4BACpB,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK;4BACtB,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI;4BACrB,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC;4BACtD,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gCAClB,eAAe,CAAC,UAAU,IAAI,MAAM,CAAC,MAAM,CAAC,CAC/C,CAAA;oBACH,CAAC,CAAC,CAAA;gBACJ,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;oBACrC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;iBACxC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC;IAED,OAAO;QACL,MAAM,IAAI,GAAW,KAAK,CAAC,OAAO,EAAE,CAAA;QACpC,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAClD,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,WAAW,CACjB,CAAA;QACD,IACE,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO;YACnC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAC7C,CAAC;YACD,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC;gBACrC,KAAK,EAAE;oBACL,WAAW,EAAE,cAAc,EAAE,WAAW;oBACxC,cAAc,EAAE;wBACd,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAW,EAAE,EAAE;4BACxD,OAAO;gCACL,KAAK,EAAE,MAAM,CAAC,IAAI;gCAClB,KAAK,EAAE,MAAM,CAAC,IAAI;6BACnB,CAAA;wBACH,CAAC,CAAC;qBACH;oBACD,IAAI,EAAE;wBACJ,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CACvC,CAAC,MAAW,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAC7B;qBACF;iBACK;aACT,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,QAAQ;QACN,MAAM,KAAK,GAAoB;YAC7B;gBACE,GAAG,EAAE,KAAK;gBACV,UAAU,EAAE,CAAC,MAAc,EAAE,EAAU,EAAE,KAAU,EAAiB,EAAE;oBACpE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;gBAC3C,CAAC;aACF;SACF,CAAA;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,QAAQ,EAAE,EAAE,GAAG,KAAK,CAAC,CAAA;IACxC,CAAC;IAED,YAAY,CAAC,GAAc;QACzB,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;QACvB,IACE,IAAI,CAAC,MAAM,CAAC,cAAc;YAC1B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO;YAClC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAC7C,CAAC;YACD,GAAG,CAAC,kBAAkB,CACpB,cAAc,EACd,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAC/B,CACE,OAAe,EACf,IAAY,EACZ,KAAU,EACV,EAAkC,EACpB,EAAE;gBAChB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,cAAe,CAAC,OAAO,CAAC,IAAI,CACrD,CAAC,MAAW,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,KAAK,CACtC,CAAA;gBACD,IAAI,CAAC,MAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACnC,OAAO;wBACL,KAAK,EAAE,WAAW;wBAClB,UAAU,EAAE,GAAG;wBACf,OAAO,EAAE,kBAAkB,KAAK,EAAE;qBACnC,CAAA;gBACH,CAAC;gBACD,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;gBACnD,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBAC/B,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;gBACxB,CAAC;gBACD,IAAI,CAAC,MAAM;qBACR,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,MAAM,EAAE;oBAC3B,EAAE,EAAE,IAAI,CAAC,WAAW;oBACpB,GAAG;iBACJ,CAAC;qBACD,IAAI,CAAC,GAAG,EAAE;oBACT,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACvD,EAAE,CAAC;4BACD,KAAK,EAAE,WAAW;4BAClB,UAAU,EAAE,GAAG;yBAChB,CAAC,CAAA;oBACJ,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,MAAM;6BACR,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,MAAM,EAAE;4BAC3B,EAAE,EAAE,IAAI,CAAC,WAAW;4BACpB,UAAU,EAAE,MAAM,CAAC,MAAM;yBAC1B,CAAC;6BACD,IAAI,CAAC,GAAG,EAAE;4BACT,EAAE,CAAC;gCACD,KAAK,EAAE,WAAW;gCAClB,UAAU,EAAE,GAAG;6BAChB,CAAC,CAAA;wBACJ,CAAC,CAAC;6BACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;4BACb,EAAE,CAAC;gCACD,KAAK,EAAE,WAAW;gCAClB,UAAU,EAAE,GAAG;gCACf,OAAO,EAAE,GAAG,CAAC,OAAO;6BACrB,CAAC,CAAA;wBACJ,CAAC,CAAC,CAAA;oBACN,CAAC;gBACH,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,EAAE,CAAC;wBACD,KAAK,EAAE,WAAW;wBAClB,UAAU,EAAE,GAAG;wBACf,OAAO,EAAE,GAAG,CAAC,OAAO;qBACrB,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBACJ,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAA;YAC7B,CAAC,CACF,CAAA;QACH,CAAC;IACH,CAAC;CACF;AAzKD,kBAyKC"}
1
+ {"version":3,"file":"RGB.js","sourceRoot":"","sources":["../../src/components/RGB.ts"],"names":[],"mappings":"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"}
package/dist/device.d.ts CHANGED
@@ -19,6 +19,7 @@ export declare class Device {
19
19
  };
20
20
  deviceSettings: DeviceSettings | undefined;
21
21
  authFailed: boolean;
22
+ triedAuth: boolean;
22
23
  private ws;
23
24
  private next_id;
24
25
  private pendingRequests;
@@ -35,7 +36,8 @@ export declare class Device {
35
36
  constructor(app: ServerAPI, plugin: Plugin, deviceSettings: any, id: string, address: string, hostname?: string, name?: string);
36
37
  private debug;
37
38
  private createWebSocketConnection;
38
- connect(): Promise<Device>;
39
+ connect(): Promise<void>;
40
+ private setupConnection;
39
41
  private setupAuthMessage;
40
42
  private setupDevice;
41
43
  private setupWebSocketHandlers;
@@ -1 +1 @@
1
- {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAa,MAAM,qBAAqB,CAAA;AACxE,OAAO,EACL,SAAS,EAGV,MAAM,cAAc,CAAA;AAUrB,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB,CAAA;AAED,qBAAa,MAAM;IACjB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAO;IACxB,SAAS,EAAE,OAAO,CAAQ;IAC1B,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;IACzB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,CAAA;KAAE,CAAK;IAC/C,cAAc,EAAE,cAAc,GAAG,SAAS,CAAA;IAC1C,UAAU,EAAE,OAAO,CAAO;IAE1B,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,GAAG,CAAW;IACtB,OAAO,CAAC,MAAM,CAAQ;IACtB,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;IACzC,OAAO,CAAC,WAAW,CAAiB;gBAGlC,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,MAAM,EACd,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;IA2ChC,OAAO,CAAC,gBAAgB;YA6BV,WAAW;IASzB,OAAO,CAAC,sBAAsB;IA8C9B,OAAO,CAAC,mBAAmB;IAmE3B,UAAU;IAwBV;;OAEG;IACH,cAAc;IAWd;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;OAEG;IACH,IAAI,oBAAoB,IAAI,MAAM,CAEjC;IAEK,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,GAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAsCpD,IAAI;IASV,eAAe,CAAC,MAAM,EAAE,GAAG;IAgB3B,gBAAgB,IAAI,SAAS,GAAG,IAAI;IASpC,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAajC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAMlD,UAAU,CAAC,MAAM,EAAE,GAAG;IAyDtB,QAAQ;IA6CR,eAAe;CAgBhB"}
1
+ {"version":3,"file":"device.d.ts","sourceRoot":"","sources":["../src/device.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAa,MAAM,qBAAqB,CAAA;AACxE,OAAO,EACL,SAAS,EAGV,MAAM,cAAc,CAAA;AAUrB,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CACnB,CAAA;AAED,qBAAa,MAAM;IACjB,EAAE,EAAE,MAAM,GAAG,IAAI,CAAO;IACxB,SAAS,EAAE,OAAO,CAAQ;IAC1B,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;IACzB,UAAU,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,CAAA;KAAE,CAAK;IAC/C,cAAc,EAAE,cAAc,GAAG,SAAS,CAAA;IAC1C,UAAU,EAAE,OAAO,CAAO;IAC1B,SAAS,EAAE,OAAO,CAAQ;IAE1B,OAAO,CAAC,EAAE,CAAyB;IACnC,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,eAAe,CAAwC;IAC/D,OAAO,CAAC,QAAQ,CAAiB;IACjC,OAAO,CAAC,GAAG,CAAW;IACtB,OAAO,CAAC,MAAM,CAAQ;IACtB,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;IACzC,OAAO,CAAC,WAAW,CAAiB;gBAGlC,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,MAAM,EACd,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;YAUC,eAAe;IA0D7B,OAAO,CAAC,gBAAgB;YA6BV,WAAW;IASzB,OAAO,CAAC,sBAAsB;IAqD9B,OAAO,CAAC,mBAAmB;IAyD3B,UAAU;IAwBV;;OAEG;IACH,cAAc;IAWd;;OAEG;IACH,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED;;OAEG;IACH,IAAI,oBAAoB,IAAI,MAAM,CAEjC;IAEK,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,GAAQ,GAAG,OAAO,CAAC,GAAG,CAAC;IAsCpD,IAAI;IASV,eAAe,CAAC,MAAM,EAAE,GAAG;IAiB3B,gBAAgB,IAAI,SAAS,GAAG,IAAI;IASpC,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAajC,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAMlD,UAAU,CAAC,MAAM,EAAE,GAAG;IAyDtB,QAAQ;IA6CR,eAAe;CAgBhB"}
package/dist/device.js CHANGED
@@ -33,6 +33,7 @@ class Device {
33
33
  components = {};
34
34
  deviceSettings;
35
35
  authFailed = true;
36
+ triedAuth = false;
36
37
  ws = null;
37
38
  next_id = 1;
38
39
  pendingRequests = {};
@@ -87,37 +88,57 @@ class Device {
87
88
  async connect() {
88
89
  this.shouldReconnect = true;
89
90
  this.reconnectAttempts = 0;
90
- return new Promise(async (resolve, reject) => {
91
- try {
92
- this.debug(`Connecting to device at ${this.address}`);
93
- this.ws = await this.createWebSocketConnection();
94
- this.setupWebSocketHandlers();
95
- // Reset reconnection state on successful connection
96
- this.reconnectAttempts = 0;
97
- this.isReconnecting = false;
98
- const deviceInfo = await this.send('Shelly.GetDeviceInfo');
99
- this.id = deviceInfo.id;
100
- this.name = deviceInfo.name || null;
101
- this.model = deviceInfo.model;
102
- this.gen = deviceInfo.gen;
103
- this.debug(`Initial device information retrieved successfully from ${this.address}: ${this.id} (${this.model}, Gen ${this.gen})`);
104
- this.debug(JSON.stringify(deviceInfo, null, 2));
105
- await this.setupDevice();
106
- this.authFailed = false;
107
- this.connected = true;
108
- resolve(this);
109
- }
110
- catch (error) {
91
+ this.isReconnecting = false;
92
+ this.debug(`Connecting to device at ${this.address}`);
93
+ this.ws = await this.createWebSocketConnection();
94
+ return this.setupConnection();
95
+ }
96
+ async setupConnection() {
97
+ try {
98
+ this.setupWebSocketHandlers();
99
+ const deviceInfo = await this.send('Shelly.GetDeviceInfo');
100
+ this.id = deviceInfo.id;
101
+ this.name = deviceInfo.name || null;
102
+ this.model = deviceInfo.model;
103
+ this.gen = deviceInfo.gen;
104
+ this.debug(`Initial device information retrieved successfully from ${this.address}: ${this.id} (${this.model}, Gen ${this.gen})`);
105
+ this.debug(JSON.stringify(deviceInfo, null, 2));
106
+ await this.setupDevice();
107
+ this.authFailed = false;
108
+ this.connected = true;
109
+ }
110
+ catch (error) {
111
+ if (error instanceof SendError) {
111
112
  if (error.code === 401 && this.deviceSettings?.password) {
113
+ this.debug(`Authentication required for device ${this.id} at ${this.address}, retrying with credentials`);
112
114
  this.setupAuthMessage(JSON.parse(error.message));
113
- this.attemptReconnection();
115
+ this.triedAuth = true;
116
+ try {
117
+ await this.setupDevice();
118
+ this.authFailed = false;
119
+ this.connected = true;
120
+ this.debug(`Successfully authenticated with device ${this.id} at ${this.address}`);
121
+ return;
122
+ }
123
+ catch (err) {
124
+ this.authFailed = true;
125
+ this.app.error(`Failed to authenticate with device ${this.id} ${this.address}`);
126
+ this.disconnect();
127
+ throw err;
128
+ }
129
+ return;
114
130
  }
115
- else {
116
- this.app.error(`Failed to connect to device ${this.address}: ${error}`);
117
- reject(error);
131
+ else if (error.code === 401) {
132
+ this.authFailed = true;
133
+ this.triedAuth = true;
134
+ this.app.error(`Failed to authenticate with device ${this.id} ${this.address}: no password set`);
135
+ this.disconnect();
136
+ throw error;
118
137
  }
119
138
  }
120
- });
139
+ this.app.error(`Failed to connect to device ${this.address}: ${error}`);
140
+ throw error;
141
+ }
121
142
  }
122
143
  setupAuthMessage(errorMessage) {
123
144
  const hash = (parts) => {
@@ -167,7 +188,7 @@ class Device {
167
188
  if (pendingRequest) {
168
189
  clearTimeout(pendingRequest.timeout);
169
190
  if (parsedMessage.error) {
170
- pendingRequest.reject(parsedMessage.error);
191
+ pendingRequest.reject(new SendError(parsedMessage.error.message, parsedMessage.error.code));
171
192
  }
172
193
  else {
173
194
  pendingRequest.resolve(parsedMessage.result);
@@ -180,6 +201,7 @@ class Device {
180
201
  this.app.error(`WebSocket error for device ${this.id || this.address}: ${error}`);
181
202
  if (this.connected) {
182
203
  this.connected = false;
204
+ this.authMessage = undefined;
183
205
  this.attemptReconnection();
184
206
  }
185
207
  });
@@ -187,6 +209,7 @@ class Device {
187
209
  this.debug(`WebSocket connection closed for device ${this.id || this.address}. Code: ${code}, Reason: ${reason}`);
188
210
  if (this.connected) {
189
211
  this.connected = false;
212
+ this.authMessage = undefined;
190
213
  this.attemptReconnection();
191
214
  }
192
215
  });
@@ -209,26 +232,15 @@ class Device {
209
232
  try {
210
233
  this.debug(`Reconnecting to device ${this.id || this.address}...`);
211
234
  this.ws = await this.createWebSocketConnection();
212
- this.setupWebSocketHandlers();
213
- await this.setupDevice();
214
- this.authFailed = false;
215
- this.connected = true;
216
- this.reconnectAttempts = 0;
217
- this.isReconnecting = false;
235
+ await this.setupConnection();
218
236
  this.debug(`Successfully reconnected to device ${this.id || this.address}`);
219
237
  }
220
238
  catch (error) {
221
- if (error.code === 401) {
222
- this.authFailed = true;
223
- this.app.error(`Failed to authenticate with device ${this.address}`);
224
- return;
225
- }
226
- else {
227
- this.debug(`Reconnection attempt ${this.reconnectAttempts} failed for device ${this.id || this.address}: ${error}`);
228
- this.isReconnecting = false;
229
- // Schedule next reconnection attempt
230
- this.attemptReconnection();
231
- }
239
+ this.debug(`Reconnection attempt ${this.reconnectAttempts} failed for device ${this.id || this.address}: ${error}`);
240
+ this.authMessage = undefined;
241
+ this.isReconnecting = false;
242
+ // Schedule next reconnection attempt
243
+ this.attemptReconnection();
232
244
  }
233
245
  }, delay);
234
246
  }
@@ -316,6 +328,7 @@ class Device {
316
328
  this.sendDeltas(status);
317
329
  }
318
330
  getCapabilities(status) {
331
+ this.components = {};
319
332
  (0, components_1.getSupportedComponents)().forEach((name) => {
320
333
  for (let i = 0; i < 10; i++) {
321
334
  if (status[`${name}:${i}`]) {
@@ -446,4 +459,11 @@ class Device {
446
459
  }
447
460
  }
448
461
  exports.Device = Device;
462
+ class SendError extends Error {
463
+ code;
464
+ constructor(message, code) {
465
+ super(message);
466
+ this.code = code;
467
+ }
468
+ }
449
469
  //# sourceMappingURL=device.js.map
@@ -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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"}