homebridge-midea-platform 1.2.0-beta.7 → 1.2.1

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 (168) hide show
  1. package/CHANGELOG.md +7 -2
  2. package/README.md +2 -2
  3. package/config.schema.json +1 -1
  4. package/dist/accessory/AccessoryFactory.d.ts +14 -15
  5. package/dist/accessory/AccessoryFactory.js +34 -40
  6. package/dist/accessory/AccessoryFactory.js.map +1 -1
  7. package/dist/accessory/AirConditionerAccessory.d.ts +98 -99
  8. package/dist/accessory/AirConditionerAccessory.js +666 -662
  9. package/dist/accessory/AirConditionerAccessory.js.map +1 -1
  10. package/dist/accessory/BaseAccessory.d.ts +11 -12
  11. package/dist/accessory/BaseAccessory.js +21 -21
  12. package/dist/accessory/BaseAccessory.js.map +1 -1
  13. package/dist/accessory/DehumidifierAccessory.d.ts +45 -46
  14. package/dist/accessory/DehumidifierAccessory.js +343 -344
  15. package/dist/accessory/DehumidifierAccessory.js.map +1 -1
  16. package/dist/accessory/DishwasherAccessory.d.ts +30 -31
  17. package/dist/accessory/DishwasherAccessory.js +59 -63
  18. package/dist/accessory/DishwasherAccessory.js.map +1 -1
  19. package/dist/accessory/ElectricWaterHeaterAccessory.d.ts +44 -45
  20. package/dist/accessory/ElectricWaterHeaterAccessory.js +172 -176
  21. package/dist/accessory/ElectricWaterHeaterAccessory.js.map +1 -1
  22. package/dist/accessory/FanAccessory.d.ts +39 -40
  23. package/dist/accessory/FanAccessory.js +120 -123
  24. package/dist/accessory/FanAccessory.js.map +1 -1
  25. package/dist/accessory/FrontLoadWasherAccessory.d.ts +30 -31
  26. package/dist/accessory/FrontLoadWasherAccessory.js +63 -66
  27. package/dist/accessory/FrontLoadWasherAccessory.js.map +1 -1
  28. package/dist/accessory/GasWaterHeaterAccessory.d.ts +51 -52
  29. package/dist/accessory/GasWaterHeaterAccessory.js +217 -216
  30. package/dist/accessory/GasWaterHeaterAccessory.js.map +1 -1
  31. package/dist/accessory/{HeatPumpWifiControllerAccessory.d.ts → HeatPumpWiFiControllerAccessory.d.ts} +34 -35
  32. package/dist/accessory/{HeatPumpWifiControllerAccessory.js → HeatPumpWiFiControllerAccessory.js} +55 -36
  33. package/dist/accessory/HeatPumpWiFiControllerAccessory.js.map +1 -0
  34. package/dist/core/MideaCloud.d.ts +34 -36
  35. package/dist/core/MideaCloud.js +349 -350
  36. package/dist/core/MideaCloud.js.map +1 -1
  37. package/dist/core/MideaConstants.d.ts +51 -52
  38. package/dist/core/MideaConstants.js +56 -59
  39. package/dist/core/MideaConstants.js.map +1 -1
  40. package/dist/core/MideaDevice.d.ts +75 -78
  41. package/dist/core/MideaDevice.js +430 -420
  42. package/dist/core/MideaDevice.js.map +1 -1
  43. package/dist/core/MideaDiscover.d.ts +34 -36
  44. package/dist/core/MideaDiscover.js +208 -212
  45. package/dist/core/MideaDiscover.js.map +1 -1
  46. package/dist/core/MideaMessage.d.ts +75 -76
  47. package/dist/core/MideaMessage.js +185 -184
  48. package/dist/core/MideaMessage.js.map +1 -1
  49. package/dist/core/MideaPacketBuilder.d.ts +9 -11
  50. package/dist/core/MideaPacketBuilder.js +60 -60
  51. package/dist/core/MideaPacketBuilder.js.map +1 -1
  52. package/dist/core/MideaSecurity.d.ts +62 -64
  53. package/dist/core/MideaSecurity.js +241 -251
  54. package/dist/core/MideaSecurity.js.map +1 -1
  55. package/dist/core/MideaUtils.d.ts +31 -33
  56. package/dist/core/MideaUtils.js +178 -181
  57. package/dist/core/MideaUtils.js.map +1 -1
  58. package/dist/devices/DeviceFactory.d.ts +14 -15
  59. package/dist/devices/DeviceFactory.js +34 -40
  60. package/dist/devices/DeviceFactory.js.map +1 -1
  61. package/dist/devices/a1/MideaA1Device.d.ts +75 -77
  62. package/dist/devices/a1/MideaA1Device.js +142 -145
  63. package/dist/devices/a1/MideaA1Device.js.map +1 -1
  64. package/dist/devices/a1/MideaA1Message.d.ts +39 -41
  65. package/dist/devices/a1/MideaA1Message.js +219 -198
  66. package/dist/devices/a1/MideaA1Message.js.map +1 -1
  67. package/dist/devices/ac/MideaACDevice.d.ts +105 -107
  68. package/dist/devices/ac/MideaACDevice.js +417 -400
  69. package/dist/devices/ac/MideaACDevice.js.map +1 -1
  70. package/dist/devices/ac/MideaACMessage.d.ts +97 -96
  71. package/dist/devices/ac/MideaACMessage.js +724 -621
  72. package/dist/devices/ac/MideaACMessage.js.map +1 -1
  73. package/dist/devices/c3/MideaC3Device.d.ts +73 -75
  74. package/dist/devices/c3/MideaC3Device.js +249 -255
  75. package/dist/devices/c3/MideaC3Device.js.map +1 -1
  76. package/dist/devices/c3/MideaC3Message.d.ts +81 -80
  77. package/dist/devices/c3/MideaC3Message.js +190 -152
  78. package/dist/devices/c3/MideaC3Message.js.map +1 -1
  79. package/dist/devices/db/MideaDBDevice.d.ts +28 -30
  80. package/dist/devices/db/MideaDBDevice.js +94 -100
  81. package/dist/devices/db/MideaDBDevice.js.map +1 -1
  82. package/dist/devices/db/MideaDBMessage.d.ts +31 -33
  83. package/dist/devices/db/MideaDBMessage.js +101 -101
  84. package/dist/devices/db/MideaDBMessage.js.map +1 -1
  85. package/dist/devices/e1/MideaE1Device.d.ts +55 -57
  86. package/dist/devices/e1/MideaE1Device.js +122 -128
  87. package/dist/devices/e1/MideaE1Device.js.map +1 -1
  88. package/dist/devices/e1/MideaE1Message.d.ts +27 -29
  89. package/dist/devices/e1/MideaE1Message.js +128 -107
  90. package/dist/devices/e1/MideaE1Message.js.map +1 -1
  91. package/dist/devices/e2/MideaE2Device.d.ts +43 -45
  92. package/dist/devices/e2/MideaE2Device.js +124 -129
  93. package/dist/devices/e2/MideaE2Device.js.map +1 -1
  94. package/dist/devices/e2/MideaE2Message.d.ts +34 -34
  95. package/dist/devices/e2/MideaE2Message.js +143 -132
  96. package/dist/devices/e2/MideaE2Message.js.map +1 -1
  97. package/dist/devices/e3/MideaE3Device.d.ts +42 -44
  98. package/dist/devices/e3/MideaE3Device.js +132 -137
  99. package/dist/devices/e3/MideaE3Device.js.map +1 -1
  100. package/dist/devices/e3/MideaE3Message.d.ts +51 -52
  101. package/dist/devices/e3/MideaE3Message.js +144 -136
  102. package/dist/devices/e3/MideaE3Message.js.map +1 -1
  103. package/dist/devices/fa/MideaFADevice.d.ts +35 -37
  104. package/dist/devices/fa/MideaFADevice.js +102 -106
  105. package/dist/devices/fa/MideaFADevice.js.map +1 -1
  106. package/dist/devices/fa/MideaFAMessage.d.ts +38 -39
  107. package/dist/devices/fa/MideaFAMessage.js +108 -98
  108. package/dist/devices/fa/MideaFAMessage.js.map +1 -1
  109. package/dist/index.d.ts +6 -7
  110. package/dist/index.js +8 -6
  111. package/dist/index.js.map +1 -1
  112. package/dist/platform.d.ts +61 -61
  113. package/dist/platform.js +232 -212
  114. package/dist/platform.js.map +1 -1
  115. package/dist/platformUtils.d.ts +116 -117
  116. package/dist/platformUtils.js +107 -110
  117. package/dist/platformUtils.js.map +1 -1
  118. package/dist/settings.d.ts +8 -9
  119. package/dist/settings.js +8 -11
  120. package/dist/settings.js.map +1 -1
  121. package/docs/download_lua.md +9 -0
  122. package/eslint.config.js +43 -0
  123. package/homebridge-ui/public/js/bootstrap.min.js +1179 -1
  124. package/homebridge-ui/{server.js → server.cjs} +30 -30
  125. package/package.json +21 -31
  126. package/.eslintignore +0 -3
  127. package/.husky/pre-commit +0 -5
  128. package/.prettierrc +0 -19
  129. package/dist/accessory/AccessoryFactory.d.ts.map +0 -1
  130. package/dist/accessory/AirConditionerAccessory.d.ts.map +0 -1
  131. package/dist/accessory/BaseAccessory.d.ts.map +0 -1
  132. package/dist/accessory/DehumidifierAccessory.d.ts.map +0 -1
  133. package/dist/accessory/DishwasherAccessory.d.ts.map +0 -1
  134. package/dist/accessory/ElectricWaterHeaterAccessory.d.ts.map +0 -1
  135. package/dist/accessory/FanAccessory.d.ts.map +0 -1
  136. package/dist/accessory/FrontLoadWasherAccessory.d.ts.map +0 -1
  137. package/dist/accessory/GasWaterHeaterAccessory.d.ts.map +0 -1
  138. package/dist/accessory/HeatPumpWifiControllerAccessory.d.ts.map +0 -1
  139. package/dist/accessory/HeatPumpWifiControllerAccessory.js.map +0 -1
  140. package/dist/core/MideaCloud.d.ts.map +0 -1
  141. package/dist/core/MideaConstants.d.ts.map +0 -1
  142. package/dist/core/MideaDevice.d.ts.map +0 -1
  143. package/dist/core/MideaDiscover.d.ts.map +0 -1
  144. package/dist/core/MideaMessage.d.ts.map +0 -1
  145. package/dist/core/MideaPacketBuilder.d.ts.map +0 -1
  146. package/dist/core/MideaSecurity.d.ts.map +0 -1
  147. package/dist/core/MideaUtils.d.ts.map +0 -1
  148. package/dist/devices/DeviceFactory.d.ts.map +0 -1
  149. package/dist/devices/a1/MideaA1Device.d.ts.map +0 -1
  150. package/dist/devices/a1/MideaA1Message.d.ts.map +0 -1
  151. package/dist/devices/ac/MideaACDevice.d.ts.map +0 -1
  152. package/dist/devices/ac/MideaACMessage.d.ts.map +0 -1
  153. package/dist/devices/c3/MideaC3Device.d.ts.map +0 -1
  154. package/dist/devices/c3/MideaC3Message.d.ts.map +0 -1
  155. package/dist/devices/db/MideaDBDevice.d.ts.map +0 -1
  156. package/dist/devices/db/MideaDBMessage.d.ts.map +0 -1
  157. package/dist/devices/e1/MideaE1Device.d.ts.map +0 -1
  158. package/dist/devices/e1/MideaE1Message.d.ts.map +0 -1
  159. package/dist/devices/e2/MideaE2Device.d.ts.map +0 -1
  160. package/dist/devices/e2/MideaE2Message.d.ts.map +0 -1
  161. package/dist/devices/e3/MideaE3Device.d.ts.map +0 -1
  162. package/dist/devices/e3/MideaE3Message.d.ts.map +0 -1
  163. package/dist/devices/fa/MideaFADevice.d.ts.map +0 -1
  164. package/dist/devices/fa/MideaFAMessage.d.ts.map +0 -1
  165. package/dist/index.d.ts.map +0 -1
  166. package/dist/platform.d.ts.map +0 -1
  167. package/dist/platformUtils.d.ts.map +0 -1
  168. package/dist/settings.d.ts.map +0 -1
@@ -1,36 +1,55 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const BaseAccessory_1 = __importDefault(require("./BaseAccessory"));
7
- class HeatPumpWiFiControllerAccessory extends BaseAccessory_1.default {
8
- /*********************************************************************
9
- * Constructor registers all the service types with Homebridge, registers
10
- * a callback function with the MideaDevice class, and requests device status.
11
- */
12
- constructor(platform, accessory, device, configDev) {
13
- super(platform, accessory, device, configDev);
14
- this.device = device;
15
- this.configDev = configDev;
16
- this.zone1Service = this.accessory.getService(this.platform.Service.Valve) || this.accessory.addService(this.platform.Service.Valve);
17
- }
18
- async updateCharacteristics(attributes) {
19
- // const updateState = false;
20
- for (const [k, v] of Object.entries(attributes)) {
21
- this.platform.log.debug(`[${this.device.name}] Set attribute ${k} to: ${v}`);
22
- switch (k) {
23
- default:
24
- this.platform.log.debug(`[${this.device.name}] Attempt to set unsupported attribute ${k} to ${v}`);
25
- break;
26
- }
27
- }
28
- // if (updateState) {
29
- // this.service.updateCharacteristic(this.platform.Characteristic.Active, this.getActive());
30
- // this.service.updateCharacteristic(this.platform.Characteristic.InUse, this.getInUse());
31
- // this.service.updateCharacteristic(this.platform.Characteristic.RemainingDuration, this.getRemainingDuration());
32
- // }
33
- }
34
- }
35
- exports.default = HeatPumpWiFiControllerAccessory;
36
- //# sourceMappingURL=HeatPumpWifiControllerAccessory.js.map
1
+ import BaseAccessory from './BaseAccessory.js';
2
+ export default class HeatPumpWiFiControllerAccessory extends BaseAccessory {
3
+ device;
4
+ configDev;
5
+ // Zone1 related
6
+ zone1Service;
7
+ zone1CurveSwitchService;
8
+ zone1PowerSwitchService;
9
+ zone1WaterTemperatureModeSensorService;
10
+ zone1RoomTemperatureModeService;
11
+ // Zone2 related
12
+ zone2Service;
13
+ zone2CurveSwitchService;
14
+ zone2PowerSwitchService;
15
+ zone2WaterTemperatureModeSensorService;
16
+ zone2RoomTemperatureModeService;
17
+ // Water heater related
18
+ waterHeaterService;
19
+ dhwPowerSwitchService;
20
+ tbhPowerSwitchService;
21
+ dhwSensorService;
22
+ tbhSensorService;
23
+ ibhSensorService;
24
+ heatingSensorService;
25
+ disinfectSwitchService;
26
+ ecoSwitchService;
27
+ silentModeSwitchService;
28
+ /*********************************************************************
29
+ * Constructor registers all the service types with Homebridge, registers
30
+ * a callback function with the MideaDevice class, and requests device status.
31
+ */
32
+ constructor(platform, accessory, device, configDev) {
33
+ super(platform, accessory, device, configDev);
34
+ this.device = device;
35
+ this.configDev = configDev;
36
+ this.zone1Service = this.accessory.getService(this.platform.Service.Valve) || this.accessory.addService(this.platform.Service.Valve);
37
+ }
38
+ async updateCharacteristics(attributes) {
39
+ // const updateState = false;
40
+ for (const [k, v] of Object.entries(attributes)) {
41
+ this.platform.log.debug(`[${this.device.name}] Set attribute ${k} to: ${v}`);
42
+ switch (k) {
43
+ default:
44
+ this.platform.log.debug(`[${this.device.name}] Attempt to set unsupported attribute ${k} to ${v}`);
45
+ break;
46
+ }
47
+ }
48
+ // if (updateState) {
49
+ // this.service.updateCharacteristic(this.platform.Characteristic.Active, this.getActive());
50
+ // this.service.updateCharacteristic(this.platform.Characteristic.InUse, this.getInUse());
51
+ // this.service.updateCharacteristic(this.platform.Characteristic.RemainingDuration, this.getRemainingDuration());
52
+ // }
53
+ }
54
+ }
55
+ //# sourceMappingURL=HeatPumpWiFiControllerAccessory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeatPumpWiFiControllerAccessory.js","sourceRoot":"","sources":["../../src/accessory/HeatPumpWiFiControllerAccessory.ts"],"names":[],"mappings":"AAYA,OAAO,aAAa,MAAM,oBAAoB,CAAC;AAI/C,MAAM,CAAC,OAAO,OAAO,+BAAgC,SAAQ,aAA4B;IAmClE;IACA;IAnCrB,gBAAgB;IACR,YAAY,CAAW;IACvB,uBAAuB,CAAW;IAClC,uBAAuB,CAAW;IAClC,sCAAsC,CAAW;IACjD,+BAA+B,CAAW;IAElD,gBAAgB;IACR,YAAY,CAAW;IACvB,uBAAuB,CAAW;IAClC,uBAAuB,CAAW;IAClC,sCAAsC,CAAW;IACjD,+BAA+B,CAAW;IAElD,uBAAuB;IACf,kBAAkB,CAAW;IAC7B,qBAAqB,CAAW;IAChC,qBAAqB,CAAW;IAChC,gBAAgB,CAAW;IAC3B,gBAAgB,CAAW;IAC3B,gBAAgB,CAAW;IAC3B,oBAAoB,CAAW;IAE/B,sBAAsB,CAAW;IACjC,gBAAgB,CAAW;IAC3B,uBAAuB,CAAW;IAE1C;;;OAGG;IACH,YACE,QAAuB,EACvB,SAAyB,EACN,MAAqB,EACrB,SAAuB;QAE1C,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAH3B,WAAM,GAAN,MAAM,CAAe;QACrB,cAAS,GAAT,SAAS,CAAc;QAI1C,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACvI,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,UAAiC;QAC3D,6BAA6B;QAC7B,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC7E,QAAQ,CAAC,EAAE,CAAC;gBACZ;oBACE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,0CAA0C,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBACnG,MAAM;YACR,CAAC;QACH,CAAC;QACD,qBAAqB;QACrB,4FAA4F;QAC5F,0FAA0F;QAC1F,kHAAkH;QAClH,IAAI;IACN,CAAC;CACF"}
@@ -1,36 +1,34 @@
1
- /// <reference types="node" />
2
- import { Semaphore } from 'semaphore-promise';
3
- import { Endianness } from './MideaConstants';
4
- import { CloudSecurity } from './MideaSecurity';
5
- declare abstract class CloudBase<S extends CloudSecurity> {
6
- protected readonly account: string;
7
- protected readonly password: string;
8
- protected readonly security: S;
9
- protected readonly CLIENT_TYPE = 1;
10
- protected readonly FORMAT = 2;
11
- protected readonly LANGUAGE = "en_US";
12
- protected abstract readonly APP_ID: string;
13
- protected abstract readonly API_URL: string;
14
- protected readonly DEVICE_ID: string;
15
- protected access_token?: string;
16
- protected uid?: string;
17
- protected key?: string;
18
- protected semaphore: Semaphore;
19
- loggedIn: boolean;
20
- constructor(account: string, password: string, security: S);
21
- protected timestamp(): string;
22
- abstract buildRequestData(): {
23
- [key: string]: string | number;
24
- };
25
- abstract apiRequest(endpoint: string, data: {
26
- [key: string]: any;
27
- }): Promise<any>;
28
- getLoginId(): Promise<any>;
29
- abstract login(): Promise<void>;
30
- getTokenKey(device_id: number, endianess: Endianness): Promise<[Buffer, Buffer]>;
31
- }
32
- export default class CloudFactory {
33
- static createCloud(account: string, password: string, cloud: string): CloudBase<CloudSecurity>;
34
- }
35
- export {};
36
- //# sourceMappingURL=MideaCloud.d.ts.map
1
+ import { Semaphore } from 'semaphore-promise';
2
+ import { Endianness } from './MideaConstants.js';
3
+ import { CloudSecurity } from './MideaSecurity.js';
4
+ declare abstract class CloudBase<S extends CloudSecurity> {
5
+ protected readonly account: string;
6
+ protected readonly password: string;
7
+ protected readonly security: S;
8
+ protected readonly CLIENT_TYPE = 1;
9
+ protected readonly FORMAT = 2;
10
+ protected readonly LANGUAGE = "en_US";
11
+ protected abstract readonly APP_ID: string;
12
+ protected abstract readonly API_URL: string;
13
+ protected readonly DEVICE_ID: string;
14
+ protected access_token?: string;
15
+ protected uid?: string;
16
+ protected key?: string;
17
+ protected semaphore: Semaphore;
18
+ loggedIn: boolean;
19
+ constructor(account: string, password: string, security: S);
20
+ protected timestamp(): string;
21
+ abstract buildRequestData(): {
22
+ [key: string]: string | number;
23
+ };
24
+ abstract apiRequest(endpoint: string, data: {
25
+ [key: string]: any;
26
+ }): Promise<any>;
27
+ getLoginId(): Promise<any>;
28
+ abstract login(): Promise<void>;
29
+ getTokenKey(device_id: number, endianess: Endianness): Promise<[Buffer, Buffer]>;
30
+ }
31
+ export default class CloudFactory {
32
+ static createCloud(account: string, password: string, cloud: string): CloudBase<CloudSecurity>;
33
+ }
34
+ export {};