homebridge-easy-mqtt 1.3.0 → 1.4.0-beta.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 (51) hide show
  1. package/CHANGELOG.md +8 -4
  2. package/README.md +46 -20
  3. package/config.schema.json +294 -3
  4. package/dist/accessory/abstract/base.js +1 -1
  5. package/dist/accessory/abstract/base.js.map +1 -1
  6. package/dist/accessory/abstract/helper.js +4 -1
  7. package/dist/accessory/abstract/helper.js.map +1 -1
  8. package/dist/accessory/climate/climate.d.ts +12 -0
  9. package/dist/accessory/climate/climate.js +31 -0
  10. package/dist/accessory/climate/climate.js.map +1 -0
  11. package/dist/accessory/climate/heaterCooler.d.ts +23 -0
  12. package/dist/accessory/climate/heaterCooler.js +157 -0
  13. package/dist/accessory/climate/heaterCooler.js.map +1 -0
  14. package/dist/accessory/{thermostat.d.ts → climate/thermostat.d.ts} +5 -8
  15. package/dist/accessory/{thermostat.js → climate/thermostat.js} +4 -24
  16. package/dist/accessory/climate/thermostat.js.map +1 -0
  17. package/dist/accessory/security.js +2 -2
  18. package/dist/accessory/security.js.map +1 -1
  19. package/dist/accessory/sensor/carbonDioxide.js +1 -1
  20. package/dist/accessory/sensor/carbonDioxide.js.map +1 -1
  21. package/dist/accessory/sensor/carbonMonoxide.js +1 -1
  22. package/dist/accessory/sensor/carbonMonoxide.js.map +1 -1
  23. package/dist/accessory/sensor/contact.js +1 -1
  24. package/dist/accessory/sensor/contact.js.map +1 -1
  25. package/dist/accessory/sensor/humidity.js.map +1 -1
  26. package/dist/accessory/sensor/leak.js +1 -1
  27. package/dist/accessory/sensor/leak.js.map +1 -1
  28. package/dist/accessory/sensor/motion.js +1 -1
  29. package/dist/accessory/sensor/motion.js.map +1 -1
  30. package/dist/accessory/sensor/occupancy.js +1 -1
  31. package/dist/accessory/sensor/occupancy.js.map +1 -1
  32. package/dist/accessory/sensor/sensor.js +2 -2
  33. package/dist/accessory/sensor/sensor.js.map +1 -1
  34. package/dist/accessory/sensor/smoke.js +1 -1
  35. package/dist/accessory/sensor/smoke.js.map +1 -1
  36. package/dist/homebridge-ui/public/index.html +1 -1
  37. package/dist/homebridge-ui/public/ui.js +1 -1
  38. package/dist/i18n/en.d.ts +51 -4
  39. package/dist/i18n/en.js +51 -4
  40. package/dist/i18n/en.js.map +1 -1
  41. package/dist/i18n/fr.d.ts +55 -8
  42. package/dist/i18n/fr.js +4 -4
  43. package/dist/i18n/fr.js.map +1 -1
  44. package/dist/i18n/i18n.d.ts +51 -4
  45. package/dist/i18n/template.d.ts +51 -4
  46. package/dist/model/enums.d.ts +7 -0
  47. package/dist/model/enums.js +7 -0
  48. package/dist/model/enums.js.map +1 -1
  49. package/dist/model/types.d.ts +45 -19
  50. package/package.json +1 -1
  51. package/dist/accessory/thermostat.js.map +0 -1
@@ -22,6 +22,10 @@ declare const translations: {
22
22
  };
23
23
  climate: {
24
24
  badTemperatureValue: string;
25
+ coolingThreshold: string;
26
+ coolingThresholdFuture: string;
27
+ heatingThreshold: string;
28
+ heatingThresholdFuture: string;
25
29
  humidityUpdate: string;
26
30
  temperatureUpdate: string;
27
31
  };
@@ -41,6 +45,7 @@ declare const translations: {
41
45
  celsius: string;
42
46
  contactSensor: string;
43
47
  fahrenheit: string;
48
+ heaterCooler: string;
44
49
  humiditySensor: string;
45
50
  leakSensor: string;
46
51
  lightbulb: string;
@@ -63,6 +68,7 @@ declare const translations: {
63
68
  options: string;
64
69
  password: string;
65
70
  sourceUnits: string;
71
+ topicGetActive: string;
66
72
  topicGetBatteryLevel: string;
67
73
  topicGetBatteryLow: string;
68
74
  topicGetBrightness: string;
@@ -75,6 +81,7 @@ declare const translations: {
75
81
  topicGetColorTemperature: string;
76
82
  topicGetContactSensorState: string;
77
83
  topicGetCoolingThresholdTemperature: string;
84
+ topicGetCurrentHeaterCoolerState: string;
78
85
  topicGetCurrentHeatingCoolingState: string;
79
86
  topicGetCurrentLockState: string;
80
87
  topicGetCurrentRelativeHumidity: string;
@@ -84,27 +91,36 @@ declare const translations: {
84
91
  topicGetHeatingThresholdTemperature: string;
85
92
  topicGetHue: string;
86
93
  topicGetLeakDetected: string;
94
+ topicGetLockPhysicalControls: string;
87
95
  topicGetMotionDetected: string;
88
96
  topicGetOccupancyDetected: string;
89
97
  topicGetOn: string;
90
98
  topicGetOutletInUse: string;
99
+ topicGetRotationSpeed: string;
91
100
  topicGetSaturation: string;
92
101
  topicGetSmokeDetected: string;
102
+ topicGetSwingMode: string;
93
103
  topicGetStatusActive: string;
94
104
  topicGetStatusFault: string;
95
105
  topicGetStatusTampered: string;
106
+ topicGetTargetHeaterCoolerState: string;
96
107
  topicGetTargetHeatingCoolingState: string;
97
108
  topicGetTargetLockState: string;
98
109
  topicGetTargetRelativeHumidity: string;
99
110
  topicGetTargetSecurityState: string;
100
111
  topicGetTargetTemperature: string;
112
+ topicSetActive: string;
101
113
  topicSetBrightness: string;
102
114
  topicSetColorTemperature: string;
103
115
  topicSetCoolingThresholdTemperature: string;
104
116
  topicSetHeatingThresholdTemperature: string;
105
117
  topicSetHue: string;
118
+ topicSetLockPhysicalControls: string;
106
119
  topicSetOn: string;
120
+ topicSetRotationSpeed: string;
107
121
  topicSetSaturation: string;
122
+ topicSetSwingMode: string;
123
+ topicSetTargetHeaterCoolerState: string;
108
124
  topicSetTargetHeatingCoolingState: string;
109
125
  topicSetTargetLockState: string;
110
126
  topicSetTargetRelativeHumidity: string;
@@ -121,6 +137,8 @@ declare const translations: {
121
137
  valueCarbonDioxideDetected: string;
122
138
  valueCarbonMonoxideDetected: string;
123
139
  valueContactDetected: string;
140
+ valueControlLock: string;
141
+ valueControlUnlock: string;
124
142
  valueDisarm: string;
125
143
  valueFault: string;
126
144
  valueLeakDetected: string;
@@ -130,6 +148,8 @@ declare const translations: {
130
148
  valueModeAuto: string;
131
149
  valueModeCool: string;
132
150
  valueModeHeat: string;
151
+ valueModeIdle: string;
152
+ valueModeInactive: string;
133
153
  valueModeOff: string;
134
154
  valueMotionDetected: string;
135
155
  valueOccupancyDetected: string;
@@ -138,7 +158,11 @@ declare const translations: {
138
158
  valueOutletInUse: string;
139
159
  valueOutletNotInUse: string;
140
160
  valueSmokeDetected: string;
161
+ valueStateActive: string;
162
+ valueStateInactive: string;
141
163
  valueStatusActive: string;
164
+ valueSwingEnabled: string;
165
+ valueSwingDisabled: string;
142
166
  valueTampered: string;
143
167
  values: string;
144
168
  verbose: string;
@@ -150,6 +174,33 @@ declare const translations: {
150
174
  noFault: string;
151
175
  notTampered: string;
152
176
  };
177
+ heaterCooler: {
178
+ active: string;
179
+ activeSet: string;
180
+ badValue: string;
181
+ controlsLocked: string;
182
+ controlsLockFuture: string;
183
+ controlsUnLocked: string;
184
+ controlsUnlockFuture: string;
185
+ inactiveSet: string;
186
+ noStateValues: string;
187
+ notActive: string;
188
+ rotationUpdate: string;
189
+ rotationSet: string;
190
+ swingDisabled: string;
191
+ swingDisabledFuture: string;
192
+ swingEnabled: string;
193
+ swingEnabledFuture: string;
194
+ stateAuto: string;
195
+ stateCool: string;
196
+ stateCooling: string;
197
+ stateHeat: string;
198
+ stateHeating: string;
199
+ stateIdle: string;
200
+ stateInactive: string;
201
+ stateUnknown: string;
202
+ unknownValue: string;
203
+ };
153
204
  lightbulb: {
154
205
  brightness: string;
155
206
  brightnessFuture: string;
@@ -254,10 +305,6 @@ declare const translations: {
254
305
  };
255
306
  thermostat: {
256
307
  badValue: string;
257
- coolingThreshold: string;
258
- coolingThresholdFuture: string;
259
- heatingThreshold: string;
260
- heatingThresholdFuture: string;
261
308
  humidityFuture: string;
262
309
  noStateValues: string;
263
310
  stateAutoFuture: string;
@@ -13,6 +13,10 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
13
13
  };
14
14
  climate: {
15
15
  badTemperatureValue: string;
16
+ coolingThreshold: string;
17
+ coolingThresholdFuture: string;
18
+ heatingThreshold: string;
19
+ heatingThresholdFuture: string;
16
20
  humidityUpdate: string;
17
21
  temperatureUpdate: string;
18
22
  };
@@ -32,6 +36,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
32
36
  celsius: string;
33
37
  contactSensor: string;
34
38
  fahrenheit: string;
39
+ heaterCooler: string;
35
40
  humiditySensor: string;
36
41
  leakSensor: string;
37
42
  lightbulb: string;
@@ -54,6 +59,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
54
59
  options: string;
55
60
  password: string;
56
61
  sourceUnits: string;
62
+ topicGetActive: string;
57
63
  topicGetBatteryLevel: string;
58
64
  topicGetBatteryLow: string;
59
65
  topicGetBrightness: string;
@@ -66,6 +72,7 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
66
72
  topicGetColorTemperature: string;
67
73
  topicGetContactSensorState: string;
68
74
  topicGetCoolingThresholdTemperature: string;
75
+ topicGetCurrentHeaterCoolerState: string;
69
76
  topicGetCurrentHeatingCoolingState: string;
70
77
  topicGetCurrentLockState: string;
71
78
  topicGetCurrentRelativeHumidity: string;
@@ -75,27 +82,36 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
75
82
  topicGetHeatingThresholdTemperature: string;
76
83
  topicGetHue: string;
77
84
  topicGetLeakDetected: string;
85
+ topicGetLockPhysicalControls: string;
78
86
  topicGetMotionDetected: string;
79
87
  topicGetOccupancyDetected: string;
80
88
  topicGetOn: string;
81
89
  topicGetOutletInUse: string;
90
+ topicGetRotationSpeed: string;
82
91
  topicGetSaturation: string;
83
92
  topicGetSmokeDetected: string;
93
+ topicGetSwingMode: string;
84
94
  topicGetStatusActive: string;
85
95
  topicGetStatusFault: string;
86
96
  topicGetStatusTampered: string;
97
+ topicGetTargetHeaterCoolerState: string;
87
98
  topicGetTargetHeatingCoolingState: string;
88
99
  topicGetTargetLockState: string;
89
100
  topicGetTargetRelativeHumidity: string;
90
101
  topicGetTargetSecurityState: string;
91
102
  topicGetTargetTemperature: string;
103
+ topicSetActive: string;
92
104
  topicSetBrightness: string;
93
105
  topicSetColorTemperature: string;
94
106
  topicSetCoolingThresholdTemperature: string;
95
107
  topicSetHeatingThresholdTemperature: string;
96
108
  topicSetHue: string;
109
+ topicSetLockPhysicalControls: string;
97
110
  topicSetOn: string;
111
+ topicSetRotationSpeed: string;
98
112
  topicSetSaturation: string;
113
+ topicSetSwingMode: string;
114
+ topicSetTargetHeaterCoolerState: string;
99
115
  topicSetTargetHeatingCoolingState: string;
100
116
  topicSetTargetLockState: string;
101
117
  topicSetTargetRelativeHumidity: string;
@@ -112,6 +128,8 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
112
128
  valueCarbonDioxideDetected: string;
113
129
  valueCarbonMonoxideDetected: string;
114
130
  valueContactDetected: string;
131
+ valueControlLock: string;
132
+ valueControlUnlock: string;
115
133
  valueDisarm: string;
116
134
  valueFault: string;
117
135
  valueLeakDetected: string;
@@ -121,6 +139,8 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
121
139
  valueModeAuto: string;
122
140
  valueModeCool: string;
123
141
  valueModeHeat: string;
142
+ valueModeIdle: string;
143
+ valueModeInactive: string;
124
144
  valueModeOff: string;
125
145
  valueMotionDetected: string;
126
146
  valueOccupancyDetected: string;
@@ -129,7 +149,11 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
129
149
  valueOutletInUse: string;
130
150
  valueOutletNotInUse: string;
131
151
  valueSmokeDetected: string;
152
+ valueStateActive: string;
153
+ valueStateInactive: string;
132
154
  valueStatusActive: string;
155
+ valueSwingEnabled: string;
156
+ valueSwingDisabled: string;
133
157
  valueTampered: string;
134
158
  values: string;
135
159
  verbose: string;
@@ -141,6 +165,33 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
141
165
  noFault: string;
142
166
  notTampered: string;
143
167
  };
168
+ heaterCooler: {
169
+ active: string;
170
+ activeSet: string;
171
+ badValue: string;
172
+ controlsLocked: string;
173
+ controlsLockFuture: string;
174
+ controlsUnLocked: string;
175
+ controlsUnlockFuture: string;
176
+ inactiveSet: string;
177
+ noStateValues: string;
178
+ notActive: string;
179
+ rotationUpdate: string;
180
+ rotationSet: string;
181
+ swingDisabled: string;
182
+ swingDisabledFuture: string;
183
+ swingEnabled: string;
184
+ swingEnabledFuture: string;
185
+ stateAuto: string;
186
+ stateCool: string;
187
+ stateCooling: string;
188
+ stateHeat: string;
189
+ stateHeating: string;
190
+ stateIdle: string;
191
+ stateInactive: string;
192
+ stateUnknown: string;
193
+ unknownValue: string;
194
+ };
144
195
  lightbulb: {
145
196
  brightness: string;
146
197
  brightnessFuture: string;
@@ -245,10 +296,6 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
245
296
  };
246
297
  thermostat: {
247
298
  badValue: string;
248
- coolingThreshold: string;
249
- coolingThresholdFuture: string;
250
- heatingThreshold: string;
251
- heatingThresholdFuture: string;
252
299
  humidityFuture: string;
253
300
  noStateValues: string;
254
301
  stateAutoFuture: string;
@@ -2,6 +2,7 @@ export declare enum AccessoryType {
2
2
  CarbonDioxideSensor = "CarbonDioxideSensor",
3
3
  CarbonMonoxideSensor = "CarbonMonoxideSensor",
4
4
  ContactSensor = "ContactSensor",
5
+ HeaterCooler = "HeaterCooler",
5
6
  HumiditySensor = "HumiditySensor",
6
7
  LeakSensor = "LeakSensor",
7
8
  Lightbulb = "Lightbulb",
@@ -16,6 +17,7 @@ export declare enum AccessoryType {
16
17
  Thermostat = "Thermostat"
17
18
  }
18
19
  export declare enum CharacteristicKey {
20
+ Active = "Active",
19
21
  BatteryLevel = "BatteryLevel",
20
22
  Brightness = "Brightness",
21
23
  CarbonDioxideDetected = "CarbonDioxideDetected",
@@ -27,6 +29,7 @@ export declare enum CharacteristicKey {
27
29
  ColorTemperature = "ColorTemperature",
28
30
  ContactSensorState = "ContactSensorState",
29
31
  CoolingThresholdTemperature = "CoolingThresholdTemperature",
32
+ CurrentHeaterCoolerState = "CurrentHeaterCoolerState",
30
33
  CurrentHeatingCoolingState = "CurrentHeatingCoolingState",
31
34
  CurrentRelativeHumidity = "CurrentRelativeHumidity",
32
35
  CurrentTemperature = "CurrentTemperature",
@@ -34,11 +37,13 @@ export declare enum CharacteristicKey {
34
37
  Hue = "Hue",
35
38
  LeakDetected = "LeakDetected",
36
39
  LockCurrentState = "LockCurrentState",
40
+ LockPhysicalControls = "LockPhysicalControls",
37
41
  LockTargetState = "LockTargetState",
38
42
  MotionDetected = "MotionDetected",
39
43
  OccupancyDetected = "OccupancyDetected",
40
44
  On = "On",
41
45
  OutletInUse = "OutletInUse",
46
+ RotationSpeed = "RotationSpeed",
42
47
  Saturation = "Saturation",
43
48
  SecuritySystemCurrentState = "SecuritySystemCurrentState",
44
49
  SecuritySystemTargetState = "SecuritySystemTargetState",
@@ -47,6 +52,8 @@ export declare enum CharacteristicKey {
47
52
  StatusFault = "StatusFault",
48
53
  StatusLowBattery = "StatusLowBattery",
49
54
  StatusTampered = "StatusTampered",
55
+ SwingMode = "SwingMode",
56
+ TargetHeaterCoolerState = "TargetHeaterCoolerState",
50
57
  TargetHeatingCoolingState = "TargetHeatingCoolingState",
51
58
  TargetRelativeHumidity = "TargetRelativeHumidity",
52
59
  TargetTemperature = "TargetTemperature",
@@ -3,6 +3,7 @@ export var AccessoryType;
3
3
  AccessoryType["CarbonDioxideSensor"] = "CarbonDioxideSensor";
4
4
  AccessoryType["CarbonMonoxideSensor"] = "CarbonMonoxideSensor";
5
5
  AccessoryType["ContactSensor"] = "ContactSensor";
6
+ AccessoryType["HeaterCooler"] = "HeaterCooler";
6
7
  AccessoryType["HumiditySensor"] = "HumiditySensor";
7
8
  AccessoryType["LeakSensor"] = "LeakSensor";
8
9
  AccessoryType["Lightbulb"] = "Lightbulb";
@@ -18,6 +19,7 @@ export var AccessoryType;
18
19
  })(AccessoryType || (AccessoryType = {}));
19
20
  export var CharacteristicKey;
20
21
  (function (CharacteristicKey) {
22
+ CharacteristicKey["Active"] = "Active";
21
23
  CharacteristicKey["BatteryLevel"] = "BatteryLevel";
22
24
  CharacteristicKey["Brightness"] = "Brightness";
23
25
  CharacteristicKey["CarbonDioxideDetected"] = "CarbonDioxideDetected";
@@ -29,6 +31,7 @@ export var CharacteristicKey;
29
31
  CharacteristicKey["ColorTemperature"] = "ColorTemperature";
30
32
  CharacteristicKey["ContactSensorState"] = "ContactSensorState";
31
33
  CharacteristicKey["CoolingThresholdTemperature"] = "CoolingThresholdTemperature";
34
+ CharacteristicKey["CurrentHeaterCoolerState"] = "CurrentHeaterCoolerState";
32
35
  CharacteristicKey["CurrentHeatingCoolingState"] = "CurrentHeatingCoolingState";
33
36
  CharacteristicKey["CurrentRelativeHumidity"] = "CurrentRelativeHumidity";
34
37
  CharacteristicKey["CurrentTemperature"] = "CurrentTemperature";
@@ -36,11 +39,13 @@ export var CharacteristicKey;
36
39
  CharacteristicKey["Hue"] = "Hue";
37
40
  CharacteristicKey["LeakDetected"] = "LeakDetected";
38
41
  CharacteristicKey["LockCurrentState"] = "LockCurrentState";
42
+ CharacteristicKey["LockPhysicalControls"] = "LockPhysicalControls";
39
43
  CharacteristicKey["LockTargetState"] = "LockTargetState";
40
44
  CharacteristicKey["MotionDetected"] = "MotionDetected";
41
45
  CharacteristicKey["OccupancyDetected"] = "OccupancyDetected";
42
46
  CharacteristicKey["On"] = "On";
43
47
  CharacteristicKey["OutletInUse"] = "OutletInUse";
48
+ CharacteristicKey["RotationSpeed"] = "RotationSpeed";
44
49
  CharacteristicKey["Saturation"] = "Saturation";
45
50
  CharacteristicKey["SecuritySystemCurrentState"] = "SecuritySystemCurrentState";
46
51
  CharacteristicKey["SecuritySystemTargetState"] = "SecuritySystemTargetState";
@@ -49,6 +54,8 @@ export var CharacteristicKey;
49
54
  CharacteristicKey["StatusFault"] = "StatusFault";
50
55
  CharacteristicKey["StatusLowBattery"] = "StatusLowBattery";
51
56
  CharacteristicKey["StatusTampered"] = "StatusTampered";
57
+ CharacteristicKey["SwingMode"] = "SwingMode";
58
+ CharacteristicKey["TargetHeaterCoolerState"] = "TargetHeaterCoolerState";
52
59
  CharacteristicKey["TargetHeatingCoolingState"] = "TargetHeatingCoolingState";
53
60
  CharacteristicKey["TargetRelativeHumidity"] = "TargetRelativeHumidity";
54
61
  CharacteristicKey["TargetTemperature"] = "TargetTemperature";
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/model/enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAgBX;AAhBD,WAAY,aAAa;IACvB,4DAA2C,CAAA;IAC3C,8DAA6C,CAAA;IAC7C,gDAA+B,CAAA;IAC/B,kDAAiC,CAAA;IACjC,0CAAyB,CAAA;IACzB,wCAAuB,CAAA;IACvB,gDAA+B,CAAA;IAC/B,8CAA6B,CAAA;IAC7B,oDAAmC,CAAA;IACnC,kCAAiB,CAAA;IACjB,kDAAiC,CAAA;IACjC,4CAA2B,CAAA;IAC3B,kCAAiB,CAAA;IACjB,wDAAuC,CAAA;IACvC,0CAAyB,CAAA;AAC3B,CAAC,EAhBW,aAAa,KAAb,aAAa,QAgBxB;AAED,MAAM,CAAN,IAAY,iBAoCX;AApCD,WAAY,iBAAiB;IAC3B,kDAA6B,CAAA;IAC7B,8CAAyB,CAAA;IACzB,oEAA+C,CAAA;IAC/C,8DAAyC,CAAA;IACzC,sEAAiD,CAAA;IACjD,sEAAiD,CAAA;IACjD,gEAA2C,CAAA;IAC3C,wEAAmD,CAAA;IACnD,0DAAqC,CAAA;IACrC,8DAAyC,CAAA;IACzC,gFAA2D,CAAA;IAC3D,8EAAyD,CAAA;IACzD,wEAAmD,CAAA;IACnD,8DAAyC,CAAA;IACzC,gFAA2D,CAAA;IAC3D,gCAAW,CAAA;IACX,kDAA6B,CAAA;IAC7B,0DAAqC,CAAA;IACrC,wDAAmC,CAAA;IACnC,sDAAiC,CAAA;IACjC,4DAAuC,CAAA;IACvC,8BAAS,CAAA;IACT,gDAA2B,CAAA;IAC3B,8CAAyB,CAAA;IACzB,8EAAyD,CAAA;IACzD,4EAAuD,CAAA;IACvD,oDAA+B,CAAA;IAC/B,kDAA6B,CAAA;IAC7B,gDAA2B,CAAA;IAC3B,0DAAqC,CAAA;IACrC,sDAAiC,CAAA;IACjC,4EAAuD,CAAA;IACvD,sEAAiD,CAAA;IACjD,4DAAuC,CAAA;IACvC,wEAAmD,CAAA;AACrD,CAAC,EApCW,iBAAiB,KAAjB,iBAAiB,QAoC5B;AAED,MAAM,CAAN,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,iCAAa,CAAA;IACb,oCAAgB,CAAA;AAClB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B"}
1
+ {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/model/enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAiBX;AAjBD,WAAY,aAAa;IACvB,4DAA2C,CAAA;IAC3C,8DAA6C,CAAA;IAC7C,gDAA+B,CAAA;IAC/B,8CAA6B,CAAA;IAC7B,kDAAiC,CAAA;IACjC,0CAAyB,CAAA;IACzB,wCAAuB,CAAA;IACvB,gDAA+B,CAAA;IAC/B,8CAA6B,CAAA;IAC7B,oDAAmC,CAAA;IACnC,kCAAiB,CAAA;IACjB,kDAAiC,CAAA;IACjC,4CAA2B,CAAA;IAC3B,kCAAiB,CAAA;IACjB,wDAAuC,CAAA;IACvC,0CAAyB,CAAA;AAC3B,CAAC,EAjBW,aAAa,KAAb,aAAa,QAiBxB;AAED,MAAM,CAAN,IAAY,iBA0CX;AA1CD,WAAY,iBAAiB;IAC3B,sCAAiB,CAAA;IACjB,kDAA6B,CAAA;IAC7B,8CAAyB,CAAA;IACzB,oEAA+C,CAAA;IAC/C,8DAAyC,CAAA;IACzC,sEAAiD,CAAA;IACjD,sEAAiD,CAAA;IACjD,gEAA2C,CAAA;IAC3C,wEAAmD,CAAA;IACnD,0DAAqC,CAAA;IACrC,8DAAyC,CAAA;IACzC,gFAA2D,CAAA;IAC3D,0EAAqD,CAAA;IACrD,8EAAyD,CAAA;IACzD,wEAAmD,CAAA;IACnD,8DAAyC,CAAA;IACzC,gFAA2D,CAAA;IAC3D,gCAAW,CAAA;IACX,kDAA6B,CAAA;IAC7B,0DAAqC,CAAA;IACrC,kEAA6C,CAAA;IAC7C,wDAAmC,CAAA;IACnC,sDAAiC,CAAA;IACjC,4DAAuC,CAAA;IACvC,8BAAS,CAAA;IACT,gDAA2B,CAAA;IAC3B,oDAA+B,CAAA;IAC/B,8CAAyB,CAAA;IACzB,8EAAyD,CAAA;IACzD,4EAAuD,CAAA;IACvD,oDAA+B,CAAA;IAC/B,kDAA6B,CAAA;IAC7B,gDAA2B,CAAA;IAC3B,0DAAqC,CAAA;IACrC,sDAAiC,CAAA;IACjC,4CAAuB,CAAA;IACvB,wEAAmD,CAAA;IACnD,4EAAuD,CAAA;IACvD,sEAAiD,CAAA;IACjD,4DAAuC,CAAA;IACvC,wEAAmD,CAAA;AACrD,CAAC,EA1CW,iBAAiB,KAAjB,iBAAiB,QA0C5B;AAED,MAAM,CAAN,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,iCAAa,CAAA;IACb,oCAAgB,CAAA;AAClB,CAAC,EAHW,gBAAgB,KAAhB,gBAAgB,QAG3B"}
@@ -113,6 +113,51 @@ export type SmokeSensorConfig = SensorConfig & {
113
113
  export type TemperatureSensorConfig = SensorConfig & TemperatureConfig & {
114
114
  topicGetCurrentTemperature: string;
115
115
  };
116
+ export type ClimateControlConfig = BaseAccessoryConfig & TemperatureConfig & {
117
+ topicGetCoolingThresholdTemperature?: string;
118
+ topicGetCurrentTemperature: string;
119
+ topicGetHeatingThresholdTemperature?: string;
120
+ topicSetCoolingThresholdTemperature?: string;
121
+ topicSetHeatingThresholdTemperature?: string;
122
+ };
123
+ export type HeaterCoolerConfig = ClimateControlConfig & {
124
+ topicGetActive: string;
125
+ topicGetCurrentHeaterCoolerState: string;
126
+ topicGetLockPhysicalControls?: string;
127
+ topicGetRotationSpeed?: string;
128
+ topicGetSwingMode?: string;
129
+ topicGetTargetHeaterCoolerState: string;
130
+ topicSetActive: string;
131
+ topicSetLockPhysicalControls?: string;
132
+ topicSetRotationSpeed?: string;
133
+ topicSetSwingMode?: string;
134
+ topicSetTargetHeaterCoolerState: string;
135
+ valueControlLock?: string;
136
+ valueControlUnlock?: string;
137
+ valueModeAuto?: string;
138
+ valueModeCool?: string;
139
+ valueModeHeat?: string;
140
+ valueModeIdle?: string;
141
+ valueModeInactive?: string;
142
+ valueStateActive: string;
143
+ valueStateInactive: string;
144
+ valueSwingEnabled?: string;
145
+ valueSwingDisabled?: string;
146
+ };
147
+ export type ThermostatConfig = ClimateControlConfig & {
148
+ topicGetCurrentHeatingCoolingState: string;
149
+ topicGetCurrentRelativeHumidity?: string;
150
+ topicGetTargetHeatingCoolingState: string;
151
+ topicGetTargetRelativeHumidity?: string;
152
+ topicGetTargetTemperature: string;
153
+ topicSetTargetHeatingCoolingState: string;
154
+ topicSetTargetRelativeHumidity?: string;
155
+ topicSetTargetTemperature: string;
156
+ valueModeAuto?: string;
157
+ valueModeCool?: string;
158
+ valueModeHeat?: string;
159
+ valueModeOff?: string;
160
+ };
116
161
  export type LockConfig = BaseAccessoryConfig & {
117
162
  topicGetCurrentLockState: string;
118
163
  topicGetTargetLockState: string;
@@ -134,23 +179,4 @@ export type SecurityConfig = BaseAccessoryConfig & ErrorStatusConfig & {
134
179
  valueDisarm?: string;
135
180
  valueAlarmTriggered?: string;
136
181
  };
137
- export type ThermostatConfig = BaseAccessoryConfig & TemperatureConfig & {
138
- topicGetCoolingThresholdTemperature?: string;
139
- topicGetCurrentHeatingCoolingState: string;
140
- topicGetCurrentRelativeHumidity?: string;
141
- topicGetCurrentTemperature: string;
142
- topicGetHeatingThresholdTemperature?: string;
143
- topicGetTargetHeatingCoolingState: string;
144
- topicGetTargetRelativeHumidity?: string;
145
- topicGetTargetTemperature: string;
146
- topicSetCoolingThresholdTemperature?: string;
147
- topicSetHeatingThresholdTemperature?: string;
148
- topicSetTargetHeatingCoolingState: string;
149
- topicSetTargetRelativeHumidity?: string;
150
- topicSetTargetTemperature: string;
151
- valueModeAuto?: string;
152
- valueModeCool?: string;
153
- valueModeHeat?: string;
154
- valueModeOff?: string;
155
- };
156
182
  export {};
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "displayName": "Homebridge Easy MQTT",
5
5
  "description": "Homebridge plugin for easy control of MQTT devices",
6
6
  "type": "module",
7
- "version": "1.3.0",
7
+ "version": "1.4.0-beta.0",
8
8
  "homepage": "https://github.com/mpatfield/homebridge-easy-mqtt#readme",
9
9
  "repository": {
10
10
  "type": "git",
@@ -1 +0,0 @@
1
- {"version":3,"file":"thermostat.js","sourceRoot":"","sources":["../../src/accessory/thermostat.ts"],"names":[],"mappings":"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"}