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
@@ -1 +1 @@
1
- {"version":3,"file":"DehumidifierAccessory.js","sourceRoot":"","sources":["../../src/accessory/DehumidifierAccessory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DehumidifierAccessory.js","sourceRoot":"","sources":["../../src/accessory/DehumidifierAccessory.ts"],"names":[],"mappings":"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"}
@@ -1,45 +1,45 @@
1
- /***********************************************************************
2
- * Midea Platform Electric Water Heater Accessory class
3
- *
4
- * Copyright (c) 2024 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 MideaE2Device, { E2Attributes } from '../devices/e2/MideaE2Device';
13
- import BaseAccessory from './BaseAccessory';
14
- import { MideaAccessory, MideaPlatform } from '../platform';
15
- import { DeviceConfig } from '../platformUtils';
16
- export default class ElectricWaterHeaterAccessory extends BaseAccessory<MideaE2Device> {
17
- protected readonly device: MideaE2Device;
18
- protected readonly configDev: DeviceConfig;
19
- private service;
20
- private variableHeatingService?;
21
- private wholeTankHeatingService?;
22
- constructor(platform: MideaPlatform, accessory: MideaAccessory, device: MideaE2Device, configDev: DeviceConfig);
23
- /*********************************************************************
24
- * Callback function called by MideaDevice whenever there is a change to
25
- * any attribute value.
26
- */
27
- protected updateCharacteristics(attributes: Partial<E2Attributes>): Promise<void>;
28
- /*********************************************************************
29
- * Callback functions for each Homebridge/HomeKit service
30
- *
31
- */
32
- getActive(): CharacteristicValue;
33
- setActive(value: CharacteristicValue): Promise<void>;
34
- getCurrentHeaterCoolerState(): CharacteristicValue;
35
- getTargetHeaterCoolerState(): CharacteristicValue;
36
- setTargetHeaterCoolerState(value: CharacteristicValue): Promise<void>;
37
- getCurrentTemperature(): CharacteristicValue;
38
- getTargetTemperature(): CharacteristicValue;
39
- setTargetTemperature(value: CharacteristicValue): Promise<void>;
40
- getVariableHeating(): CharacteristicValue;
41
- setVariableHeating(value: CharacteristicValue): Promise<void>;
42
- getWholeTankHeating(): CharacteristicValue;
43
- setWholeTankHeating(value: CharacteristicValue): Promise<void>;
44
- }
1
+ /***********************************************************************
2
+ * Midea Platform Electric Water Heater Accessory class
3
+ *
4
+ * Copyright (c) 2024 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 MideaE2Device, { E2Attributes } from '../devices/e2/MideaE2Device';
13
+ import BaseAccessory from './BaseAccessory';
14
+ import { MideaAccessory, MideaPlatform } from '../platform';
15
+ import { DeviceConfig } from '../platformUtils';
16
+ export default class ElectricWaterHeaterAccessory extends BaseAccessory<MideaE2Device> {
17
+ protected readonly device: MideaE2Device;
18
+ protected readonly configDev: DeviceConfig;
19
+ private service;
20
+ private variableHeatingService?;
21
+ private wholeTankHeatingService?;
22
+ constructor(platform: MideaPlatform, accessory: MideaAccessory, device: MideaE2Device, configDev: DeviceConfig);
23
+ /*********************************************************************
24
+ * Callback function called by MideaDevice whenever there is a change to
25
+ * any attribute value.
26
+ */
27
+ protected updateCharacteristics(attributes: Partial<E2Attributes>): Promise<void>;
28
+ /*********************************************************************
29
+ * Callback functions for each Homebridge/HomeKit service
30
+ *
31
+ */
32
+ getActive(): CharacteristicValue;
33
+ setActive(value: CharacteristicValue): Promise<void>;
34
+ getCurrentHeaterCoolerState(): CharacteristicValue;
35
+ getTargetHeaterCoolerState(): CharacteristicValue;
36
+ setTargetHeaterCoolerState(value: CharacteristicValue): Promise<void>;
37
+ getCurrentTemperature(): CharacteristicValue;
38
+ getTargetTemperature(): CharacteristicValue;
39
+ setTargetTemperature(value: CharacteristicValue): Promise<void>;
40
+ getVariableHeating(): CharacteristicValue;
41
+ setVariableHeating(value: CharacteristicValue): Promise<void>;
42
+ getWholeTankHeating(): CharacteristicValue;
43
+ setWholeTankHeating(value: CharacteristicValue): Promise<void>;
44
+ }
45
45
  //# sourceMappingURL=ElectricWaterHeaterAccessory.d.ts.map
@@ -1,177 +1,177 @@
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 ElectricWaterHeaterAccessory extends BaseAccessory_1.default {
8
- constructor(platform, accessory, device, configDev) {
9
- var _a, _b;
10
- super(platform, accessory, device, configDev);
11
- this.device = device;
12
- this.configDev = configDev;
13
- this.service =
14
- this.accessory.getService(this.platform.Service.HeaterCooler) || this.accessory.addService(this.platform.Service.HeaterCooler);
15
- this.service.setCharacteristic(this.platform.Characteristic.Name, this.device.name);
16
- this.service.getCharacteristic(this.platform.Characteristic.Active).onGet(this.getActive.bind(this)).onSet(this.setActive.bind(this));
17
- this.service
18
- .getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState)
19
- .onGet(this.getCurrentHeaterCoolerState.bind(this));
20
- this.service
21
- .getCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState)
22
- .onGet(this.getTargetHeaterCoolerState.bind(this))
23
- .onSet(this.setTargetHeaterCoolerState.bind(this))
24
- .setProps({
25
- validValues: [
26
- this.platform.Characteristic.TargetHeatingCoolingState.OFF,
27
- this.platform.Characteristic.TargetHeaterCoolerState.HEAT,
28
- ],
29
- });
30
- this.service.getCharacteristic(this.platform.Characteristic.CurrentTemperature).onGet(this.getCurrentTemperature.bind(this));
31
- this.service
32
- .getCharacteristic(this.platform.Characteristic.HeatingThresholdTemperature)
33
- .onGet(this.getTargetTemperature.bind(this))
34
- .onSet(this.setTargetTemperature.bind(this))
35
- .setProps({
36
- minValue: this.configDev.E2_options.minTemp,
37
- maxValue: this.configDev.E2_options.maxTemp,
38
- minStep: this.configDev.E2_options.tempStep,
39
- });
40
- this.variableHeatingService = this.accessory.getServiceById(this.platform.Service.Switch, 'VariableHeating');
41
- if (this.configDev.E2_options.variableHeatingSwitch) {
42
- (_a = this.variableHeatingService) !== null && _a !== void 0 ? _a : (this.variableHeatingService = this.accessory.addService(this.platform.Service.Switch, `${this.device.name} Variable Heating`, 'VariableHeating'));
43
- this.variableHeatingService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Variable Heating`);
44
- this.variableHeatingService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Variable Heating`);
45
- this.variableHeatingService
46
- .getCharacteristic(this.platform.Characteristic.On)
47
- .onGet(this.getVariableHeating.bind(this))
48
- .onSet(this.setVariableHeating.bind(this));
49
- }
50
- else if (this.variableHeatingService) {
51
- this.accessory.removeService(this.variableHeatingService);
52
- }
53
- this.wholeTankHeatingService = this.accessory.getServiceById(this.platform.Service.Switch, 'WholeTankHeating');
54
- if (this.configDev.E2_options.wholeTankHeatingSwitch) {
55
- (_b = this.wholeTankHeatingService) !== null && _b !== void 0 ? _b : (this.wholeTankHeatingService = this.accessory.addService(this.platform.Service.Switch, `${this.device.name} Whole Tank Heating`, 'WholeTankHeating'));
56
- this.wholeTankHeatingService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Whole Tank Heating`);
57
- this.wholeTankHeatingService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Whole Tank Heating`);
58
- this.wholeTankHeatingService
59
- .getCharacteristic(this.platform.Characteristic.On)
60
- .onGet(this.getWholeTankHeating.bind(this))
61
- .onSet(this.setWholeTankHeating.bind(this));
62
- }
63
- else if (this.wholeTankHeatingService) {
64
- this.accessory.removeService(this.wholeTankHeatingService);
65
- }
66
- }
67
- /*********************************************************************
68
- * Callback function called by MideaDevice whenever there is a change to
69
- * any attribute value.
70
- */
71
- async updateCharacteristics(attributes) {
72
- var _a, _b;
73
- for (const [k, v] of Object.entries(attributes)) {
74
- this.platform.log.debug(`[${this.device.name}] Set attribute ${k} to: ${v}`);
75
- let updateState = false;
76
- switch (k.toLowerCase()) {
77
- case 'power':
78
- this.service.updateCharacteristic(this.platform.Characteristic.Active, v ? this.platform.Characteristic.Active.ACTIVE : this.platform.Characteristic.Active.INACTIVE);
79
- updateState = true;
80
- break;
81
- case 'heating':
82
- this.service.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, v ? this.platform.Characteristic.CurrentHeaterCoolerState.HEATING : this.platform.Characteristic.CurrentHeaterCoolerState.IDLE);
83
- updateState = true;
84
- break;
85
- // case 'keep_warm':
86
- // this.platform.log.debug(`[${this.device.name}] Keep warm: ${v}`);
87
- // break;
88
- // case 'protection':
89
- // this.platform.log.debug(`[${this.device.name}] Protection: ${v}`);
90
- // break;
91
- case 'current_temperature':
92
- this.service.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, v);
93
- updateState = true;
94
- break;
95
- case 'target_temperature':
96
- this.service.updateCharacteristic(this.platform.Characteristic.TargetTemperature, v);
97
- updateState = true;
98
- break;
99
- case 'whole_tank_heating':
100
- (_a = this.wholeTankHeatingService) === null || _a === void 0 ? void 0 : _a.updateCharacteristic(this.platform.Characteristic.On, v);
101
- break;
102
- case 'variable_heating':
103
- (_b = this.variableHeatingService) === null || _b === void 0 ? void 0 : _b.updateCharacteristic(this.platform.Characteristic.On, v);
104
- break;
105
- // case 'heating_time_remaining':
106
- // this.platform.log.debug(`[${this.device.name}] Heating time remaining: ${v}`);
107
- // break;
108
- // case 'water_consumption':
109
- // this.platform.log.debug(`[${this.device.name}] Water consumption: ${v}`);
110
- // break;
111
- // case 'heating_power':
112
- // this.platform.log.debug(`[${this.device.name}] Heating power: ${v}`);
113
- // break;
114
- default:
115
- this.platform.log.debug(`[${this.device.name}] Attempt to set unsupported attribute ${k} to ${v}`);
116
- }
117
- if (updateState) {
118
- this.service.updateCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState, this.getTargetHeaterCoolerState());
119
- this.service.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, this.getCurrentHeaterCoolerState());
120
- }
121
- }
122
- }
123
- /*********************************************************************
124
- * Callback functions for each Homebridge/HomeKit service
125
- *
126
- */
127
- getActive() {
128
- return this.device.attributes.POWER ? this.platform.Characteristic.Active.ACTIVE : this.platform.Characteristic.Active.INACTIVE;
129
- }
130
- async setActive(value) {
131
- await this.device.set_attribute({ POWER: !!value });
132
- }
133
- getCurrentHeaterCoolerState() {
134
- if (this.device.attributes.POWER) {
135
- return this.device.attributes.HEATING
136
- ? this.platform.Characteristic.CurrentHeaterCoolerState.HEATING
137
- : this.platform.Characteristic.CurrentHeaterCoolerState.IDLE;
138
- }
139
- return this.platform.Characteristic.CurrentHeaterCoolerState.INACTIVE;
140
- }
141
- getTargetHeaterCoolerState() {
142
- return this.platform.Characteristic.TargetHeaterCoolerState.HEAT;
143
- }
144
- async setTargetHeaterCoolerState(value) {
145
- if (value === this.platform.Characteristic.TargetHeaterCoolerState.HEAT) {
146
- await this.device.set_attribute({ POWER: true });
147
- }
148
- else {
149
- await this.device.set_attribute({ POWER: false });
150
- }
151
- }
152
- getCurrentTemperature() {
153
- var _a;
154
- return (_a = this.device.attributes.CURRENT_TEMPERATURE) !== null && _a !== void 0 ? _a : this.configDev.E2_options.minTemp;
155
- }
156
- getTargetTemperature() {
157
- return Math.max(this.configDev.E2_options.minTemp, Math.min(this.configDev.E2_options.maxTemp, this.device.attributes.TARGET_TEMPERATURE));
158
- }
159
- async setTargetTemperature(value) {
160
- value = Math.max(this.configDev.E2_options.minTemp, Math.min(this.configDev.E2_options.maxTemp, value));
161
- await this.device.set_attribute({ TARGET_TEMPERATURE: value });
162
- }
163
- getVariableHeating() {
164
- return this.device.attributes.VARIABLE_HEATING;
165
- }
166
- async setVariableHeating(value) {
167
- await this.device.set_attribute({ VARIABLE_HEATING: !!value });
168
- }
169
- getWholeTankHeating() {
170
- return this.device.attributes.WHOLE_TANK_HEATING;
171
- }
172
- async setWholeTankHeating(value) {
173
- await this.device.set_attribute({ WHOLE_TANK_HEATING: !!value });
174
- }
175
- }
176
- exports.default = ElectricWaterHeaterAccessory;
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 ElectricWaterHeaterAccessory extends BaseAccessory_1.default {
8
+ constructor(platform, accessory, device, configDev) {
9
+ var _a, _b;
10
+ super(platform, accessory, device, configDev);
11
+ this.device = device;
12
+ this.configDev = configDev;
13
+ this.service =
14
+ this.accessory.getService(this.platform.Service.HeaterCooler) || this.accessory.addService(this.platform.Service.HeaterCooler);
15
+ this.service.setCharacteristic(this.platform.Characteristic.Name, this.device.name);
16
+ this.service.getCharacteristic(this.platform.Characteristic.Active).onGet(this.getActive.bind(this)).onSet(this.setActive.bind(this));
17
+ this.service
18
+ .getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState)
19
+ .onGet(this.getCurrentHeaterCoolerState.bind(this));
20
+ this.service
21
+ .getCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState)
22
+ .onGet(this.getTargetHeaterCoolerState.bind(this))
23
+ .onSet(this.setTargetHeaterCoolerState.bind(this))
24
+ .setProps({
25
+ validValues: [
26
+ this.platform.Characteristic.TargetHeatingCoolingState.OFF,
27
+ this.platform.Characteristic.TargetHeaterCoolerState.HEAT,
28
+ ],
29
+ });
30
+ this.service.getCharacteristic(this.platform.Characteristic.CurrentTemperature).onGet(this.getCurrentTemperature.bind(this));
31
+ this.service
32
+ .getCharacteristic(this.platform.Characteristic.HeatingThresholdTemperature)
33
+ .onGet(this.getTargetTemperature.bind(this))
34
+ .onSet(this.setTargetTemperature.bind(this))
35
+ .setProps({
36
+ minValue: this.configDev.E2_options.minTemp,
37
+ maxValue: this.configDev.E2_options.maxTemp,
38
+ minStep: this.configDev.E2_options.tempStep,
39
+ });
40
+ this.variableHeatingService = this.accessory.getServiceById(this.platform.Service.Switch, 'VariableHeating');
41
+ if (this.configDev.E2_options.variableHeatingSwitch) {
42
+ (_a = this.variableHeatingService) !== null && _a !== void 0 ? _a : (this.variableHeatingService = this.accessory.addService(this.platform.Service.Switch, `${this.device.name} Variable Heating`, 'VariableHeating'));
43
+ this.variableHeatingService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Variable Heating`);
44
+ this.variableHeatingService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Variable Heating`);
45
+ this.variableHeatingService
46
+ .getCharacteristic(this.platform.Characteristic.On)
47
+ .onGet(this.getVariableHeating.bind(this))
48
+ .onSet(this.setVariableHeating.bind(this));
49
+ }
50
+ else if (this.variableHeatingService) {
51
+ this.accessory.removeService(this.variableHeatingService);
52
+ }
53
+ this.wholeTankHeatingService = this.accessory.getServiceById(this.platform.Service.Switch, 'WholeTankHeating');
54
+ if (this.configDev.E2_options.wholeTankHeatingSwitch) {
55
+ (_b = this.wholeTankHeatingService) !== null && _b !== void 0 ? _b : (this.wholeTankHeatingService = this.accessory.addService(this.platform.Service.Switch, `${this.device.name} Whole Tank Heating`, 'WholeTankHeating'));
56
+ this.wholeTankHeatingService.setCharacteristic(this.platform.Characteristic.Name, `${this.device.name} Whole Tank Heating`);
57
+ this.wholeTankHeatingService.setCharacteristic(this.platform.Characteristic.ConfiguredName, `${this.device.name} Whole Tank Heating`);
58
+ this.wholeTankHeatingService
59
+ .getCharacteristic(this.platform.Characteristic.On)
60
+ .onGet(this.getWholeTankHeating.bind(this))
61
+ .onSet(this.setWholeTankHeating.bind(this));
62
+ }
63
+ else if (this.wholeTankHeatingService) {
64
+ this.accessory.removeService(this.wholeTankHeatingService);
65
+ }
66
+ }
67
+ /*********************************************************************
68
+ * Callback function called by MideaDevice whenever there is a change to
69
+ * any attribute value.
70
+ */
71
+ async updateCharacteristics(attributes) {
72
+ var _a, _b;
73
+ for (const [k, v] of Object.entries(attributes)) {
74
+ this.platform.log.debug(`[${this.device.name}] Set attribute ${k} to: ${v}`);
75
+ let updateState = false;
76
+ switch (k.toLowerCase()) {
77
+ case 'power':
78
+ this.service.updateCharacteristic(this.platform.Characteristic.Active, v ? this.platform.Characteristic.Active.ACTIVE : this.platform.Characteristic.Active.INACTIVE);
79
+ updateState = true;
80
+ break;
81
+ case 'heating':
82
+ this.service.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, v ? this.platform.Characteristic.CurrentHeaterCoolerState.HEATING : this.platform.Characteristic.CurrentHeaterCoolerState.IDLE);
83
+ updateState = true;
84
+ break;
85
+ // case 'keep_warm':
86
+ // this.platform.log.debug(`[${this.device.name}] Keep warm: ${v}`);
87
+ // break;
88
+ // case 'protection':
89
+ // this.platform.log.debug(`[${this.device.name}] Protection: ${v}`);
90
+ // break;
91
+ case 'current_temperature':
92
+ this.service.updateCharacteristic(this.platform.Characteristic.CurrentTemperature, v);
93
+ updateState = true;
94
+ break;
95
+ case 'target_temperature':
96
+ this.service.updateCharacteristic(this.platform.Characteristic.TargetTemperature, v);
97
+ updateState = true;
98
+ break;
99
+ case 'whole_tank_heating':
100
+ (_a = this.wholeTankHeatingService) === null || _a === void 0 ? void 0 : _a.updateCharacteristic(this.platform.Characteristic.On, v);
101
+ break;
102
+ case 'variable_heating':
103
+ (_b = this.variableHeatingService) === null || _b === void 0 ? void 0 : _b.updateCharacteristic(this.platform.Characteristic.On, v);
104
+ break;
105
+ // case 'heating_time_remaining':
106
+ // this.platform.log.debug(`[${this.device.name}] Heating time remaining: ${v}`);
107
+ // break;
108
+ // case 'water_consumption':
109
+ // this.platform.log.debug(`[${this.device.name}] Water consumption: ${v}`);
110
+ // break;
111
+ // case 'heating_power':
112
+ // this.platform.log.debug(`[${this.device.name}] Heating power: ${v}`);
113
+ // break;
114
+ default:
115
+ this.platform.log.debug(`[${this.device.name}] Attempt to set unsupported attribute ${k} to ${v}`);
116
+ }
117
+ if (updateState) {
118
+ this.service.updateCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState, this.getTargetHeaterCoolerState());
119
+ this.service.updateCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState, this.getCurrentHeaterCoolerState());
120
+ }
121
+ }
122
+ }
123
+ /*********************************************************************
124
+ * Callback functions for each Homebridge/HomeKit service
125
+ *
126
+ */
127
+ getActive() {
128
+ return this.device.attributes.POWER ? this.platform.Characteristic.Active.ACTIVE : this.platform.Characteristic.Active.INACTIVE;
129
+ }
130
+ async setActive(value) {
131
+ await this.device.set_attribute({ POWER: !!value });
132
+ }
133
+ getCurrentHeaterCoolerState() {
134
+ if (this.device.attributes.POWER) {
135
+ return this.device.attributes.HEATING
136
+ ? this.platform.Characteristic.CurrentHeaterCoolerState.HEATING
137
+ : this.platform.Characteristic.CurrentHeaterCoolerState.IDLE;
138
+ }
139
+ return this.platform.Characteristic.CurrentHeaterCoolerState.INACTIVE;
140
+ }
141
+ getTargetHeaterCoolerState() {
142
+ return this.platform.Characteristic.TargetHeaterCoolerState.HEAT;
143
+ }
144
+ async setTargetHeaterCoolerState(value) {
145
+ if (value === this.platform.Characteristic.TargetHeaterCoolerState.HEAT) {
146
+ await this.device.set_attribute({ POWER: true });
147
+ }
148
+ else {
149
+ await this.device.set_attribute({ POWER: false });
150
+ }
151
+ }
152
+ getCurrentTemperature() {
153
+ var _a;
154
+ return (_a = this.device.attributes.CURRENT_TEMPERATURE) !== null && _a !== void 0 ? _a : this.configDev.E2_options.minTemp;
155
+ }
156
+ getTargetTemperature() {
157
+ return Math.max(this.configDev.E2_options.minTemp, Math.min(this.configDev.E2_options.maxTemp, this.device.attributes.TARGET_TEMPERATURE));
158
+ }
159
+ async setTargetTemperature(value) {
160
+ value = Math.max(this.configDev.E2_options.minTemp, Math.min(this.configDev.E2_options.maxTemp, value));
161
+ await this.device.set_attribute({ TARGET_TEMPERATURE: value });
162
+ }
163
+ getVariableHeating() {
164
+ return this.device.attributes.VARIABLE_HEATING;
165
+ }
166
+ async setVariableHeating(value) {
167
+ await this.device.set_attribute({ VARIABLE_HEATING: !!value });
168
+ }
169
+ getWholeTankHeating() {
170
+ return this.device.attributes.WHOLE_TANK_HEATING;
171
+ }
172
+ async setWholeTankHeating(value) {
173
+ await this.device.set_attribute({ WHOLE_TANK_HEATING: !!value });
174
+ }
175
+ }
176
+ exports.default = ElectricWaterHeaterAccessory;
177
177
  //# sourceMappingURL=ElectricWaterHeaterAccessory.js.map
@@ -1,40 +1,40 @@
1
- /***********************************************************************
2
- * Midea Platform Fan Accessory class
3
- *
4
- * Copyright (c) 2024 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 MideaFADevice, { FAAttributes } from '../devices/fa/MideaFADevice';
16
- export default class FanAccessory extends BaseAccessory<MideaFADevice> {
17
- protected readonly device: MideaFADevice;
18
- protected readonly configDev: DeviceConfig;
19
- private service;
20
- /*********************************************************************
21
- * Constructor registers all the service types with Homebridge, registers
22
- * a callback function with the MideaDevice class, and requests device status.
23
- */
24
- constructor(platform: MideaPlatform, accessory: MideaAccessory, device: MideaFADevice, configDev: DeviceConfig);
25
- updateCharacteristics(attributes: Partial<FAAttributes>): Promise<void>;
26
- getActive(): CharacteristicValue;
27
- setActive(value: CharacteristicValue): Promise<void>;
28
- getTargetFanState(): CharacteristicValue;
29
- setTargetFanState(value: CharacteristicValue): Promise<void>;
30
- getCurrentFanState(): CharacteristicValue;
31
- getRotationSpeed(): CharacteristicValue;
32
- setRotationSpeed(value: CharacteristicValue): Promise<void>;
33
- getRotationDirection(): CharacteristicValue;
34
- setRotationDirection(value: CharacteristicValue): Promise<void>;
35
- getSwingMode(): CharacteristicValue;
36
- setSwingMode(value: CharacteristicValue): Promise<void>;
37
- getLockPhysicalControls(): CharacteristicValue;
38
- setLockPhysicalControls(value: CharacteristicValue): Promise<void>;
39
- }
1
+ /***********************************************************************
2
+ * Midea Platform Fan Accessory class
3
+ *
4
+ * Copyright (c) 2024 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 MideaFADevice, { FAAttributes } from '../devices/fa/MideaFADevice';
16
+ export default class FanAccessory extends BaseAccessory<MideaFADevice> {
17
+ protected readonly device: MideaFADevice;
18
+ protected readonly configDev: DeviceConfig;
19
+ private service;
20
+ /*********************************************************************
21
+ * Constructor registers all the service types with Homebridge, registers
22
+ * a callback function with the MideaDevice class, and requests device status.
23
+ */
24
+ constructor(platform: MideaPlatform, accessory: MideaAccessory, device: MideaFADevice, configDev: DeviceConfig);
25
+ updateCharacteristics(attributes: Partial<FAAttributes>): Promise<void>;
26
+ getActive(): CharacteristicValue;
27
+ setActive(value: CharacteristicValue): Promise<void>;
28
+ getTargetFanState(): CharacteristicValue;
29
+ setTargetFanState(value: CharacteristicValue): Promise<void>;
30
+ getCurrentFanState(): CharacteristicValue;
31
+ getRotationSpeed(): CharacteristicValue;
32
+ setRotationSpeed(value: CharacteristicValue): Promise<void>;
33
+ getRotationDirection(): CharacteristicValue;
34
+ setRotationDirection(value: CharacteristicValue): Promise<void>;
35
+ getSwingMode(): CharacteristicValue;
36
+ setSwingMode(value: CharacteristicValue): Promise<void>;
37
+ getLockPhysicalControls(): CharacteristicValue;
38
+ setLockPhysicalControls(value: CharacteristicValue): Promise<void>;
39
+ }
40
40
  //# sourceMappingURL=FanAccessory.d.ts.map