@pietrolubini/homebridge-ecoflow 1.5.0-beta.1 → 1.5.0
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/README.md +45 -1
- package/config.schema.json +18 -1
- package/dist/accessories/batteries/delta2/services/delta2OutletServiceBase.d.ts +2 -2
- package/dist/accessories/batteries/delta2/services/delta2OutletServiceBase.js +2 -2
- package/dist/accessories/batteries/delta2/services/delta2OutletServiceBase.js.map +1 -1
- package/dist/accessories/batteries/deltapro/deltaProAccessory.d.ts +24 -2
- package/dist/accessories/batteries/deltapro/deltaProAccessory.js +113 -2
- package/dist/accessories/batteries/deltapro/deltaProAccessory.js.map +1 -1
- package/dist/accessories/batteries/deltapro/services/deltaProOutletServiceBase.d.ts +2 -2
- package/dist/accessories/batteries/deltapro/services/deltaProOutletServiceBase.js +2 -2
- package/dist/accessories/batteries/deltapro/services/deltaProOutletServiceBase.js.map +1 -1
- package/dist/accessories/batteries/deltapro3/deltaPro3Accessory.js +13 -9
- package/dist/accessories/batteries/deltapro3/deltaPro3Accessory.js.map +1 -1
- package/dist/accessories/batteries/deltapro3/interfaces/deltaPro3HttpApiContracts.d.ts +2 -2
- package/dist/accessories/batteries/deltapro3/interfaces/deltaPro3MqttApiContracts.d.ts +3 -5
- package/dist/accessories/batteries/deltapro3/services/deltaPro3OutletServiceBase.d.ts +2 -2
- package/dist/accessories/batteries/deltapro3/services/deltaPro3OutletServiceBase.js +2 -2
- package/dist/accessories/batteries/deltapro3/services/deltaPro3OutletServiceBase.js.map +1 -1
- package/dist/accessories/batteries/deltapro3/simulations/deltaPro3Simulator.js +16 -18
- package/dist/accessories/batteries/deltapro3/simulations/deltaPro3Simulator.js.map +1 -1
- package/dist/accessories/batteries/deltaproultra/services/deltaProUltraOutletServiceBase.d.ts +2 -2
- package/dist/accessories/batteries/deltaproultra/services/deltaProUltraOutletServiceBase.js +2 -2
- package/dist/accessories/batteries/deltaproultra/services/deltaProUltraOutletServiceBase.js.map +1 -1
- package/dist/accessories/powerstream/interfaces/powerStreamMqttApiContracts.d.ts +3 -5
- package/dist/accessories/powerstream/interfaces/powerStreamMqttApiContracts.js +3 -5
- package/dist/accessories/powerstream/interfaces/powerStreamMqttApiContracts.js.map +1 -1
- package/dist/accessories/powerstream/services/brightnessService.js +2 -2
- package/dist/accessories/powerstream/services/brightnessService.js.map +1 -1
- package/dist/accessories/powerstream/services/outletInvService.d.ts +2 -2
- package/dist/accessories/powerstream/services/outletInvService.js +2 -2
- package/dist/accessories/powerstream/services/outletInvService.js.map +1 -1
- package/dist/accessories/powerstream/services/outletService.d.ts +2 -2
- package/dist/accessories/powerstream/services/outletService.js +2 -2
- package/dist/accessories/powerstream/services/outletService.js.map +1 -1
- package/dist/accessories/powerstream/services/powerDemandService.js +1 -1
- package/dist/accessories/powerstream/services/powerDemandService.js.map +1 -1
- package/dist/accessories/smartplug/interfaces/smartPlugHttpApiContracts.d.ts +11 -0
- package/dist/accessories/{powerstream/interfaces/httpApiPowerStreamContracts.js → smartplug/interfaces/smartPlugHttpApiContracts.js} +1 -1
- package/dist/accessories/smartplug/interfaces/smartPlugHttpApiContracts.js.map +1 -0
- package/dist/accessories/smartplug/interfaces/smartPlugMqttApiContracts.d.ts +32 -0
- package/dist/accessories/smartplug/interfaces/smartPlugMqttApiContracts.js +18 -0
- package/dist/accessories/smartplug/interfaces/smartPlugMqttApiContracts.js.map +1 -0
- package/dist/accessories/smartplug/services/brightnessService.d.ts +7 -0
- package/dist/accessories/smartplug/services/brightnessService.js +27 -0
- package/dist/accessories/smartplug/services/brightnessService.js.map +1 -0
- package/dist/accessories/smartplug/services/brightnessService.spec.d.ts +1 -0
- package/dist/accessories/smartplug/services/outletService.d.ts +7 -0
- package/dist/accessories/smartplug/services/outletService.js +24 -0
- package/dist/accessories/smartplug/services/outletService.js.map +1 -0
- package/dist/accessories/smartplug/services/outletService.spec.d.ts +1 -0
- package/dist/accessories/smartplug/simulations/smartPlugSimulator.d.ts +6 -0
- package/dist/accessories/smartplug/simulations/smartPlugSimulator.js +34 -0
- package/dist/accessories/smartplug/simulations/smartPlugSimulator.js.map +1 -0
- package/dist/accessories/{batteries/deltapro/deltaProAccessoryBase.d.ts → smartplug/smartPlugAccessory.d.ts} +13 -14
- package/dist/accessories/smartplug/smartPlugAccessory.js +81 -0
- package/dist/accessories/smartplug/smartPlugAccessory.js.map +1 -0
- package/dist/accessories/smartplug/smartPlugAccessory.spec.d.ts +1 -0
- package/dist/characteristics/customCharacteristic.d.ts +12 -0
- package/dist/characteristics/customCharacteristic.js +45 -9
- package/dist/characteristics/customCharacteristic.js.map +1 -1
- package/dist/config.d.ts +13 -3
- package/dist/config.js +15 -9
- package/dist/config.js.map +1 -1
- package/dist/homebridge-ui/public/index.html +1 -1
- package/dist/homebridge-ui/public/index.js +1 -1
- package/dist/platform.js +13 -5
- package/dist/platform.js.map +1 -1
- package/dist/services/batteryOutletServiceBase.d.ts +14 -0
- package/dist/services/batteryOutletServiceBase.js +37 -0
- package/dist/services/batteryOutletServiceBase.js.map +1 -0
- package/dist/services/batteryOutletServiceBase.spec.d.ts +1 -0
- package/dist/services/outletServiceBase.d.ts +10 -11
- package/dist/services/outletServiceBase.js +9 -20
- package/dist/services/outletServiceBase.js.map +1 -1
- package/dist/services/serviceBase.js +1 -1
- package/dist/services/serviceBase.js.map +1 -1
- package/dist/services/temperatureSensorService.d.ts +10 -0
- package/dist/services/temperatureSensorService.js +21 -0
- package/dist/services/temperatureSensorService.js.map +1 -0
- package/dist/services/temperatureSensorService.spec.d.ts +1 -0
- package/junit.xml +727 -603
- package/package.json +1 -1
- package/dist/accessories/batteries/deltapro/deltaProAccessoryBase.js +0 -119
- package/dist/accessories/batteries/deltapro/deltaProAccessoryBase.js.map +0 -1
- package/dist/accessories/powerstream/interfaces/httpApiPowerStreamContracts.d.ts +0 -16
- package/dist/accessories/powerstream/interfaces/httpApiPowerStreamContracts.js.map +0 -1
- package/dist/accessories/powerstream/interfaces/mqttApiPowerStreamContracts.d.ts +0 -41
- package/dist/accessories/powerstream/interfaces/mqttApiPowerStreamContracts.js +0 -21
- package/dist/accessories/powerstream/interfaces/mqttApiPowerStreamContracts.js.map +0 -1
- /package/dist/accessories/batteries/deltapro/{deltaProAccessoryBase.spec.d.ts → deltaProAccessory.spec.d.ts} +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { EcoFlowAccessoryBase } from '@ecoflow/accessories/ecoFlowAccessoryBase';
|
|
2
2
|
import { AdditionalBatteryCharacteristicType as CharacteristicType } from '@ecoflow/config';
|
|
3
3
|
import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
|
|
4
|
-
import {
|
|
5
|
-
export declare class OutletInvService extends
|
|
4
|
+
import { BatteryOutletServiceBase } from '@ecoflow/services/batteryOutletServiceBase';
|
|
5
|
+
export declare class OutletInvService extends BatteryOutletServiceBase {
|
|
6
6
|
constructor(ecoFlowAccessory: EcoFlowAccessoryBase, batteryStatusProvider: BatteryStatusProvider, additionalCharacteristics?: CharacteristicType[]);
|
|
7
7
|
protected setOn(): Promise<void>;
|
|
8
8
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OutletInvService = void 0;
|
|
4
|
-
const
|
|
5
|
-
class OutletInvService extends
|
|
4
|
+
const batteryOutletServiceBase_1 = require("@ecoflow/services/batteryOutletServiceBase");
|
|
5
|
+
class OutletInvService extends batteryOutletServiceBase_1.BatteryOutletServiceBase {
|
|
6
6
|
constructor(ecoFlowAccessory, batteryStatusProvider, additionalCharacteristics) {
|
|
7
7
|
super(ecoFlowAccessory, batteryStatusProvider, 'INV', additionalCharacteristics);
|
|
8
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outletInvService.js","sourceRoot":"","sources":["../../../../src/accessories/powerstream/services/outletInvService.ts"],"names":[],"mappings":";;;AAGA,
|
|
1
|
+
{"version":3,"file":"outletInvService.js","sourceRoot":"","sources":["../../../../src/accessories/powerstream/services/outletInvService.ts"],"names":[],"mappings":";;;AAGA,yFAAsF;AAEtF,MAAa,gBAAiB,SAAQ,mDAAwB;IAC5D,YACE,gBAAsC,EACtC,qBAA4C,EAC5C,yBAAgD;QAEhD,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,KAAK,EAAE,yBAAyB,CAAC,CAAC;IACnF,CAAC;IAEkB,KAAK;QACtB,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,uEAA0D,CAAC;IAC3G,CAAC;CACF;AAZD,4CAYC"}
|
|
@@ -2,8 +2,8 @@ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAcces
|
|
|
2
2
|
import { PowerStreamAllQuotaData } from '@ecoflow/accessories/powerstream/interfaces/powerStreamHttpApiContracts';
|
|
3
3
|
import { AdditionalBatteryCharacteristicType as CharacteristicType } from '@ecoflow/config';
|
|
4
4
|
import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
|
|
5
|
-
import {
|
|
6
|
-
export declare class OutletService extends
|
|
5
|
+
import { BatteryOutletServiceBase } from '@ecoflow/services/batteryOutletServiceBase';
|
|
6
|
+
export declare class OutletService extends BatteryOutletServiceBase {
|
|
7
7
|
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<PowerStreamAllQuotaData>, batteryStatusProvider: BatteryStatusProvider, serviceSubType: string, additionalCharacteristics?: CharacteristicType[]);
|
|
8
8
|
protected setOn(): Promise<void>;
|
|
9
9
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.OutletService = void 0;
|
|
4
|
-
const
|
|
5
|
-
class OutletService extends
|
|
4
|
+
const batteryOutletServiceBase_1 = require("@ecoflow/services/batteryOutletServiceBase");
|
|
5
|
+
class OutletService extends batteryOutletServiceBase_1.BatteryOutletServiceBase {
|
|
6
6
|
constructor(ecoFlowAccessory, batteryStatusProvider, serviceSubType, additionalCharacteristics) {
|
|
7
7
|
super(ecoFlowAccessory, batteryStatusProvider, serviceSubType, additionalCharacteristics);
|
|
8
8
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"outletService.js","sourceRoot":"","sources":["../../../../src/accessories/powerstream/services/outletService.ts"],"names":[],"mappings":";;;AAIA,
|
|
1
|
+
{"version":3,"file":"outletService.js","sourceRoot":"","sources":["../../../../src/accessories/powerstream/services/outletService.ts"],"names":[],"mappings":";;;AAIA,yFAAsF;AAEtF,MAAa,aAAc,SAAQ,mDAAwB;IACzD,YACE,gBAAwE,EACxE,qBAA4C,EAC5C,cAAsB,EACtB,yBAAgD;QAEhD,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,cAAc,EAAE,yBAAyB,CAAC,CAAC;IAC5F,CAAC;IAEkB,KAAK;QACtB,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,uEAA0D,CAAC;IAC3G,CAAC;CACF;AAbD,sCAaC"}
|
|
@@ -15,7 +15,7 @@ class PowerDemandService extends fanServiceBase_1.FanServiceBase {
|
|
|
15
15
|
const message = {
|
|
16
16
|
id: 0,
|
|
17
17
|
version: '',
|
|
18
|
-
cmdCode: powerStreamMqttApiContracts_1.PowerStreamMqttSetCmdCodeType.
|
|
18
|
+
cmdCode: powerStreamMqttApiContracts_1.PowerStreamMqttSetCmdCodeType.PowerDemand,
|
|
19
19
|
params: {
|
|
20
20
|
permanentWatts: value,
|
|
21
21
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"powerDemandService.js","sourceRoot":"","sources":["../../../../src/accessories/powerstream/services/powerDemandService.ts"],"names":[],"mappings":";;;AACA,yHAIiF;AACjF,qEAAkE;AAElE,MAAa,kBAAmB,SAAQ,+BAAc;IACpD,YAAY,gBAAsC,EAAE,cAAsB;QACxE,KAAK,CAAC,gBAAgB,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IAC1D,CAAC;IAEkB,cAAc,CAAC,KAAc;QAC9C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEkB,yBAAyB,CAAC,KAAa,EAAE,MAAkB;QAC5E,MAAM,OAAO,GAAuF;YAClG,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,2DAA6B,CAAC,
|
|
1
|
+
{"version":3,"file":"powerDemandService.js","sourceRoot":"","sources":["../../../../src/accessories/powerstream/services/powerDemandService.ts"],"names":[],"mappings":";;;AACA,yHAIiF;AACjF,qEAAkE;AAElE,MAAa,kBAAmB,SAAQ,+BAAc;IACpD,YAAY,gBAAsC,EAAE,cAAsB;QACxE,KAAK,CAAC,gBAAgB,EAAE,cAAc,EAAE,cAAc,CAAC,CAAC;IAC1D,CAAC;IAEkB,cAAc,CAAC,KAAc;QAC9C,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEkB,yBAAyB,CAAC,KAAa,EAAE,MAAkB;QAC5E,MAAM,OAAO,GAAuF;YAClG,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,2DAA6B,CAAC,WAAW;YAClD,MAAM,EAAE;gBACN,cAAc,EAAE,KAAK;aACtB;SACF,CAAC;QACF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AArBD,gDAqBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"smartPlugHttpApiContracts.js","sourceRoot":"","sources":["../../../../src/accessories/smartplug/interfaces/smartPlugHttpApiContracts.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { EnableType } from '@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts';
|
|
2
|
+
import { MqttQuotaMessage, MqttQuotaMessageWithParam, MqttSetMessage, MqttSetMessageWithParams } from '@ecoflow/apis/interfaces/mqttApiContracts';
|
|
3
|
+
export declare enum SmartPlugMqttMessageType {
|
|
4
|
+
Heartbeat = 1,
|
|
5
|
+
Task = 2
|
|
6
|
+
}
|
|
7
|
+
export declare enum SmartPlugMqttMessageFuncType {
|
|
8
|
+
Func2 = 2
|
|
9
|
+
}
|
|
10
|
+
export interface SmartPlugMqttQuotaMessage extends MqttQuotaMessage {
|
|
11
|
+
cmdId: SmartPlugMqttMessageType;
|
|
12
|
+
cmdFunc: SmartPlugMqttMessageFuncType;
|
|
13
|
+
}
|
|
14
|
+
export interface SmartPlugMqttQuotaMessageWithParams<TParams> extends MqttQuotaMessageWithParam<TParams>, SmartPlugMqttQuotaMessage {
|
|
15
|
+
}
|
|
16
|
+
export declare enum SmartPlugMqttSetCmdCodeType {
|
|
17
|
+
Switch = "WN511_SOCKET_SET_PLUG_SWITCH_MESSAGE",
|
|
18
|
+
Brightness = "WN511_SOCKET_SET_BRIGHTNESS_PACK"
|
|
19
|
+
}
|
|
20
|
+
export interface SmartPlugMqttSetMessage extends MqttSetMessage {
|
|
21
|
+
cmdCode: SmartPlugMqttSetCmdCodeType;
|
|
22
|
+
}
|
|
23
|
+
export interface SmartPlugMqttSetMessageParams {
|
|
24
|
+
}
|
|
25
|
+
export interface SmartPlugMqttSetMessageWithParams<TParams extends SmartPlugMqttSetMessageParams> extends MqttSetMessageWithParams<TParams>, SmartPlugMqttSetMessage {
|
|
26
|
+
}
|
|
27
|
+
export interface SmartPlugSwitchMqttSetMessageParams extends SmartPlugMqttSetMessageParams {
|
|
28
|
+
plugSwitch: EnableType;
|
|
29
|
+
}
|
|
30
|
+
export interface SmartPlugMqttSetBrightnessMessageParams extends SmartPlugMqttSetMessageParams {
|
|
31
|
+
brightness: number;
|
|
32
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SmartPlugMqttSetCmdCodeType = exports.SmartPlugMqttMessageFuncType = exports.SmartPlugMqttMessageType = void 0;
|
|
4
|
+
var SmartPlugMqttMessageType;
|
|
5
|
+
(function (SmartPlugMqttMessageType) {
|
|
6
|
+
SmartPlugMqttMessageType[SmartPlugMqttMessageType["Heartbeat"] = 1] = "Heartbeat";
|
|
7
|
+
SmartPlugMqttMessageType[SmartPlugMqttMessageType["Task"] = 2] = "Task";
|
|
8
|
+
})(SmartPlugMqttMessageType || (exports.SmartPlugMqttMessageType = SmartPlugMqttMessageType = {}));
|
|
9
|
+
var SmartPlugMqttMessageFuncType;
|
|
10
|
+
(function (SmartPlugMqttMessageFuncType) {
|
|
11
|
+
SmartPlugMqttMessageFuncType[SmartPlugMqttMessageFuncType["Func2"] = 2] = "Func2";
|
|
12
|
+
})(SmartPlugMqttMessageFuncType || (exports.SmartPlugMqttMessageFuncType = SmartPlugMqttMessageFuncType = {}));
|
|
13
|
+
var SmartPlugMqttSetCmdCodeType;
|
|
14
|
+
(function (SmartPlugMqttSetCmdCodeType) {
|
|
15
|
+
SmartPlugMqttSetCmdCodeType["Switch"] = "WN511_SOCKET_SET_PLUG_SWITCH_MESSAGE";
|
|
16
|
+
SmartPlugMqttSetCmdCodeType["Brightness"] = "WN511_SOCKET_SET_BRIGHTNESS_PACK";
|
|
17
|
+
})(SmartPlugMqttSetCmdCodeType || (exports.SmartPlugMqttSetCmdCodeType = SmartPlugMqttSetCmdCodeType = {}));
|
|
18
|
+
//# sourceMappingURL=smartPlugMqttApiContracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"smartPlugMqttApiContracts.js","sourceRoot":"","sources":["../../../../src/accessories/smartplug/interfaces/smartPlugMqttApiContracts.ts"],"names":[],"mappings":";;;AAQA,IAAY,wBAGX;AAHD,WAAY,wBAAwB;IAClC,iFAAa,CAAA;IACb,uEAAQ,CAAA;AACV,CAAC,EAHW,wBAAwB,wCAAxB,wBAAwB,QAGnC;AACD,IAAY,4BAEX;AAFD,WAAY,4BAA4B;IACtC,iFAAS,CAAA;AACX,CAAC,EAFW,4BAA4B,4CAA5B,4BAA4B,QAEvC;AAWD,IAAY,2BAGX;AAHD,WAAY,2BAA2B;IACrC,8EAA+C,CAAA;IAC/C,8EAA+C,CAAA;AACjD,CAAC,EAHW,2BAA2B,2CAA3B,2BAA2B,QAGtC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { EcoFlowAccessoryBase } from '@ecoflow/accessories/ecoFlowAccessoryBase';
|
|
2
|
+
import { LightBulbServiceBase } from '@ecoflow/services/lightBulbServiceBase';
|
|
3
|
+
export declare class BrightnessService extends LightBulbServiceBase {
|
|
4
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryBase, maxBrightness: number);
|
|
5
|
+
protected processOnSetOn(state: boolean): Promise<void>;
|
|
6
|
+
protected processOnSetBrightness(value: number, revert: () => void): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BrightnessService = void 0;
|
|
4
|
+
const smartPlugMqttApiContracts_1 = require("@ecoflow/accessories/smartplug/interfaces/smartPlugMqttApiContracts");
|
|
5
|
+
const lightBulbServiceBase_1 = require("@ecoflow/services/lightBulbServiceBase");
|
|
6
|
+
class BrightnessService extends lightBulbServiceBase_1.LightBulbServiceBase {
|
|
7
|
+
constructor(ecoFlowAccessory, maxBrightness) {
|
|
8
|
+
super(ecoFlowAccessory, maxBrightness, 'Brightness');
|
|
9
|
+
}
|
|
10
|
+
processOnSetOn(state) {
|
|
11
|
+
this.setBrightness(state ? 100 : 0);
|
|
12
|
+
return Promise.resolve();
|
|
13
|
+
}
|
|
14
|
+
processOnSetBrightness(value, revert) {
|
|
15
|
+
const message = {
|
|
16
|
+
id: 0,
|
|
17
|
+
version: '',
|
|
18
|
+
cmdCode: smartPlugMqttApiContracts_1.SmartPlugMqttSetCmdCodeType.Brightness,
|
|
19
|
+
params: {
|
|
20
|
+
brightness: Math.round(value),
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
return this.ecoFlowAccessory.sendSetCommand(message, revert);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
exports.BrightnessService = BrightnessService;
|
|
27
|
+
//# sourceMappingURL=brightnessService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"brightnessService.js","sourceRoot":"","sources":["../../../../src/accessories/smartplug/services/brightnessService.ts"],"names":[],"mappings":";;;AACA,mHAI6E;AAC7E,iFAA8E;AAE9E,MAAa,iBAAkB,SAAQ,2CAAoB;IACzD,YAAY,gBAAsC,EAAE,aAAqB;QACvE,KAAK,CAAC,gBAAgB,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;IACvD,CAAC;IAEkB,cAAc,CAAC,KAAc;QAC9C,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACpC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEkB,sBAAsB,CAAC,KAAa,EAAE,MAAkB;QACzE,MAAM,OAAO,GAA+E;YAC1F,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,uDAA2B,CAAC,UAAU;YAC/C,MAAM,EAAE;gBACN,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;aAC9B;SACF,CAAC;QACF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AArBD,8CAqBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { EcoFlowAccessoryBase } from '@ecoflow/accessories/ecoFlowAccessoryBase';
|
|
2
|
+
import { AdditionalOutletCharacteristicType as OutletCharacteristicType } from '@ecoflow/config';
|
|
3
|
+
import { OutletServiceBase } from '@ecoflow/services/outletServiceBase';
|
|
4
|
+
export declare class OutletService extends OutletServiceBase {
|
|
5
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryBase, additionalCharacteristics?: OutletCharacteristicType[]);
|
|
6
|
+
protected setOn(value: boolean, revert: () => void): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OutletService = void 0;
|
|
4
|
+
const batteryHttpApiContracts_1 = require("@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts");
|
|
5
|
+
const smartPlugMqttApiContracts_1 = require("@ecoflow/accessories/smartplug/interfaces/smartPlugMqttApiContracts");
|
|
6
|
+
const outletServiceBase_1 = require("@ecoflow/services/outletServiceBase");
|
|
7
|
+
class OutletService extends outletServiceBase_1.OutletServiceBase {
|
|
8
|
+
constructor(ecoFlowAccessory, additionalCharacteristics) {
|
|
9
|
+
super(ecoFlowAccessory, additionalCharacteristics);
|
|
10
|
+
}
|
|
11
|
+
setOn(value, revert) {
|
|
12
|
+
const message = {
|
|
13
|
+
id: 0,
|
|
14
|
+
version: '',
|
|
15
|
+
cmdCode: smartPlugMqttApiContracts_1.SmartPlugMqttSetCmdCodeType.Switch,
|
|
16
|
+
params: {
|
|
17
|
+
plugSwitch: value ? batteryHttpApiContracts_1.EnableType.On : batteryHttpApiContracts_1.EnableType.Off,
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
return this.ecoFlowAccessory.sendSetCommand(message, revert);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.OutletService = OutletService;
|
|
24
|
+
//# sourceMappingURL=outletService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outletService.js","sourceRoot":"","sources":["../../../../src/accessories/smartplug/services/outletService.ts"],"names":[],"mappings":";;;AAAA,+GAA+F;AAE/F,mHAI6E;AAE7E,2EAAwE;AAExE,MAAa,aAAc,SAAQ,qCAAiB;IAClD,YAAY,gBAAsC,EAAE,yBAAsD;QACxG,KAAK,CAAC,gBAAgB,EAAE,yBAAyB,CAAC,CAAC;IACrD,CAAC;IAEkB,KAAK,CAAC,KAAc,EAAE,MAAkB;QACzD,MAAM,OAAO,GAA2E;YACtF,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,uDAA2B,CAAC,MAAM;YAC3C,MAAM,EAAE;gBACN,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,oCAAU,CAAC,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,GAAG;aACnD;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AAjBD,sCAiBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { SmartPlugMqttSetMessage } from '@ecoflow/accessories/smartplug/interfaces/smartPlugMqttApiContracts';
|
|
2
|
+
import { SimulatorTyped } from '@ecoflow/apis/simulations/simulator';
|
|
3
|
+
export declare class SmartPlugSimulator extends SimulatorTyped<SmartPlugMqttSetMessage> {
|
|
4
|
+
generateQuota(): object;
|
|
5
|
+
generateSetReplyTyped(message: SmartPlugMqttSetMessage): object;
|
|
6
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SmartPlugSimulator = void 0;
|
|
4
|
+
const smartPlugMqttApiContracts_1 = require("@ecoflow/accessories/smartplug/interfaces/smartPlugMqttApiContracts");
|
|
5
|
+
const simulator_1 = require("@ecoflow/apis/simulations/simulator");
|
|
6
|
+
class SmartPlugSimulator extends simulator_1.SimulatorTyped {
|
|
7
|
+
generateQuota() {
|
|
8
|
+
const quota = {
|
|
9
|
+
cmdFunc: smartPlugMqttApiContracts_1.SmartPlugMqttMessageFuncType.Func2,
|
|
10
|
+
cmdId: smartPlugMqttApiContracts_1.SmartPlugMqttMessageType.Heartbeat,
|
|
11
|
+
param: {
|
|
12
|
+
brightness: Math.floor(this.getRandomNumber(0, 1023)),
|
|
13
|
+
current: this.getRandomNumber(0, 100000),
|
|
14
|
+
volt: this.getRandomNumber(180, 240),
|
|
15
|
+
switchSta: this.getRandomBoolean(),
|
|
16
|
+
temp: this.getRandomNumber(10, 40),
|
|
17
|
+
watts: this.getRandomNumber(0, 2500),
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
return quota;
|
|
21
|
+
}
|
|
22
|
+
generateSetReplyTyped(message) {
|
|
23
|
+
const reply = {
|
|
24
|
+
id: message.id,
|
|
25
|
+
version: message.version,
|
|
26
|
+
data: {
|
|
27
|
+
ack: false,
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
return reply;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
exports.SmartPlugSimulator = SmartPlugSimulator;
|
|
34
|
+
//# sourceMappingURL=smartPlugSimulator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"smartPlugSimulator.js","sourceRoot":"","sources":["../../../../src/accessories/smartplug/simulations/smartPlugSimulator.ts"],"names":[],"mappings":";;;AACA,mHAK6E;AAE7E,mEAAqE;AAErE,MAAa,kBAAmB,SAAQ,0BAAuC;IAC7D,aAAa;QAC3B,MAAM,KAAK,GAAmD;YAC5D,OAAO,EAAE,wDAA4B,CAAC,KAAK;YAC3C,KAAK,EAAE,oDAAwB,CAAC,SAAS;YACzC,KAAK,EAAE;gBACL,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBACrD,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,MAAM,CAAC;gBACxC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,CAAC;gBACpC,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE;gBAClC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,CAAC;gBAClC,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC;aACrC;SACF,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAEe,qBAAqB,CAAC,OAAgC;QACpE,MAAM,KAAK,GAAwB;YACjC,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE;gBACJ,GAAG,EAAE,KAAK;aACX;SACF,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA3BD,gDA2BC"}
|
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
import { DeltaProAllQuotaData } from '@ecoflow/accessories/batteries/deltapro/interfaces/deltaProHttpApiContracts';
|
|
2
1
|
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { SmartPlugAllQuotaData } from '@ecoflow/accessories/smartplug/interfaces/smartPlugHttpApiContracts';
|
|
3
3
|
import { EcoFlowHttpApiManager } from '@ecoflow/apis/ecoFlowHttpApiManager';
|
|
4
4
|
import { EcoFlowMqttApiManager } from '@ecoflow/apis/ecoFlowMqttApiManager';
|
|
5
5
|
import { MqttQuotaMessage } from '@ecoflow/apis/interfaces/mqttApiContracts';
|
|
6
6
|
import { DeviceConfig } from '@ecoflow/config';
|
|
7
|
-
import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
|
|
8
7
|
import { EcoFlowHomebridgePlatform } from '@ecoflow/platform';
|
|
9
8
|
import { ServiceBase } from '@ecoflow/services/serviceBase';
|
|
10
9
|
import { Logging, PlatformAccessory } from 'homebridge';
|
|
11
|
-
export declare
|
|
12
|
-
private readonly
|
|
13
|
-
private readonly
|
|
14
|
-
private readonly
|
|
15
|
-
|
|
16
|
-
private readonly switchXboostService;
|
|
17
|
-
constructor(platform: EcoFlowHomebridgePlatform, accessory: PlatformAccessory, config: DeviceConfig, log: Logging, httpApiManager: EcoFlowHttpApiManager, mqttApiManager: EcoFlowMqttApiManager, batteryStatusProvider: BatteryStatusProvider);
|
|
10
|
+
export declare class SmartPlugAccessory extends EcoFlowAccessoryWithQuotaBase<SmartPlugAllQuotaData> {
|
|
11
|
+
private readonly outletService;
|
|
12
|
+
private readonly temperatureService;
|
|
13
|
+
private readonly brightnessService;
|
|
14
|
+
constructor(platform: EcoFlowHomebridgePlatform, accessory: PlatformAccessory, config: DeviceConfig, log: Logging, httpApiManager: EcoFlowHttpApiManager, mqttApiManager: EcoFlowMqttApiManager);
|
|
18
15
|
protected getServices(): ServiceBase[];
|
|
19
16
|
protected processQuotaMessage(message: MqttQuotaMessage): void;
|
|
20
|
-
protected initializeQuota(quota:
|
|
21
|
-
protected updateInitialValues(
|
|
22
|
-
private
|
|
23
|
-
private
|
|
24
|
-
private
|
|
17
|
+
protected initializeQuota(quota: SmartPlugAllQuotaData | null): SmartPlugAllQuotaData;
|
|
18
|
+
protected updateInitialValues(initialData: SmartPlugAllQuotaData): void;
|
|
19
|
+
private updateHeartbeatInitialValues;
|
|
20
|
+
private updateHeartbeatValues;
|
|
21
|
+
private updateOutletValues;
|
|
22
|
+
private updateBrightnessValues;
|
|
23
|
+
private updateTemperatureValues;
|
|
25
24
|
}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SmartPlugAccessory = void 0;
|
|
4
|
+
const ecoFlowAccessoryWithQuotaBase_1 = require("@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase");
|
|
5
|
+
const smartPlugMqttApiContracts_1 = require("@ecoflow/accessories/smartplug/interfaces/smartPlugMqttApiContracts");
|
|
6
|
+
const brightnessService_1 = require("@ecoflow/accessories/smartplug/services/brightnessService");
|
|
7
|
+
const outletService_1 = require("@ecoflow/accessories/smartplug/services/outletService");
|
|
8
|
+
const temperatureSensorService_1 = require("@ecoflow/services/temperatureSensorService");
|
|
9
|
+
class SmartPlugAccessory extends ecoFlowAccessoryWithQuotaBase_1.EcoFlowAccessoryWithQuotaBase {
|
|
10
|
+
outletService;
|
|
11
|
+
temperatureService;
|
|
12
|
+
brightnessService;
|
|
13
|
+
constructor(platform, accessory, config, log, httpApiManager, mqttApiManager) {
|
|
14
|
+
super(platform, accessory, config, log, httpApiManager, mqttApiManager);
|
|
15
|
+
this.outletService = new outletService_1.OutletService(this, config.outlet?.additionalCharacteristics);
|
|
16
|
+
this.temperatureService = new temperatureSensorService_1.TemperatureSensorService(this);
|
|
17
|
+
this.brightnessService = new brightnessService_1.BrightnessService(this, 1023);
|
|
18
|
+
}
|
|
19
|
+
getServices() {
|
|
20
|
+
return [this.outletService, this.temperatureService, this.brightnessService];
|
|
21
|
+
}
|
|
22
|
+
processQuotaMessage(message) {
|
|
23
|
+
const smartPlugMessage = message;
|
|
24
|
+
if (smartPlugMessage.cmdFunc === smartPlugMqttApiContracts_1.SmartPlugMqttMessageFuncType.Func2 &&
|
|
25
|
+
smartPlugMessage.cmdId === smartPlugMqttApiContracts_1.SmartPlugMqttMessageType.Heartbeat) {
|
|
26
|
+
const heartbeat = message.param;
|
|
27
|
+
Object.assign(this.quota['2_1'], heartbeat);
|
|
28
|
+
this.updateHeartbeatValues(heartbeat);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
initializeQuota(quota) {
|
|
32
|
+
const result = quota ?? {};
|
|
33
|
+
if (!result['2_1']) {
|
|
34
|
+
result['2_1'] = {};
|
|
35
|
+
}
|
|
36
|
+
return result;
|
|
37
|
+
}
|
|
38
|
+
updateInitialValues(initialData) {
|
|
39
|
+
this.updateHeartbeatInitialValues(initialData['2_1']);
|
|
40
|
+
}
|
|
41
|
+
updateHeartbeatInitialValues(params) {
|
|
42
|
+
const message = {
|
|
43
|
+
cmdFunc: smartPlugMqttApiContracts_1.SmartPlugMqttMessageFuncType.Func2,
|
|
44
|
+
cmdId: smartPlugMqttApiContracts_1.SmartPlugMqttMessageType.Heartbeat,
|
|
45
|
+
param: params,
|
|
46
|
+
};
|
|
47
|
+
this.processQuotaMessage(message);
|
|
48
|
+
}
|
|
49
|
+
updateHeartbeatValues(params) {
|
|
50
|
+
this.updateOutletValues(params);
|
|
51
|
+
this.updateBrightnessValues(params);
|
|
52
|
+
this.updateTemperatureValues(params);
|
|
53
|
+
}
|
|
54
|
+
updateOutletValues(params) {
|
|
55
|
+
if (params.switchSta !== undefined) {
|
|
56
|
+
this.outletService.updateState(params.switchSta);
|
|
57
|
+
}
|
|
58
|
+
if (params.watts !== undefined) {
|
|
59
|
+
this.outletService.updateOutputConsumption(params.watts * 0.1);
|
|
60
|
+
}
|
|
61
|
+
if (params.current !== undefined) {
|
|
62
|
+
this.outletService.updateOutputCurrent(params.current * 0.001);
|
|
63
|
+
}
|
|
64
|
+
if (params.volt !== undefined) {
|
|
65
|
+
this.outletService.updateOutputVoltage(params.volt);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
updateBrightnessValues(params) {
|
|
69
|
+
if (params.brightness !== undefined) {
|
|
70
|
+
this.brightnessService.updateState(params.brightness > 0);
|
|
71
|
+
this.brightnessService.updateBrightness(params.brightness);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
updateTemperatureValues(params) {
|
|
75
|
+
if (params.temp !== undefined) {
|
|
76
|
+
this.temperatureService.updateCurrentTemperature(params.temp);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
exports.SmartPlugAccessory = SmartPlugAccessory;
|
|
81
|
+
//# sourceMappingURL=smartPlugAccessory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"smartPlugAccessory.js","sourceRoot":"","sources":["../../../src/accessories/smartplug/smartPlugAccessory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import { Characteristic, HAP, WithUUID } from 'homebridge';
|
|
2
|
+
export declare const OutputVoltageFactory: (hap: HAP) => WithUUID<{
|
|
3
|
+
new (): Characteristic;
|
|
4
|
+
}>;
|
|
5
|
+
export declare const OutputCurrentFactory: (hap: HAP) => WithUUID<{
|
|
6
|
+
new (): Characteristic;
|
|
7
|
+
}>;
|
|
2
8
|
export declare const InputConsumptionWattFactory: (hap: HAP) => WithUUID<{
|
|
3
9
|
new (): Characteristic;
|
|
4
10
|
}>;
|
|
@@ -12,6 +18,12 @@ export declare class PowerConsumption {
|
|
|
12
18
|
static OutputConsumptionWatts: WithUUID<{
|
|
13
19
|
new (): Characteristic;
|
|
14
20
|
}>;
|
|
21
|
+
static OutputVoltage: WithUUID<{
|
|
22
|
+
new (): Characteristic;
|
|
23
|
+
}>;
|
|
24
|
+
static OutputCurrent: WithUUID<{
|
|
25
|
+
new (): Characteristic;
|
|
26
|
+
}>;
|
|
15
27
|
}
|
|
16
28
|
export declare class CustomCharacteristics {
|
|
17
29
|
static readonly PowerConsumption: typeof PowerConsumption;
|
|
@@ -1,6 +1,40 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.CustomCharacteristics = exports.PowerConsumption = exports.OutputConsumptionWattFactory = exports.InputConsumptionWattFactory = void 0;
|
|
3
|
+
exports.CustomCharacteristics = exports.PowerConsumption = exports.OutputConsumptionWattFactory = exports.InputConsumptionWattFactory = exports.OutputCurrentFactory = exports.OutputVoltageFactory = void 0;
|
|
4
|
+
const OutputVoltageFactory = (hap) => {
|
|
5
|
+
return class OutputVoltage extends hap.Characteristic {
|
|
6
|
+
static UUID = '564C6469-F3A7-48D8-A1EB-608238475444';
|
|
7
|
+
constructor() {
|
|
8
|
+
super('Output Voltage', OutputVoltage.UUID, {
|
|
9
|
+
description: 'Output Voltage, V',
|
|
10
|
+
format: "float" /* hap.Formats.FLOAT */,
|
|
11
|
+
perms: ["ev" /* hap.Perms.NOTIFY */, "pr" /* hap.Perms.PAIRED_READ */],
|
|
12
|
+
minValue: 0,
|
|
13
|
+
maxValue: 300,
|
|
14
|
+
unit: "celsius" /* hap.Units.CELSIUS */, // To allow setting numeric value for conditions in ShortCuts
|
|
15
|
+
});
|
|
16
|
+
this.value = this.getDefaultValue();
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
exports.OutputVoltageFactory = OutputVoltageFactory;
|
|
21
|
+
const OutputCurrentFactory = (hap) => {
|
|
22
|
+
return class OutputCurrent extends hap.Characteristic {
|
|
23
|
+
static UUID = 'BA7CC214-A7DA-40DF-8655-C06ED9513D09';
|
|
24
|
+
constructor() {
|
|
25
|
+
super('Output Current', OutputCurrent.UUID, {
|
|
26
|
+
description: 'Output Current, A',
|
|
27
|
+
format: "float" /* hap.Formats.FLOAT */,
|
|
28
|
+
perms: ["ev" /* hap.Perms.NOTIFY */, "pr" /* hap.Perms.PAIRED_READ */],
|
|
29
|
+
minValue: 0,
|
|
30
|
+
maxValue: 10,
|
|
31
|
+
unit: "celsius" /* hap.Units.CELSIUS */, // To allow setting numeric value for conditions in ShortCuts
|
|
32
|
+
});
|
|
33
|
+
this.value = this.getDefaultValue();
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
exports.OutputCurrentFactory = OutputCurrentFactory;
|
|
4
38
|
const InputConsumptionWattFactory = (hap) => {
|
|
5
39
|
return class InputConsumptionWatt extends hap.Characteristic {
|
|
6
40
|
static UUID = '13172B0A-D346-4730-9732-32EF5B6EF8B7';
|
|
@@ -43,8 +77,8 @@ exports.OutputConsumptionWattFactory = OutputConsumptionWattFactory;
|
|
|
43
77
|
// constructor() {
|
|
44
78
|
// super('Voltage', PowerConsumptionVolt.UUID, {
|
|
45
79
|
// description: '"Voltage, V" in Eve App',
|
|
46
|
-
// format: Formats.FLOAT,
|
|
47
|
-
// perms: [Perms.NOTIFY, Perms.PAIRED_READ],
|
|
80
|
+
// format: hap.Formats.FLOAT,
|
|
81
|
+
// perms: [hap.Perms.NOTIFY, hap.Perms.PAIRED_READ],
|
|
48
82
|
// minValue: 0,
|
|
49
83
|
// maxValue: 300,
|
|
50
84
|
// });
|
|
@@ -58,12 +92,12 @@ exports.OutputConsumptionWattFactory = OutputConsumptionWattFactory;
|
|
|
58
92
|
// constructor() {
|
|
59
93
|
// super('Current', PowerConsumptionAmpere.UUID, {
|
|
60
94
|
// description: '"Current, A" in Eve App',
|
|
61
|
-
// format: Formats.FLOAT,
|
|
62
|
-
// perms: [Perms.NOTIFY, Perms.PAIRED_READ],
|
|
95
|
+
// format: hap.Formats.FLOAT,
|
|
96
|
+
// perms: [hap.Perms.NOTIFY, hap.Perms.PAIRED_READ],
|
|
63
97
|
// minValue: 0,
|
|
64
|
-
// maxValue:
|
|
98
|
+
// maxValue: 10000,
|
|
65
99
|
// });
|
|
66
|
-
// this.value = this.getDefaultValue();
|
|
100
|
+
// this.value = this.getDefaultValue(); // value should be set in mA
|
|
67
101
|
// }
|
|
68
102
|
// };
|
|
69
103
|
// };
|
|
@@ -73,8 +107,8 @@ exports.OutputConsumptionWattFactory = OutputConsumptionWattFactory;
|
|
|
73
107
|
// constructor() {
|
|
74
108
|
// super('Total Consumption', PowerConsumptionKilowattHour.UUID, {
|
|
75
109
|
// description: '"Total Consumption, kW/h" in Eve App',
|
|
76
|
-
// format: Formats.FLOAT,
|
|
77
|
-
// perms: [Perms.NOTIFY, Perms.PAIRED_READ],
|
|
110
|
+
// format: hap.Formats.FLOAT,
|
|
111
|
+
// perms: [hap.Perms.NOTIFY, hap.Perms.PAIRED_READ],
|
|
78
112
|
// minValue: 0,
|
|
79
113
|
// maxValue: 50,
|
|
80
114
|
// });
|
|
@@ -85,6 +119,8 @@ exports.OutputConsumptionWattFactory = OutputConsumptionWattFactory;
|
|
|
85
119
|
class PowerConsumption {
|
|
86
120
|
static InputConsumptionWatts;
|
|
87
121
|
static OutputConsumptionWatts;
|
|
122
|
+
static OutputVoltage;
|
|
123
|
+
static OutputCurrent;
|
|
88
124
|
}
|
|
89
125
|
exports.PowerConsumption = PowerConsumption;
|
|
90
126
|
class CustomCharacteristics {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customCharacteristic.js","sourceRoot":"","sources":["../../src/characteristics/customCharacteristic.ts"],"names":[],"mappings":";;;AAEO,MAAM,2BAA2B,GAAG,CAAC,GAAQ,EAAwC,EAAE;IAC5F,OAAO,MAAM,oBAAqB,SAAQ,GAAG,CAAC,cAAc;QACnD,MAAM,CAAU,IAAI,GAAW,sCAAsC,CAAC;QAC7E;YACE,KAAK,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,IAAI,EAAE;gBACpD,WAAW,EAAE,sBAAsB;gBACnC,MAAM,iCAAmB;gBACzB,KAAK,EAAE,+DAAyC;gBAChD,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE,CAAC;gBACV,IAAI,mCAAmB,EAAE,6DAA6D;aACvF,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACtC,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,2BAA2B,+BAetC;AAEK,MAAM,4BAA4B,GAAG,CAAC,GAAQ,EAAwC,EAAE;IAC7F,OAAO,MAAM,qBAAsB,SAAQ,GAAG,CAAC,cAAc;QAC3D,qBAAqB;QACd,MAAM,CAAU,IAAI,GAAW,sCAAsC,CAAC;QAC7E;YACE,KAAK,CAAC,oBAAoB,EAAE,qBAAqB,CAAC,IAAI,EAAE;gBACtD,WAAW,EAAE,uBAAuB;gBACpC,MAAM,iCAAmB;gBACzB,KAAK,EAAE,+DAAyC;gBAChD,IAAI,mCAAmB,EAAE,6DAA6D;gBACtF,QAAQ,EAAE,CAAC;gBACX,OAAO,EAAE,CAAC;aACX,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACtC,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAhBW,QAAA,4BAA4B,gCAgBvC;AAEF,oEAAoE;AACpE,mGAAmG;AACnG,mEAAmE;AACnE,oFAAoF;AACpF,sBAAsB;AACtB,sDAAsD;AACtD,kDAAkD;AAClD,
|
|
1
|
+
{"version":3,"file":"customCharacteristic.js","sourceRoot":"","sources":["../../src/characteristics/customCharacteristic.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -7,7 +7,8 @@ export declare enum DeviceModel {
|
|
|
7
7
|
Delta2Max = "Delta 2 Max",
|
|
8
8
|
Delta2 = "Delta 2",
|
|
9
9
|
DeltaPro3 = "Delta Pro 3",
|
|
10
|
-
PowerStream = "PowerStream"
|
|
10
|
+
PowerStream = "PowerStream",
|
|
11
|
+
SmartPlug = "Smart Plug"
|
|
11
12
|
}
|
|
12
13
|
export declare enum LocationType {
|
|
13
14
|
EU = "EU",
|
|
@@ -32,17 +33,23 @@ export interface DeviceConfig extends AccessoryConfig, DeviceAccessConfig {
|
|
|
32
33
|
disabled: boolean;
|
|
33
34
|
battery?: BatteryDeviceConfig;
|
|
34
35
|
powerStream?: PowerStreamDeviceConfig;
|
|
36
|
+
outlet?: OutletDeviceConfig;
|
|
35
37
|
}
|
|
36
38
|
export interface BatteryDeviceConfig {
|
|
37
39
|
additionalCharacteristics: AdditionalBatteryCharacteristicType[];
|
|
38
40
|
}
|
|
39
|
-
export
|
|
41
|
+
export type AdditionalBatteryCharacteristicType = AdditionalOutletCharacteristicType | AdditionalBatteryOutletCharacteristicType;
|
|
42
|
+
export declare enum AdditionalBatteryOutletCharacteristicType {
|
|
40
43
|
BatteryLevel = "Battery Level, %",
|
|
41
44
|
InputConsumptionInWatts = "Input Consumption, W",
|
|
42
|
-
OutputConsumptionInWatts = "Output Consumption, W",
|
|
43
45
|
ChargingState = "Charging State",
|
|
44
46
|
StatusLowBattery = "Status Low Battery"
|
|
45
47
|
}
|
|
48
|
+
export declare enum AdditionalOutletCharacteristicType {
|
|
49
|
+
OutputVoltage = "Output Voltage, V",
|
|
50
|
+
OutputCurrent = "Output Current, A",
|
|
51
|
+
OutputConsumptionInWatts = "Output Consumption, W"
|
|
52
|
+
}
|
|
46
53
|
export declare enum PowerStreamConsumptionType {
|
|
47
54
|
W600 = 600,
|
|
48
55
|
W800 = 800
|
|
@@ -53,3 +60,6 @@ export interface PowerStreamDeviceConfig {
|
|
|
53
60
|
pvAdditionalCharacteristics?: AdditionalBatteryCharacteristicType[];
|
|
54
61
|
inverterAdditionalCharacteristics?: AdditionalBatteryCharacteristicType[];
|
|
55
62
|
}
|
|
63
|
+
export interface OutletDeviceConfig {
|
|
64
|
+
additionalCharacteristics?: AdditionalOutletCharacteristicType[];
|
|
65
|
+
}
|