homebridge-easy-mqtt 1.3.0-beta.2 → 1.3.0-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 (64) hide show
  1. package/CHANGELOG.md +3 -1
  2. package/README.md +158 -106
  3. package/config.schema.json +579 -6
  4. package/dist/accessory/abstract/base.d.ts +0 -1
  5. package/dist/accessory/abstract/base.js +0 -19
  6. package/dist/accessory/abstract/base.js.map +1 -1
  7. package/dist/accessory/abstract/mqtt.d.ts +4 -1
  8. package/dist/accessory/abstract/mqtt.js +40 -3
  9. package/dist/accessory/abstract/mqtt.js.map +1 -1
  10. package/dist/accessory/lock.js +2 -2
  11. package/dist/accessory/lock.js.map +1 -1
  12. package/dist/accessory/onoff/lightbulb.js +4 -4
  13. package/dist/accessory/onoff/onoff.js +2 -2
  14. package/dist/accessory/security.js +7 -7
  15. package/dist/accessory/security.js.map +1 -1
  16. package/dist/accessory/sensor/carbonDioxide.d.ts +8 -0
  17. package/dist/accessory/sensor/carbonDioxide.js +15 -0
  18. package/dist/accessory/sensor/carbonDioxide.js.map +1 -0
  19. package/dist/accessory/sensor/carbonMonoxide.d.ts +8 -0
  20. package/dist/accessory/sensor/carbonMonoxide.js +15 -0
  21. package/dist/accessory/sensor/carbonMonoxide.js.map +1 -0
  22. package/dist/accessory/sensor/contact.d.ts +9 -0
  23. package/dist/accessory/sensor/contact.js +17 -0
  24. package/dist/accessory/sensor/contact.js.map +1 -0
  25. package/dist/accessory/sensor/humidity.d.ts +8 -0
  26. package/dist/accessory/sensor/humidity.js +13 -0
  27. package/dist/accessory/sensor/humidity.js.map +1 -0
  28. package/dist/accessory/sensor/leak.d.ts +8 -0
  29. package/dist/accessory/sensor/leak.js +13 -0
  30. package/dist/accessory/sensor/leak.js.map +1 -0
  31. package/dist/accessory/sensor/motion.d.ts +8 -0
  32. package/dist/accessory/sensor/motion.js +13 -0
  33. package/dist/accessory/sensor/motion.js.map +1 -0
  34. package/dist/accessory/sensor/occupancy.d.ts +8 -0
  35. package/dist/accessory/sensor/occupancy.js +13 -0
  36. package/dist/accessory/sensor/occupancy.js.map +1 -0
  37. package/dist/accessory/sensor/sensor.d.ts +9 -0
  38. package/dist/accessory/sensor/sensor.js +36 -0
  39. package/dist/accessory/sensor/sensor.js.map +1 -0
  40. package/dist/accessory/sensor/smoke.d.ts +8 -0
  41. package/dist/accessory/sensor/smoke.js +13 -0
  42. package/dist/accessory/sensor/smoke.js.map +1 -0
  43. package/dist/accessory/{temperatureSensor.d.ts → sensor/temperature.d.ts} +4 -5
  44. package/dist/accessory/sensor/temperature.js +13 -0
  45. package/dist/accessory/sensor/temperature.js.map +1 -0
  46. package/dist/accessory/thermostat.d.ts +19 -0
  47. package/dist/accessory/thermostat.js +116 -0
  48. package/dist/accessory/thermostat.js.map +1 -0
  49. package/dist/homebridge/platform.js +37 -1
  50. package/dist/homebridge/platform.js.map +1 -1
  51. package/dist/homebridge-ui/public/index.html +1 -1
  52. package/dist/homebridge-ui/public/ui.js +1 -1
  53. package/dist/i18n/en.d.ts +127 -27
  54. package/dist/i18n/en.js +171 -71
  55. package/dist/i18n/en.js.map +1 -1
  56. package/dist/i18n/i18n.d.ts +127 -27
  57. package/dist/i18n/template.d.ts +127 -27
  58. package/dist/model/enums.d.ts +30 -2
  59. package/dist/model/enums.js +28 -0
  60. package/dist/model/enums.js.map +1 -1
  61. package/dist/model/types.d.ts +85 -27
  62. package/package.json +1 -1
  63. package/dist/accessory/temperatureSensor.js +0 -25
  64. package/dist/accessory/temperatureSensor.js.map +0 -1
@@ -1,6 +1,5 @@
1
1
  declare const REPLACE_THIS_WITH_ISO_CODE: {
2
2
  accessory: {
3
- badNumericValue: string;
4
3
  batteryLevel: string;
5
4
  batteryLow: string;
6
5
  batteryNotLow: string;
@@ -8,6 +7,11 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
8
7
  statusActive: string;
9
8
  statusInactive: string;
10
9
  };
10
+ climate: {
11
+ badTemperatureValue: string;
12
+ humidityUpdate: string;
13
+ temperatureUpdate: string;
14
+ };
11
15
  config: {
12
16
  continue: string;
13
17
  required: string;
@@ -21,12 +25,21 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
21
25
  enumNames: {
22
26
  celsius: string;
23
27
  fahrenheit: string;
28
+ carbonDioxideSensor: string;
29
+ carbonMonoxideSensor: string;
30
+ contactSensor: string;
31
+ humiditySensor: string;
32
+ leakSensor: string;
24
33
  lightbulb: string;
25
34
  lockMechanism: string;
35
+ motionSensor: string;
36
+ occupancySensor: string;
26
37
  outlet: string;
27
38
  switch: string;
28
39
  securitySystem: string;
40
+ smokeSensor: string;
29
41
  temperatureSensor: string;
42
+ thermostat: string;
30
43
  };
31
44
  title: {
32
45
  accessory: string;
@@ -59,6 +72,30 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
59
72
  topicSetTargetSecurityState: string;
60
73
  topicGetStatusTampered: string;
61
74
  topicGetStatusFault: string;
75
+ topicGetCarbonMonoxideDetected: string;
76
+ topicGetCarbonMonoxideLevel: string;
77
+ topicGetCarbonMonoxidePeakLevel: string;
78
+ topicGetCarbonDioxideDetected: string;
79
+ topicGetCarbonDioxideLevel: string;
80
+ topicGetCarbonDioxidePeakLevel: string;
81
+ topicGetContactSensorState: string;
82
+ topicGetLeakDetected: string;
83
+ topicGetMotionDetected: string;
84
+ topicGetOccupancyDetected: string;
85
+ topicGetSmokeDetected: string;
86
+ topicGetCurrentRelativeHumidity: string;
87
+ topicGetCoolingThresholdTemperature: string;
88
+ topicGetCurrentHeatingCoolingState: string;
89
+ topicGetCurrentRelativeHumidityOptional: string;
90
+ topicGetHeatingThresholdTemperature: string;
91
+ topicGetTargetHeatingCoolingState: string;
92
+ topicGetTargetRelativeHumidity: string;
93
+ topicGetTargetTemperature: string;
94
+ topicSetCoolingThresholdTemperature: string;
95
+ topicSetHeatingThresholdTemperature: string;
96
+ topicSetTargetHeatingCoolingState: string;
97
+ topicSetTargetRelativeHumidity: string;
98
+ topicSetTargetTemperature: string;
62
99
  topics: string;
63
100
  type: string;
64
101
  username: string;
@@ -78,6 +115,17 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
78
115
  valueAlarmTriggered: string;
79
116
  valueTampered: string;
80
117
  valueFault: string;
118
+ valueCarbonMonoxideDetected: string;
119
+ valueCarbonDioxideDetected: string;
120
+ valueContactDetected: string;
121
+ valueLeakDetected: string;
122
+ valueMotionDetected: string;
123
+ valueOccupancyDetected: string;
124
+ valueSmokeDetected: string;
125
+ valueModeAuto: string;
126
+ valueModeCool: string;
127
+ valueModeHeat: string;
128
+ valueModeOff: string;
81
129
  values: string;
82
130
  verbose: string;
83
131
  };
@@ -86,22 +134,28 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
86
134
  badValue: string;
87
135
  updated: string;
88
136
  };
137
+ error: {
138
+ isTampered: string;
139
+ hasFault: string;
140
+ noFault: string;
141
+ notTampered: string;
142
+ };
89
143
  lightbulb: {
90
144
  brightness: string;
91
- futureBrightness: string;
145
+ brightnessFuture: string;
92
146
  hue: string;
93
- futureHue: string;
147
+ hueFuture: string;
94
148
  colorTemperature: string;
95
- futureColorTemperature: string;
149
+ colorTemperatureFuture: string;
96
150
  saturation: string;
97
- futureSaturation: string;
151
+ saturationFuture: string;
98
152
  };
99
153
  lock: {
100
154
  badValue: string;
101
- stateCurrentSecured: string;
102
- stateCurrentUnsecured: string;
103
- stateFutureSecured: string;
104
- stateFutureUnsecured: string;
155
+ stateSecured: string;
156
+ stateSecuredFuture: string;
157
+ stateUnsecured: string;
158
+ stateUnsecuredFuture: string;
105
159
  stateJammed: string;
106
160
  stateUnknown: string;
107
161
  };
@@ -120,10 +174,10 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
120
174
  reconnectInSeconds: string;
121
175
  };
122
176
  onOff: {
123
- stateFutureOff: string;
124
- stateFutureOn: string;
125
- stateOn: string;
126
177
  stateOff: string;
178
+ stateOffFuture: string;
179
+ stateOn: string;
180
+ stateOnFuture: string;
127
181
  unknownValue: string;
128
182
  };
129
183
  outlet: {
@@ -133,23 +187,53 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
133
187
  };
134
188
  security: {
135
189
  badValue: string;
136
- isTampered: string;
137
- hasFault: string;
138
190
  noStateValues: string;
139
- noFault: string;
140
- notTampered: string;
141
- stateCurrentArmAway: string;
142
- stateCurrentArmNight: string;
143
- stateCurrentArmStay: string;
144
- stateCurrentAlarmTriggered: string;
145
- stateCurrentDisarm: string;
146
- stateFutureArmAway: string;
147
- stateFutureArmNight: string;
148
- stateFutureArmStay: string;
149
- stateFutureDisarm: string;
191
+ stateAway: string;
192
+ stateAwayFuture: string;
193
+ stateNight: string;
194
+ stateNightFuture: string;
195
+ stateStay: string;
196
+ stateStayFuture: string;
197
+ stateTriggered: string;
198
+ stateDisarmed: string;
199
+ stateDisarmFuture: string;
150
200
  stateUnknown: string;
151
201
  unknownValue: string;
152
202
  };
203
+ sensor: {
204
+ carbonDioxide: {
205
+ active: string;
206
+ inactive: string;
207
+ level: string;
208
+ peakLevel: string;
209
+ };
210
+ carbonMonoxide: {
211
+ active: string;
212
+ inactive: string;
213
+ level: string;
214
+ peakLevel: string;
215
+ };
216
+ contact: {
217
+ active: string;
218
+ inactive: string;
219
+ };
220
+ leak: {
221
+ active: string;
222
+ inactive: string;
223
+ };
224
+ motion: {
225
+ active: string;
226
+ inactive: string;
227
+ };
228
+ occupancy: {
229
+ active: string;
230
+ inactive: string;
231
+ };
232
+ smoke: {
233
+ active: string;
234
+ inactive: string;
235
+ };
236
+ };
153
237
  startup: {
154
238
  complete: string;
155
239
  newAccessory: string;
@@ -158,9 +242,25 @@ declare const REPLACE_THIS_WITH_ISO_CODE: {
158
242
  unsupportedType: string;
159
243
  welcome: string[];
160
244
  };
161
- temperatureSensor: {
245
+ thermostat: {
162
246
  badValue: string;
163
- temperature: string;
247
+ coolingThreshold: string;
248
+ coolingThresholdFuture: string;
249
+ heatingThreshold: string;
250
+ heatingThresholdFuture: string;
251
+ noStateValues: string;
252
+ humidityFuture: string;
253
+ stateAutoFuture: string;
254
+ stateCool: string;
255
+ stateCoolFuture: string;
256
+ stateHeat: string;
257
+ stateHeatFuture: string;
258
+ stateOff: string;
259
+ stateOffFuture: string;
260
+ stateUnknown: string;
261
+ temperatureTarget: string;
262
+ temperatureTargetFuture: string;
263
+ unknownValue: string;
164
264
  };
165
265
  };
166
266
  export default REPLACE_THIS_WITH_ISO_CODE;
@@ -1,28 +1,56 @@
1
1
  export declare enum AccessoryType {
2
+ CarbonDioxideSensor = "CarbonDioxideSensor",
3
+ CarbonMonoxideSensor = "CarbonMonoxideSensor",
4
+ ContactSensor = "ContactSensor",
5
+ HumiditySensor = "HumiditySensor",
6
+ LeakSensor = "LeakSensor",
2
7
  Lightbulb = "Lightbulb",
3
8
  LockMechanism = "LockMechanism",
9
+ MotionSensor = "MotionSensor",
10
+ OccupancySensor = "OccupancySensor",
4
11
  Outlet = "Outlet",
5
12
  SecuritySystem = "SecuritySystem",
13
+ SmokeSensor = "SmokeSensor",
6
14
  Switch = "Switch",
7
- TemperatureSensor = "TemperatureSensor"
15
+ TemperatureSensor = "TemperatureSensor",
16
+ Thermostat = "Thermostat"
8
17
  }
9
18
  export declare enum CharacteristicKey {
10
19
  BatteryLevel = "BatteryLevel",
11
20
  Brightness = "Brightness",
21
+ CarbonDioxideDetected = "CarbonDioxideDetected",
22
+ CarbonDioxideLevel = "CarbonDioxideLevel",
23
+ CarbonDioxidePeakLevel = "CarbonDioxidePeakLevel",
24
+ CarbonMonoxideDetected = "CarbonMonoxideDetected",
25
+ CarbonMonoxideLevel = "CarbonMonoxideLevel",
26
+ CarbonMonoxidePeakLevel = "CarbonMonoxidePeakLevel",
12
27
  ColorTemperature = "ColorTemperature",
28
+ ContactSensorState = "ContactSensorState",
29
+ CoolingThresholdTemperature = "CoolingThresholdTemperature",
30
+ CurrentHeatingCoolingState = "CurrentHeatingCoolingState",
31
+ CurrentRelativeHumidity = "CurrentRelativeHumidity",
13
32
  CurrentTemperature = "CurrentTemperature",
33
+ HeatingThresholdTemperature = "HeatingThresholdTemperature",
14
34
  Hue = "Hue",
35
+ LeakDetected = "LeakDetected",
15
36
  LockCurrentState = "LockCurrentState",
16
37
  LockTargetState = "LockTargetState",
38
+ MotionDetected = "MotionDetected",
39
+ OccupancyDetected = "OccupancyDetected",
17
40
  On = "On",
18
41
  OutletInUse = "OutletInUse",
19
42
  Saturation = "Saturation",
20
43
  SecuritySystemCurrentState = "SecuritySystemCurrentState",
21
44
  SecuritySystemTargetState = "SecuritySystemTargetState",
45
+ SmokeDetected = "SmokeDetected",
22
46
  StatusActive = "StatusActive",
23
47
  StatusFault = "StatusFault",
24
48
  StatusLowBattery = "StatusLowBattery",
25
- StatusTampered = "StatusTampered"
49
+ StatusTampered = "StatusTampered",
50
+ TargetHeatingCoolingState = "TargetHeatingCoolingState",
51
+ TargetRelativeHumidity = "TargetRelativeHumidity",
52
+ TargetTemperature = "TargetTemperature",
53
+ TemperatureDisplayUnits = "TemperatureDisplayUnits"
26
54
  }
27
55
  export declare enum TemperatureUnits {
28
56
  CELSIUS = "C",
@@ -1,30 +1,58 @@
1
1
  export var AccessoryType;
2
2
  (function (AccessoryType) {
3
+ AccessoryType["CarbonDioxideSensor"] = "CarbonDioxideSensor";
4
+ AccessoryType["CarbonMonoxideSensor"] = "CarbonMonoxideSensor";
5
+ AccessoryType["ContactSensor"] = "ContactSensor";
6
+ AccessoryType["HumiditySensor"] = "HumiditySensor";
7
+ AccessoryType["LeakSensor"] = "LeakSensor";
3
8
  AccessoryType["Lightbulb"] = "Lightbulb";
4
9
  AccessoryType["LockMechanism"] = "LockMechanism";
10
+ AccessoryType["MotionSensor"] = "MotionSensor";
11
+ AccessoryType["OccupancySensor"] = "OccupancySensor";
5
12
  AccessoryType["Outlet"] = "Outlet";
6
13
  AccessoryType["SecuritySystem"] = "SecuritySystem";
14
+ AccessoryType["SmokeSensor"] = "SmokeSensor";
7
15
  AccessoryType["Switch"] = "Switch";
8
16
  AccessoryType["TemperatureSensor"] = "TemperatureSensor";
17
+ AccessoryType["Thermostat"] = "Thermostat";
9
18
  })(AccessoryType || (AccessoryType = {}));
10
19
  export var CharacteristicKey;
11
20
  (function (CharacteristicKey) {
12
21
  CharacteristicKey["BatteryLevel"] = "BatteryLevel";
13
22
  CharacteristicKey["Brightness"] = "Brightness";
23
+ CharacteristicKey["CarbonDioxideDetected"] = "CarbonDioxideDetected";
24
+ CharacteristicKey["CarbonDioxideLevel"] = "CarbonDioxideLevel";
25
+ CharacteristicKey["CarbonDioxidePeakLevel"] = "CarbonDioxidePeakLevel";
26
+ CharacteristicKey["CarbonMonoxideDetected"] = "CarbonMonoxideDetected";
27
+ CharacteristicKey["CarbonMonoxideLevel"] = "CarbonMonoxideLevel";
28
+ CharacteristicKey["CarbonMonoxidePeakLevel"] = "CarbonMonoxidePeakLevel";
14
29
  CharacteristicKey["ColorTemperature"] = "ColorTemperature";
30
+ CharacteristicKey["ContactSensorState"] = "ContactSensorState";
31
+ CharacteristicKey["CoolingThresholdTemperature"] = "CoolingThresholdTemperature";
32
+ CharacteristicKey["CurrentHeatingCoolingState"] = "CurrentHeatingCoolingState";
33
+ CharacteristicKey["CurrentRelativeHumidity"] = "CurrentRelativeHumidity";
15
34
  CharacteristicKey["CurrentTemperature"] = "CurrentTemperature";
35
+ CharacteristicKey["HeatingThresholdTemperature"] = "HeatingThresholdTemperature";
16
36
  CharacteristicKey["Hue"] = "Hue";
37
+ CharacteristicKey["LeakDetected"] = "LeakDetected";
17
38
  CharacteristicKey["LockCurrentState"] = "LockCurrentState";
18
39
  CharacteristicKey["LockTargetState"] = "LockTargetState";
40
+ CharacteristicKey["MotionDetected"] = "MotionDetected";
41
+ CharacteristicKey["OccupancyDetected"] = "OccupancyDetected";
19
42
  CharacteristicKey["On"] = "On";
20
43
  CharacteristicKey["OutletInUse"] = "OutletInUse";
21
44
  CharacteristicKey["Saturation"] = "Saturation";
22
45
  CharacteristicKey["SecuritySystemCurrentState"] = "SecuritySystemCurrentState";
23
46
  CharacteristicKey["SecuritySystemTargetState"] = "SecuritySystemTargetState";
47
+ CharacteristicKey["SmokeDetected"] = "SmokeDetected";
24
48
  CharacteristicKey["StatusActive"] = "StatusActive";
25
49
  CharacteristicKey["StatusFault"] = "StatusFault";
26
50
  CharacteristicKey["StatusLowBattery"] = "StatusLowBattery";
27
51
  CharacteristicKey["StatusTampered"] = "StatusTampered";
52
+ CharacteristicKey["TargetHeatingCoolingState"] = "TargetHeatingCoolingState";
53
+ CharacteristicKey["TargetRelativeHumidity"] = "TargetRelativeHumidity";
54
+ CharacteristicKey["TargetTemperature"] = "TargetTemperature";
55
+ CharacteristicKey["TemperatureDisplayUnits"] = "TemperatureDisplayUnits";
28
56
  })(CharacteristicKey || (CharacteristicKey = {}));
29
57
  export var TemperatureUnits;
30
58
  (function (TemperatureUnits) {
@@ -1 +1 @@
1
- {"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/model/enums.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,wCAAuB,CAAA;IACvB,gDAA+B,CAAA;IAC/B,kCAAiB,CAAA;IACjB,kDAAiC,CAAA;IACjC,kCAAiB,CAAA;IACjB,wDAAuC,CAAA;AACzC,CAAC,EAPW,aAAa,KAAb,aAAa,QAOxB;AAED,MAAM,CAAN,IAAY,iBAiBX;AAjBD,WAAY,iBAAiB;IAC3B,kDAA6B,CAAA;IAC7B,8CAAyB,CAAA;IACzB,0DAAqC,CAAA;IACrC,8DAAyC,CAAA;IACzC,gCAAW,CAAA;IACX,0DAAqC,CAAA;IACrC,wDAAmC,CAAA;IACnC,8BAAS,CAAA;IACT,gDAA2B,CAAA;IAC3B,8CAAyB,CAAA;IACzB,8EAAyD,CAAA;IACzD,4EAAuD,CAAA;IACvD,kDAA6B,CAAA;IAC7B,gDAA2B,CAAA;IAC3B,0DAAqC,CAAA;IACrC,sDAAiC,CAAA;AACnC,CAAC,EAjBW,iBAAiB,KAAjB,iBAAiB,QAiB5B;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,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"}
@@ -9,11 +9,23 @@ export type PlatformConfig = HBPlatformConfig & {
9
9
  export type TemperatureConfig = {
10
10
  temperatureUnits?: TemperatureUnits;
11
11
  };
12
- export type InfoConfig = Assertable & {
12
+ type ErrorStatusConfig = {
13
+ topicGetStatusFault?: string;
14
+ topicGetStatusTampered?: string;
15
+ valueFault?: string;
16
+ valueTampered?: string;
17
+ };
18
+ type InfoConfig = Assertable & {
13
19
  id: string;
14
20
  name: string;
15
21
  type: AccessoryType;
16
22
  };
23
+ type AdditionalInfoConfig = InfoConfig & {
24
+ manufacturer?: string;
25
+ model?: string;
26
+ serialNumber?: string;
27
+ version?: string;
28
+ };
17
29
  export type MQTTConfig = Assertable & {
18
30
  broker: string;
19
31
  username?: string;
@@ -26,12 +38,6 @@ export type MQTTAccessoryConfig = Assertable & {
26
38
  customCharacteristics?: CustomCharacteristicConfig[];
27
39
  disableLogging: boolean;
28
40
  };
29
- export type AdditionalInfoConfig = InfoConfig & {
30
- manufacturer?: string;
31
- model?: string;
32
- serialNumber?: string;
33
- version?: string;
34
- };
35
41
  export type CustomCharacteristicConfig = Assertable & {
36
42
  uuid: string;
37
43
  name: string;
@@ -46,17 +52,6 @@ export type BaseAccessoryConfig = MQTTAccessoryConfig & {
46
52
  valueBatteryLow?: string;
47
53
  valueStatusActive?: string;
48
54
  };
49
- export type LockMechanismConfig = BaseAccessoryConfig & {
50
- topicGetCurrentLockState: string;
51
- topicGetTargetLockState: string;
52
- topicSetTargetLockState: string;
53
- topicGetLockCurrentState?: string;
54
- topicGetLockTargetState?: string;
55
- topicSetTargetState?: string;
56
- valueLockStateSecured: string;
57
- valueLockStateUnsecured: string;
58
- valueLockStateJammed?: string;
59
- };
60
55
  export type OnOffConfig = BaseAccessoryConfig & {
61
56
  topicGetOn: string;
62
57
  topicSetOn: string;
@@ -65,33 +60,96 @@ export type OnOffConfig = BaseAccessoryConfig & {
65
60
  };
66
61
  export type LightbulbConfig = OnOffConfig & {
67
62
  topicGetBrightness?: string;
68
- topicGetHue?: string;
69
63
  topicGetColorTemperature?: string;
64
+ topicGetHue?: string;
70
65
  topicGetSaturation?: string;
71
66
  topicSetBrightness?: string;
72
- topicSetHue?: string;
73
67
  topicSetColorTemperature?: string;
68
+ topicSetHue?: string;
74
69
  topicSetSaturation?: string;
75
70
  };
76
71
  export type OutletConfig = OnOffConfig & {
77
72
  topicGetOutletInUse?: string;
78
73
  valueOutletInUse?: string;
79
74
  };
80
- export type SecuritySystemConfig = BaseAccessoryConfig & {
75
+ export type SwitchConfig = OnOffConfig & {};
76
+ export type SensorConfig = BaseAccessoryConfig & ErrorStatusConfig & {};
77
+ export type COSensorConfig = SensorConfig & {
78
+ topicGetCarbonMonoxideDetected: string;
79
+ topicGetCarbonMonoxideLevel?: string;
80
+ topicGetCarbonMonoxidePeakLevel?: string;
81
+ valueCarbonMonoxideDetected: string;
82
+ };
83
+ export type CO2SensorConfig = SensorConfig & {
84
+ topicGetCarbonDioxideDetected: string;
85
+ topicGetCarbonDioxideLevel?: string;
86
+ topicGetCarbonDioxidePeakLevel?: string;
87
+ valueCarbonDioxideDetected: string;
88
+ };
89
+ export type ContactSensorConfig = SensorConfig & {
90
+ topicGetContactSensorState: string;
91
+ valueContactDetected: string;
92
+ };
93
+ export type HumiditySensorConfig = SensorConfig & {
94
+ topicGetCurrentRelativeHumidity: string;
95
+ };
96
+ export type LeakSensorConfig = SensorConfig & {
97
+ topicGetLeakDetected: string;
98
+ valueLeakDetected: string;
99
+ };
100
+ export type MotionSensorConfig = SensorConfig & {
101
+ topicGetMotionDetected: string;
102
+ valueMotionDetected: string;
103
+ };
104
+ export type OccupancySensorConfig = SensorConfig & {
105
+ topicGetOccupancyDetected: string;
106
+ valueOccupancyDetected: string;
107
+ };
108
+ export type SmokeSensorConfig = SensorConfig & {
109
+ topicGetSmokeDetected: string;
110
+ valueSmokeDetected: string;
111
+ };
112
+ export type TemperatureSensorConfig = SensorConfig & TemperatureConfig & {
113
+ topicGetCurrentTemperature: string;
114
+ };
115
+ export type LockMechanismConfig = BaseAccessoryConfig & {
116
+ topicGetCurrentLockState: string;
117
+ topicGetTargetLockState: string;
118
+ topicSetTargetLockState: string;
119
+ topicGetLockCurrentState?: string;
120
+ topicGetLockTargetState?: string;
121
+ topicSetTargetState?: string;
122
+ valueLockStateSecured: string;
123
+ valueLockStateUnsecured: string;
124
+ valueLockStateJammed?: string;
125
+ };
126
+ export type SecuritySystemConfig = BaseAccessoryConfig & ErrorStatusConfig & {
81
127
  topicGetCurrentSecurityState: string;
82
128
  topicGetTargetSecurityState: string;
83
129
  topicSetTargetSecurityState: string;
84
- topicGetStatusTampered?: string;
85
- topicGetStatusFault?: string;
86
130
  valueArmStay?: string;
87
131
  valueArmAway?: string;
88
132
  valueArmNight?: string;
89
133
  valueDisarm?: string;
90
134
  valueAlarmTriggered?: string;
91
- valueTampered?: string;
92
- valueFault?: string;
93
135
  };
94
- export type SwitchConfig = OnOffConfig & {};
95
- export type TemperatureSensorConfig = BaseAccessoryConfig & TemperatureConfig & {
136
+ export type ThermostatConfig = BaseAccessoryConfig & TemperatureConfig & {
137
+ topicGetCoolingThresholdTemperature?: string;
138
+ topicGetCurrentHeatingCoolingState: string;
139
+ topicGetCurrentRelativeHumidity?: string;
96
140
  topicGetCurrentTemperature: string;
141
+ topicGetHeatingThresholdTemperature?: string;
142
+ topicGetTargetHeatingCoolingState: string;
143
+ topicGetTargetRelativeHumidity?: string;
144
+ topicGetTargetTemperature: string;
145
+ topicSetCoolingThresholdTemperature?: string;
146
+ topicSetHeatingThresholdTemperature?: string;
147
+ topicSetTargetHeatingCoolingState: string;
148
+ topicSetTargetRelativeHumidity?: string;
149
+ topicSetTargetTemperature: string;
150
+ valueModeAuto?: string;
151
+ valueModeCool?: string;
152
+ valueModeHeat?: string;
153
+ valueModeOff?: string;
97
154
  };
155
+ 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-beta.2",
7
+ "version": "1.3.0-beta.4",
8
8
  "homepage": "https://github.com/mpatfield/homebridge-easy-mqtt#readme",
9
9
  "repository": {
10
10
  "type": "git",
@@ -1,25 +0,0 @@
1
- import { BaseAccessory } from './abstract/base.js';
2
- import { strings } from '../i18n/i18n.js';
3
- import { toNumber } from '../tools/primitive.js';
4
- import { toCelsius } from '../tools/temperature.js';
5
- import { CharacteristicKey, TemperatureUnits } from '../model/enums.js';
6
- export class TemperatureSensorAccessory extends BaseAccessory {
7
- constructor(Service, Characteristic, accessory, config, log) {
8
- super(Service, Characteristic, accessory, config, log);
9
- this.setupCharacteristic(CharacteristicKey.CurrentTemperature, 0, 'topicGetCurrentTemperature', this.onCurrentTemperatureUpdate.bind(this), true);
10
- }
11
- getAccessoryService() {
12
- return this.accessory.getService(this.Service.TemperatureSensor) || this.accessory.addService(this.Service.TemperatureSensor);
13
- }
14
- async onCurrentTemperatureUpdate(topic, value) {
15
- if (typeof value !== 'number') {
16
- this.log.error(strings.temperatureSensor.badValue, this.name, `'${value}'`);
17
- return;
18
- }
19
- const units = this.config.temperatureUnits ?? TemperatureUnits.CELSIUS;
20
- const temperature = toCelsius(toNumber(value), units);
21
- this.onUpdate(CharacteristicKey.CurrentTemperature, temperature);
22
- this.logIfDesired(strings.temperatureSensor.temperature, value.toString(), units);
23
- }
24
- }
25
- //# sourceMappingURL=temperatureSensor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"temperatureSensor.js","sourceRoot":"","sources":["../../src/accessory/temperatureSensor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAK1C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAExE,MAAM,OAAO,0BAA2B,SAAQ,aAAsC;IAEpF,YAAY,OAAoB,EAAE,cAAkC,EAAE,SAA4B,EAAE,MAA+B,EAAE,GAAQ;QAC3I,KAAK,CAAC,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAEvD,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC,EAAE,4BAA4B,EAAE,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACpJ,CAAC;IAES,mBAAmB;QAC3B,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAChI,CAAC;IAEO,KAAK,CAAC,0BAA0B,CAAC,KAAa,EAAE,KAAqB;QAE3E,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC;YAC5E,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,OAAO,CAAC;QACvE,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;QAEtD,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QAEjE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;IACpF,CAAC;CACF"}