@switchbot/homebridge-switchbot 3.5.0-beta.56 → 3.5.0-beta.58

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 (164) hide show
  1. package/.vscode/settings.json +4 -1
  2. package/dist/device/blindtilt.d.ts +4 -4
  3. package/dist/device/blindtilt.d.ts.map +1 -1
  4. package/dist/device/blindtilt.js +2 -2
  5. package/dist/device/blindtilt.js.map +1 -1
  6. package/dist/device/bot.d.ts +3 -3
  7. package/dist/device/bot.d.ts.map +1 -1
  8. package/dist/device/bot.js +1 -1
  9. package/dist/device/bot.js.map +1 -1
  10. package/dist/device/ceilinglight.d.ts +3 -3
  11. package/dist/device/ceilinglight.d.ts.map +1 -1
  12. package/dist/device/ceilinglight.js +2 -2
  13. package/dist/device/ceilinglight.js.map +1 -1
  14. package/dist/device/colorbulb.d.ts +3 -3
  15. package/dist/device/colorbulb.d.ts.map +1 -1
  16. package/dist/device/colorbulb.js +1 -1
  17. package/dist/device/colorbulb.js.map +1 -1
  18. package/dist/device/contact.d.ts +4 -4
  19. package/dist/device/contact.d.ts.map +1 -1
  20. package/dist/device/contact.js +8 -2
  21. package/dist/device/contact.js.map +1 -1
  22. package/dist/device/curtain.d.ts +3 -3
  23. package/dist/device/curtain.d.ts.map +1 -1
  24. package/dist/device/curtain.js +1 -1
  25. package/dist/device/curtain.js.map +1 -1
  26. package/dist/device/device.d.ts +4 -4
  27. package/dist/device/device.d.ts.map +1 -1
  28. package/dist/device/device.js +4 -0
  29. package/dist/device/device.js.map +1 -1
  30. package/dist/device/fan.d.ts +3 -3
  31. package/dist/device/fan.d.ts.map +1 -1
  32. package/dist/device/fan.js +1 -1
  33. package/dist/device/fan.js.map +1 -1
  34. package/dist/device/hub.d.ts +4 -4
  35. package/dist/device/hub.d.ts.map +1 -1
  36. package/dist/device/hub.js +1 -5
  37. package/dist/device/hub.js.map +1 -1
  38. package/dist/device/humidifier.d.ts +3 -3
  39. package/dist/device/humidifier.d.ts.map +1 -1
  40. package/dist/device/humidifier.js +1 -1
  41. package/dist/device/humidifier.js.map +1 -1
  42. package/dist/device/iosensor.d.ts +3 -3
  43. package/dist/device/iosensor.d.ts.map +1 -1
  44. package/dist/device/iosensor.js +1 -5
  45. package/dist/device/iosensor.js.map +1 -1
  46. package/dist/device/lightstrip.d.ts +4 -4
  47. package/dist/device/lightstrip.d.ts.map +1 -1
  48. package/dist/device/lightstrip.js +2 -2
  49. package/dist/device/lightstrip.js.map +1 -1
  50. package/dist/device/lock.d.ts +3 -3
  51. package/dist/device/lock.d.ts.map +1 -1
  52. package/dist/device/lock.js +1 -1
  53. package/dist/device/lock.js.map +1 -1
  54. package/dist/device/meter.d.ts +3 -3
  55. package/dist/device/meter.d.ts.map +1 -1
  56. package/dist/device/meter.js +1 -5
  57. package/dist/device/meter.js.map +1 -1
  58. package/dist/device/meterplus.d.ts +3 -3
  59. package/dist/device/meterplus.d.ts.map +1 -1
  60. package/dist/device/meterplus.js +1 -5
  61. package/dist/device/meterplus.js.map +1 -1
  62. package/dist/device/motion.d.ts +3 -3
  63. package/dist/device/motion.d.ts.map +1 -1
  64. package/dist/device/motion.js +27 -12
  65. package/dist/device/motion.js.map +1 -1
  66. package/dist/device/plug.d.ts +3 -3
  67. package/dist/device/plug.d.ts.map +1 -1
  68. package/dist/device/plug.js +1 -1
  69. package/dist/device/plug.js.map +1 -1
  70. package/dist/device/robotvacuumcleaner.d.ts +4 -4
  71. package/dist/device/robotvacuumcleaner.d.ts.map +1 -1
  72. package/dist/device/robotvacuumcleaner.js +3 -3
  73. package/dist/device/robotvacuumcleaner.js.map +1 -1
  74. package/dist/device/waterdetector.d.ts +3 -3
  75. package/dist/device/waterdetector.d.ts.map +1 -1
  76. package/dist/device/waterdetector.js +1 -1
  77. package/dist/device/waterdetector.js.map +1 -1
  78. package/dist/homebridge-ui/public/index.html +20 -14
  79. package/dist/index.d.ts +1 -1
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +1 -1
  82. package/dist/index.js.map +1 -1
  83. package/dist/irdevice/airconditioner.d.ts +3 -3
  84. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  85. package/dist/irdevice/airconditioner.js +9 -9
  86. package/dist/irdevice/airconditioner.js.map +1 -1
  87. package/dist/irdevice/airpurifier.d.ts +3 -3
  88. package/dist/irdevice/airpurifier.d.ts.map +1 -1
  89. package/dist/irdevice/airpurifier.js +1 -1
  90. package/dist/irdevice/airpurifier.js.map +1 -1
  91. package/dist/irdevice/camera.d.ts +3 -3
  92. package/dist/irdevice/camera.d.ts.map +1 -1
  93. package/dist/irdevice/camera.js +2 -2
  94. package/dist/irdevice/camera.js.map +1 -1
  95. package/dist/irdevice/fan.d.ts +6 -6
  96. package/dist/irdevice/fan.d.ts.map +1 -1
  97. package/dist/irdevice/fan.js +37 -29
  98. package/dist/irdevice/fan.js.map +1 -1
  99. package/dist/irdevice/irdevice.d.ts +3 -3
  100. package/dist/irdevice/irdevice.d.ts.map +1 -1
  101. package/dist/irdevice/irdevice.js.map +1 -1
  102. package/dist/irdevice/light.d.ts +9 -14
  103. package/dist/irdevice/light.d.ts.map +1 -1
  104. package/dist/irdevice/light.js +67 -88
  105. package/dist/irdevice/light.js.map +1 -1
  106. package/dist/irdevice/other.d.ts +3 -3
  107. package/dist/irdevice/other.d.ts.map +1 -1
  108. package/dist/irdevice/other.js +1 -1
  109. package/dist/irdevice/other.js.map +1 -1
  110. package/dist/irdevice/tv.d.ts +3 -3
  111. package/dist/irdevice/tv.d.ts.map +1 -1
  112. package/dist/irdevice/tv.js +3 -3
  113. package/dist/irdevice/tv.js.map +1 -1
  114. package/dist/irdevice/vacuumcleaner.d.ts +3 -3
  115. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  116. package/dist/irdevice/vacuumcleaner.js +2 -2
  117. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  118. package/dist/irdevice/waterheater.d.ts +3 -3
  119. package/dist/irdevice/waterheater.d.ts.map +1 -1
  120. package/dist/irdevice/waterheater.js +2 -2
  121. package/dist/irdevice/waterheater.js.map +1 -1
  122. package/dist/platform.d.ts +7 -7
  123. package/dist/platform.d.ts.map +1 -1
  124. package/dist/platform.js +20 -23
  125. package/dist/platform.js.map +1 -1
  126. package/dist/settings.d.ts +24 -10
  127. package/dist/settings.d.ts.map +1 -1
  128. package/dist/settings.js +16 -0
  129. package/dist/settings.js.map +1 -1
  130. package/eslint.config.js +89 -78
  131. package/package.json +3 -3
  132. package/src/device/blindtilt.ts +9 -7
  133. package/src/device/bot.ts +17 -15
  134. package/src/device/ceilinglight.ts +7 -5
  135. package/src/device/colorbulb.ts +6 -4
  136. package/src/device/contact.ts +22 -13
  137. package/src/device/curtain.ts +10 -8
  138. package/src/device/device.ts +5 -4
  139. package/src/device/fan.ts +7 -5
  140. package/src/device/hub.ts +10 -7
  141. package/src/device/humidifier.ts +9 -7
  142. package/src/device/iosensor.ts +11 -8
  143. package/src/device/lightstrip.ts +7 -5
  144. package/src/device/lock.ts +9 -7
  145. package/src/device/meter.ts +10 -7
  146. package/src/device/meterplus.ts +10 -7
  147. package/src/device/motion.ts +36 -16
  148. package/src/device/plug.ts +6 -4
  149. package/src/device/robotvacuumcleaner.ts +9 -7
  150. package/src/device/waterdetector.ts +7 -5
  151. package/src/homebridge-ui/public/index.html +20 -14
  152. package/src/index.ts +3 -2
  153. package/src/irdevice/airconditioner.ts +15 -13
  154. package/src/irdevice/airpurifier.ts +7 -5
  155. package/src/irdevice/camera.ts +7 -5
  156. package/src/irdevice/fan.ts +43 -30
  157. package/src/irdevice/irdevice.ts +4 -5
  158. package/src/irdevice/light.ts +83 -103
  159. package/src/irdevice/other.ts +15 -13
  160. package/src/irdevice/tv.ts +9 -7
  161. package/src/irdevice/vacuumcleaner.ts +7 -5
  162. package/src/irdevice/waterheater.ts +7 -5
  163. package/src/platform.ts +59 -66
  164. package/src/settings.ts +73 -58
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
package/dist/settings.js CHANGED
@@ -10,4 +10,20 @@ export const PLUGIN_NAME = '@switchbot/homebridge-switchbot';
10
10
  * This is the main url used to access SwitchBot API
11
11
  */
12
12
  export const Devices = 'https://api.switch-bot.com/v1.1/devices';
13
+ /**
14
+ * This is the updateWebhook url used to access SwitchBot API
15
+ */
16
+ export const setupWebhook = 'https://api.switch-bot.com/v1.1/webhook/setupWebhook';
17
+ /**
18
+ * This is the updateWebhook url used to access SwitchBot API
19
+ */
20
+ export const queryWebhook = 'https://api.switch-bot.com/v1.1/webhook/queryWebhook';
21
+ /**
22
+ * This is the updateWebhook url used to access SwitchBot API
23
+ */
24
+ export const updateWebhook = 'https://api.switch-bot.com/v1.1/webhook/updateWebhook';
25
+ /**
26
+ * This is the deleteWebhook url used to access SwitchBot API
27
+ */
28
+ export const deleteWebhook = 'https://api.switch-bot.com/v1.1/webhook/deleteWebhook';
13
29
  //# sourceMappingURL=settings.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,iCAAiC,CAAC;AAE7D;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,yCAAyC,CAAC"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,CAAC;AAEzC;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,iCAAiC,CAAC;AAE7D;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,yCAAyC,CAAC;AAEjE;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,sDAAsD,CAAC;AAEnF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,sDAAsD,CAAC;AAEnF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,uDAAuD,CAAC;AAErF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,uDAAuD,CAAC"}
package/eslint.config.js CHANGED
@@ -1,85 +1,96 @@
1
- import globals from 'globals';
2
1
  import pluginJs from '@eslint/js';
3
2
  import tseslint from 'typescript-eslint';
3
+ import stylistic from '@stylistic/eslint-plugin'
4
4
 
5
5
 
6
- export default [
7
- { languageOptions: { globals: globals.browser } },
8
- pluginJs.configs.recommended,
9
- ...tseslint.configs.recommended,
10
- {
11
- ignores: ['.dist/*'],
6
+ export default tseslint.config({
7
+ plugins: {
8
+ '@stylistic': stylistic,
9
+ '@typescript-eslint': tseslint.plugin,
12
10
  },
13
- {
14
- rules: {
15
- 'quotes': [
16
- 'warn',
17
- 'single',
18
- ],
19
- 'indent': [
20
- 'warn',
21
- 2,
22
- {
23
- 'SwitchCase': 1,
24
- },
25
- ],
26
- 'linebreak-style': [
27
- 'warn',
28
- 'unix',
29
- ],
30
- 'semi': [
31
- 'warn',
32
- 'always',
33
- ],
34
- 'comma-dangle': [
35
- 'warn',
36
- 'always-multiline',
37
- ],
38
- 'dot-notation': 'off',
39
- 'eqeqeq': 'warn',
40
- 'curly': [
41
- 'warn',
42
- 'all',
43
- ],
44
- 'brace-style': [
45
- 'warn',
46
- ],
47
- 'prefer-arrow-callback': [
48
- 'warn',
49
- ],
50
- 'max-len': [
51
- 'warn',
52
- 150,
53
- ],
54
- 'no-console': [
55
- 'warn',
56
- ], // use the provided Homebridge log method instead
57
- 'no-non-null-assertion': [
58
- 'off',
59
- ],
60
- 'comma-spacing': [
61
- 'error',
62
- ],
63
- 'no-multi-spaces': [
64
- 'warn',
65
- {
66
- 'ignoreEOLComments': true,
67
- },
68
- ],
69
- 'no-trailing-spaces': [
70
- 'warn',
71
- ],
72
- 'lines-between-class-members': [
73
- 'warn',
74
- 'always',
75
- {
76
- 'exceptAfterSingleLine': true,
77
- },
78
- ],
79
- '@typescript-eslint/explicit-function-return-type': 'off',
80
- '@typescript-eslint/no-non-null-assertion': 'off',
81
- '@typescript-eslint/explicit-module-boundary-types': 'off',
82
- '@typescript-eslint/no-explicit-any': 'off',
11
+ languageOptions: {
12
+ parser: tseslint.parser,
13
+ parserOptions: {
14
+ project: true,
83
15
  },
84
16
  },
85
- ];
17
+ files: ['**/*.ts'],
18
+ ignores: ['.dist/*'],
19
+ extends: [
20
+ pluginJs.configs.recommended,
21
+ ...tseslint.configs.recommended,
22
+ ],
23
+ rules: {
24
+ '@typescript-eslint/array-type': 'error',
25
+ '@typescript-eslint/consistent-type-imports': 'error',
26
+ '@stylistic/type-annotation-spacing': 'error',
27
+ '@stylistic/quotes': [
28
+ 'warn',
29
+ 'single',
30
+ ],
31
+ '@stylistic/indent': [
32
+ 'warn',
33
+ 2,
34
+ {
35
+ 'SwitchCase': 1,
36
+ },
37
+ ],
38
+ '@stylistic/linebreak-style': [
39
+ 'warn',
40
+ 'unix',
41
+ ],
42
+ '@stylistic/semi': [
43
+ 'warn',
44
+ 'always',
45
+ ],
46
+ '@stylistic/comma-dangle': [
47
+ 'warn',
48
+ 'always-multiline',
49
+ ],
50
+ '@stylistic/dot-notation': 'off',
51
+ 'eqeqeq': 'warn',
52
+ 'curly': [
53
+ 'warn',
54
+ 'all',
55
+ ],
56
+ '@stylistic/brace-style': [
57
+ 'warn',
58
+ ],
59
+ 'prefer-arrow-callback': [
60
+ 'warn',
61
+ ],
62
+ '@stylistic/max-len': [
63
+ 'warn',
64
+ 150,
65
+ ],
66
+ 'no-console': [
67
+ 'warn',
68
+ ], // use the provided Homebridge log method instead
69
+ 'no-non-null-assertion': [
70
+ 'off',
71
+ ],
72
+ '@stylistic/comma-spacing': [
73
+ 'error',
74
+ ],
75
+ '@stylistic/no-multi-spaces': [
76
+ 'warn',
77
+ {
78
+ 'ignoreEOLComments': true,
79
+ },
80
+ ],
81
+ '@stylistic/no-trailing-spaces': [
82
+ 'warn',
83
+ ],
84
+ '@stylistic/lines-between-class-members': [
85
+ 'warn',
86
+ 'always',
87
+ {
88
+ 'exceptAfterSingleLine': true,
89
+ },
90
+ ],
91
+ '@typescript-eslint/explicit-function-return-type': 'off',
92
+ '@typescript-eslint/no-non-null-assertion': 'off',
93
+ '@typescript-eslint/explicit-module-boundary-types': 'off',
94
+ '@typescript-eslint/no-explicit-any': 'off',
95
+ },
96
+ });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "displayName": "SwitchBot",
3
3
  "name": "@switchbot/homebridge-switchbot",
4
- "version": "3.5.0-beta.56",
4
+ "version": "3.5.0-beta.58",
5
5
  "description": "The SwitchBot plugin allows you to access your SwitchBot device(s) from HomeKit.",
6
6
  "author": {
7
7
  "name": "SwitchBot",
@@ -89,7 +89,7 @@
89
89
  },
90
90
  "devDependencies": {
91
91
  "@eslint/js": "^9.3.0",
92
- "@stylistic/eslint-plugin-js": "^2.1.0",
92
+ "@stylistic/eslint-plugin": "^2.1.0",
93
93
  "@types/eslint__js": "^8.42.3",
94
94
  "@types/node": "^20.12.12",
95
95
  "eslint": "^9.3.0",
@@ -101,6 +101,6 @@
101
101
  "rimraf": "^5.0.7",
102
102
  "ts-node": "^10.9.2",
103
103
  "typescript": "^5.4.5",
104
- "typescript-eslint": "^8.0.0-alpha.13"
104
+ "typescript-eslint": "^8.0.0-alpha.14"
105
105
  }
106
106
  }
@@ -3,13 +3,15 @@
3
3
  * blindtilt.ts: @switchbot/homebridge-switchbot.
4
4
  */
5
5
  import { request } from 'undici';
6
- import { BlindTiltMappingMode } from '../utils.js';
6
+ import { Devices } from '../settings.js';
7
7
  import { interval, Subject } from 'rxjs';
8
8
  import { deviceBase } from './device.js';
9
- import { SwitchBotPlatform } from '../platform.js';
9
+ import { BlindTiltMappingMode } from '../utils.js';
10
10
  import { debounceTime, skipWhile, take, tap } from 'rxjs/operators';
11
- import { Service, PlatformAccessory, CharacteristicValue } from 'homebridge';
12
- import { device, devicesConfig, serviceData, deviceStatus, Devices } from '../settings.js';
11
+
12
+ import type { SwitchBotPlatform } from '../platform.js';
13
+ import type { Service, PlatformAccessory, CharacteristicValue } from 'homebridge';
14
+ import type { device, devicesConfig, serviceData, deviceStatus} from '../settings.js';
13
15
 
14
16
 
15
17
  export class BlindTilt extends deviceBase {
@@ -62,7 +64,7 @@ export class BlindTilt extends deviceBase {
62
64
 
63
65
  // Initialize LightBulb property
64
66
  this.WindowCovering = {
65
- Service: accessory.getService(this.hap.Service.WindowCovering)!,
67
+ Service: accessory.getService(this.hap.Service.WindowCovering) as Service,
66
68
  PositionState: accessory.context.PositionState || this.hap.Characteristic.PositionState.STOPPED,
67
69
  TargetPosition: accessory.context.TargetPosition || 100,
68
70
  CurrentPosition: accessory.context.CurrentPosition || 100,
@@ -72,7 +74,7 @@ export class BlindTilt extends deviceBase {
72
74
 
73
75
  // Initialize Battery property
74
76
  this.Battery = {
75
- Service: accessory.getService(this.hap.Service.Battery)!,
77
+ Service: accessory.getService(this.hap.Service.Battery) as Service,
76
78
  BatteryLevel: accessory.context.BatteryLevel || 100,
77
79
  StatusLowBattery: this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL,
78
80
  };
@@ -80,7 +82,7 @@ export class BlindTilt extends deviceBase {
80
82
  // Initialize LightSensor property
81
83
  if (!this.device.blindTilt?.hide_lightsensor) {
82
84
  this.LightSensor = {
83
- Service: accessory.getService(this.hap.Service.LightSensor)!,
85
+ Service: accessory.getService(this.hap.Service.LightSensor) as Service,
84
86
  CurrentAmbientLightLevel: accessory.context.CurrentAmbientLightLevel || 0.0001,
85
87
  };
86
88
  }
package/src/device/bot.ts CHANGED
@@ -5,10 +5,12 @@
5
5
  import { request } from 'undici';
6
6
  import { deviceBase } from './device.js';
7
7
  import { interval, Subject } from 'rxjs';
8
- import { SwitchBotPlatform } from '../platform.js';
8
+ import { Devices } from '../settings.js';
9
9
  import { debounceTime, skipWhile, take, tap } from 'rxjs/operators';
10
- import { Service, PlatformAccessory, CharacteristicValue } from 'homebridge';
11
- import { device, devicesConfig, serviceData, deviceStatus, Devices } from '../settings.js';
10
+
11
+ import type { SwitchBotPlatform } from '../platform.js';
12
+ import type { Service, PlatformAccessory, CharacteristicValue } from 'homebridge';
13
+ import type { device, devicesConfig, serviceData, deviceStatus} from '../settings.js';
12
14
 
13
15
  /**
14
16
  * Platform Accessory
@@ -17,7 +19,7 @@ import { device, devicesConfig, serviceData, deviceStatus, Devices } from '../se
17
19
  */
18
20
  export class Bot extends deviceBase {
19
21
  // Services
20
- private Battery!: {
22
+ private Battery: {
21
23
  Service: Service;
22
24
  BatteryLevel: CharacteristicValue;
23
25
  StatusLowBattery: CharacteristicValue;
@@ -100,7 +102,7 @@ export class Bot extends deviceBase {
100
102
 
101
103
  // Initialize Battery property
102
104
  this.Battery = {
103
- Service: accessory.getService(this.hap.Service.Battery)!,
105
+ Service: accessory.getService(this.hap.Service.Battery) as Service,
104
106
  BatteryLevel: accessory.context.BatteryLevel || 100,
105
107
  StatusLowBattery: accessory.context.StatusLowBattery || this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL,
106
108
  };
@@ -109,7 +111,7 @@ export class Bot extends deviceBase {
109
111
  if (this.botDeviceType === 'switch') {
110
112
  // Initialize Switch property
111
113
  this.Switch = {
112
- Service: accessory.getService(this.hap.Service.Switch)!,
114
+ Service: accessory.getService(this.hap.Service.Switch) as Service,
113
115
  On: accessory.context.On || false,
114
116
  };
115
117
  this.removeFanService(accessory);
@@ -133,7 +135,7 @@ export class Bot extends deviceBase {
133
135
  } else if (this.botDeviceType === 'garagedoor') {
134
136
  // Initialize Switch property
135
137
  this.GarageDoor = {
136
- Service: accessory.getService(this.hap.Service.GarageDoorOpener)!,
138
+ Service: accessory.getService(this.hap.Service.GarageDoorOpener) as Service,
137
139
  On: accessory.context.On || false,
138
140
  };
139
141
  this.removeFanService(accessory);
@@ -158,7 +160,7 @@ export class Bot extends deviceBase {
158
160
  } else if (this.botDeviceType === 'door') {
159
161
  // Initialize Switch property
160
162
  this.Door = {
161
- Service: accessory.getService(this.hap.Service.Door)!,
163
+ Service: accessory.getService(this.hap.Service.Door) as Service,
162
164
  On: accessory.context.On || false,
163
165
  };
164
166
  this.removeFanService(accessory);
@@ -191,7 +193,7 @@ export class Bot extends deviceBase {
191
193
  } else if (this.botDeviceType === 'window') {
192
194
  // Initialize Switch property
193
195
  this.Window = {
194
- Service: accessory.getService(this.hap.Service.Window)!,
196
+ Service: accessory.getService(this.hap.Service.Window) as Service,
195
197
  On: accessory.context.On || false,
196
198
  };
197
199
  this.removeFanService(accessory);
@@ -224,7 +226,7 @@ export class Bot extends deviceBase {
224
226
  } else if (this.botDeviceType === 'windowcovering') {
225
227
  // Initialize Switch property
226
228
  this.WindowCovering = {
227
- Service: accessory.getService(this.hap.Service.WindowCovering)!,
229
+ Service: accessory.getService(this.hap.Service.WindowCovering) as Service,
228
230
  On: accessory.context.On || false,
229
231
  };
230
232
  this.removeFanService(accessory);
@@ -257,7 +259,7 @@ export class Bot extends deviceBase {
257
259
  } else if (this.botDeviceType === 'lock') {
258
260
  // Initialize Switch property
259
261
  this.Lock = {
260
- Service: accessory.getService(this.hap.Service.LockMechanism)!,
262
+ Service: accessory.getService(this.hap.Service.LockMechanism) as Service,
261
263
  On: accessory.context.On || false,
262
264
  };
263
265
  this.removeFanService(accessory);
@@ -281,7 +283,7 @@ export class Bot extends deviceBase {
281
283
  } else if (this.botDeviceType === 'faucet') {
282
284
  // Initialize Switch property
283
285
  this.Faucet = {
284
- Service: accessory.getService(this.hap.Service.Faucet)!,
286
+ Service: accessory.getService(this.hap.Service.Faucet) as Service,
285
287
  On: accessory.context.On || false,
286
288
  };
287
289
  this.removeFanService(accessory);
@@ -305,7 +307,7 @@ export class Bot extends deviceBase {
305
307
  } else if (this.botDeviceType === 'fan') {
306
308
  // Initialize Switch property
307
309
  this.Fan = {
308
- Service: accessory.getService(this.hap.Service.Fanv2)!,
310
+ Service: accessory.getService(this.hap.Service.Fanv2) as Service,
309
311
  On: accessory.context.On || false,
310
312
  };
311
313
  this.removeLockService(accessory);
@@ -329,7 +331,7 @@ export class Bot extends deviceBase {
329
331
  } else if (this.botDeviceType === 'stateful') {
330
332
  // Initialize Switch property
331
333
  this.StatefulProgrammableSwitch = {
332
- Service: accessory.getService(this.hap.Service.StatefulProgrammableSwitch)!,
334
+ Service: accessory.getService(this.hap.Service.StatefulProgrammableSwitch) as Service,
333
335
  On: accessory.context.On || false,
334
336
  };
335
337
  this.removeFanService(accessory);
@@ -355,7 +357,7 @@ export class Bot extends deviceBase {
355
357
  } else {
356
358
  // Initialize Switch property
357
359
  this.Outlet = {
358
- Service: accessory.getService(this.hap.Service.Outlet)!,
360
+ Service: accessory.getService(this.hap.Service.Outlet) as Service,
359
361
  On: accessory.context.On || false,
360
362
  };
361
363
  this.removeFanService(accessory);
@@ -4,12 +4,14 @@
4
4
  */
5
5
  import { request } from 'undici';
6
6
  import { deviceBase } from './device.js';
7
- import { hs2rgb, rgb2hs, m2hs } from '../utils.js';
8
7
  import { interval, Subject } from 'rxjs';
9
- import { SwitchBotPlatform } from '../platform.js';
8
+ import { Devices } from '../settings.js';
9
+ import { hs2rgb, rgb2hs, m2hs } from '../utils.js';
10
10
  import { debounceTime, skipWhile, take, tap } from 'rxjs/operators';
11
- import { device, devicesConfig, serviceData, deviceStatus, Devices } from '../settings.js';
12
- import { Service, PlatformAccessory, CharacteristicValue, ControllerConstructor, Controller, ControllerServiceMap } from 'homebridge';
11
+
12
+ import type { SwitchBotPlatform } from '../platform.js';
13
+ import type { device, devicesConfig, serviceData, deviceStatus} from '../settings.js';
14
+ import type { Service, PlatformAccessory, CharacteristicValue, ControllerConstructor, Controller, ControllerServiceMap } from 'homebridge';
13
15
 
14
16
  /**
15
17
  * Platform Accessory
@@ -50,7 +52,7 @@ export class CeilingLight extends deviceBase {
50
52
 
51
53
  // Initialize LightBulb property
52
54
  this.LightBulb = {
53
- Service: accessory.getService(this.hap.Service.Lightbulb)!,
55
+ Service: accessory.getService(this.hap.Service.Lightbulb) as Service,
54
56
  On: accessory.context.On || false,
55
57
  Hue: accessory.context.Hue || 0,
56
58
  Saturation: accessory.context.Saturation || 0,
@@ -5,11 +5,13 @@
5
5
  import { request } from 'undici';
6
6
  import { deviceBase } from './device.js';
7
7
  import { interval, Subject } from 'rxjs';
8
- import { SwitchBotPlatform } from '../platform.js';
8
+ import { Devices } from '../settings.js';
9
9
  import { hs2rgb, rgb2hs, m2hs } from '../utils.js';
10
10
  import { debounceTime, skipWhile, take, tap } from 'rxjs/operators';
11
- import { device, devicesConfig, deviceStatus, serviceData, Devices } from '../settings.js';
12
- import { Service, PlatformAccessory, CharacteristicValue, ControllerConstructor, Controller, ControllerServiceMap } from 'homebridge';
11
+
12
+ import type { SwitchBotPlatform } from '../platform.js';
13
+ import type { device, devicesConfig, deviceStatus, serviceData} from '../settings.js';
14
+ import type { Service, PlatformAccessory, CharacteristicValue, ControllerConstructor, Controller, ControllerServiceMap } from 'homebridge';
13
15
 
14
16
  /**
15
17
  * Platform Accessory
@@ -51,7 +53,7 @@ export class ColorBulb extends deviceBase {
51
53
 
52
54
  // Initialize LightBulb property
53
55
  this.LightBulb = {
54
- Service: accessory.getService(this.hap.Service.Lightbulb)!,
56
+ Service: accessory.getService(this.hap.Service.Lightbulb) as Service,
55
57
  On: accessory.context.On || false,
56
58
  Hue: accessory.context.Hue || 0,
57
59
  Saturation: accessory.context.Saturation || 0,
@@ -4,10 +4,12 @@
4
4
  */
5
5
  import { deviceBase } from './device.js';
6
6
  import { interval, Subject } from 'rxjs';
7
+ import { Devices } from '../settings.js';
7
8
  import { skipWhile } from 'rxjs/operators';
8
- import { SwitchBotPlatform } from '../platform.js';
9
- import { Service, PlatformAccessory, CharacteristicValue } from 'homebridge';
10
- import { device, devicesConfig, serviceData, deviceStatus, Devices } from '../settings.js';
9
+
10
+ import type { SwitchBotPlatform } from '../platform.js';
11
+ import type { Service, PlatformAccessory, CharacteristicValue } from 'homebridge';
12
+ import type { device, devicesConfig, serviceData, deviceStatus} from '../settings.js';
11
13
 
12
14
  /**
13
15
  * Platform Accessory
@@ -16,11 +18,17 @@ import { device, devicesConfig, serviceData, deviceStatus, Devices } from '../se
16
18
  */
17
19
  export class Contact extends deviceBase {
18
20
  // Services
19
- private ContactSensor!: {
21
+ private ContactSensor: {
20
22
  Service: Service;
21
23
  ContactSensorState: CharacteristicValue;
22
24
  };
23
25
 
26
+ private Battery: {
27
+ Service: Service;
28
+ BatteryLevel: CharacteristicValue;
29
+ StatusLowBattery: CharacteristicValue;
30
+ };
31
+
24
32
  private MotionSensor?: {
25
33
  Service: Service;
26
34
  MotionDetected: CharacteristicValue;
@@ -31,12 +39,6 @@ export class Contact extends deviceBase {
31
39
  CurrentAmbientLightLevel: CharacteristicValue;
32
40
  };
33
41
 
34
- private Battery!: {
35
- Service: Service;
36
- BatteryLevel: CharacteristicValue;
37
- StatusLowBattery: CharacteristicValue;
38
- };
39
-
40
42
  // Updates
41
43
  contactUpdateInProgress!: boolean;
42
44
  doContactUpdate!: Subject<void>;
@@ -53,14 +55,21 @@ export class Contact extends deviceBase {
53
55
 
54
56
  // Initialize Contact Sensor property
55
57
  this.ContactSensor = {
56
- Service: accessory.getService(this.hap.Service.ContactSensor)!,
58
+ Service: accessory.getService(this.hap.Service.ContactSensor) as Service,
57
59
  ContactSensorState: this.hap.Characteristic.ContactSensorState.CONTACT_DETECTED,
58
60
  };
59
61
 
62
+ // Initialize Battery property
63
+ this.Battery = {
64
+ Service: accessory.getService(this.hap.Service.Battery) as Service,
65
+ BatteryLevel: 100,
66
+ StatusLowBattery: this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL,
67
+ };
68
+
60
69
  // Initialize Motion Sensor property
61
70
  if (!this.device.contact?.hide_motionsensor) {
62
71
  this.MotionSensor = {
63
- Service: accessory.getService(this.hap.Service.MotionSensor)!,
72
+ Service: accessory.getService(this.hap.Service.MotionSensor) as Service,
64
73
  MotionDetected: false,
65
74
  };
66
75
  }
@@ -68,7 +77,7 @@ export class Contact extends deviceBase {
68
77
  // Initialize Light Sensor property
69
78
  if (!this.device.contact?.hide_lightsensor) {
70
79
  this.LightSensor = {
71
- Service: accessory.getService(this.hap.Service.LightSensor)!,
80
+ Service: accessory.getService(this.hap.Service.LightSensor) as Service,
72
81
  CurrentAmbientLightLevel: 0,
73
82
  };
74
83
  }
@@ -6,14 +6,16 @@ import { hostname } from 'os';
6
6
  import { request } from 'undici';
7
7
  import { interval, Subject } from 'rxjs';
8
8
  import { deviceBase } from './device.js';
9
- import { SwitchBotPlatform } from '../platform.js';
9
+ import { Devices } from '../settings.js';
10
10
  import { debounceTime, skipWhile, take, tap } from 'rxjs/operators';
11
- import { Service, PlatformAccessory, CharacteristicValue, CharacteristicChange } from 'homebridge';
12
- import { device, devicesConfig, serviceData, deviceStatus, Devices } from '../settings.js';
11
+
12
+ import type { SwitchBotPlatform } from '../platform.js';
13
+ import type { device, devicesConfig, serviceData, deviceStatus} from '../settings.js';
14
+ import type { Service, PlatformAccessory, CharacteristicValue, CharacteristicChange } from 'homebridge';
13
15
 
14
16
  export class Curtain extends deviceBase {
15
17
  // Services
16
- private WindowCovering!: {
18
+ private WindowCovering: {
17
19
  Service: Service;
18
20
  PositionState: CharacteristicValue;
19
21
  TargetPosition: CharacteristicValue;
@@ -21,7 +23,7 @@ export class Curtain extends deviceBase {
21
23
  HoldPosition: CharacteristicValue;
22
24
  };
23
25
 
24
- private Battery!: {
26
+ private Battery: {
25
27
  Service: Service;
26
28
  BatteryLevel: CharacteristicValue;
27
29
  StatusLowBattery: CharacteristicValue;
@@ -55,7 +57,7 @@ export class Curtain extends deviceBase {
55
57
 
56
58
  // Initialize LightBulb property
57
59
  this.WindowCovering = {
58
- Service: accessory.getService(this.hap.Service.WindowCovering)!,
60
+ Service: accessory.getService(this.hap.Service.WindowCovering) as Service,
59
61
  PositionState: accessory.context.PositionState || this.hap.Characteristic.PositionState.STOPPED,
60
62
  TargetPosition: accessory.context.TargetPosition || 100,
61
63
  CurrentPosition: accessory.context.CurrentPosition || 100,
@@ -64,7 +66,7 @@ export class Curtain extends deviceBase {
64
66
 
65
67
  // Initialize Battery property
66
68
  this.Battery = {
67
- Service: accessory.getService(this.hap.Service.Battery)!,
69
+ Service: accessory.getService(this.hap.Service.Battery) as Service,
68
70
  BatteryLevel: accessory.context.BatteryLevel || 100,
69
71
  StatusLowBattery: accessory.context.StatusLowBattery || this.hap.Characteristic.StatusLowBattery.BATTERY_LEVEL_NORMAL,
70
72
  };
@@ -72,7 +74,7 @@ export class Curtain extends deviceBase {
72
74
  // Initialize LightSensor property
73
75
  if (!this.device.curtain?.hide_lightsensor) {
74
76
  this.LightSensor = {
75
- Service: accessory.getService(this.hap.Service.LightSensor)!,
77
+ Service: accessory.getService(this.hap.Service.LightSensor) as Service,
76
78
  CurrentAmbientLightLevel: accessory.context.CurrentAmbientLightLevel || 0.0001,
77
79
  };
78
80
  }
@@ -2,15 +2,16 @@
2
2
  *
3
3
  * device.ts: @switchbot/homebridge-switchbot.
4
4
  */
5
- import { API, HAP, Logging, PlatformAccessory } from 'homebridge';
6
5
 
7
6
  import { hostname } from 'os';
8
- import { MqttClient } from 'mqtt';
9
7
  import asyncmqtt from 'async-mqtt';
10
- import { SwitchBotPlatform } from '../platform.js';
11
- import { SwitchBotPlatformConfig, device, devicesConfig } from '../settings.js';
12
8
  import { BlindTiltMappingMode, SwitchBotModel, SwitchBotBLEModel, sleep } from '../utils.js';
13
9
 
10
+ import type { MqttClient } from 'mqtt';
11
+ import type { SwitchBotPlatform } from '../platform.js';
12
+ import type { API, HAP, Logging, PlatformAccessory } from 'homebridge';
13
+ import type { SwitchBotPlatformConfig, device, devicesConfig } from '../settings.js';
14
+
14
15
  export abstract class deviceBase {
15
16
  public readonly api: API;
16
17
  public readonly log: Logging;