homebridge-midea-platform 1.1.2-beta.2 → 1.1.2-beta.4

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 (76) hide show
  1. package/.husky/pre-commit +0 -0
  2. package/CHANGELOG.md +6 -1
  3. package/config.schema.json +20 -56
  4. package/dist/accessory/AccessoryFactory.d.ts +12 -12
  5. package/dist/accessory/AccessoryFactory.js +31 -31
  6. package/dist/accessory/AirConditionerAccessory.d.ts +86 -86
  7. package/dist/accessory/AirConditionerAccessory.js +560 -560
  8. package/dist/accessory/AirConditionerAccessory.js.map +1 -1
  9. package/dist/accessory/BaseAccessory.d.ts +11 -11
  10. package/dist/accessory/BaseAccessory.js +21 -21
  11. package/dist/accessory/DehumidifierAccessory.d.ts +45 -45
  12. package/dist/accessory/DehumidifierAccessory.d.ts.map +1 -1
  13. package/dist/accessory/DehumidifierAccessory.js +345 -343
  14. package/dist/accessory/DehumidifierAccessory.js.map +1 -1
  15. package/dist/accessory/ElectricWaterHeaterAccessory.d.ts +44 -44
  16. package/dist/accessory/ElectricWaterHeaterAccessory.js +176 -176
  17. package/dist/accessory/FanAccessory.d.ts +39 -39
  18. package/dist/accessory/FanAccessory.js +123 -123
  19. package/dist/accessory/FrontLoadWasherAccessory.d.ts +30 -30
  20. package/dist/accessory/FrontLoadWasherAccessory.js +60 -60
  21. package/dist/accessory/GasWaterHeaterAccessory.d.ts +51 -51
  22. package/dist/accessory/GasWaterHeaterAccessory.js +216 -216
  23. package/dist/core/MideaCloud.d.ts +35 -35
  24. package/dist/core/MideaCloud.js +350 -350
  25. package/dist/core/MideaConstants.d.ts +49 -49
  26. package/dist/core/MideaConstants.js +57 -57
  27. package/dist/core/MideaDevice.d.ts +76 -76
  28. package/dist/core/MideaDevice.js +409 -409
  29. package/dist/core/MideaDiscover.d.ts +35 -35
  30. package/dist/core/MideaDiscover.js +212 -212
  31. package/dist/core/MideaMessage.d.ts +75 -75
  32. package/dist/core/MideaMessage.js +184 -184
  33. package/dist/core/MideaPacketBuilder.d.ts +10 -10
  34. package/dist/core/MideaPacketBuilder.js +60 -60
  35. package/dist/core/MideaSecurity.d.ts +63 -63
  36. package/dist/core/MideaSecurity.js +242 -242
  37. package/dist/core/MideaUtils.d.ts +32 -32
  38. package/dist/core/MideaUtils.js +181 -181
  39. package/dist/devices/DeviceFactory.d.ts +12 -12
  40. package/dist/devices/DeviceFactory.js +33 -33
  41. package/dist/devices/a1/MideaA1Device.d.ts +76 -76
  42. package/dist/devices/a1/MideaA1Device.js +136 -136
  43. package/dist/devices/a1/MideaA1Message.d.ts +40 -40
  44. package/dist/devices/a1/MideaA1Message.js +198 -198
  45. package/dist/devices/ac/MideaACDevice.d.ts +100 -100
  46. package/dist/devices/ac/MideaACDevice.js +370 -370
  47. package/dist/devices/ac/MideaACMessage.d.ts +92 -92
  48. package/dist/devices/ac/MideaACMessage.js +589 -589
  49. package/dist/devices/db/MideaDBDevice.d.ts +29 -29
  50. package/dist/devices/db/MideaDBDevice.js +88 -88
  51. package/dist/devices/db/MideaDBMessage.d.ts +32 -32
  52. package/dist/devices/db/MideaDBMessage.js +101 -101
  53. package/dist/devices/e2/MideaE2Device.d.ts +44 -44
  54. package/dist/devices/e2/MideaE2Device.js +119 -119
  55. package/dist/devices/e2/MideaE2Message.d.ts +33 -33
  56. package/dist/devices/e2/MideaE2Message.js +132 -132
  57. package/dist/devices/e3/MideaE3Device.d.ts +43 -43
  58. package/dist/devices/e3/MideaE3Device.js +125 -125
  59. package/dist/devices/e3/MideaE3Message.d.ts +51 -51
  60. package/dist/devices/e3/MideaE3Message.js +136 -136
  61. package/dist/devices/fa/MideaFADevice.d.ts +36 -36
  62. package/dist/devices/fa/MideaFADevice.js +92 -92
  63. package/dist/devices/fa/MideaFAMessage.d.ts +38 -38
  64. package/dist/devices/fa/MideaFAMessage.js +98 -98
  65. package/dist/index.d.ts +6 -6
  66. package/dist/index.js +6 -6
  67. package/dist/platform.d.ts +60 -60
  68. package/dist/platform.js +213 -213
  69. package/dist/platformUtils.d.ts +98 -97
  70. package/dist/platformUtils.d.ts.map +1 -1
  71. package/dist/platformUtils.js +96 -95
  72. package/dist/platformUtils.js.map +1 -1
  73. package/dist/settings.d.ts +8 -8
  74. package/dist/settings.js +11 -11
  75. package/docs/db.md +3 -0
  76. package/package.json +1 -1
package/.husky/pre-commit CHANGED
File without changes
package/CHANGELOG.md CHANGED
@@ -1,5 +1,10 @@
1
1
  # Changelog
2
2
 
3
+ # v1.1.2
4
+ ## 2024-08-02
5
+ - feat: added support for `Front Load Washers` (fixes #87)
6
+ - feat: added possibility to add custom humidity offset for `Dehumidifiers` (fixes #98)
7
+
3
8
  # v1.1.0
4
9
  ## 2024-07-13
5
10
  - BREAKING CHANGE: `Air Conditioner` configuration changed: there is now a possibility to create an accessory which can be used to control the slats on the unit. THe configuration structure has changed. Please check [AC docs](/docs/ac.md) for more information (or just save the configuration again in the plugin settings to get the new structure).
@@ -15,4 +20,4 @@
15
20
  ## 2024-06-15
16
21
  - BREAKING CHANGE: there is a new conifguration option `fanOnlyModeSwitch` which will only turn on fan only mode. There is a possiblity to create an accessory to manage fan only mode using option `fanAccessory`. Setting fan to auto mode can be done from the fan accessory
17
22
  - fix: NetHome Plus login
18
- - minor quality of life improvements
23
+ - minor quality of life improvements
@@ -46,13 +46,7 @@
46
46
  "title": "Device Type",
47
47
  "type": "string",
48
48
  "required": true,
49
- "enum": [
50
- "Air Conditioner",
51
- "Dehumidifier",
52
- "Electric Water Heater",
53
- "Gas Water Heater",
54
- "Fan"
55
- ],
49
+ "enum": ["Air Conditioner", "Dehumidifier", "Front Load Washer", "Electric Water Heater", "Gas Water Heater", "Fan"],
56
50
  "description": "Select the type of device you are adding."
57
51
  },
58
52
  "name": {
@@ -132,11 +126,7 @@
132
126
  "description": "Creates a water tank sensor accessory which can be used to trigger automations when the tank is full. The sensor will show as `Leak Sensor` or `Contact Sensor` depending on this setting.",
133
127
  "type": "string",
134
128
  "required": true,
135
- "enum": [
136
- "None",
137
- "Leak Sensor",
138
- "Contact Sensor"
139
- ]
129
+ "enum": ["None", "Leak Sensor", "Contact Sensor"]
140
130
  },
141
131
  "minHumidity": {
142
132
  "title": "Minimum Relative Humidity",
@@ -154,10 +144,13 @@
154
144
  "title": "Humidity Step",
155
145
  "type": "number",
156
146
  "required": true,
157
- "enum": [
158
- 5,
159
- 10
160
- ]
147
+ "enum": [5, 10]
148
+ },
149
+ "humidityOffset": {
150
+ "title": "Humidity Offset",
151
+ "description": "Offset for the humidity sensor. This is useful if the humidity sensor is not accurate or if you want to adjust the humidity value.",
152
+ "type": "number",
153
+ "required": true
161
154
  }
162
155
  }
163
156
  },
@@ -177,12 +170,7 @@
177
170
  "description": "Set swing mode of the unit. If your unit does not support this feature then leave it on None.",
178
171
  "type": "string",
179
172
  "required": true,
180
- "enum": [
181
- "None",
182
- "Vertical",
183
- "Horizontal",
184
- "Both"
185
- ]
173
+ "enum": ["None", "Vertical", "Horizontal", "Both"]
186
174
  },
187
175
  "angleAccessory": {
188
176
  "title": "Swing Angle Accessory",
@@ -194,10 +182,7 @@
194
182
  "description": "If `mode` property is Both and the swing angle accessory is enabled, this property will be used to determine which direction will be controlled by the main position bar of the accessory.",
195
183
  "type": "string",
196
184
  "required": true,
197
- "enum": [
198
- "Vertical",
199
- "Horizontal"
200
- ]
185
+ "enum": ["Vertical", "Horizontal"]
201
186
  }
202
187
  }
203
188
  },
@@ -268,10 +253,7 @@
268
253
  "title": "Temperature Step (°C)",
269
254
  "type": "number",
270
255
  "required": true,
271
- "enum": [
272
- 0.5,
273
- 1
274
- ]
256
+ "enum": [0.5, 1]
275
257
  },
276
258
  "fahrenheit": {
277
259
  "title": "Fahrenheit",
@@ -302,11 +284,7 @@
302
284
  "description": "Selects the protocol type of the water heater. Default to 'auto' which will try to detect the protocol automatically. Try to set this to 'old' or 'new' if the plugin is unable to communicate with the water heater.",
303
285
  "type": "string",
304
286
  "required": true,
305
- "enum": [
306
- "auto",
307
- "old",
308
- "new"
309
- ]
287
+ "enum": ["auto", "old", "new"]
310
288
  },
311
289
  "minTemp": {
312
290
  "title": "Minimum Temperature (°C)",
@@ -320,10 +298,7 @@
320
298
  "title": "Temperature Step (°C)",
321
299
  "type": "number",
322
300
  "required": true,
323
- "enum": [
324
- 0.5,
325
- 1
326
- ]
301
+ "enum": [0.5, 1]
327
302
  },
328
303
  "variableHeatingSwitch": {
329
304
  "title": "Variable Heating Switch",
@@ -361,10 +336,7 @@
361
336
  "title": "Temperature Step (°C)",
362
337
  "type": "number",
363
338
  "required": true,
364
- "enum": [
365
- 0.5,
366
- 1
367
- ]
339
+ "enum": [0.5, 1]
368
340
  },
369
341
  "burningStateSensor": {
370
342
  "title": "Burning State Sensor",
@@ -407,13 +379,7 @@
407
379
  "expandable": true,
408
380
  "expanded": false,
409
381
  "title": "Optional Settings",
410
- "items": [
411
- "refreshInterval",
412
- "heartbeatInterval",
413
- "verbose",
414
- "logRecoverableErrors",
415
- "uiDebug"
416
- ]
382
+ "items": ["refreshInterval", "heartbeatInterval", "verbose", "logRecoverableErrors", "uiDebug"]
417
383
  },
418
384
  {
419
385
  "key": "devices",
@@ -448,7 +414,8 @@
448
414
  "devices[].A1_options.waterTankSensor",
449
415
  "devices[].A1_options.minHumidity",
450
416
  "devices[].A1_options.maxHumidity",
451
- "devices[].A1_options.humidityStep"
417
+ "devices[].A1_options.humidityStep",
418
+ "devices[].A1_options.humidityOffset"
452
419
  ]
453
420
  },
454
421
  {
@@ -474,10 +441,7 @@
474
441
  "devices[].AC_options.auxHeatingSwitches",
475
442
  {
476
443
  "key": "devices[].AC_options.displaySwitch",
477
- "items": [
478
- "devices[].AC_options.displaySwitch.flag",
479
- "devices[].AC_options.displaySwitch.command"
480
- ]
444
+ "items": ["devices[].AC_options.displaySwitch.flag", "devices[].AC_options.displaySwitch.command"]
481
445
  },
482
446
  "devices[].AC_options.minTemp",
483
447
  "devices[].AC_options.maxTemp",
@@ -521,4 +485,4 @@
521
485
  ]
522
486
  }
523
487
  ]
524
- }
488
+ }
@@ -1,13 +1,13 @@
1
- import { MideaAccessory, MideaPlatform } from '../platform';
2
- import AirConditionerAccessory from './AirConditionerAccessory';
3
- import DehumidifierAccessory from './DehumidifierAccessory';
4
- import FrontLoadWasherAccessory from './FrontLoadWasherAccessory';
5
- import ElectricWaterHeaterAccessory from './ElectricWaterHeaterAccessory';
6
- import GasWaterHeaterAccessory from './GasWaterHeaterAccessory';
7
- import FanAccessory from './FanAccessory';
8
- import MideaDevice from '../core/MideaDevice';
9
- import { DeviceConfig } from '../platformUtils';
10
- export default class AccessoryFactory {
11
- static createAccessory<T extends MideaDevice>(platform: MideaPlatform, accessory: MideaAccessory, device: T, configDev: DeviceConfig): AirConditionerAccessory | DehumidifierAccessory | FrontLoadWasherAccessory | ElectricWaterHeaterAccessory | GasWaterHeaterAccessory | FanAccessory | undefined;
12
- }
1
+ import { MideaAccessory, MideaPlatform } from '../platform';
2
+ import AirConditionerAccessory from './AirConditionerAccessory';
3
+ import DehumidifierAccessory from './DehumidifierAccessory';
4
+ import FrontLoadWasherAccessory from './FrontLoadWasherAccessory';
5
+ import ElectricWaterHeaterAccessory from './ElectricWaterHeaterAccessory';
6
+ import GasWaterHeaterAccessory from './GasWaterHeaterAccessory';
7
+ import FanAccessory from './FanAccessory';
8
+ import MideaDevice from '../core/MideaDevice';
9
+ import { DeviceConfig } from '../platformUtils';
10
+ export default class AccessoryFactory {
11
+ static createAccessory<T extends MideaDevice>(platform: MideaPlatform, accessory: MideaAccessory, device: T, configDev: DeviceConfig): AirConditionerAccessory | DehumidifierAccessory | FrontLoadWasherAccessory | ElectricWaterHeaterAccessory | GasWaterHeaterAccessory | FanAccessory | undefined;
12
+ }
13
13
  //# sourceMappingURL=AccessoryFactory.d.ts.map
@@ -1,32 +1,32 @@
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 MideaConstants_1 = require("../core/MideaConstants");
7
- const AirConditionerAccessory_1 = __importDefault(require("./AirConditionerAccessory"));
8
- const DehumidifierAccessory_1 = __importDefault(require("./DehumidifierAccessory"));
9
- const FrontLoadWasherAccessory_1 = __importDefault(require("./FrontLoadWasherAccessory"));
10
- const ElectricWaterHeaterAccessory_1 = __importDefault(require("./ElectricWaterHeaterAccessory"));
11
- const GasWaterHeaterAccessory_1 = __importDefault(require("./GasWaterHeaterAccessory"));
12
- const FanAccessory_1 = __importDefault(require("./FanAccessory"));
13
- class AccessoryFactory {
14
- static createAccessory(platform, accessory, device, configDev) {
15
- switch (device.type) {
16
- case MideaConstants_1.DeviceType.AIR_CONDITIONER:
17
- return new AirConditionerAccessory_1.default(platform, accessory, device, configDev);
18
- case MideaConstants_1.DeviceType.DEHUMIDIFIER:
19
- return new DehumidifierAccessory_1.default(platform, accessory, device, configDev);
20
- case MideaConstants_1.DeviceType.FRONT_LOAD_WASHER:
21
- return new FrontLoadWasherAccessory_1.default(platform, accessory, device, configDev);
22
- case MideaConstants_1.DeviceType.ELECTRIC_WATER_HEATER:
23
- return new ElectricWaterHeaterAccessory_1.default(platform, accessory, device, configDev);
24
- case MideaConstants_1.DeviceType.GAS_WATER_HEATER:
25
- return new GasWaterHeaterAccessory_1.default(platform, accessory, device, configDev);
26
- case MideaConstants_1.DeviceType.FAN:
27
- return new FanAccessory_1.default(platform, accessory, device, configDev);
28
- }
29
- }
30
- }
31
- exports.default = AccessoryFactory;
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 MideaConstants_1 = require("../core/MideaConstants");
7
+ const AirConditionerAccessory_1 = __importDefault(require("./AirConditionerAccessory"));
8
+ const DehumidifierAccessory_1 = __importDefault(require("./DehumidifierAccessory"));
9
+ const FrontLoadWasherAccessory_1 = __importDefault(require("./FrontLoadWasherAccessory"));
10
+ const ElectricWaterHeaterAccessory_1 = __importDefault(require("./ElectricWaterHeaterAccessory"));
11
+ const GasWaterHeaterAccessory_1 = __importDefault(require("./GasWaterHeaterAccessory"));
12
+ const FanAccessory_1 = __importDefault(require("./FanAccessory"));
13
+ class AccessoryFactory {
14
+ static createAccessory(platform, accessory, device, configDev) {
15
+ switch (device.type) {
16
+ case MideaConstants_1.DeviceType.AIR_CONDITIONER:
17
+ return new AirConditionerAccessory_1.default(platform, accessory, device, configDev);
18
+ case MideaConstants_1.DeviceType.DEHUMIDIFIER:
19
+ return new DehumidifierAccessory_1.default(platform, accessory, device, configDev);
20
+ case MideaConstants_1.DeviceType.FRONT_LOAD_WASHER:
21
+ return new FrontLoadWasherAccessory_1.default(platform, accessory, device, configDev);
22
+ case MideaConstants_1.DeviceType.ELECTRIC_WATER_HEATER:
23
+ return new ElectricWaterHeaterAccessory_1.default(platform, accessory, device, configDev);
24
+ case MideaConstants_1.DeviceType.GAS_WATER_HEATER:
25
+ return new GasWaterHeaterAccessory_1.default(platform, accessory, device, configDev);
26
+ case MideaConstants_1.DeviceType.FAN:
27
+ return new FanAccessory_1.default(platform, accessory, device, configDev);
28
+ }
29
+ }
30
+ }
31
+ exports.default = AccessoryFactory;
32
32
  //# sourceMappingURL=AccessoryFactory.js.map
@@ -1,87 +1,87 @@
1
- /***********************************************************************
2
- * Midea Platform Air Conditioner Accessory class
3
- *
4
- * Copyright (c) 2023 Kovalovszky Patrik, https://github.com/kovapatrik
5
- *
6
- * Based on https://github.com/homebridge/homebridge-plugin-template
7
- *
8
- * An instance of this class is created for each accessory the platform registers.
9
- *
10
- */
11
- import { CharacteristicValue } from 'homebridge';
12
- import { MideaAccessory, MideaPlatform } from '../platform';
13
- import BaseAccessory from './BaseAccessory';
14
- import { DeviceConfig } from '../platformUtils';
15
- import MideaACDevice, { ACAttributes } from '../devices/ac/MideaACDevice';
16
- export default class AirConditionerAccessory extends BaseAccessory<MideaACDevice> {
17
- protected readonly device: MideaACDevice;
18
- protected readonly configDev: DeviceConfig;
19
- private service;
20
- private outDoorTemperatureService?;
21
- private displayService?;
22
- private fanOnlyService?;
23
- private fanService?;
24
- private ecoModeService?;
25
- private breezeAwayService?;
26
- private dryModeService?;
27
- private auxService?;
28
- private auxHeatingService?;
29
- private swingAngleService?;
30
- private swingAngleMainControl;
31
- /*********************************************************************
32
- * Constructor registers all the service types with Homebridge, registers
33
- * a callback function with the MideaDevice class, and requests device status.
34
- */
35
- constructor(platform: MideaPlatform, accessory: MideaAccessory, device: MideaACDevice, configDev: DeviceConfig);
36
- /*********************************************************************
37
- * Callback function called by MideaDevice whenever there is a change to
38
- * any attribute value.
39
- */
40
- protected updateCharacteristics(attributes: Partial<ACAttributes>): Promise<void>;
41
- /*********************************************************************
42
- * Callback functions for each Homebridge/HomeKit service
43
- *
44
- */
45
- getActive(): CharacteristicValue;
46
- setActive(value: CharacteristicValue): Promise<void>;
47
- getTemperatureDisplayUnits(): CharacteristicValue;
48
- setTemperatureDisplayUnits(value: CharacteristicValue): Promise<void>;
49
- getCurrentHeaterCoolerState(): CharacteristicValue;
50
- getTargetHeaterCoolerState(): CharacteristicValue;
51
- setTargetHeaterCoolerState(value: CharacteristicValue): Promise<void>;
52
- getCurrentTemperature(): CharacteristicValue;
53
- getTargetTemperature(): CharacteristicValue;
54
- getFanOnlyMode(): CharacteristicValue;
55
- setFanOnlyMode(value: CharacteristicValue): Promise<void>;
56
- getFanState(): CharacteristicValue;
57
- setFanState(value: CharacteristicValue): Promise<void>;
58
- setTargetTemperature(value: CharacteristicValue): Promise<void>;
59
- getSwingMode(): CharacteristicValue;
60
- setSwingMode(value: CharacteristicValue): Promise<void>;
61
- getRotationSpeed(): CharacteristicValue;
62
- setRotationSpeed(value: CharacteristicValue): Promise<void>;
63
- getOutdoorTemperature(): CharacteristicValue;
64
- getDisplayActive(): CharacteristicValue;
65
- setDisplayActive(value: CharacteristicValue): Promise<void>;
66
- getEcoMode(): CharacteristicValue;
67
- setEcoMode(value: CharacteristicValue): Promise<void>;
68
- getBreezeAway(): CharacteristicValue;
69
- setBreezeAway(value: CharacteristicValue): Promise<void>;
70
- getDryMode(): CharacteristicValue;
71
- setDryMode(value: CharacteristicValue): Promise<void>;
72
- getAux(): CharacteristicValue;
73
- setAux(value: CharacteristicValue): Promise<void>;
74
- getAuxHeating(): CharacteristicValue;
75
- setAuxHeating(value: CharacteristicValue): Promise<void>;
76
- getSwingAngleCurrentPosition(): CharacteristicValue;
77
- getSwingAngleTargetPosition(): CharacteristicValue;
78
- setSwingAngleTargetPosition(value: CharacteristicValue): Promise<void>;
79
- getSwingAnglePositionState(): CharacteristicValue;
80
- getSwingAngleCurrentHorizontalTiltAngle(): CharacteristicValue;
81
- getSwingAngleTargetHorizontalTiltAngle(): CharacteristicValue;
82
- setSwingAngleTargetHorizontalTiltAngle(value: CharacteristicValue): Promise<void>;
83
- getSwingAngleCurrentVerticalTiltAngle(): CharacteristicValue;
84
- getSwingAngleTargetVerticalTiltAngle(): CharacteristicValue;
85
- setSwingAngleTargetVerticalTiltAngle(value: CharacteristicValue): Promise<void>;
86
- }
1
+ /***********************************************************************
2
+ * Midea Platform Air Conditioner Accessory class
3
+ *
4
+ * Copyright (c) 2023 Kovalovszky Patrik, https://github.com/kovapatrik
5
+ *
6
+ * Based on https://github.com/homebridge/homebridge-plugin-template
7
+ *
8
+ * An instance of this class is created for each accessory the platform registers.
9
+ *
10
+ */
11
+ import { CharacteristicValue } from 'homebridge';
12
+ import { MideaAccessory, MideaPlatform } from '../platform';
13
+ import BaseAccessory from './BaseAccessory';
14
+ import { DeviceConfig } from '../platformUtils';
15
+ import MideaACDevice, { ACAttributes } from '../devices/ac/MideaACDevice';
16
+ export default class AirConditionerAccessory extends BaseAccessory<MideaACDevice> {
17
+ protected readonly device: MideaACDevice;
18
+ protected readonly configDev: DeviceConfig;
19
+ private service;
20
+ private outDoorTemperatureService?;
21
+ private displayService?;
22
+ private fanOnlyService?;
23
+ private fanService?;
24
+ private ecoModeService?;
25
+ private breezeAwayService?;
26
+ private dryModeService?;
27
+ private auxService?;
28
+ private auxHeatingService?;
29
+ private swingAngleService?;
30
+ private swingAngleMainControl;
31
+ /*********************************************************************
32
+ * Constructor registers all the service types with Homebridge, registers
33
+ * a callback function with the MideaDevice class, and requests device status.
34
+ */
35
+ constructor(platform: MideaPlatform, accessory: MideaAccessory, device: MideaACDevice, configDev: DeviceConfig);
36
+ /*********************************************************************
37
+ * Callback function called by MideaDevice whenever there is a change to
38
+ * any attribute value.
39
+ */
40
+ protected updateCharacteristics(attributes: Partial<ACAttributes>): Promise<void>;
41
+ /*********************************************************************
42
+ * Callback functions for each Homebridge/HomeKit service
43
+ *
44
+ */
45
+ getActive(): CharacteristicValue;
46
+ setActive(value: CharacteristicValue): Promise<void>;
47
+ getTemperatureDisplayUnits(): CharacteristicValue;
48
+ setTemperatureDisplayUnits(value: CharacteristicValue): Promise<void>;
49
+ getCurrentHeaterCoolerState(): CharacteristicValue;
50
+ getTargetHeaterCoolerState(): CharacteristicValue;
51
+ setTargetHeaterCoolerState(value: CharacteristicValue): Promise<void>;
52
+ getCurrentTemperature(): CharacteristicValue;
53
+ getTargetTemperature(): CharacteristicValue;
54
+ getFanOnlyMode(): CharacteristicValue;
55
+ setFanOnlyMode(value: CharacteristicValue): Promise<void>;
56
+ getFanState(): CharacteristicValue;
57
+ setFanState(value: CharacteristicValue): Promise<void>;
58
+ setTargetTemperature(value: CharacteristicValue): Promise<void>;
59
+ getSwingMode(): CharacteristicValue;
60
+ setSwingMode(value: CharacteristicValue): Promise<void>;
61
+ getRotationSpeed(): CharacteristicValue;
62
+ setRotationSpeed(value: CharacteristicValue): Promise<void>;
63
+ getOutdoorTemperature(): CharacteristicValue;
64
+ getDisplayActive(): CharacteristicValue;
65
+ setDisplayActive(value: CharacteristicValue): Promise<void>;
66
+ getEcoMode(): CharacteristicValue;
67
+ setEcoMode(value: CharacteristicValue): Promise<void>;
68
+ getBreezeAway(): CharacteristicValue;
69
+ setBreezeAway(value: CharacteristicValue): Promise<void>;
70
+ getDryMode(): CharacteristicValue;
71
+ setDryMode(value: CharacteristicValue): Promise<void>;
72
+ getAux(): CharacteristicValue;
73
+ setAux(value: CharacteristicValue): Promise<void>;
74
+ getAuxHeating(): CharacteristicValue;
75
+ setAuxHeating(value: CharacteristicValue): Promise<void>;
76
+ getSwingAngleCurrentPosition(): CharacteristicValue;
77
+ getSwingAngleTargetPosition(): CharacteristicValue;
78
+ setSwingAngleTargetPosition(value: CharacteristicValue): Promise<void>;
79
+ getSwingAnglePositionState(): CharacteristicValue;
80
+ getSwingAngleCurrentHorizontalTiltAngle(): CharacteristicValue;
81
+ getSwingAngleTargetHorizontalTiltAngle(): CharacteristicValue;
82
+ setSwingAngleTargetHorizontalTiltAngle(value: CharacteristicValue): Promise<void>;
83
+ getSwingAngleCurrentVerticalTiltAngle(): CharacteristicValue;
84
+ getSwingAngleTargetVerticalTiltAngle(): CharacteristicValue;
85
+ setSwingAngleTargetVerticalTiltAngle(value: CharacteristicValue): Promise<void>;
86
+ }
87
87
  //# sourceMappingURL=AirConditionerAccessory.d.ts.map