@switchbot/homebridge-switchbot 2.0.0-beta.2 → 2.0.0-beta.20

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 (113) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/README.md +1 -2
  3. package/config.schema.json +75 -20
  4. package/dist/device/bot.d.ts +32 -28
  5. package/dist/device/bot.d.ts.map +1 -1
  6. package/dist/device/bot.js +646 -648
  7. package/dist/device/bot.js.map +1 -1
  8. package/dist/device/colorbulb.d.ts +34 -19
  9. package/dist/device/colorbulb.d.ts.map +1 -1
  10. package/dist/device/colorbulb.js +429 -304
  11. package/dist/device/colorbulb.js.map +1 -1
  12. package/dist/device/contact.d.ts +16 -7
  13. package/dist/device/contact.d.ts.map +1 -1
  14. package/dist/device/contact.js +288 -230
  15. package/dist/device/contact.js.map +1 -1
  16. package/dist/device/curtain.d.ts +21 -16
  17. package/dist/device/curtain.d.ts.map +1 -1
  18. package/dist/device/curtain.js +519 -489
  19. package/dist/device/curtain.js.map +1 -1
  20. package/dist/device/humidifier.d.ts +22 -18
  21. package/dist/device/humidifier.d.ts.map +1 -1
  22. package/dist/device/humidifier.js +415 -360
  23. package/dist/device/humidifier.js.map +1 -1
  24. package/dist/device/lock.d.ts +22 -8
  25. package/dist/device/lock.d.ts.map +1 -1
  26. package/dist/device/lock.js +253 -147
  27. package/dist/device/lock.js.map +1 -1
  28. package/dist/device/meter.d.ts +21 -16
  29. package/dist/device/meter.d.ts.map +1 -1
  30. package/dist/device/meter.js +325 -255
  31. package/dist/device/meter.js.map +1 -1
  32. package/dist/device/meterplus.d.ts +23 -12
  33. package/dist/device/meterplus.d.ts.map +1 -1
  34. package/dist/device/meterplus.js +346 -208
  35. package/dist/device/meterplus.js.map +1 -1
  36. package/dist/device/motion.d.ts +17 -8
  37. package/dist/device/motion.d.ts.map +1 -1
  38. package/dist/device/motion.js +261 -209
  39. package/dist/device/motion.js.map +1 -1
  40. package/dist/device/plug.d.ts +24 -16
  41. package/dist/device/plug.d.ts.map +1 -1
  42. package/dist/device/plug.js +267 -242
  43. package/dist/device/plug.js.map +1 -1
  44. package/dist/device/striplight.d.ts +51 -16
  45. package/dist/device/striplight.d.ts.map +1 -1
  46. package/dist/device/striplight.js +527 -185
  47. package/dist/device/striplight.js.map +1 -1
  48. package/dist/irdevice/airconditioner.d.ts +7 -12
  49. package/dist/irdevice/airconditioner.d.ts.map +1 -1
  50. package/dist/irdevice/airconditioner.js +261 -230
  51. package/dist/irdevice/airconditioner.js.map +1 -1
  52. package/dist/irdevice/airpurifier.d.ts +3 -3
  53. package/dist/irdevice/airpurifier.d.ts.map +1 -1
  54. package/dist/irdevice/airpurifier.js +137 -104
  55. package/dist/irdevice/airpurifier.js.map +1 -1
  56. package/dist/irdevice/camera.d.ts +9 -8
  57. package/dist/irdevice/camera.d.ts.map +1 -1
  58. package/dist/irdevice/camera.js +116 -86
  59. package/dist/irdevice/camera.js.map +1 -1
  60. package/dist/irdevice/fan.d.ts +8 -7
  61. package/dist/irdevice/fan.d.ts.map +1 -1
  62. package/dist/irdevice/fan.js +143 -109
  63. package/dist/irdevice/fan.js.map +1 -1
  64. package/dist/irdevice/light.d.ts +9 -8
  65. package/dist/irdevice/light.d.ts.map +1 -1
  66. package/dist/irdevice/light.js +120 -103
  67. package/dist/irdevice/light.js.map +1 -1
  68. package/dist/irdevice/other.d.ts +9 -8
  69. package/dist/irdevice/other.d.ts.map +1 -1
  70. package/dist/irdevice/other.js +128 -98
  71. package/dist/irdevice/other.js.map +1 -1
  72. package/dist/irdevice/tv.d.ts +10 -9
  73. package/dist/irdevice/tv.d.ts.map +1 -1
  74. package/dist/irdevice/tv.js +126 -93
  75. package/dist/irdevice/tv.js.map +1 -1
  76. package/dist/irdevice/vacuumcleaner.d.ts +7 -10
  77. package/dist/irdevice/vacuumcleaner.d.ts.map +1 -1
  78. package/dist/irdevice/vacuumcleaner.js +115 -89
  79. package/dist/irdevice/vacuumcleaner.js.map +1 -1
  80. package/dist/irdevice/waterheater.d.ts +6 -9
  81. package/dist/irdevice/waterheater.d.ts.map +1 -1
  82. package/dist/irdevice/waterheater.js +115 -89
  83. package/dist/irdevice/waterheater.js.map +1 -1
  84. package/dist/platform.d.ts +3 -5
  85. package/dist/platform.d.ts.map +1 -1
  86. package/dist/platform.js +203 -200
  87. package/dist/platform.js.map +1 -1
  88. package/dist/settings.d.ts +15 -11
  89. package/dist/settings.d.ts.map +1 -1
  90. package/dist/settings.js.map +1 -1
  91. package/package.json +12 -10
  92. package/src/device/bot.ts +641 -657
  93. package/src/device/colorbulb.ts +440 -339
  94. package/src/device/contact.ts +289 -233
  95. package/src/device/curtain.ts +523 -503
  96. package/src/device/humidifier.ts +421 -396
  97. package/src/device/lock.ts +257 -147
  98. package/src/device/meter.ts +335 -268
  99. package/src/device/meterplus.ts +354 -213
  100. package/src/device/motion.ts +264 -213
  101. package/src/device/plug.ts +270 -251
  102. package/src/device/striplight.ts +552 -207
  103. package/src/irdevice/airconditioner.ts +263 -241
  104. package/src/irdevice/airpurifier.ts +132 -103
  105. package/src/irdevice/camera.ts +112 -85
  106. package/src/irdevice/fan.ts +138 -106
  107. package/src/irdevice/light.ts +116 -103
  108. package/src/irdevice/other.ts +124 -97
  109. package/src/irdevice/tv.ts +123 -93
  110. package/src/irdevice/vacuumcleaner.ts +112 -89
  111. package/src/irdevice/waterheater.ts +111 -89
  112. package/src/platform.ts +195 -216
  113. package/src/settings.ts +15 -11
package/CHANGELOG.md CHANGED
@@ -7,6 +7,13 @@ All notable changes to this project will be documented in this file. This projec
7
7
  ## What's Changed
8
8
 
9
9
  - Moved from v1.0 to v1.1 of [OpenAPI](https://github.com/OpenWonderLabs/SwitchBotAPI)
10
+ - Publish device(s) as an external accessory.
11
+ - Added `connectionType` config, this replaces the `BLE` config.
12
+ - You can now select Both Connections, Only OpenAPI, Only BLE, or Disable.
13
+ - `Both` will use BLE as the default connection and will use OpenAPI as a backup connection.
14
+ - `OpenAPI` will only allow connections through the OpenAPI.
15
+ - `BLE` will only allow connections through Bluetooth (BLE), .
16
+ - `Disable` will disable all connections. This will also allow you to disable commands and refreshes for a specific device but leave it in HomeKit.
10
17
  - Housekeeping and updated dependencies.
11
18
 
12
19
  **Full Changelog**: https://github.com/OpenWonderLabs/homebridge-switchbot/compare/v1.15.0...v2.0.0
@@ -84,7 +91,7 @@ All notable changes to this project will be documented in this file. This projec
84
91
 
85
92
  ## What's Changed
86
93
 
87
- - Fix for Curtain v3.3 and above, from v1.2.0 node-swtichbot update.
94
+ - Fix for Curtain v3.3 and above, from v1.2.0 node-switchbot update.
88
95
  - Housekeeping and updated dependencies.
89
96
 
90
97
  **Full Changelog**: https://github.com/OpenWonderLabs/homebridge-switchbot/compare/v1.12.5...v1.12.6
package/README.md CHANGED
@@ -8,8 +8,7 @@
8
8
  [![npm downloads](https://badgen.net/npm/dt/@switchbot/homebridge-switchbot)](https://www.npmjs.com/package/@switchbot/homebridge-switchbot)
9
9
  [![discord-switchbot](https://badgen.net/discord/online-members/5wYTbwP4ha?icon=discord&label=discord)](https://discord.gg/5wYTbwP4ha)
10
10
 
11
- <p>The Homebridge <a href="https://www.switch-bot.com">SwitchBot</a> OpenAPI
12
- plugin allows you to access your SwitchBot Device(s) from HomeKit with
11
+ <p>The Homebridge <a href="https://www.switch-bot.com">SwitchBot</a> plugin allows you to access your SwitchBot Device(s) from HomeKit with
13
12
  <a href="https://homebridge.io">Homebridge</a>.
14
13
  </p>
15
14
 
@@ -3,7 +3,7 @@
3
3
  "pluginType": "platform",
4
4
  "singular": true,
5
5
  "customUi": true,
6
- "headerDisplay": "<p align='center'><img width='100px' src='https://user-images.githubusercontent.com/9875439/102681754-ac2eb800-4189-11eb-8e17-7c47c804484b.png'></p>\n\nThe **SwitchBot** plugin allows you to control SwitchBot Devices. \n\nTo get started link your SwtichBot account.\nTo get started link your SwtichBot account.\n\n1. Download SwitchBot App on App Store or Google Play Store.\n\n2. Register a SwitchBot account and log in into your account.\n\n3. Generate an Open Token within the App.\n\n4. Input your `Open Token` into the paramter below.",
6
+ "headerDisplay": "<p align='center'><img width='100px' src='https://user-images.githubusercontent.com/9875439/102681754-ac2eb800-4189-11eb-8e17-7c47c804484b.png'></p>\n\nThe **SwitchBot** plugin allows you to control SwitchBot Devices. \n\nTo get started link your SwitchBot account.\n\n1. Download SwitchBot App on App Store or Google Play Store.\n\n2. Register a SwitchBot account and log in into your account.\n\n3. Generate an Open Token within the App.\n\n4. Input your `Open Token` into the paramter below.",
7
7
  "footerDisplay": "Please raise any issues on our [project page](https://github.com/OpenWonderLabs/homebridge-switchbot/issues).\n\nIf you would like to have other SwitchBot Devices added to this plugin fill out [Feature Request Form](https://github.com/OpenWonderLabs/homebridge-switchbot/issues/new?assignees=&labels=&template=feature_request.md).\n\n[SwitchBot Website](https://www.switch-bot.com)",
8
8
  "schema": {
9
9
  "type": "object",
@@ -63,18 +63,11 @@
63
63
  "hide_device": {
64
64
  "title": "Hide Device",
65
65
  "type": "boolean",
66
- "description": "If true then devices that are reported as offline will be shown as off in HomeKit.",
66
+ "description": "If true, device will be removed or hidden from HomeKit.",
67
67
  "condition": {
68
68
  "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId);"
69
69
  }
70
70
  },
71
- "offline": {
72
- "title": "Offline as Off",
73
- "type": "boolean",
74
- "condition": {
75
- "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device);"
76
- }
77
- },
78
71
  "configDeviceType": {
79
72
  "title": "Device Type",
80
73
  "type": "string",
@@ -144,11 +137,30 @@
144
137
  "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device);"
145
138
  }
146
139
  },
147
- "ble": {
148
- "title": "Enable Bluetooth Low Energy (BLE) Connection",
149
- "type": "boolean",
140
+ "connectionType": {
141
+ "title": "Connection Type",
142
+ "type": "string",
143
+ "oneOf": [
144
+ {
145
+ "title": "OpenAPI & BLE",
146
+ "enum": ["Both"]
147
+ },
148
+ {
149
+ "title": "OpenAPI",
150
+ "enum": ["OpenAPI"]
151
+ },
152
+ {
153
+ "title": "BLE",
154
+ "enum": ["BLE"]
155
+ },
156
+ {
157
+ "title": "Disable",
158
+ "enum": ["Disable"]
159
+ }
160
+ ],
161
+ "description": "Bluetooth (BLE) API is only available for the following Device Types: Humidifier, Meter, MeterPlus, Curtain, Bot, Motion Sensor, Contact Sensor, Plug Mini (US), Plug Mini (JP), & Color Bulb",
150
162
  "condition": {
151
- "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device && (model.options.devices[arrayIndices].configDeviceType === 'Humidifier' || model.options.devices[arrayIndices].configDeviceType === 'Meter' || model.options.devices[arrayIndices].configDeviceType === 'MeterPlus' || model.options.devices[arrayIndices].configDeviceType === 'Curtain' || model.options.devices[arrayIndices].configDeviceType === 'Bot' || model.options.devices[arrayIndices].configDeviceType === 'Motion Sensor' || model.options.devices[arrayIndices].configDeviceType === 'Contact Sensor' || model.options.devices[arrayIndices].configDeviceType === 'Plug Mini (US)' || model.options.devices[arrayIndices].configDeviceType === 'Plug Mini (JP)') || model.options.devices[arrayIndices].configDeviceType === 'Color Bulb'));"
163
+ "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device);"
152
164
  }
153
165
  },
154
166
  "customBLEaddress": {
@@ -156,7 +168,7 @@
156
168
  "type": "string",
157
169
  "placeholder": "81F3UT59513F",
158
170
  "condition": {
159
- "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device && model.options.devices[arrayIndices].ble);"
171
+ "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device && (model.options.devices[arrayIndices].connectionType === 'BLE' || model.options.devices[arrayIndices].connectionType === 'Both'));"
160
172
  }
161
173
  },
162
174
  "scanDuration": {
@@ -164,7 +176,7 @@
164
176
  "type": "number",
165
177
  "placeholder": 1,
166
178
  "condition": {
167
- "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device && model.options.devices[arrayIndices].ble);"
179
+ "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device && (model.options.devices[arrayIndices].connectionType === 'BLE' || model.options.devices[arrayIndices].connectionType === 'Both'));"
168
180
  }
169
181
  },
170
182
  "bot": {
@@ -523,6 +535,13 @@
523
535
  "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device && model.options.devices[arrayIndices].configDeviceType);"
524
536
  }
525
537
  },
538
+ "external": {
539
+ "title": "External Accessory",
540
+ "type": "boolean",
541
+ "condition": {
542
+ "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device && model.options.devices[arrayIndices].configDeviceType);"
543
+ }
544
+ },
526
545
  "logging": {
527
546
  "title": "Device Logging Override Setting",
528
547
  "type": "string",
@@ -545,7 +564,7 @@
545
564
  }
546
565
  }
547
566
  },
548
- "required": ["deviceId", "configDeviceType", "configDeviceName", "logging"]
567
+ "required": ["deviceId", "configDeviceType", "configDeviceName", "connectionType", "logging"]
549
568
  },
550
569
  "uniqueItems": true
551
570
  },
@@ -571,6 +590,7 @@
571
590
  "hide_device": {
572
591
  "title": "Hide Device",
573
592
  "type": "boolean",
593
+ "description": "If true, device will be removed or hidden from HomeKit.",
574
594
  "condition": {
575
595
  "functionBody": "return (model.options && model.options.irdevices && model.options.irdevices[arrayIndices].deviceId);"
576
596
  }
@@ -692,6 +712,24 @@
692
712
  "functionBody": "return (model.options && model.options.irdevices && model.options.irdevices[arrayIndices].deviceId && !model.options.irdevices[arrayIndices].hide_device);"
693
713
  }
694
714
  },
715
+ "connectionType": {
716
+ "title": "Connection Type",
717
+ "type": "string",
718
+ "oneOf": [
719
+ {
720
+ "title": "OpenAPI",
721
+ "enum": ["OpenAPI"]
722
+ },
723
+ {
724
+ "title": "Disable",
725
+ "enum": ["Disable"]
726
+ }
727
+ ],
728
+ "description": "Enables OpenAPI, if disabled will leave device in HomeKit and commands will not be sent to OpenAPI.",
729
+ "condition": {
730
+ "functionBody": "return (model.options && model.options.devices && model.options.devices[arrayIndices].deviceId && !model.options.devices[arrayIndices].hide_device);"
731
+ }
732
+ },
695
733
  "irair": {
696
734
  "type": "object",
697
735
  "properties": {
@@ -800,6 +838,21 @@
800
838
  }
801
839
  }
802
840
  },
841
+ "firmware": {
842
+ "title": "Firmware Override",
843
+ "type": "string",
844
+ "placeholder": "1.2.8",
845
+ "condition": {
846
+ "functionBody": "return (model.options && model.options.irdevices && model.options.irdevices[arrayIndices].deviceId && !model.options.irdevices[arrayIndices].hide_device && model.options.irdevices[arrayIndices].configRemoteType);"
847
+ }
848
+ },
849
+ "external": {
850
+ "title": "External Accessory",
851
+ "type": "boolean",
852
+ "condition": {
853
+ "functionBody": "return (model.options && model.options.irdevices && model.options.irdevices[arrayIndices].deviceId && !model.options.irdevices[arrayIndices].hide_device && model.options.irdevices[arrayIndices].configRemoteType);"
854
+ }
855
+ },
803
856
  "logging": {
804
857
  "title": "Device Logging Override Setting",
805
858
  "type": "string",
@@ -822,7 +875,7 @@
822
875
  }
823
876
  }
824
877
  },
825
- "required": ["deviceId", "configRemoteType", "logging"]
878
+ "required": ["deviceId", "configRemoteType", "connectionType", "logging"]
826
879
  },
827
880
  "uniqueItems": true
828
881
  },
@@ -868,7 +921,7 @@
868
921
  "title": "SwitchBot Account Info",
869
922
  "expandable": true,
870
923
  "expanded": false,
871
- "items": ["credentials.token","credentials.secret"]
924
+ "items": ["credentials.token", "credentials.secret"]
872
925
  },
873
926
  {
874
927
  "type": "fieldset",
@@ -889,8 +942,7 @@
889
942
  "options.devices[].deviceId",
890
943
  "options.devices[].hide_device",
891
944
  "options.devices[].configDeviceType",
892
- "options.devices[].offline",
893
- "options.devices[].ble",
945
+ "options.devices[].connectionType",
894
946
  "options.devices[].scanDuration",
895
947
  "options.devices[].bot.mode",
896
948
  "options.devices[].bot.deviceType",
@@ -923,6 +975,7 @@
923
975
  "options.devices[].lock.hide_contactsensor",
924
976
  "options.devices[].firmware",
925
977
  "options.devices[].refreshRate",
978
+ "options.devices[].external",
926
979
  "options.devices[].logging"
927
980
  ]
928
981
  }
@@ -958,6 +1011,8 @@
958
1011
  "options.irdevices[].other.deviceType",
959
1012
  "options.irdevices[].other.commandOn",
960
1013
  "options.irdevices[].other.commandOff",
1014
+ "options.irdevices[].firmware",
1015
+ "options.irdevices[].external",
961
1016
  "options.irdevices[].logging"
962
1017
  ]
963
1018
  }
@@ -27,16 +27,15 @@ export declare class Bot {
27
27
  windowCoveringService?: Service;
28
28
  statefulProgrammableSwitchService?: Service;
29
29
  On: CharacteristicValue;
30
- OnCached: CharacteristicValue;
31
30
  BatteryLevel: CharacteristicValue;
32
31
  StatusLowBattery: CharacteristicValue;
33
32
  power: deviceStatus['power'];
34
33
  deviceStatus: any;
35
34
  connected?: boolean;
36
35
  switchbot: switchbot;
37
- SwitchToOpenAPI?: boolean;
38
36
  serviceData: serviceData;
39
37
  address: ad['address'];
38
+ SwitchToOpenAPI?: boolean;
40
39
  mode: serviceData['mode'];
41
40
  state: serviceData['state'];
42
41
  battery: serviceData['battery'];
@@ -48,6 +47,8 @@ export declare class Bot {
48
47
  doublePress: number;
49
48
  botUpdateInProgress: boolean;
50
49
  doBotUpdate: Subject<void>;
50
+ private readonly BLE;
51
+ private readonly OpenAPI;
51
52
  constructor(platform: SwitchBotPlatform, accessory: PlatformAccessory, device: device & devicesConfig);
52
53
  /**
53
54
  * Parse the device status from the SwitchBot api
@@ -60,7 +61,6 @@ export declare class Bot {
60
61
  */
61
62
  refreshStatus(): Promise<void>;
62
63
  BLERefreshStatus(): Promise<void>;
63
- getCustomBLEAddress(switchbot: any): Promise<void>;
64
64
  openAPIRefreshStatus(): Promise<void>;
65
65
  /**
66
66
  * Pushes the requested changes to the SwitchBot API
@@ -71,36 +71,15 @@ export declare class Bot {
71
71
  */
72
72
  pushChanges(): Promise<void>;
73
73
  BLEpushChanges(): Promise<void>;
74
- turnOnOff(device_list: any): Promise<any>;
75
74
  openAPIpushChanges(): Promise<void>;
76
75
  /**
77
- * Updates the status for each of the HomeKit Characteristics
76
+ * Handle requests to set the "On" characteristic
78
77
  */
79
- updateHomeKitCharacteristics(): Promise<void>;
80
- apiError(e: any): Promise<void>;
81
- statusCode({ res }: {
82
- res: IncomingMessage;
83
- }): Promise<void>;
84
- offlineOff(): Promise<void>;
78
+ OnSet(value: CharacteristicValue): Promise<void>;
85
79
  /**
86
- * Handle requests to set the "On" characteristic
80
+ * Updates the status for each of the HomeKit Characteristics
87
81
  */
88
- handleOnSet(value: CharacteristicValue): Promise<void>;
89
- retry({ max, fn }: {
90
- max: number;
91
- fn: {
92
- (): any;
93
- (): Promise<any>;
94
- };
95
- }): Promise<null>;
96
- maxRetry(): Promise<number>;
97
- config(device: device & devicesConfig): Promise<void>;
98
- refreshRate(device: device & devicesConfig): Promise<void>;
99
- scan(device: device & devicesConfig): Promise<void>;
100
- logs(device: device & devicesConfig): Promise<void>;
101
- FirmwareRevision(accessory: PlatformAccessory<Context>, device: device & devicesConfig): CharacteristicValue;
102
- PressOrSwitch(device: device & devicesConfig): Promise<void>;
103
- allowPushChanges(device: device & devicesConfig): Promise<void>;
82
+ updateHomeKitCharacteristics(): Promise<void>;
104
83
  removeOutletService(accessory: PlatformAccessory): Promise<void>;
105
84
  removeGarageDoorService(accessory: PlatformAccessory): Promise<void>;
106
85
  removeDoorService(accessory: PlatformAccessory): Promise<void>;
@@ -111,6 +90,31 @@ export declare class Bot {
111
90
  removeWindowCoveringService(accessory: PlatformAccessory): Promise<void>;
112
91
  removeStatefulProgrammableSwitchService(accessory: PlatformAccessory): Promise<void>;
113
92
  removeSwitchService(accessory: PlatformAccessory): Promise<void>;
93
+ private DoublePress;
94
+ getCustomBLEAddress(switchbot: any): Promise<void>;
95
+ BLEconnection(switchbot: any): Promise<void>;
96
+ turnOnOff(device_list: any): Promise<any>;
97
+ retry({ max, fn }: {
98
+ max: number;
99
+ fn: {
100
+ (): any;
101
+ (): Promise<any>;
102
+ };
103
+ }): Promise<null>;
104
+ maxRetry(): Promise<number>;
105
+ PressOrSwitch(device: device & devicesConfig): Promise<void>;
106
+ allowPushChanges(device: device & devicesConfig): Promise<void>;
107
+ scan(device: device & devicesConfig): Promise<void>;
108
+ statusCode({ res }: {
109
+ res: IncomingMessage;
110
+ }): Promise<void>;
111
+ offlineOff(): Promise<void>;
112
+ apiError(e: any): Promise<void>;
113
+ FirmwareRevision(accessory: PlatformAccessory<Context>, device: device & devicesConfig): CharacteristicValue;
114
+ private context;
115
+ refreshRate(device: device & devicesConfig): Promise<void>;
116
+ config(device: device & devicesConfig): Promise<void>;
117
+ logs(device: device & devicesConfig): Promise<void>;
114
118
  /**
115
119
  * Logging for Device
116
120
  */
@@ -1 +1 @@
1
- {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../../src/device/bot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bot.d.ts","sourceRoot":"","sources":["../../src/device/bot.ts"],"names":[],"mappings":"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"}