homebridge-midea-platform 0.2.1 → 0.3.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.
Files changed (77) hide show
  1. package/.eslintignore +3 -0
  2. package/.husky/pre-commit +4 -0
  3. package/.prettierrc +18 -0
  4. package/README.md +5 -0
  5. package/config.schema.json +48 -0
  6. package/dist/accessory/AccessoryFactory.d.ts +2 -1
  7. package/dist/accessory/AccessoryFactory.d.ts.map +1 -1
  8. package/dist/accessory/AccessoryFactory.js +3 -0
  9. package/dist/accessory/AccessoryFactory.js.map +1 -1
  10. package/dist/accessory/AirConditionerAccessory.d.ts +23 -0
  11. package/dist/accessory/AirConditionerAccessory.d.ts.map +1 -1
  12. package/dist/accessory/AirConditionerAccessory.js +122 -36
  13. package/dist/accessory/AirConditionerAccessory.js.map +1 -1
  14. package/dist/accessory/BaseAccessory.d.ts.map +1 -1
  15. package/dist/accessory/BaseAccessory.js +2 -16
  16. package/dist/accessory/BaseAccessory.js.map +1 -1
  17. package/dist/accessory/DehumidifierAccessory.d.ts +41 -0
  18. package/dist/accessory/DehumidifierAccessory.d.ts.map +1 -0
  19. package/dist/accessory/DehumidifierAccessory.js +294 -0
  20. package/dist/accessory/DehumidifierAccessory.js.map +1 -0
  21. package/dist/core/MideaCloud.d.ts +11 -0
  22. package/dist/core/MideaCloud.d.ts.map +1 -1
  23. package/dist/core/MideaCloud.js +106 -65
  24. package/dist/core/MideaCloud.js.map +1 -1
  25. package/dist/core/MideaConstants.d.ts +2 -1
  26. package/dist/core/MideaConstants.d.ts.map +1 -1
  27. package/dist/core/MideaConstants.js +12 -16
  28. package/dist/core/MideaConstants.js.map +1 -1
  29. package/dist/core/MideaDevice.d.ts +26 -8
  30. package/dist/core/MideaDevice.d.ts.map +1 -1
  31. package/dist/core/MideaDevice.js +130 -28
  32. package/dist/core/MideaDevice.js.map +1 -1
  33. package/dist/core/MideaDiscover.d.ts +21 -1
  34. package/dist/core/MideaDiscover.d.ts.map +1 -1
  35. package/dist/core/MideaDiscover.js +98 -20
  36. package/dist/core/MideaDiscover.js.map +1 -1
  37. package/dist/core/MideaMessage.d.ts.map +1 -1
  38. package/dist/core/MideaMessage.js +28 -11
  39. package/dist/core/MideaMessage.js.map +1 -1
  40. package/dist/core/MideaPacketBuilder.d.ts.map +1 -1
  41. package/dist/core/MideaPacketBuilder.js +15 -5
  42. package/dist/core/MideaPacketBuilder.js.map +1 -1
  43. package/dist/core/MideaSecurity.d.ts +3 -1
  44. package/dist/core/MideaSecurity.d.ts.map +1 -1
  45. package/dist/core/MideaSecurity.js +41 -16
  46. package/dist/core/MideaSecurity.js.map +1 -1
  47. package/dist/core/MideaUtils.d.ts +21 -6
  48. package/dist/core/MideaUtils.d.ts.map +1 -1
  49. package/dist/core/MideaUtils.js +81 -83
  50. package/dist/core/MideaUtils.js.map +1 -1
  51. package/dist/devices/DeviceFactory.d.ts +3 -2
  52. package/dist/devices/DeviceFactory.d.ts.map +1 -1
  53. package/dist/devices/DeviceFactory.js +5 -2
  54. package/dist/devices/DeviceFactory.js.map +1 -1
  55. package/dist/devices/a1/MideaA1Device.d.ts +77 -0
  56. package/dist/devices/a1/MideaA1Device.d.ts.map +1 -0
  57. package/dist/devices/a1/MideaA1Device.js +144 -0
  58. package/dist/devices/a1/MideaA1Device.js.map +1 -0
  59. package/dist/devices/a1/MideaA1Message.d.ts +41 -0
  60. package/dist/devices/a1/MideaA1Message.d.ts.map +1 -0
  61. package/dist/devices/a1/MideaA1Message.js +206 -0
  62. package/dist/devices/a1/MideaA1Message.js.map +1 -0
  63. package/dist/devices/ac/MideaACDevice.d.ts +21 -7
  64. package/dist/devices/ac/MideaACDevice.d.ts.map +1 -1
  65. package/dist/devices/ac/MideaACDevice.js +82 -30
  66. package/dist/devices/ac/MideaACDevice.js.map +1 -1
  67. package/dist/devices/ac/MideaACMessage.d.ts.map +1 -1
  68. package/dist/devices/ac/MideaACMessage.js +158 -82
  69. package/dist/devices/ac/MideaACMessage.js.map +1 -1
  70. package/dist/platform.d.ts +29 -5
  71. package/dist/platform.d.ts.map +1 -1
  72. package/dist/platform.js +151 -52
  73. package/dist/platform.js.map +1 -1
  74. package/dist/platformUtils.d.ts +6 -1
  75. package/dist/platformUtils.d.ts.map +1 -1
  76. package/dist/platformUtils.js.map +1 -1
  77. package/package.json +12 -5
@@ -1 +1 @@
1
- {"version":3,"file":"MideaCloud.js","sourceRoot":"","sources":["../../src/core/MideaCloud.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MideaCloud.js","sourceRoot":"","sources":["../../src/core/MideaCloud.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  export declare const DISCOVERY_MESSAGE: Int8Array;
2
2
  export declare const DEVICE_INFO_MESSAGE: Int8Array;
3
3
  export declare enum DeviceType {
4
- AIR_CONDITIONER = 172
4
+ AIR_CONDITIONER = 172,
5
+ DEHUMIDIFIER = 161
5
6
  }
6
7
  export declare enum ParseMessageResult {
7
8
  SUCCESS = 0,
@@ -1 +1 @@
1
- {"version":3,"file":"MideaConstants.d.ts","sourceRoot":"","sources":["../../src/core/MideaConstants.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,iBAAiB,WAU5B,CAAC;AAEH,eAAO,MAAM,mBAAmB,WAQ9B,CAAC;AAEH,oBAAY,UAAU;IACpB,eAAe,MAAO;CACvB;AAED,oBAAY,kBAAkB;IAC5B,OAAO,IAAI;IACX,OAAO,IAAI;IACX,KAAK,KAAK;CACX;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,SAAS;IACnB,OAAO,IAAI;IACX,GAAG,IAAO;IACV,OAAO,IAAO;IACd,QAAQ,IAAO;IACf,eAAe,IAAO;CACvB;AAED,oBAAY,cAAc;IACxB,iBAAiB,IAAM;IACvB,kBAAkB,IAAM;IACxB,kBAAkB,IAAM;IACxB,iBAAiB,IAAM;CACxB;AAED,oBAAY,eAAe;IACzB,OAAO,IAAI;IACX,EAAE,IAAA;IACF,EAAE,IAAA;IACF,EAAE,IAAA;CACH;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,KAAK,CAAC"}
1
+ {"version":3,"file":"MideaConstants.d.ts","sourceRoot":"","sources":["../../src/core/MideaConstants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB,WAO5B,CAAC;AAEH,eAAO,MAAM,mBAAmB,WAM9B,CAAC;AAEH,oBAAY,UAAU;IACpB,eAAe,MAAO;IACtB,YAAY,MAAO;CACpB;AAED,oBAAY,kBAAkB;IAC5B,OAAO,IAAI;IACX,OAAO,IAAI;IACX,KAAK,KAAK;CACX;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,SAAS;IACnB,OAAO,IAAI;IACX,GAAG,IAAO;IACV,OAAO,IAAO;IACd,QAAQ,IAAO;IACf,eAAe,IAAO;CACvB;AAED,oBAAY,cAAc;IACxB,iBAAiB,IAAM;IACvB,kBAAkB,IAAM;IACxB,kBAAkB,IAAM;IACxB,iBAAiB,IAAM;CACxB;AAED,oBAAY,eAAe;IACzB,OAAO,IAAI;IACX,EAAE,IAAA;IACF,EAAE,IAAA;IACF,EAAE,IAAA;CACH;AAED,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,KAAK,CAAC"}
@@ -2,28 +2,24 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ProtocolVersion = exports.TCPMessageType = exports.FrameType = exports.ParseMessageResult = exports.DeviceType = exports.DEVICE_INFO_MESSAGE = exports.DISCOVERY_MESSAGE = void 0;
4
4
  exports.DISCOVERY_MESSAGE = new Int8Array([
5
- 0x5a, 0x5a, 0x01, 0x11, 0x48, 0x00, 0x92, 0x00,
6
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
9
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
10
- 0x7f, 0x75, 0xbd, 0x6b, 0x3e, 0x4f, 0x8b, 0x76,
11
- 0x2e, 0x84, 0x9c, 0x6e, 0x57, 0x8d, 0x65, 0x90,
12
- 0x03, 0x6e, 0x9d, 0x43, 0x42, 0xa5, 0x0f, 0x1f,
13
- 0x56, 0x9e, 0xb8, 0xec, 0x91, 0x8e, 0x92, 0xe5,
5
+ 0x5a, 0x5a, 0x01, 0x11, 0x48, 0x00, 0x92, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
6
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
7
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
8
+ 0x00, 0x7f, 0x75, 0xbd, 0x6b, 0x3e, 0x4f, 0x8b, 0x76, 0x2e, 0x84, 0x9c, 0x6e,
9
+ 0x57, 0x8d, 0x65, 0x90, 0x03, 0x6e, 0x9d, 0x43, 0x42, 0xa5, 0x0f, 0x1f, 0x56,
10
+ 0x9e, 0xb8, 0xec, 0x91, 0x8e, 0x92, 0xe5,
14
11
  ]);
15
12
  exports.DEVICE_INFO_MESSAGE = new Int8Array([
16
- 0x5a, 0x5a, 0x15, 0x00, 0x00, 0x38, 0x00, 0x04,
17
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x27, 0x33, 0x05,
18
- 0x13, 0x06, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00,
19
- 0x00, 0x00, 0x03, 0xe8, 0x00, 0x00, 0x00, 0x00,
20
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
21
- 0xca, 0x8d, 0x9b, 0xf9, 0xa0, 0x30, 0x1a, 0xe3,
22
- 0xb7, 0xe4, 0x2d, 0x53, 0x49, 0x47, 0x62, 0xbe,
13
+ 0x5a, 0x5a, 0x15, 0x00, 0x00, 0x38, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
14
+ 0x27, 0x33, 0x05, 0x13, 0x06, 0x14, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
15
+ 0x03, 0xe8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
16
+ 0x00, 0xca, 0x8d, 0x9b, 0xf9, 0xa0, 0x30, 0x1a, 0xe3, 0xb7, 0xe4, 0x2d, 0x53,
17
+ 0x49, 0x47, 0x62, 0xbe,
23
18
  ]);
24
19
  var DeviceType;
25
20
  (function (DeviceType) {
26
21
  DeviceType[DeviceType["AIR_CONDITIONER"] = 172] = "AIR_CONDITIONER";
22
+ DeviceType[DeviceType["DEHUMIDIFIER"] = 161] = "DEHUMIDIFIER";
27
23
  })(DeviceType = exports.DeviceType || (exports.DeviceType = {}));
28
24
  var ParseMessageResult;
29
25
  (function (ParseMessageResult) {
@@ -1 +1 @@
1
- {"version":3,"file":"MideaConstants.js","sourceRoot":"","sources":["../../src/core/MideaConstants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MideaConstants.js","sourceRoot":"","sources":["../../src/core/MideaConstants.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,24 @@
1
1
  /// <reference types="node" />
2
2
  /// <reference types="node" />
3
+ /***********************************************************************
4
+ * Midea Device class from which specfic device support is inherited.
5
+ *
6
+ * Copyright (c) 2023 Kovalovszky Patrik, https://github.com/kovapatrik
7
+ * Portions Copyright (c) 2023 David Kerr, https://github.com/dkerr64
8
+ *
9
+ * With thanks to https://github.com/georgezhao2010/midea_ac_lan
10
+ *
11
+ */
3
12
  import { Logger } from 'homebridge';
4
13
  import { KeyToken, LocalSecurity } from './MideaSecurity';
5
14
  import { DeviceInfo, DeviceType, ProtocolVersion, ParseMessageResult } from './MideaConstants';
6
- import { Socket } from 'net';
7
15
  import { MessageRequest, MessageType } from './MideaMessage';
8
- import { PromiseSocket } from './MideaUtils';
16
+ import { Config } from '../platformUtils';
17
+ import EventEmitter from 'events';
9
18
  export type DeviceAttributeBase = {
10
19
  [key: string]: number | string | boolean | undefined;
11
20
  };
12
- export default abstract class MideaDevice {
21
+ export default abstract class MideaDevice extends EventEmitter {
13
22
  protected readonly logger: Logger;
14
23
  private readonly SOCKET_TIMEOUT;
15
24
  readonly ip: string;
@@ -26,26 +35,25 @@ export default abstract class MideaDevice {
26
35
  protected device_protocol_version: number;
27
36
  protected refresh_interval: number;
28
37
  protected heartbeat_interval: number;
29
- protected default_refresh_interval: number;
38
+ protected verbose: boolean;
30
39
  private _sub_type?;
31
40
  token: KeyToken;
32
41
  key: KeyToken;
33
42
  protected readonly security: LocalSecurity;
34
43
  private buffer;
35
- protected socket: Socket;
36
- promiseSocket: PromiseSocket;
44
+ private promiseSocket;
37
45
  abstract attributes: DeviceAttributeBase;
38
46
  protected abstract build_query(): MessageRequest[];
39
47
  protected abstract process_message(message: Buffer): void;
40
48
  protected abstract set_subtype(): void;
41
49
  abstract set_attribute(status: DeviceAttributeBase): Promise<void>;
42
- constructor(logger: Logger, device_info: DeviceInfo, token: KeyToken, key: KeyToken);
50
+ constructor(logger: Logger, device_info: DeviceInfo, config: Partial<Config>);
43
51
  get sub_type(): number;
52
+ setCredentials(token: KeyToken, key: KeyToken): void;
44
53
  fetch_v2_message(message: Buffer): [Buffer[], Buffer];
45
54
  connect(refresh_status?: boolean): Promise<boolean>;
46
55
  private authenticate;
47
56
  send_message(data: Buffer): Promise<void>;
48
- private createSocket;
49
57
  private send_message_v2;
50
58
  private send_message_v3;
51
59
  build_send(command: MessageRequest): Promise<void>;
@@ -54,5 +62,15 @@ export default abstract class MideaDevice {
54
62
  parse_message(message: Buffer): ParseMessageResult;
55
63
  send_command(command_type: MessageType, command_body: Buffer): Promise<void>;
56
64
  send_heartbeat(): Promise<void>;
65
+ protected update(values: DeviceAttributeBase): Promise<void>;
66
+ open(): void;
67
+ close(): void;
68
+ private close_socket;
69
+ /*********************************************************************
70
+ * run
71
+ * Continuous loop that runs listening for network traffic from the device
72
+ * and proceses each message as received.
73
+ */
74
+ private run;
57
75
  }
58
76
  //# sourceMappingURL=MideaDevice.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MideaDevice.d.ts","sourceRoot":"","sources":["../../src/core/MideaDevice.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAkB,eAAe,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC/G,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAA2C,cAAc,EAA0B,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE9H,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,MAAM,mBAAmB,GAAG;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACtD,CAAC;AAEF,MAAM,CAAC,OAAO,CAAC,QAAQ,OAAO,WAAW;IA4CrC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM;IA1CnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAQ;IAEvC,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEhC,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B,SAAgB,IAAI,EAAE,UAAU,CAAC;IACjC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;IAE5C,SAAS,CAAC,UAAU,UAAS;IAC7B,SAAS,CAAC,SAAS,UAAS;IAE5B,OAAO,CAAC,oBAAoB,CAAgB;IAC5C,SAAS,CAAC,uBAAuB,SAAK;IAEtC,SAAS,CAAC,gBAAgB,SAAS;IACnC,SAAS,CAAC,kBAAkB,SAAS;IACrC,SAAS,CAAC,wBAAwB,SAAS;IAE3C,OAAO,CAAC,SAAS,CAAC,CAAS;IAEpB,KAAK,EAAE,QAAQ,CAAC;IAChB,GAAG,EAAE,QAAQ,CAAC;IAErB,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC;IAC3C,OAAO,CAAC,MAAM,CAAS;IAEvB,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,aAAa,CAAC;IAEpC,SAAgB,UAAU,EAAE,mBAAmB,CAAC;IAGhD,SAAS,CAAC,QAAQ,CAAC,WAAW,IAAI,cAAc,EAAE;IAClD,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IACzD,SAAS,CAAC,QAAQ,CAAC,WAAW,IAAI,IAAI;aACtB,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;gBAGpD,MAAM,EAAE,MAAM,EACjC,WAAW,EAAE,UAAU,EACvB,KAAK,EAAE,QAAQ,EACf,GAAG,EAAE,QAAQ;IAwBf,IAAI,QAAQ,IAAI,MAAM,CAErB;IAEM,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,CAAE,MAAM,EAAE,EAAE,MAAM,CAAE;IAkBjD,OAAO,CAAC,cAAc,UAAO;YAyB5B,YAAY;IAqBb,YAAY,CAAC,IAAI,EAAE,MAAM;IAQtC,OAAO,CAAC,YAAY;YAYN,eAAe;YAmBf,eAAe;IAKhB,UAAU,CAAC,OAAO,EAAE,cAAc;IAMlC,cAAc,CAAC,aAAa,UAAQ,EAAE,kBAAkB,UAAQ;IAgDtE,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAY5C,aAAa,CAAC,OAAO,EAAE,MAAM;IAoCvB,YAAY,CAAC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM;IAW5D,cAAc;CAI5B"}
1
+ {"version":3,"file":"MideaDevice.d.ts","sourceRoot":"","sources":["../../src/core/MideaDevice.ts"],"names":[],"mappings":"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"}
@@ -5,21 +5,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const MideaSecurity_1 = require("./MideaSecurity");
7
7
  const MideaConstants_1 = require("./MideaConstants");
8
- const net_1 = require("net");
9
8
  const MideaMessage_1 = require("./MideaMessage");
10
9
  const MideaPacketBuilder_1 = __importDefault(require("./MideaPacketBuilder"));
11
10
  const MideaUtils_1 = require("./MideaUtils");
12
- class MideaDevice {
13
- constructor(logger, device_info, token, key) {
11
+ const events_1 = __importDefault(require("events"));
12
+ class MideaDevice extends events_1.default {
13
+ constructor(logger, device_info, config) {
14
+ var _a, _b, _c;
15
+ super();
14
16
  this.logger = logger;
15
- this.SOCKET_TIMEOUT = 3000;
17
+ this.SOCKET_TIMEOUT = 3000; // milliseconds
16
18
  this.is_running = false;
17
19
  this.available = false;
18
20
  this.unsupported_protocol = [];
19
21
  this.device_protocol_version = 0;
20
- this.refresh_interval = 30000;
21
- this.heartbeat_interval = 10000;
22
- this.default_refresh_interval = 30000;
22
+ this.token = undefined;
23
+ this.key = undefined;
23
24
  this.ip = device_info.ip;
24
25
  this.port = device_info.port;
25
26
  this.id = device_info.id;
@@ -28,17 +29,20 @@ class MideaDevice {
28
29
  this.name = device_info.name;
29
30
  this.type = device_info.type;
30
31
  this.version = device_info.version;
31
- this.token = token;
32
- this.key = key;
32
+ this.verbose = (_a = config.verbose) !== null && _a !== void 0 ? _a : false;
33
+ this.refresh_interval = ((_b = config.refreshInterval) !== null && _b !== void 0 ? _b : 30) * 1000; // convert to miliseconds
34
+ this.heartbeat_interval = ((_c = config.heartbeatInterval) !== null && _c !== void 0 ? _c : 10) * 1000;
33
35
  this.security = new MideaSecurity_1.LocalSecurity();
34
36
  this.buffer = Buffer.alloc(0);
35
- this.socket = new net_1.Socket();
36
- this.promiseSocket = new MideaUtils_1.PromiseSocket(this.socket, this.logger);
37
- this.createSocket();
37
+ this.promiseSocket = new MideaUtils_1.PromiseSocket(this.logger, this.verbose);
38
38
  }
39
39
  get sub_type() {
40
40
  return this._sub_type || 0;
41
41
  }
42
+ setCredentials(token, key) {
43
+ this.token = token;
44
+ this.key = key;
45
+ }
42
46
  fetch_v2_message(message) {
43
47
  const result = [];
44
48
  while (message.length > 0) {
@@ -60,6 +64,7 @@ class MideaDevice {
60
64
  async connect(refresh_status = true) {
61
65
  try {
62
66
  await this.promiseSocket.connect(this.port, this.ip);
67
+ this.promiseSocket.setTimeout(this.SOCKET_TIMEOUT);
63
68
  this.logger.debug(`Connecting to device ${this.name} (${this.ip}:${this.port})...`);
64
69
  if (this.version === MideaConstants_1.ProtocolVersion.V3) {
65
70
  await this.authenticate();
@@ -75,6 +80,8 @@ class MideaDevice {
75
80
  this.logger.debug(`[${this.name}] Error when connecting to device ${this.name} (${this.ip}:${this.port}): Refresh status failed.`);
76
81
  return false;
77
82
  }
83
+ // Start listening for network traffic
84
+ this.open();
78
85
  return true;
79
86
  }
80
87
  catch (err) {
@@ -88,7 +95,7 @@ class MideaDevice {
88
95
  }
89
96
  const request = this.security.encode_8370(this.token, MideaConstants_1.TCPMessageType.HANDSHAKE_REQUEST);
90
97
  await this.promiseSocket.write(request);
91
- const response = await this.promiseSocket.read(512);
98
+ const response = await this.promiseSocket.read();
92
99
  if (response) {
93
100
  if (response.length < 20) {
94
101
  throw Error(`Authenticate error when receiving data from ${this.ip}:${this.port}. (Data length mismatch)`);
@@ -102,6 +109,9 @@ class MideaDevice {
102
109
  }
103
110
  }
104
111
  async send_message(data) {
112
+ if (this.verbose) {
113
+ this.logger.debug(`[${this.name}] Send message:\n${data.toString('hex')}`);
114
+ }
105
115
  if (this.version === MideaConstants_1.ProtocolVersion.V3) {
106
116
  await this.send_message_v3(data);
107
117
  }
@@ -109,23 +119,12 @@ class MideaDevice {
109
119
  await this.send_message_v2(data);
110
120
  }
111
121
  }
112
- createSocket() {
113
- this.socket = new net_1.Socket();
114
- this.socket.setTimeout(this.SOCKET_TIMEOUT);
115
- this.socket.on('error', (err) => {
116
- this.logger.debug(`[${this.name}] Socket error: ${err}`);
117
- });
118
- this.socket.on('close', async () => {
119
- this.socket.destroy();
120
- });
121
- this.promiseSocket = new MideaUtils_1.PromiseSocket(this.socket, this.logger);
122
- }
123
122
  async send_message_v2(data, retries = 3, force_reinit = false) {
124
123
  if (retries === 0) {
125
124
  throw new Error(`[${this.name} | send_message] Error when sending data to device.`);
126
125
  }
127
- if (force_reinit || !this.socket || !this.socket.writable || this.socket.destroyed) {
128
- this.createSocket();
126
+ if (force_reinit || !this.promiseSocket || this.promiseSocket.destroyed) {
127
+ this.promiseSocket = new MideaUtils_1.PromiseSocket(this.logger, this.verbose);
129
128
  let connected = await this.connect(false);
130
129
  while (!connected) {
131
130
  connected = await this.connect(false);
@@ -156,13 +155,14 @@ class MideaDevice {
156
155
  }
157
156
  let error_cnt = 0;
158
157
  for (const cmd of commands) {
159
- if (ignore_unsupported || !this.unsupported_protocol.includes(cmd.constructor.name)) {
158
+ if (ignore_unsupported ||
159
+ !this.unsupported_protocol.includes(cmd.constructor.name)) {
160
160
  await this.build_send(cmd);
161
161
  if (wait_response) {
162
162
  try {
163
163
  // eslint-disable-next-line no-constant-condition
164
164
  while (true) {
165
- const message = await this.promiseSocket.read(512);
165
+ const message = await this.promiseSocket.read();
166
166
  if (message.length === 0) {
167
167
  throw new Error(`[${this.name} | refresh_status] Error when receiving data from device.`);
168
168
  }
@@ -212,6 +212,9 @@ class MideaDevice {
212
212
  }
213
213
  parse_message(message) {
214
214
  let messages;
215
+ if (this.verbose) {
216
+ this.logger.debug(`[${this.name}] Raw data to parse:\n${message.toString('hex')}`);
217
+ }
215
218
  if (this.version === MideaConstants_1.ProtocolVersion.V3) {
216
219
  [messages, this.buffer] = this.security.decode_8370(Buffer.concat([this.buffer, message]));
217
220
  }
@@ -229,12 +232,18 @@ class MideaDevice {
229
232
  const payload_type = msg[2] + (msg[3] << 8);
230
233
  if ([0x1001, 0x0001].includes(payload_type)) {
231
234
  // Heartbeat
235
+ if (this.verbose) {
236
+ this.logger.debug(`[${this.name}] Heartbeat:\n${msg.toString('hex')}`);
237
+ }
232
238
  }
233
239
  else if (msg.length > 56) {
234
240
  const cryptographic = msg.subarray(40, -16);
235
241
  if (payload_length % 16 === 0) {
236
242
  const decrypted = this.security.aes_decrypt(cryptographic);
237
243
  if (this.preprocess_message(decrypted)) {
244
+ if (this.verbose) {
245
+ this.logger.debug(`[${this.name}] Decrypted data to parse:\n${decrypted.toString('hex')}`);
246
+ }
238
247
  this.process_message(decrypted);
239
248
  }
240
249
  }
@@ -251,6 +260,9 @@ class MideaDevice {
251
260
  async send_command(command_type, command_body) {
252
261
  const cmd = new MideaMessage_1.MessageQuestCustom(this.type, command_type, command_body);
253
262
  try {
263
+ if (this.verbose) {
264
+ this.logger.debug(`[${this.name}] Send command: ${command_body.toString('hex')}`);
265
+ }
254
266
  await this.build_send(cmd);
255
267
  }
256
268
  catch (e) {
@@ -263,6 +275,96 @@ class MideaDevice {
263
275
  const message = new MideaPacketBuilder_1.default(this.id, Buffer.alloc(0)).finalize(0);
264
276
  await this.send_message(message);
265
277
  }
278
+ async update(values) {
279
+ this.logger.info(`[${this.name}] Status change: ${JSON.stringify(values)}`);
280
+ this.emit('update', values);
281
+ }
282
+ open() {
283
+ if (!this.is_running) {
284
+ this.is_running = true;
285
+ this.run();
286
+ }
287
+ }
288
+ close() {
289
+ if (this.is_running) {
290
+ this.is_running = false;
291
+ this.close_socket();
292
+ }
293
+ }
294
+ close_socket() {
295
+ this.unsupported_protocol = [];
296
+ this.buffer = Buffer.alloc(0);
297
+ if (this.promiseSocket) {
298
+ this.promiseSocket.destroy();
299
+ }
300
+ }
301
+ /*********************************************************************
302
+ * run
303
+ * Continuous loop that runs listening for network traffic from the device
304
+ * and proceses each message as received.
305
+ */
306
+ async run() {
307
+ this.logger.info(`Starting network listener for [${this.name}]`);
308
+ while (this.is_running) {
309
+ while (this.promiseSocket.destroyed) {
310
+ this.logger.debug('Create new socket, reconnect');
311
+ this.promiseSocket = new MideaUtils_1.PromiseSocket(this.logger, this.verbose);
312
+ await this.connect(true); // need to refresh_status on connect as we reset start time below.
313
+ const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
314
+ await sleep(5000);
315
+ }
316
+ let timeout_counter = 0;
317
+ const start = Date.now(); // milliseconds
318
+ let previous_refresh = start;
319
+ let previous_heartbeat = start;
320
+ while (!this.promiseSocket.destroyed) {
321
+ try {
322
+ const now = Date.now();
323
+ if (0 < this.refresh_interval &&
324
+ this.refresh_interval <= now - previous_refresh) {
325
+ this.refresh_status();
326
+ previous_refresh = now;
327
+ }
328
+ else if (now - previous_heartbeat >= this.heartbeat_interval) {
329
+ this.send_heartbeat();
330
+ previous_heartbeat = now;
331
+ }
332
+ // We wait up to one second for a message, in effect we cause the while loop
333
+ // we are in to itterate once a second... allowing us to check for heartbeat
334
+ // and refresh intervals (above).
335
+ this.promiseSocket.setTimeout(this.SOCKET_TIMEOUT);
336
+ const msg = await this.promiseSocket.read();
337
+ if (msg.length > 0) {
338
+ const result = this.parse_message(msg);
339
+ if (result === MideaConstants_1.ParseMessageResult.ERROR) {
340
+ this.logger.debug(`[${this.name} | run] Error return from ParseMessageResult.`);
341
+ break;
342
+ }
343
+ else if (result === MideaConstants_1.ParseMessageResult.SUCCESS) {
344
+ timeout_counter = 0;
345
+ }
346
+ }
347
+ else {
348
+ timeout_counter++;
349
+ if (timeout_counter > 120 / (this.SOCKET_TIMEOUT / 1000)) {
350
+ // we've looped for ~two minutes and not received a successful response
351
+ // to heartbeat or status refresh. Therefore something must be broken.
352
+ this.logger.warn(`[${this.name} | run] Heartbeat timeout, closing.`);
353
+ this.close_socket();
354
+ // We break out of inner loop, but within outer loop we will attempt to
355
+ // reopen the socket and continue.
356
+ break;
357
+ }
358
+ }
359
+ }
360
+ catch (e) {
361
+ const msg = e instanceof Error ? e.stack : e;
362
+ this.logger.error(`[${this.name} | run] Error reading from socket:\n${msg}`);
363
+ }
364
+ }
365
+ }
366
+ this.logger.info(`Stopping network listener for [${this.name}]`);
367
+ }
266
368
  }
267
369
  exports.default = MideaDevice;
268
370
  //# sourceMappingURL=MideaDevice.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MideaDevice.js","sourceRoot":"","sources":["../../src/core/MideaDevice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MideaDevice.js","sourceRoot":"","sources":["../../src/core/MideaDevice.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,28 @@ export default class Discover extends EventEmitter {
9
9
  private security;
10
10
  private ips;
11
11
  constructor(logger: Logger);
12
+ /*********************************************************************
13
+ * discoverDeviceByIP
14
+ * Sends discover message to a single IP address. Will resend the message
15
+ * an additional "retries" times spaced by 3 seconds if the target IP
16
+ * address has not responded (recorded in the above callback).
17
+ */
12
18
  discoverDeviceByIP(ip: string, retries?: number): void;
13
- startDiscover(): void;
19
+ /*********************************************************************
20
+ * ifBroadcastAddrs
21
+ * Broadcasts to 255.255.255.255 only gets sent out on the first network inteface.
22
+ * This function finds all network interfaces and returns the broadcast address
23
+ * for each in an array, e.g. ['192.168.1.255', '192.168.100.255']. If there are
24
+ * multiple interfaces this will cause broadcast to be sent out on each interface
25
+ * so all appliances are properly discovered.
26
+ */
27
+ private ifBroadcastAddrs;
28
+ /*********************************************************************
29
+ * startDiscover
30
+ * Sends broadcast to network discover Midea devices. Will continue sending
31
+ * up to an additional "retries" times each spaced by 3 seconds.
32
+ */
33
+ startDiscover(retries?: number): void;
14
34
  private getDeviceVersion;
15
35
  private getDeviceInfo;
16
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MideaDiscover.d.ts","sourceRoot":"","sources":["../../src/core/MideaDiscover.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAGpC,OAAO,YAAY,MAAM,QAAQ,CAAC;AAGlC,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,YAAY;IAU9C,OAAO,CAAC,QAAQ,CAAC,MAAM;IARzB,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,OAAO,CAAC,MAAM,CAAe;IAE7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IACvC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,GAAG,CAAgB;gBAGR,MAAM,EAAE,MAAM;IA6B1B,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,SAAI;IAkB1C,aAAa;IAWpB,OAAO,CAAC,gBAAgB;YAiBV,aAAa;CA8E5B"}
1
+ {"version":3,"file":"MideaDiscover.d.ts","sourceRoot":"","sources":["../../src/core/MideaDiscover.ts"],"names":[],"mappings":";AAWA,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAOpC,OAAO,YAAY,MAAM,QAAQ,CAAC;AAMlC,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,YAAY;IAQpC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAPnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAqB;IACpD,OAAO,CAAC,MAAM,CAAe;IAE7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IACvC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,GAAG,CAAgB;gBAEE,MAAM,EAAE,MAAM;IAqC3C;;;;;OAKG;IACI,kBAAkB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,SAAI;IAkBjD;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IA+BxB;;;;OAIG;IACI,aAAa,CAAC,OAAO,SAAI;IA8BhC,OAAO,CAAC,gBAAgB;YAiBV,aAAa;CAkF5B"}