@homebridge-plugins/homebridge-smarthq 0.5.0-beta.6 → 0.5.0-beta.8
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/.github/workflows/release.yml +0 -4
- package/CHANGELOG.md +563 -18
- package/dist/devices/advantium.d.ts +10 -0
- package/dist/devices/advantium.d.ts.map +1 -0
- package/dist/devices/advantium.js +75 -0
- package/dist/devices/advantium.js.map +1 -0
- package/dist/devices/beverageCenter.d.ts +10 -0
- package/dist/devices/beverageCenter.d.ts.map +1 -0
- package/dist/devices/beverageCenter.js +125 -0
- package/dist/devices/beverageCenter.js.map +1 -0
- package/dist/devices/clothesDryer.d.ts +10 -0
- package/dist/devices/clothesDryer.d.ts.map +1 -0
- package/dist/devices/clothesDryer.js +84 -0
- package/dist/devices/clothesDryer.js.map +1 -0
- package/dist/devices/clothesWasher.d.ts +10 -0
- package/dist/devices/clothesWasher.d.ts.map +1 -0
- package/dist/devices/clothesWasher.js +84 -0
- package/dist/devices/clothesWasher.js.map +1 -0
- package/dist/devices/coffeeMaker.d.ts +10 -0
- package/dist/devices/coffeeMaker.d.ts.map +1 -0
- package/dist/devices/coffeeMaker.js +79 -0
- package/dist/devices/coffeeMaker.js.map +1 -0
- package/dist/devices/device.js +1 -1
- package/dist/devices/device.js.map +1 -1
- package/dist/devices/dishwasher.d.ts +0 -1
- package/dist/devices/dishwasher.d.ts.map +1 -1
- package/dist/devices/dishwasher.js +47 -12
- package/dist/devices/dishwasher.js.map +1 -1
- package/dist/devices/hood.d.ts +34 -0
- package/dist/devices/hood.d.ts.map +1 -0
- package/dist/devices/hood.js +306 -0
- package/dist/devices/hood.js.map +1 -0
- package/dist/devices/microwave.d.ts +10 -0
- package/dist/devices/microwave.d.ts.map +1 -0
- package/dist/devices/microwave.js +84 -0
- package/dist/devices/microwave.js.map +1 -0
- package/dist/devices/oven.d.ts.map +1 -1
- package/dist/devices/oven.js +78 -32
- package/dist/devices/oven.js.map +1 -1
- package/dist/devices/refrigerator.d.ts.map +1 -1
- package/dist/devices/refrigerator.js +173 -12
- package/dist/devices/refrigerator.js.map +1 -1
- package/dist/devices/waterFilter.d.ts +10 -0
- package/dist/devices/waterFilter.d.ts.map +1 -0
- package/dist/devices/waterFilter.js +67 -0
- package/dist/devices/waterFilter.js.map +1 -0
- package/dist/devices/waterHeater.d.ts +10 -0
- package/dist/devices/waterHeater.d.ts.map +1 -0
- package/dist/devices/waterHeater.js +95 -0
- package/dist/devices/waterHeater.js.map +1 -0
- package/dist/devices/waterSoftener.d.ts +10 -0
- package/dist/devices/waterSoftener.d.ts.map +1 -0
- package/dist/devices/waterSoftener.js +67 -0
- package/dist/devices/waterSoftener.js.map +1 -0
- package/dist/platform.d.ts +10 -0
- package/dist/platform.d.ts.map +1 -1
- package/dist/platform.js +383 -0
- package/dist/platform.js.map +1 -1
- package/dist/settings.d.ts +13 -0
- package/dist/settings.d.ts.map +1 -1
- package/dist/settings.js +3 -0
- package/dist/settings.js.map +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/assets/style.css +3 -3
- package/docs/classes/SmartHQPlatform.html +8 -8
- package/docs/interfaces/DeviceOptions.html +2 -2
- package/docs/interfaces/SmartHQPlatformConfig.html +2 -2
- package/docs/interfaces/SmartHqContext.html +5 -2
- package/docs/interfaces/SmartHqERDResponse.html +2 -2
- package/docs/interfaces/credentials.html +2 -2
- package/docs/interfaces/devicesConfig.html +2 -2
- package/docs/interfaces/options.html +2 -2
- package/docs/variables/API_URL.html +1 -1
- package/docs/variables/ERD_CODES.html +1 -1
- package/docs/variables/ERD_TYPES.html +1 -1
- package/docs/variables/KEEPALIVE_TIMEOUT.html +1 -1
- package/docs/variables/LOGIN_URL.html +1 -1
- package/docs/variables/OAUTH2_CLIENT_ID.html +1 -1
- package/docs/variables/OAUTH2_CLIENT_SECRET.html +1 -1
- package/docs/variables/OAUTH2_REDIRECT_URI.html +1 -1
- package/docs/variables/PLATFORM_NAME.html +1 -1
- package/docs/variables/PLUGIN_NAME.html +1 -1
- package/docs/variables/SECURE_URL.html +1 -1
- package/docs/variables/default.html +1 -1
- package/package.json +6 -5
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { deviceBase } from './device.js';
|
|
2
|
+
export class SmartHQAdvantium extends deviceBase {
|
|
3
|
+
platform;
|
|
4
|
+
device;
|
|
5
|
+
constructor(platform, accessory, device) {
|
|
6
|
+
super(platform, accessory, device);
|
|
7
|
+
this.platform = platform;
|
|
8
|
+
this.device = device;
|
|
9
|
+
this.debugLog(`Advantium Features: ${JSON.stringify(accessory.context.device.features)}`);
|
|
10
|
+
// Advantium Light
|
|
11
|
+
const light = this.accessory.getService('Advantium Light') ?? this.accessory.addService(this.platform.Service.Lightbulb, 'Advantium Light', 'AdvantiumLight');
|
|
12
|
+
light.setCharacteristic(this.platform.Characteristic.Name, 'Advantium Light');
|
|
13
|
+
light
|
|
14
|
+
.getCharacteristic(this.platform.Characteristic.On)
|
|
15
|
+
.onGet(async () => {
|
|
16
|
+
try {
|
|
17
|
+
// TODO: Implement light state ERD
|
|
18
|
+
return false;
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
this.warnLog?.(`Advantium Light error: ${error?.message ?? error}`);
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
})
|
|
25
|
+
.onSet(async (value) => {
|
|
26
|
+
try {
|
|
27
|
+
// TODO: Implement light control ERD
|
|
28
|
+
this.debugLog(`Advantium Light set to: ${value}`);
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
this.warnLog?.(`Advantium Light set error: ${error?.message ?? error}`);
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
// Advantium Temperature Sensor
|
|
35
|
+
const tempSensor = this.accessory.getService('Advantium Temperature') ?? this.accessory.addService(this.platform.Service.TemperatureSensor, 'Advantium Temperature', 'AdvantiumTemp');
|
|
36
|
+
tempSensor.setCharacteristic(this.platform.Characteristic.Name, 'Advantium Temperature');
|
|
37
|
+
tempSensor
|
|
38
|
+
.getCharacteristic(this.platform.Characteristic.CurrentTemperature)
|
|
39
|
+
.onGet(async () => {
|
|
40
|
+
try {
|
|
41
|
+
// TODO: Implement current temperature ERD
|
|
42
|
+
return 0;
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
this.warnLog?.(`Advantium Temperature error: ${error?.message ?? error}`);
|
|
46
|
+
return 0;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
// Advantium Running State (Switch)
|
|
50
|
+
const runningSwitch = this.accessory.getService('Advantium Running') ?? this.accessory.addService(this.platform.Service.Switch, 'Advantium Running', 'AdvantiumRunning');
|
|
51
|
+
runningSwitch.setCharacteristic(this.platform.Characteristic.Name, 'Advantium Running');
|
|
52
|
+
runningSwitch
|
|
53
|
+
.getCharacteristic(this.platform.Characteristic.On)
|
|
54
|
+
.onGet(async () => {
|
|
55
|
+
try {
|
|
56
|
+
// TODO: Implement running state ERD
|
|
57
|
+
return false;
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
this.warnLog?.(`Advantium Running error: ${error?.message ?? error}`);
|
|
61
|
+
return false;
|
|
62
|
+
}
|
|
63
|
+
})
|
|
64
|
+
.onSet(async (value) => {
|
|
65
|
+
try {
|
|
66
|
+
// TODO: Implement running control ERD
|
|
67
|
+
this.debugLog(`Advantium Running set to: ${value}`);
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
this.warnLog?.(`Advantium Running set error: ${error?.message ?? error}`);
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=advantium.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"advantium.js","sourceRoot":"","sources":["../../src/devices/advantium.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { PlatformAccessory } from 'homebridge';
|
|
2
|
+
import type { SmartHQPlatform } from '../platform.js';
|
|
3
|
+
import type { devicesConfig, SmartHqContext } from '../settings.js';
|
|
4
|
+
import { deviceBase } from './device.js';
|
|
5
|
+
export declare class SmartHQBeverageCenter extends deviceBase {
|
|
6
|
+
readonly platform: SmartHQPlatform;
|
|
7
|
+
readonly device: SmartHqContext['device'] & devicesConfig;
|
|
8
|
+
constructor(platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=beverageCenter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"beverageCenter.d.ts","sourceRoot":"","sources":["../../src/devices/beverageCenter.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,qBAAa,qBAAsB,SAAQ,UAAU;IAEjD,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAElC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;gBAFhD,QAAQ,EAAE,eAAe,EAClC,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EACnC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;CAqH5D"}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { deviceBase } from './device.js';
|
|
2
|
+
export class SmartHQBeverageCenter extends deviceBase {
|
|
3
|
+
platform;
|
|
4
|
+
device;
|
|
5
|
+
constructor(platform, accessory, device) {
|
|
6
|
+
super(platform, accessory, device);
|
|
7
|
+
this.platform = platform;
|
|
8
|
+
this.device = device;
|
|
9
|
+
this.debugLog(`Beverage Center Features: ${JSON.stringify(accessory.context.device.features)}`);
|
|
10
|
+
// Beverage Center Temperature Sensor
|
|
11
|
+
const tempSensor = this.accessory.getService('Beverage Temperature') ?? this.accessory.addService(this.platform.Service.TemperatureSensor, 'Beverage Temperature', 'BeverageTemp');
|
|
12
|
+
tempSensor.setCharacteristic(this.platform.Characteristic.Name, 'Beverage Temperature');
|
|
13
|
+
tempSensor
|
|
14
|
+
.getCharacteristic(this.platform.Characteristic.CurrentTemperature)
|
|
15
|
+
.onGet(async () => {
|
|
16
|
+
try {
|
|
17
|
+
// TODO: Implement current temperature ERD
|
|
18
|
+
return 4;
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
this.warnLog?.(`Beverage Center Temperature error: ${error?.message ?? error}`);
|
|
22
|
+
return 4;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
// Beverage Center Door Sensor
|
|
26
|
+
const doorSensor = this.accessory.getService('Beverage Door') ?? this.accessory.addService(this.platform.Service.ContactSensor, 'Beverage Door', 'BeverageDoor');
|
|
27
|
+
doorSensor.setCharacteristic(this.platform.Characteristic.Name, 'Beverage Door');
|
|
28
|
+
doorSensor
|
|
29
|
+
.getCharacteristic(this.platform.Characteristic.ContactSensorState)
|
|
30
|
+
.onGet(async () => {
|
|
31
|
+
try {
|
|
32
|
+
// TODO: Implement door status ERD
|
|
33
|
+
return this.platform.Characteristic.ContactSensorState.CONTACT_DETECTED;
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
this.warnLog?.(`Beverage Center Door error: ${error?.message ?? error}`);
|
|
37
|
+
return this.platform.Characteristic.ContactSensorState.CONTACT_DETECTED;
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
// Beverage Center Thermostat Control
|
|
41
|
+
const thermostat = this.accessory.getService('Beverage Thermostat') ?? this.accessory.addService(this.platform.Service.Thermostat, 'Beverage Thermostat', 'BeverageThermostat');
|
|
42
|
+
thermostat.setCharacteristic(this.platform.Characteristic.Name, 'Beverage Thermostat');
|
|
43
|
+
thermostat
|
|
44
|
+
.getCharacteristic(this.platform.Characteristic.CurrentHeatingCoolingState)
|
|
45
|
+
.onGet(async () => {
|
|
46
|
+
try {
|
|
47
|
+
// TODO: Implement cooling state ERD
|
|
48
|
+
return this.platform.Characteristic.CurrentHeatingCoolingState.COOL;
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
this.warnLog?.(`Beverage Center State error: ${error?.message ?? error}`);
|
|
52
|
+
return this.platform.Characteristic.CurrentHeatingCoolingState.OFF;
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
thermostat
|
|
56
|
+
.getCharacteristic(this.platform.Characteristic.TargetHeatingCoolingState)
|
|
57
|
+
.setProps({
|
|
58
|
+
validValues: [this.platform.Characteristic.TargetHeatingCoolingState.OFF, this.platform.Characteristic.TargetHeatingCoolingState.COOL],
|
|
59
|
+
})
|
|
60
|
+
.onGet(async () => {
|
|
61
|
+
try {
|
|
62
|
+
// TODO: Implement target state ERD
|
|
63
|
+
return this.platform.Characteristic.TargetHeatingCoolingState.COOL;
|
|
64
|
+
}
|
|
65
|
+
catch (error) {
|
|
66
|
+
this.warnLog?.(`Beverage Center Target State error: ${error?.message ?? error}`);
|
|
67
|
+
return this.platform.Characteristic.TargetHeatingCoolingState.OFF;
|
|
68
|
+
}
|
|
69
|
+
})
|
|
70
|
+
.onSet(async (value) => {
|
|
71
|
+
try {
|
|
72
|
+
// TODO: Implement target state control ERD
|
|
73
|
+
this.debugLog(`Beverage Center set to: ${value}`);
|
|
74
|
+
}
|
|
75
|
+
catch (error) {
|
|
76
|
+
this.warnLog?.(`Beverage Center Target State set error: ${error?.message ?? error}`);
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
thermostat
|
|
80
|
+
.getCharacteristic(this.platform.Characteristic.CurrentTemperature)
|
|
81
|
+
.onGet(async () => {
|
|
82
|
+
try {
|
|
83
|
+
// TODO: Implement current temperature ERD
|
|
84
|
+
return 4;
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
this.warnLog?.(`Beverage Center Current Temp error: ${error?.message ?? error}`);
|
|
88
|
+
return 4;
|
|
89
|
+
}
|
|
90
|
+
});
|
|
91
|
+
thermostat
|
|
92
|
+
.getCharacteristic(this.platform.Characteristic.TargetTemperature)
|
|
93
|
+
.setProps({
|
|
94
|
+
minValue: 2,
|
|
95
|
+
maxValue: 8,
|
|
96
|
+
minStep: 1,
|
|
97
|
+
})
|
|
98
|
+
.onGet(async () => {
|
|
99
|
+
try {
|
|
100
|
+
// TODO: Implement target temperature ERD
|
|
101
|
+
return 4;
|
|
102
|
+
}
|
|
103
|
+
catch (error) {
|
|
104
|
+
this.warnLog?.(`Beverage Center Target Temp error: ${error?.message ?? error}`);
|
|
105
|
+
return 4;
|
|
106
|
+
}
|
|
107
|
+
})
|
|
108
|
+
.onSet(async (value) => {
|
|
109
|
+
try {
|
|
110
|
+
// TODO: Implement target temperature control ERD
|
|
111
|
+
this.debugLog(`Beverage Center temperature set to: ${value}°C`);
|
|
112
|
+
}
|
|
113
|
+
catch (error) {
|
|
114
|
+
this.warnLog?.(`Beverage Center Target Temp set error: ${error?.message ?? error}`);
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
thermostat
|
|
118
|
+
.getCharacteristic(this.platform.Characteristic.TemperatureDisplayUnits)
|
|
119
|
+
.onGet(async () => this.platform.Characteristic.TemperatureDisplayUnits.CELSIUS)
|
|
120
|
+
.onSet(async (value) => {
|
|
121
|
+
this.debugLog(`Beverage Center display units set to: ${value}`);
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=beverageCenter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"beverageCenter.js","sourceRoot":"","sources":["../../src/devices/beverageCenter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CharacteristicValue, PlatformAccessory } from 'homebridge';
|
|
2
|
+
import type { SmartHqContext } from '../settings.js';
|
|
3
|
+
import { deviceBase } from './device.js';
|
|
4
|
+
export declare class SmartHQClothesDryer extends deviceBase {
|
|
5
|
+
private ClothesDryer;
|
|
6
|
+
constructor(platform: any, accessory: PlatformAccessory<SmartHqContext>, device: any);
|
|
7
|
+
handleGetOn(): Promise<CharacteristicValue>;
|
|
8
|
+
handleSetOn(value: CharacteristicValue): Promise<void>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=clothesDryer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clothesDryer.d.ts","sourceRoot":"","sources":["../../src/devices/clothesDryer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAExE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,qBAAa,mBAAoB,SAAQ,UAAU;IACjD,OAAO,CAAC,YAAY,CAEnB;gBAGC,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC5C,MAAM,EAAE,GAAG;IA4DP,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAY3C,WAAW,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;CAU7D"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { deviceBase } from './device.js';
|
|
2
|
+
export class SmartHQClothesDryer extends deviceBase {
|
|
3
|
+
ClothesDryer;
|
|
4
|
+
constructor(platform, accessory, device) {
|
|
5
|
+
super(platform, accessory, device);
|
|
6
|
+
this.debugLog(`Clothes Dryer Features: ${JSON.stringify(accessory.context.device.features)}`);
|
|
7
|
+
// Initialize ClothesDryer state (restore from cache if available)
|
|
8
|
+
this.ClothesDryer = {
|
|
9
|
+
On: accessory.context.ClothesDryer?.On ?? false,
|
|
10
|
+
};
|
|
11
|
+
// Dryer Running State (Valve)
|
|
12
|
+
const dryerValve = this.accessory.getService('Dryer') ?? this.accessory.addService(this.platform.Service.Valve, 'Dryer', 'Dryer');
|
|
13
|
+
dryerValve.setCharacteristic(this.platform.Characteristic.Name, 'Dryer');
|
|
14
|
+
dryerValve.setCharacteristic(this.platform.Characteristic.ValveType, this.platform.Characteristic.ValveType.GENERIC_VALVE);
|
|
15
|
+
dryerValve
|
|
16
|
+
.getCharacteristic(this.platform.Characteristic.Active)
|
|
17
|
+
.onGet(async () => {
|
|
18
|
+
try {
|
|
19
|
+
return this.ClothesDryer?.On ? this.platform.Characteristic.Active.ACTIVE : this.platform.Characteristic.Active.INACTIVE;
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
this.warnLog?.(`Dryer Active error: ${error?.message ?? error}`);
|
|
23
|
+
return this.platform.Characteristic.Active.INACTIVE;
|
|
24
|
+
}
|
|
25
|
+
})
|
|
26
|
+
.onSet(this.handleSetOn.bind(this));
|
|
27
|
+
dryerValve
|
|
28
|
+
.getCharacteristic(this.platform.Characteristic.InUse)
|
|
29
|
+
.onGet(async () => {
|
|
30
|
+
try {
|
|
31
|
+
return this.ClothesDryer?.On ? this.platform.Characteristic.InUse.IN_USE : this.platform.Characteristic.InUse.NOT_IN_USE;
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
this.warnLog?.(`Dryer InUse error: ${error?.message ?? error}`);
|
|
35
|
+
return this.platform.Characteristic.InUse.NOT_IN_USE;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
// Door Lock
|
|
39
|
+
const doorLock = this.accessory.getService('Dryer Door Lock') ?? this.accessory.addService(this.platform.Service.LockMechanism, 'Dryer Door Lock', 'DryerDoorLock');
|
|
40
|
+
doorLock.setCharacteristic(this.platform.Characteristic.Name, 'Dryer Door Lock');
|
|
41
|
+
doorLock
|
|
42
|
+
.getCharacteristic(this.platform.Characteristic.LockCurrentState)
|
|
43
|
+
.onGet(async () => {
|
|
44
|
+
try {
|
|
45
|
+
// TODO: Implement door lock state when ERD available
|
|
46
|
+
return this.platform.Characteristic.LockCurrentState.UNSECURED;
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
this.warnLog?.(`Dryer Door Lock error: ${error?.message ?? error}`);
|
|
50
|
+
return this.platform.Characteristic.LockCurrentState.UNSECURED;
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
doorLock
|
|
54
|
+
.getCharacteristic(this.platform.Characteristic.LockTargetState)
|
|
55
|
+
.onGet(async () => this.platform.Characteristic.LockTargetState.UNSECURED)
|
|
56
|
+
.onSet(async (value) => {
|
|
57
|
+
this.debugLog(`Dryer Door Lock set to: ${value}`);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
async handleGetOn() {
|
|
61
|
+
try {
|
|
62
|
+
// TODO: Replace with actual ERD code for dryer On state if available
|
|
63
|
+
// const erdValue = await this.readErd(ERD_TYPES.CLOTHES_DRYER_ON)
|
|
64
|
+
// return Number.parseInt(erdValue) !== 0
|
|
65
|
+
return this.ClothesDryer?.On ?? false;
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
this.warnLog?.(`ClothesDryer handleGetOn error: ${error?.message ?? error}`);
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
async handleSetOn(value) {
|
|
73
|
+
try {
|
|
74
|
+
// TODO: Replace with actual ERD code for dryer On state if available
|
|
75
|
+
// await this.writeErd(ERD_TYPES.CLOTHES_DRYER_ON, value as boolean)
|
|
76
|
+
this.ClothesDryer.On = value;
|
|
77
|
+
this.accessory.context.ClothesDryer = this.ClothesDryer;
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
this.warnLog?.(`ClothesDryer handleSetOn error: ${error?.message ?? error}`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=clothesDryer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clothesDryer.js","sourceRoot":"","sources":["../../src/devices/clothesDryer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { CharacteristicValue, PlatformAccessory } from 'homebridge';
|
|
2
|
+
import type { SmartHqContext } from '../settings.js';
|
|
3
|
+
import { deviceBase } from './device.js';
|
|
4
|
+
export declare class SmartHQClothesWasher extends deviceBase {
|
|
5
|
+
private ClothesWasher;
|
|
6
|
+
constructor(platform: any, accessory: PlatformAccessory<SmartHqContext>, device: any);
|
|
7
|
+
handleGetOn(): Promise<CharacteristicValue>;
|
|
8
|
+
handleSetOn(value: CharacteristicValue): Promise<void>;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=clothesWasher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clothesWasher.d.ts","sourceRoot":"","sources":["../../src/devices/clothesWasher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAExE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,qBAAa,oBAAqB,SAAQ,UAAU;IAClD,OAAO,CAAC,aAAa,CAEpB;gBAGC,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EAC5C,MAAM,EAAE,GAAG;IA4DP,WAAW,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAY3C,WAAW,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;CAU7D"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { deviceBase } from './device.js';
|
|
2
|
+
export class SmartHQClothesWasher extends deviceBase {
|
|
3
|
+
ClothesWasher;
|
|
4
|
+
constructor(platform, accessory, device) {
|
|
5
|
+
super(platform, accessory, device);
|
|
6
|
+
this.debugLog(`Clothes Washer Features: ${JSON.stringify(accessory.context.device.features)}`);
|
|
7
|
+
// Initialize ClothesWasher state (restore from cache if available)
|
|
8
|
+
this.ClothesWasher = {
|
|
9
|
+
On: accessory.context.ClothesWasher?.On ?? false,
|
|
10
|
+
};
|
|
11
|
+
// Washer Running State (Valve)
|
|
12
|
+
const washerValve = this.accessory.getService('Washer') ?? this.accessory.addService(this.platform.Service.Valve, 'Washer', 'Washer');
|
|
13
|
+
washerValve.setCharacteristic(this.platform.Characteristic.Name, 'Washer');
|
|
14
|
+
washerValve.setCharacteristic(this.platform.Characteristic.ValveType, this.platform.Characteristic.ValveType.GENERIC_VALVE);
|
|
15
|
+
washerValve
|
|
16
|
+
.getCharacteristic(this.platform.Characteristic.Active)
|
|
17
|
+
.onGet(async () => {
|
|
18
|
+
try {
|
|
19
|
+
return this.ClothesWasher?.On ? this.platform.Characteristic.Active.ACTIVE : this.platform.Characteristic.Active.INACTIVE;
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
this.warnLog(`Washer Active error: ${error?.message ?? error}`);
|
|
23
|
+
return this.platform.Characteristic.Active.INACTIVE;
|
|
24
|
+
}
|
|
25
|
+
})
|
|
26
|
+
.onSet(this.handleSetOn.bind(this));
|
|
27
|
+
washerValve
|
|
28
|
+
.getCharacteristic(this.platform.Characteristic.InUse)
|
|
29
|
+
.onGet(async () => {
|
|
30
|
+
try {
|
|
31
|
+
return this.ClothesWasher?.On ? this.platform.Characteristic.InUse.IN_USE : this.platform.Characteristic.InUse.NOT_IN_USE;
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
this.warnLog(`Washer InUse error: ${error?.message ?? error}`);
|
|
35
|
+
return this.platform.Characteristic.InUse.NOT_IN_USE;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
// Door Lock
|
|
39
|
+
const doorLock = this.accessory.getService('Washer Door Lock') ?? this.accessory.addService(this.platform.Service.LockMechanism, 'Washer Door Lock', 'WasherDoorLock');
|
|
40
|
+
doorLock.setCharacteristic(this.platform.Characteristic.Name, 'Washer Door Lock');
|
|
41
|
+
doorLock
|
|
42
|
+
.getCharacteristic(this.platform.Characteristic.LockCurrentState)
|
|
43
|
+
.onGet(async () => {
|
|
44
|
+
try {
|
|
45
|
+
// TODO: Implement door lock state when ERD available
|
|
46
|
+
return this.platform.Characteristic.LockCurrentState.UNSECURED;
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
this.warnLog(`Washer Door Lock error: ${error?.message ?? error}`);
|
|
50
|
+
return this.platform.Characteristic.LockCurrentState.UNSECURED;
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
doorLock
|
|
54
|
+
.getCharacteristic(this.platform.Characteristic.LockTargetState)
|
|
55
|
+
.onGet(async () => this.platform.Characteristic.LockTargetState.UNSECURED)
|
|
56
|
+
.onSet(async (value) => {
|
|
57
|
+
this.debugLog(`Washer Door Lock set to: ${value}`);
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
async handleGetOn() {
|
|
61
|
+
try {
|
|
62
|
+
// TODO: Replace with actual ERD code for washer On state if available
|
|
63
|
+
// const erdValue = await this.readErd(ERD_TYPES.CLOTHES_WASHER_ON)
|
|
64
|
+
// return Number.parseInt(erdValue) !== 0
|
|
65
|
+
return this.ClothesWasher?.On ?? false;
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
this.warnLog(`ClothesWasher handleGetOn error: ${error?.message ?? error}`);
|
|
69
|
+
return false;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
async handleSetOn(value) {
|
|
73
|
+
try {
|
|
74
|
+
// TODO: Replace with actual ERD code for washer On state if available
|
|
75
|
+
// await this.writeErd(ERD_TYPES.CLOTHES_WASHER_ON, value as boolean)
|
|
76
|
+
this.ClothesWasher.On = value;
|
|
77
|
+
this.accessory.context.ClothesWasher = this.ClothesWasher;
|
|
78
|
+
}
|
|
79
|
+
catch (error) {
|
|
80
|
+
this.warnLog(`ClothesWasher handleSetOn error: ${error?.message ?? error}`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=clothesWasher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clothesWasher.js","sourceRoot":"","sources":["../../src/devices/clothesWasher.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { PlatformAccessory } from 'homebridge';
|
|
2
|
+
import type { SmartHQPlatform } from '../platform.js';
|
|
3
|
+
import type { devicesConfig, SmartHqContext } from '../settings.js';
|
|
4
|
+
import { deviceBase } from './device.js';
|
|
5
|
+
export declare class SmartHQCoffeeMaker extends deviceBase {
|
|
6
|
+
readonly platform: SmartHQPlatform;
|
|
7
|
+
readonly device: SmartHqContext['device'] & devicesConfig;
|
|
8
|
+
constructor(platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=coffeeMaker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coffeeMaker.d.ts","sourceRoot":"","sources":["../../src/devices/coffeeMaker.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAEnE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,qBAAa,kBAAmB,SAAQ,UAAU;IAE9C,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAElC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;gBAFhD,QAAQ,EAAE,eAAe,EAClC,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EACnC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;CAuE5D"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { deviceBase } from './device.js';
|
|
2
|
+
export class SmartHQCoffeeMaker extends deviceBase {
|
|
3
|
+
platform;
|
|
4
|
+
device;
|
|
5
|
+
constructor(platform, accessory, device) {
|
|
6
|
+
super(platform, accessory, device);
|
|
7
|
+
this.platform = platform;
|
|
8
|
+
this.device = device;
|
|
9
|
+
this.debugLog(`Coffee Maker Features: ${JSON.stringify(accessory.context.device.features)}`);
|
|
10
|
+
// Coffee Maker Brewing State (Valve)
|
|
11
|
+
const brewValve = this.accessory.getService('Coffee Maker') ?? this.accessory.addService(this.platform.Service.Valve, 'Coffee Maker', 'CoffeeMaker');
|
|
12
|
+
brewValve.setCharacteristic(this.platform.Characteristic.Name, 'Coffee Maker');
|
|
13
|
+
brewValve.setCharacteristic(this.platform.Characteristic.ValveType, this.platform.Characteristic.ValveType.GENERIC_VALVE);
|
|
14
|
+
brewValve
|
|
15
|
+
.getCharacteristic(this.platform.Characteristic.Active)
|
|
16
|
+
.onGet(async () => {
|
|
17
|
+
try {
|
|
18
|
+
// TODO: Implement brewing state ERD
|
|
19
|
+
return this.platform.Characteristic.Active.INACTIVE;
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
this.warnLog?.(`Coffee Maker Active error: ${error?.message ?? error}`);
|
|
23
|
+
return this.platform.Characteristic.Active.INACTIVE;
|
|
24
|
+
}
|
|
25
|
+
})
|
|
26
|
+
.onSet(async (value) => {
|
|
27
|
+
try {
|
|
28
|
+
// TODO: Implement brew control ERD
|
|
29
|
+
this.debugLog(`Coffee Maker brew set to: ${value}`);
|
|
30
|
+
}
|
|
31
|
+
catch (error) {
|
|
32
|
+
this.warnLog?.(`Coffee Maker brew set error: ${error?.message ?? error}`);
|
|
33
|
+
}
|
|
34
|
+
});
|
|
35
|
+
brewValve
|
|
36
|
+
.getCharacteristic(this.platform.Characteristic.InUse)
|
|
37
|
+
.onGet(async () => {
|
|
38
|
+
try {
|
|
39
|
+
// TODO: Implement brewing state ERD
|
|
40
|
+
return this.platform.Characteristic.InUse.NOT_IN_USE;
|
|
41
|
+
}
|
|
42
|
+
catch (error) {
|
|
43
|
+
this.warnLog?.(`Coffee Maker InUse error: ${error?.message ?? error}`);
|
|
44
|
+
return this.platform.Characteristic.InUse.NOT_IN_USE;
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
// Water Level Sensor (Humidity as proxy)
|
|
48
|
+
const waterLevel = this.accessory.getService('Water Level') ?? this.accessory.addService(this.platform.Service.HumiditySensor, 'Water Level', 'WaterLevel');
|
|
49
|
+
waterLevel.setCharacteristic(this.platform.Characteristic.Name, 'Water Level');
|
|
50
|
+
waterLevel
|
|
51
|
+
.getCharacteristic(this.platform.Characteristic.CurrentRelativeHumidity)
|
|
52
|
+
.onGet(async () => {
|
|
53
|
+
try {
|
|
54
|
+
// TODO: Implement water level ERD (0-100%)
|
|
55
|
+
return 100;
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
this.warnLog?.(`Coffee Maker Water Level error: ${error?.message ?? error}`);
|
|
59
|
+
return 0;
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
// Filter/Cleaning Status
|
|
63
|
+
const filterService = this.accessory.getService('Coffee Filter') ?? this.accessory.addService(this.platform.Service.FilterMaintenance, 'Coffee Filter', 'CoffeeFilter');
|
|
64
|
+
filterService.setCharacteristic(this.platform.Characteristic.Name, 'Coffee Filter');
|
|
65
|
+
filterService
|
|
66
|
+
.getCharacteristic(this.platform.Characteristic.FilterChangeIndication)
|
|
67
|
+
.onGet(async () => {
|
|
68
|
+
try {
|
|
69
|
+
// TODO: Implement filter/cleaning status ERD
|
|
70
|
+
return this.platform.Characteristic.FilterChangeIndication.FILTER_OK;
|
|
71
|
+
}
|
|
72
|
+
catch (error) {
|
|
73
|
+
this.warnLog?.(`Coffee Filter Status error: ${error?.message ?? error}`);
|
|
74
|
+
return this.platform.Characteristic.FilterChangeIndication.FILTER_OK;
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=coffeeMaker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coffeeMaker.js","sourceRoot":"","sources":["../../src/devices/coffeeMaker.ts"],"names":[],"mappings":"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"}
|
package/dist/devices/device.js
CHANGED
|
@@ -27,7 +27,7 @@ export class deviceBase {
|
|
|
27
27
|
// Set accessory information
|
|
28
28
|
accessory
|
|
29
29
|
.getService(this.hap.Service.AccessoryInformation)
|
|
30
|
-
.setCharacteristic(this.hap.Characteristic.Manufacturer, accessory.context.device.brand
|
|
30
|
+
.setCharacteristic(this.hap.Characteristic.Manufacturer, accessory.context.device.brand && accessory.context.device.brand !== 'Unknown' ? accessory.context.device.brand : 'GE Appliances')
|
|
31
31
|
.setCharacteristic(this.hap.Characteristic.Name, accessory.context.device.nickname)
|
|
32
32
|
.setCharacteristic(this.hap.Characteristic.ConfiguredName, accessory.context.device.nickname)
|
|
33
33
|
.setCharacteristic(this.hap.Characteristic.Model, accessory.context.device.model)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/devices/device.ts"],"names":[],"mappings":"AASA,MAAM,OAAgB,UAAU;IAcT;IACT;IACA;IAfI,GAAG,CAAK;IACR,GAAG,CAAS;IACZ,MAAM,CAAwB;IAC3B,GAAG,CAAK;IAE3B,SAAS;IACC,aAAa,CAAS;IACtB,iBAAiB,CAAS;IAC1B,gBAAgB,CAAS;IACzB,cAAc,CAAS;IACvB,qBAAqB,CAAS;IAExC,YACqB,QAAyB,EAClC,SAA4C,EAC5C,MAAqB;QAFZ,aAAQ,GAAR,QAAQ,CAAiB;QAClC,cAAS,GAAT,SAAS,CAAmC;QAC5C,WAAM,GAAN,MAAM,CAAe;QAE/B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAA;QAC5B,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAA;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAA;QAClC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAA;QAEvB,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;QACjC,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAA;QAClC,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAA;QACpC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QAExC,4BAA4B;QAC5B,SAAS;aACN,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAE;aAClD,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,
|
|
1
|
+
{"version":3,"file":"device.js","sourceRoot":"","sources":["../../src/devices/device.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,6 @@ import { deviceBase } from './device.js';
|
|
|
5
5
|
export declare class SmartHQDishWasher extends deviceBase {
|
|
6
6
|
readonly platform: SmartHQPlatform;
|
|
7
7
|
readonly device: SmartHqContext['device'] & devicesConfig;
|
|
8
|
-
private DishWasher;
|
|
9
8
|
SensorUpdateInProgress: boolean;
|
|
10
9
|
deviceStatus: any;
|
|
11
10
|
constructor(platform: SmartHQPlatform, accessory: PlatformAccessory<SmartHqContext>, device: SmartHqContext['device'] & devicesConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dishwasher.d.ts","sourceRoot":"","sources":["../../src/devices/dishwasher.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"dishwasher.d.ts","sourceRoot":"","sources":["../../src/devices/dishwasher.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAMnE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,qBAAa,iBAAkB,SAAQ,UAAU;IAM7C,QAAQ,CAAC,QAAQ,EAAE,eAAe;IAElC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAN3D,sBAAsB,EAAG,OAAO,CAAA;IAChC,YAAY,EAAE,GAAG,CAAA;gBAGN,QAAQ,EAAE,eAAe,EAClC,SAAS,EAAE,iBAAiB,CAAC,cAAc,CAAC,EACnC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,GAAG,aAAa;IAoErD,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMrC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;CAWpD"}
|