@switchbot/homebridge-switchbot 3.5.0-beta.1 → 3.5.0-beta.3
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.
- package/CHANGELOG.md +1 -0
- package/dist/device/waterdetector.d.ts +92 -0
- package/dist/device/waterdetector.d.ts.map +1 -0
- package/dist/device/waterdetector.js +846 -0
- package/dist/device/waterdetector.js.map +1 -0
- package/dist/platform.d.ts +1 -0
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +62 -0
- package/dist/platform.js.map +1 -1
- package/dist/settings.d.ts +6 -0
- package/dist/settings.d.ts.map +1 -1
- package/dist/settings.js.map +1 -1
- package/package.json +12 -12
- package/src/device/waterdetector.ts +884 -0
- package/src/platform.ts +65 -0
- package/src/settings.ts +7 -0
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,7 @@ All notable changes to this project will be documented in this file. This projec
|
|
|
5
5
|
## [3.5.0](https://github.com/OpenWonderLabs/homebridge-switchbot/releases/tag/v3.5.0) (2024-04-XX)
|
|
6
6
|
|
|
7
7
|
### What's Changed
|
|
8
|
+
- Add Support for `Water Detector`
|
|
8
9
|
- Add BLE support for `Smart Lock`
|
|
9
10
|
- Housekeeping and updated dependencies.
|
|
10
11
|
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { MqttClient } from 'mqtt';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { SwitchBotPlatform } from '../platform.js';
|
|
4
|
+
import { Service, PlatformAccessory, CharacteristicValue, API, Logging, HAP } from 'homebridge';
|
|
5
|
+
import { device, devicesConfig, serviceData, temperature, deviceStatus, SwitchBotPlatformConfig } from '../settings.js';
|
|
6
|
+
/**
|
|
7
|
+
* Platform Accessory
|
|
8
|
+
* An instance of this class is created for each accessory your platform registers
|
|
9
|
+
* Each accessory may expose multiple services of different service types.
|
|
10
|
+
*/
|
|
11
|
+
export declare class WaterDetector {
|
|
12
|
+
private readonly platform;
|
|
13
|
+
private accessory;
|
|
14
|
+
device: device & devicesConfig;
|
|
15
|
+
readonly api: API;
|
|
16
|
+
readonly log: Logging;
|
|
17
|
+
readonly config: SwitchBotPlatformConfig;
|
|
18
|
+
protected readonly hap: HAP;
|
|
19
|
+
leakService?: Service;
|
|
20
|
+
batteryService: Service;
|
|
21
|
+
humidityservice?: Service;
|
|
22
|
+
temperatureservice?: Service;
|
|
23
|
+
StatusActive: CharacteristicValue;
|
|
24
|
+
LeakDetected: CharacteristicValue;
|
|
25
|
+
BatteryLevel: CharacteristicValue;
|
|
26
|
+
ChargingState: CharacteristicValue;
|
|
27
|
+
StatusLowBattery: CharacteristicValue;
|
|
28
|
+
FirmwareRevision: CharacteristicValue;
|
|
29
|
+
CurrentTemperature: CharacteristicValue;
|
|
30
|
+
CurrentRelativeHumidity: CharacteristicValue;
|
|
31
|
+
OpenAPI_BatteryLevel: deviceStatus['battery'];
|
|
32
|
+
OpenAPI_FirmwareRevision: deviceStatus['version'];
|
|
33
|
+
OpenAPI_CurrentTemperature: deviceStatus['temperature'];
|
|
34
|
+
OpenAPI_CurrentRelativeHumidity: deviceStatus['humidity'];
|
|
35
|
+
BLE_Celsius: temperature['c'];
|
|
36
|
+
BLE_Fahrenheit: temperature['f'];
|
|
37
|
+
BLE_BatteryLevel: serviceData['battery'];
|
|
38
|
+
BLE_CurrentTemperature: serviceData['temperature'];
|
|
39
|
+
BLE_CurrentRelativeHumidity: serviceData['humidity'];
|
|
40
|
+
BLE_IsConnected?: boolean;
|
|
41
|
+
mqttClient: MqttClient | null;
|
|
42
|
+
historyService?: any;
|
|
43
|
+
scanDuration: number;
|
|
44
|
+
deviceLogging: string;
|
|
45
|
+
deviceRefreshRate: number;
|
|
46
|
+
WaterDetectorUpdateInProgress: boolean;
|
|
47
|
+
doWaterDetectorUpdate: Subject<void>;
|
|
48
|
+
private readonly OpenAPI;
|
|
49
|
+
private readonly BLE;
|
|
50
|
+
constructor(platform: SwitchBotPlatform, accessory: PlatformAccessory, device: device & devicesConfig);
|
|
51
|
+
/**
|
|
52
|
+
* Parse the device status from the SwitchBot api
|
|
53
|
+
*/
|
|
54
|
+
parseStatus(): Promise<void>;
|
|
55
|
+
BLEparseStatus(): Promise<void>;
|
|
56
|
+
openAPIparseStatus(): Promise<void>;
|
|
57
|
+
/**
|
|
58
|
+
* Asks the SwitchBot API for the latest device information
|
|
59
|
+
*/
|
|
60
|
+
refreshStatus(): Promise<void>;
|
|
61
|
+
BLERefreshStatus(): Promise<void>;
|
|
62
|
+
openAPIRefreshStatus(): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Updates the status for each of the HomeKit Characteristics
|
|
65
|
+
*/
|
|
66
|
+
updateHomeKitCharacteristics(): Promise<void>;
|
|
67
|
+
mqttPublish(message: any): void;
|
|
68
|
+
setupMqtt(device: device & devicesConfig): Promise<void>;
|
|
69
|
+
setupHistoryService(device: device & devicesConfig): Promise<void>;
|
|
70
|
+
stopScanning(switchbot: any): Promise<void>;
|
|
71
|
+
getCustomBLEAddress(switchbot: any): Promise<void>;
|
|
72
|
+
BLERefreshConnection(switchbot: any): Promise<void>;
|
|
73
|
+
scan(device: device & devicesConfig): Promise<void>;
|
|
74
|
+
statusCode(statusCode: number): Promise<void>;
|
|
75
|
+
offlineOff(): Promise<void>;
|
|
76
|
+
apiError(e: any): Promise<void>;
|
|
77
|
+
deviceContext(): Promise<void>;
|
|
78
|
+
refreshRate(device: device & devicesConfig): Promise<void>;
|
|
79
|
+
deviceConfig(device: device & devicesConfig): Promise<void>;
|
|
80
|
+
deviceLogs(device: device & devicesConfig): Promise<void>;
|
|
81
|
+
/**
|
|
82
|
+
* Logging for Device
|
|
83
|
+
*/
|
|
84
|
+
infoLog(...log: any[]): void;
|
|
85
|
+
warnLog(...log: any[]): void;
|
|
86
|
+
debugWarnLog(...log: any[]): void;
|
|
87
|
+
errorLog(...log: any[]): void;
|
|
88
|
+
debugErrorLog(...log: any[]): void;
|
|
89
|
+
debugLog(...log: any[]): void;
|
|
90
|
+
enablingDeviceLogging(): boolean;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=waterdetector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"waterdetector.d.ts","sourceRoot":"","sources":["../../src/device/waterdetector.ts"],"names":[],"mappings":"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"}
|