@pietrolubini/homebridge-ecoflow 1.5.1 → 1.6.0-alpha.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 +65 -7
- package/config.schema.json +1 -1
- package/dist/accessories/batteries/delta2/delta2AccessoryBase.js +3 -2
- package/dist/accessories/batteries/delta2/delta2AccessoryBase.js.map +1 -1
- package/dist/accessories/batteries/delta2/interfaces/delta2HttpApiContracts.d.ts +2 -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/outletAcService.d.ts +1 -1
- package/dist/accessories/batteries/delta2/services/outletAcService.js +1 -1
- package/dist/accessories/batteries/delta2/services/outletAcService.js.map +1 -1
- package/dist/accessories/batteries/delta2/services/outletCarService.d.ts +1 -1
- package/dist/accessories/batteries/delta2/services/outletCarService.js +3 -3
- package/dist/accessories/batteries/delta2/services/outletCarService.js.map +1 -1
- package/dist/accessories/batteries/delta2/services/outletUsbService.d.ts +1 -1
- package/dist/accessories/batteries/delta2/services/outletUsbService.js +3 -3
- package/dist/accessories/batteries/delta2/services/outletUsbService.js.map +1 -1
- package/dist/accessories/batteries/delta2/services/switchXboostService.d.ts +3 -3
- package/dist/accessories/batteries/delta2/services/switchXboostService.js +4 -4
- package/dist/accessories/batteries/delta2/services/switchXboostService.js.map +1 -1
- package/dist/accessories/batteries/delta2/simulations/delta2Simulator.js +3 -2
- package/dist/accessories/batteries/delta2/simulations/delta2Simulator.js.map +1 -1
- package/dist/accessories/batteries/deltapro/deltaProAccessory.js +3 -2
- package/dist/accessories/batteries/deltapro/deltaProAccessory.js.map +1 -1
- package/dist/accessories/batteries/deltapro/interfaces/deltaProHttpApiContracts.d.ts +2 -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/outletAcService.d.ts +1 -1
- package/dist/accessories/batteries/deltapro/services/outletAcService.js +1 -1
- package/dist/accessories/batteries/deltapro/services/outletAcService.js.map +1 -1
- package/dist/accessories/batteries/deltapro/services/outletCarService.d.ts +1 -1
- package/dist/accessories/batteries/deltapro/services/outletCarService.js +3 -3
- package/dist/accessories/batteries/deltapro/services/outletCarService.js.map +1 -1
- package/dist/accessories/batteries/deltapro/services/outletUsbService.d.ts +1 -1
- package/dist/accessories/batteries/deltapro/services/outletUsbService.js +1 -1
- package/dist/accessories/batteries/deltapro/services/outletUsbService.js.map +1 -1
- package/dist/accessories/batteries/deltapro/services/switchXboostService.d.ts +3 -3
- package/dist/accessories/batteries/deltapro/services/switchXboostService.js +4 -4
- package/dist/accessories/batteries/deltapro/services/switchXboostService.js.map +1 -1
- package/dist/accessories/batteries/deltapro/simulations/deltaProSimulator.js +3 -2
- package/dist/accessories/batteries/deltapro/simulations/deltaProSimulator.js.map +1 -1
- 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/outletAcHvService.d.ts +1 -1
- package/dist/accessories/batteries/deltapro3/services/outletAcHvService.js +1 -1
- package/dist/accessories/batteries/deltapro3/services/outletAcHvService.js.map +1 -1
- package/dist/accessories/batteries/deltapro3/services/outletAcLvService.d.ts +1 -1
- package/dist/accessories/batteries/deltapro3/services/outletAcLvService.js +1 -1
- package/dist/accessories/batteries/deltapro3/services/outletAcLvService.js.map +1 -1
- package/dist/accessories/batteries/deltapro3/services/outletDc12vService.d.ts +1 -1
- package/dist/accessories/batteries/deltapro3/services/outletDc12vService.js +1 -1
- package/dist/accessories/batteries/deltapro3/services/outletDc12vService.js.map +1 -1
- package/dist/accessories/batteries/deltapro3/services/switchXboostService.d.ts +3 -3
- package/dist/accessories/batteries/deltapro3/services/switchXboostService.js +4 -4
- package/dist/accessories/batteries/deltapro3/services/switchXboostService.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/outletAcService.d.ts +1 -1
- package/dist/accessories/batteries/deltaproultra/services/outletAcService.js +1 -1
- package/dist/accessories/batteries/deltaproultra/services/outletAcService.js.map +1 -1
- package/dist/accessories/batteries/deltaproultra/services/outletUsbService.d.ts +1 -1
- package/dist/accessories/batteries/deltaproultra/services/outletUsbService.js +1 -1
- package/dist/accessories/batteries/deltaproultra/services/outletUsbService.js.map +1 -1
- package/dist/accessories/batteries/deltaproultra/services/switchXboostService.d.ts +3 -3
- package/dist/accessories/batteries/deltaproultra/services/switchXboostService.js +4 -4
- package/dist/accessories/batteries/deltaproultra/services/switchXboostService.js.map +1 -1
- package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.d.ts +0 -4
- package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.js +1 -6
- package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.js.map +1 -1
- package/dist/accessories/glacier/glacierAccessory.d.ts +36 -0
- package/dist/accessories/glacier/glacierAccessory.js +207 -0
- package/dist/accessories/glacier/glacierAccessory.js.map +1 -0
- package/dist/accessories/glacier/interfaces/glacierHttpApiContracts.d.ts +64 -0
- package/dist/accessories/glacier/interfaces/glacierHttpApiContracts.js +36 -0
- package/dist/accessories/glacier/interfaces/glacierHttpApiContracts.js.map +1 -0
- package/dist/accessories/glacier/interfaces/glacierMqttApiContracts.d.ts +57 -0
- package/dist/accessories/glacier/interfaces/glacierMqttApiContracts.js +27 -0
- package/dist/accessories/glacier/interfaces/glacierMqttApiContracts.js.map +1 -0
- package/dist/accessories/glacier/services/glacierThermostatFridgeServiceBase.d.ts +11 -0
- package/dist/accessories/glacier/services/glacierThermostatFridgeServiceBase.js +30 -0
- package/dist/accessories/glacier/services/glacierThermostatFridgeServiceBase.js.map +1 -0
- package/dist/accessories/glacier/services/outletBatteryService.d.ts +8 -0
- package/dist/accessories/glacier/services/outletBatteryService.js +14 -0
- package/dist/accessories/glacier/services/outletBatteryService.js.map +1 -0
- package/dist/accessories/glacier/services/switchDetachIceService.d.ts +8 -0
- package/dist/accessories/glacier/services/switchDetachIceService.js +28 -0
- package/dist/accessories/glacier/services/switchDetachIceService.js.map +1 -0
- package/dist/accessories/glacier/services/switchDetachIceService.spec.d.ts +1 -0
- package/dist/accessories/glacier/services/switchEcoModeService.d.ts +9 -0
- package/dist/accessories/glacier/services/switchEcoModeService.js +30 -0
- package/dist/accessories/glacier/services/switchEcoModeService.js.map +1 -0
- package/dist/accessories/glacier/services/switchEcoModeService.spec.d.ts +1 -0
- package/dist/accessories/glacier/services/switchMakeIceService.d.ts +10 -0
- package/dist/accessories/glacier/services/switchMakeIceService.js +31 -0
- package/dist/accessories/glacier/services/switchMakeIceService.js.map +1 -0
- package/dist/accessories/glacier/services/switchMakeIceService.spec.d.ts +1 -0
- package/dist/accessories/glacier/services/thermostatFridgeDualLeftZoneService.d.ts +7 -0
- package/dist/accessories/glacier/services/thermostatFridgeDualLeftZoneService.js +15 -0
- package/dist/accessories/glacier/services/thermostatFridgeDualLeftZoneService.js.map +1 -0
- package/dist/accessories/glacier/services/thermostatFridgeDualLeftZoneService.spec.d.ts +1 -0
- package/dist/accessories/glacier/services/thermostatFridgeDualRightZoneService.d.ts +7 -0
- package/dist/accessories/glacier/services/thermostatFridgeDualRightZoneService.js +15 -0
- package/dist/accessories/glacier/services/thermostatFridgeDualRightZoneService.js.map +1 -0
- package/dist/accessories/glacier/services/thermostatFridgeDualRightZoneService.spec.d.ts +1 -0
- package/dist/accessories/glacier/services/thermostatFridgeSingleZoneService.d.ts +7 -0
- package/dist/accessories/glacier/services/thermostatFridgeSingleZoneService.js +15 -0
- package/dist/accessories/glacier/services/thermostatFridgeSingleZoneService.js.map +1 -0
- package/dist/accessories/glacier/services/thermostatFridgeSingleZoneService.spec.d.ts +1 -0
- package/dist/accessories/glacier/simulations/glacierSimulator.d.ts +6 -0
- package/dist/accessories/glacier/simulations/glacierSimulator.js +76 -0
- package/dist/accessories/glacier/simulations/glacierSimulator.js.map +1 -0
- package/dist/accessories/powerstream/interfaces/powerStreamHttpApiContracts.d.ts +1 -1
- package/dist/accessories/powerstream/powerStreamAccessory.js +2 -2
- package/dist/accessories/powerstream/powerStreamAccessory.js.map +1 -1
- package/dist/accessories/powerstream/services/outletInvService.d.ts +3 -3
- package/dist/accessories/powerstream/services/outletInvService.js +3 -3
- package/dist/accessories/powerstream/services/outletInvService.js.map +1 -1
- package/dist/accessories/powerstream/services/outletService.d.ts +3 -3
- package/dist/accessories/powerstream/services/outletService.js +3 -3
- package/dist/accessories/powerstream/services/outletService.js.map +1 -1
- package/dist/accessories/powerstream/simulations/powerStreamSimulator.js +2 -2
- package/dist/accessories/powerstream/simulations/powerStreamSimulator.js.map +1 -1
- package/dist/accessories/smartplug/interfaces/smartPlugMqttApiContracts.d.ts +2 -2
- package/dist/accessories/smartplug/services/outletService.d.ts +1 -1
- package/dist/accessories/smartplug/services/outletService.js +3 -3
- package/dist/accessories/smartplug/services/outletService.js.map +1 -1
- package/dist/apis/simulations/simulator.d.ts +1 -0
- package/dist/apis/simulations/simulator.js +3 -0
- package/dist/apis/simulations/simulator.js.map +1 -1
- package/dist/characteristics/characteristicContracts.d.ts +34 -0
- package/dist/characteristics/characteristicContracts.js +51 -0
- package/dist/characteristics/characteristicContracts.js.map +1 -0
- package/dist/config.d.ts +2 -1
- package/dist/config.js +1 -0
- 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 +6 -0
- package/dist/platform.js.map +1 -1
- package/dist/services/contactSensorService.d.ts +9 -0
- package/dist/services/contactSensorService.js +21 -0
- package/dist/services/contactSensorService.js.map +1 -0
- package/dist/services/contactSensorService.spec.d.ts +1 -0
- package/dist/services/{batteryOutletServiceBase.d.ts → outletBatteryServiceBase.d.ts} +1 -1
- package/dist/services/{batteryOutletServiceBase.js → outletBatteryServiceBase.js} +4 -4
- package/dist/services/{batteryOutletServiceBase.js.map → outletBatteryServiceBase.js.map} +1 -1
- package/dist/services/outletBatteryServiceBase.spec.d.ts +1 -0
- package/dist/services/outletServiceBase.d.ts +1 -1
- package/dist/services/outletServiceBase.js +1 -1
- package/dist/services/outletServiceBase.js.map +1 -1
- package/dist/services/serviceBase.d.ts +4 -0
- package/dist/services/serviceBase.js +19 -0
- package/dist/services/serviceBase.js.map +1 -1
- package/dist/services/{switchXboostServiceBase.d.ts → switchServiceBase.d.ts} +4 -3
- package/dist/services/{switchXboostServiceBase.js → switchServiceBase.js} +11 -8
- package/dist/services/switchServiceBase.js.map +1 -0
- package/dist/services/switchServiceBase.spec.d.ts +1 -0
- package/dist/services/thermostatFridgeServiceBase.d.ts +26 -0
- package/dist/services/thermostatFridgeServiceBase.js +95 -0
- package/dist/services/thermostatFridgeServiceBase.js.map +1 -0
- package/dist/services/thermostatFridgeServiceBase.spec.d.ts +1 -0
- package/junit.xml +1004 -698
- package/package.json +1 -1
- package/dist/services/switchXboostServiceBase.js.map +0 -1
- /package/dist/{services/batteryOutletServiceBase.spec.d.ts → accessories/glacier/glacierAccessory.spec.d.ts} +0 -0
- /package/dist/{services/switchXboostServiceBase.spec.d.ts → accessories/glacier/services/outletBatteryService.spec.d.ts} +0 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { EnableType } from '@ecoflow/characteristics/characteristicContracts';
|
|
2
|
+
export declare enum CoolingZoneType {
|
|
3
|
+
Single = 1,
|
|
4
|
+
Dual = 2
|
|
5
|
+
}
|
|
6
|
+
export declare enum TemperatureType {
|
|
7
|
+
Celsius = 0,
|
|
8
|
+
Fahrenheit = 1
|
|
9
|
+
}
|
|
10
|
+
export declare enum CoolModeType {
|
|
11
|
+
Normal = 0,
|
|
12
|
+
Eco = 1
|
|
13
|
+
}
|
|
14
|
+
export declare enum MakeIceStatusType {
|
|
15
|
+
SmallInPreparation = 0,
|
|
16
|
+
LargeInPreparation = 1,
|
|
17
|
+
SmallInProgress = 2,
|
|
18
|
+
LargeInProgress = 3
|
|
19
|
+
}
|
|
20
|
+
export declare enum DetachIceStatusType {
|
|
21
|
+
InProgress = 4,
|
|
22
|
+
Completed = 5
|
|
23
|
+
}
|
|
24
|
+
export declare enum ContactSensorType {
|
|
25
|
+
Closed = 0,
|
|
26
|
+
Opened = 1
|
|
27
|
+
}
|
|
28
|
+
export interface EmsStatus {
|
|
29
|
+
lcdSoc?: number;
|
|
30
|
+
minDsgSoc?: number;
|
|
31
|
+
}
|
|
32
|
+
export interface BmsStatus {
|
|
33
|
+
inWatts?: number;
|
|
34
|
+
outWatts?: number;
|
|
35
|
+
vol?: number;
|
|
36
|
+
amp?: number;
|
|
37
|
+
}
|
|
38
|
+
export interface PdStatusFridgeZones {
|
|
39
|
+
pwrState?: EnableType;
|
|
40
|
+
flagTwoZone?: CoolingZoneType;
|
|
41
|
+
tmpUnit?: TemperatureType;
|
|
42
|
+
tmpR?: number;
|
|
43
|
+
tmpL?: number;
|
|
44
|
+
tmpAver?: number;
|
|
45
|
+
tmpRSet?: number;
|
|
46
|
+
tmpLSet?: number;
|
|
47
|
+
tmpMSet?: number;
|
|
48
|
+
}
|
|
49
|
+
export interface PdStatusState {
|
|
50
|
+
coolMode?: CoolModeType;
|
|
51
|
+
doorStat?: ContactSensorType;
|
|
52
|
+
}
|
|
53
|
+
export interface PdStatusIceMaking {
|
|
54
|
+
icePercent?: number;
|
|
55
|
+
iceMkMode?: MakeIceStatusType;
|
|
56
|
+
fsmState?: DetachIceStatusType;
|
|
57
|
+
}
|
|
58
|
+
export interface PdStatus extends PdStatusFridgeZones, PdStatusState, PdStatusIceMaking {
|
|
59
|
+
}
|
|
60
|
+
export interface GlacierAllQuotaData {
|
|
61
|
+
bms_emsStatus: EmsStatus;
|
|
62
|
+
bms_bmsStatus: BmsStatus;
|
|
63
|
+
pd: PdStatus;
|
|
64
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ContactSensorType = exports.DetachIceStatusType = exports.MakeIceStatusType = exports.CoolModeType = exports.TemperatureType = exports.CoolingZoneType = void 0;
|
|
4
|
+
var CoolingZoneType;
|
|
5
|
+
(function (CoolingZoneType) {
|
|
6
|
+
CoolingZoneType[CoolingZoneType["Single"] = 1] = "Single";
|
|
7
|
+
CoolingZoneType[CoolingZoneType["Dual"] = 2] = "Dual";
|
|
8
|
+
})(CoolingZoneType || (exports.CoolingZoneType = CoolingZoneType = {}));
|
|
9
|
+
var TemperatureType;
|
|
10
|
+
(function (TemperatureType) {
|
|
11
|
+
TemperatureType[TemperatureType["Celsius"] = 0] = "Celsius";
|
|
12
|
+
TemperatureType[TemperatureType["Fahrenheit"] = 1] = "Fahrenheit";
|
|
13
|
+
})(TemperatureType || (exports.TemperatureType = TemperatureType = {}));
|
|
14
|
+
var CoolModeType;
|
|
15
|
+
(function (CoolModeType) {
|
|
16
|
+
CoolModeType[CoolModeType["Normal"] = 0] = "Normal";
|
|
17
|
+
CoolModeType[CoolModeType["Eco"] = 1] = "Eco";
|
|
18
|
+
})(CoolModeType || (exports.CoolModeType = CoolModeType = {}));
|
|
19
|
+
var MakeIceStatusType;
|
|
20
|
+
(function (MakeIceStatusType) {
|
|
21
|
+
MakeIceStatusType[MakeIceStatusType["SmallInPreparation"] = 0] = "SmallInPreparation";
|
|
22
|
+
MakeIceStatusType[MakeIceStatusType["LargeInPreparation"] = 1] = "LargeInPreparation";
|
|
23
|
+
MakeIceStatusType[MakeIceStatusType["SmallInProgress"] = 2] = "SmallInProgress";
|
|
24
|
+
MakeIceStatusType[MakeIceStatusType["LargeInProgress"] = 3] = "LargeInProgress";
|
|
25
|
+
})(MakeIceStatusType || (exports.MakeIceStatusType = MakeIceStatusType = {}));
|
|
26
|
+
var DetachIceStatusType;
|
|
27
|
+
(function (DetachIceStatusType) {
|
|
28
|
+
DetachIceStatusType[DetachIceStatusType["InProgress"] = 4] = "InProgress";
|
|
29
|
+
DetachIceStatusType[DetachIceStatusType["Completed"] = 5] = "Completed";
|
|
30
|
+
})(DetachIceStatusType || (exports.DetachIceStatusType = DetachIceStatusType = {}));
|
|
31
|
+
var ContactSensorType;
|
|
32
|
+
(function (ContactSensorType) {
|
|
33
|
+
ContactSensorType[ContactSensorType["Closed"] = 0] = "Closed";
|
|
34
|
+
ContactSensorType[ContactSensorType["Opened"] = 1] = "Opened";
|
|
35
|
+
})(ContactSensorType || (exports.ContactSensorType = ContactSensorType = {}));
|
|
36
|
+
//# sourceMappingURL=glacierHttpApiContracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glacierHttpApiContracts.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/interfaces/glacierHttpApiContracts.ts"],"names":[],"mappings":";;;AAEA,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,yDAAU,CAAA;IACV,qDAAQ,CAAA;AACV,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAED,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,2DAAW,CAAA;IACX,iEAAc,CAAA;AAChB,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B;AAED,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,mDAAU,CAAA;IACV,6CAAO,CAAA;AACT,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAED,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,qFAAsB,CAAA;IACtB,qFAAsB,CAAA;IACtB,+EAAmB,CAAA;IACnB,+EAAmB,CAAA;AACrB,CAAC,EALW,iBAAiB,iCAAjB,iBAAiB,QAK5B;AAED,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,yEAAc,CAAA;IACd,uEAAa,CAAA;AACf,CAAC,EAHW,mBAAmB,mCAAnB,mBAAmB,QAG9B;AAED,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,6DAAU,CAAA;IACV,6DAAU,CAAA;AACZ,CAAC,EAHW,iBAAiB,iCAAjB,iBAAiB,QAG5B"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import { CoolModeType, TemperatureType } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
2
|
+
import { MqttQuotaMessage, MqttQuotaMessageWithParams, MqttSetMessage, MqttSetMessageWithParams, MqttSetReplyMessage } from '@ecoflow/apis/interfaces/mqttApiContracts';
|
|
3
|
+
import { EnableType } from '@ecoflow/characteristics/characteristicContracts';
|
|
4
|
+
export declare enum GlacierMqttSetModuleType {
|
|
5
|
+
Default = 1
|
|
6
|
+
}
|
|
7
|
+
export declare enum GlacierMqttMessageType {
|
|
8
|
+
PD = "pdStatus",
|
|
9
|
+
BMS = "bmsStatus",
|
|
10
|
+
EMS = "emsStatus"
|
|
11
|
+
}
|
|
12
|
+
export interface GlacierMqttQuotaMessage extends MqttQuotaMessage {
|
|
13
|
+
typeCode: GlacierMqttMessageType;
|
|
14
|
+
}
|
|
15
|
+
export interface GlacierMqttQuotaMessageWithParams<TParams> extends MqttQuotaMessageWithParams<TParams>, GlacierMqttQuotaMessage {
|
|
16
|
+
}
|
|
17
|
+
export declare enum GlacierMqttSetOperateType {
|
|
18
|
+
Temperature = "temp",
|
|
19
|
+
TemperatureUnit = "tmpUnit",
|
|
20
|
+
EcoMode = "ecoMode",
|
|
21
|
+
MakeIce = "iceMake",
|
|
22
|
+
DetachIce = "deIce"
|
|
23
|
+
}
|
|
24
|
+
export interface GlacierMqttSetMessage extends MqttSetMessage {
|
|
25
|
+
moduleType: GlacierMqttSetModuleType;
|
|
26
|
+
operateType: GlacierMqttSetOperateType;
|
|
27
|
+
}
|
|
28
|
+
export interface GlacierMqttSetMessageParams {
|
|
29
|
+
}
|
|
30
|
+
export interface GlacierMqttSetMessageWithParams<TParams extends GlacierMqttSetMessageParams> extends MqttSetMessageWithParams<TParams>, GlacierMqttSetMessage {
|
|
31
|
+
}
|
|
32
|
+
export interface GlacierMqttSetTemperatureMessageParams extends GlacierMqttSetMessageParams {
|
|
33
|
+
tmpR?: number;
|
|
34
|
+
tmpL?: number;
|
|
35
|
+
tmpM?: number;
|
|
36
|
+
}
|
|
37
|
+
export interface GlacierMqttSetTemperatureUnitMessageParams extends GlacierMqttSetMessageParams {
|
|
38
|
+
unit: TemperatureType;
|
|
39
|
+
}
|
|
40
|
+
export interface GlacierMqttSetEcoModeMessageParams extends GlacierMqttSetMessageParams {
|
|
41
|
+
mode: CoolModeType;
|
|
42
|
+
}
|
|
43
|
+
export declare enum IceCubeShapeType {
|
|
44
|
+
Small = 0,
|
|
45
|
+
Large = 1
|
|
46
|
+
}
|
|
47
|
+
export interface GlacierMqttSetMakeIceMessageParams extends GlacierMqttSetMessageParams {
|
|
48
|
+
enable: EnableType;
|
|
49
|
+
iceShape: IceCubeShapeType;
|
|
50
|
+
}
|
|
51
|
+
export interface GlacierMqttSetDetachIceMessageParams extends GlacierMqttSetMessageParams {
|
|
52
|
+
enable: EnableType;
|
|
53
|
+
}
|
|
54
|
+
export interface GlacierMqttSetReplyMessage extends MqttSetReplyMessage {
|
|
55
|
+
moduleType: GlacierMqttSetModuleType;
|
|
56
|
+
operateType: GlacierMqttSetOperateType;
|
|
57
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.IceCubeShapeType = exports.GlacierMqttSetOperateType = exports.GlacierMqttMessageType = exports.GlacierMqttSetModuleType = void 0;
|
|
4
|
+
var GlacierMqttSetModuleType;
|
|
5
|
+
(function (GlacierMqttSetModuleType) {
|
|
6
|
+
GlacierMqttSetModuleType[GlacierMqttSetModuleType["Default"] = 1] = "Default";
|
|
7
|
+
})(GlacierMqttSetModuleType || (exports.GlacierMqttSetModuleType = GlacierMqttSetModuleType = {}));
|
|
8
|
+
var GlacierMqttMessageType;
|
|
9
|
+
(function (GlacierMqttMessageType) {
|
|
10
|
+
GlacierMqttMessageType["PD"] = "pdStatus";
|
|
11
|
+
GlacierMqttMessageType["BMS"] = "bmsStatus";
|
|
12
|
+
GlacierMqttMessageType["EMS"] = "emsStatus";
|
|
13
|
+
})(GlacierMqttMessageType || (exports.GlacierMqttMessageType = GlacierMqttMessageType = {}));
|
|
14
|
+
var GlacierMqttSetOperateType;
|
|
15
|
+
(function (GlacierMqttSetOperateType) {
|
|
16
|
+
GlacierMqttSetOperateType["Temperature"] = "temp";
|
|
17
|
+
GlacierMqttSetOperateType["TemperatureUnit"] = "tmpUnit";
|
|
18
|
+
GlacierMqttSetOperateType["EcoMode"] = "ecoMode";
|
|
19
|
+
GlacierMqttSetOperateType["MakeIce"] = "iceMake";
|
|
20
|
+
GlacierMqttSetOperateType["DetachIce"] = "deIce";
|
|
21
|
+
})(GlacierMqttSetOperateType || (exports.GlacierMqttSetOperateType = GlacierMqttSetOperateType = {}));
|
|
22
|
+
var IceCubeShapeType;
|
|
23
|
+
(function (IceCubeShapeType) {
|
|
24
|
+
IceCubeShapeType[IceCubeShapeType["Small"] = 0] = "Small";
|
|
25
|
+
IceCubeShapeType[IceCubeShapeType["Large"] = 1] = "Large";
|
|
26
|
+
})(IceCubeShapeType || (exports.IceCubeShapeType = IceCubeShapeType = {}));
|
|
27
|
+
//# sourceMappingURL=glacierMqttApiContracts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glacierMqttApiContracts.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/interfaces/glacierMqttApiContracts.ts"],"names":[],"mappings":";;;AAUA,IAAY,wBAEX;AAFD,WAAY,wBAAwB;IAClC,6EAAW,CAAA;AACb,CAAC,EAFW,wBAAwB,wCAAxB,wBAAwB,QAEnC;AAED,IAAY,sBAIX;AAJD,WAAY,sBAAsB;IAChC,yCAAe,CAAA;IACf,2CAAiB,CAAA;IACjB,2CAAiB,CAAA;AACnB,CAAC,EAJW,sBAAsB,sCAAtB,sBAAsB,QAIjC;AAUD,IAAY,yBAMX;AAND,WAAY,yBAAyB;IACnC,iDAAoB,CAAA;IACpB,wDAA2B,CAAA;IAC3B,gDAAmB,CAAA;IACnB,gDAAmB,CAAA;IACnB,gDAAmB,CAAA;AACrB,CAAC,EANW,yBAAyB,yCAAzB,yBAAyB,QAMpC;AA2BD,IAAY,gBAGX;AAHD,WAAY,gBAAgB;IAC1B,yDAAS,CAAA;IACT,yDAAS,CAAA;AACX,CAAC,EAHW,gBAAgB,gCAAhB,gBAAgB,QAG3B"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
3
|
+
import { GlacierMqttSetMessageParams, GlacierMqttSetOperateType } from '@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts';
|
|
4
|
+
import { TemperatureDisplayUnitsType } from '@ecoflow/characteristics/characteristicContracts';
|
|
5
|
+
import { ThermostatFridgeServiceBase } from '@ecoflow/services/thermostatFridgeServiceBase';
|
|
6
|
+
export declare abstract class GlacierThermostatFridgeServiceBase extends ThermostatFridgeServiceBase {
|
|
7
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>, serviceSubType: string);
|
|
8
|
+
protected processOnSetTargetState(): Promise<void>;
|
|
9
|
+
protected processOnSetTemperatureDisplayUnits(value: TemperatureDisplayUnitsType, revert: () => void): Promise<void>;
|
|
10
|
+
protected sendSetCommand<TParams extends GlacierMqttSetMessageParams>(operateType: GlacierMqttSetOperateType, params: TParams, revert: () => void): Promise<void>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GlacierThermostatFridgeServiceBase = void 0;
|
|
4
|
+
const glacierHttpApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts");
|
|
5
|
+
const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
|
|
6
|
+
const characteristicContracts_1 = require("@ecoflow/characteristics/characteristicContracts");
|
|
7
|
+
const thermostatFridgeServiceBase_1 = require("@ecoflow/services/thermostatFridgeServiceBase");
|
|
8
|
+
class GlacierThermostatFridgeServiceBase extends thermostatFridgeServiceBase_1.ThermostatFridgeServiceBase {
|
|
9
|
+
constructor(ecoFlowAccessory, serviceSubType) {
|
|
10
|
+
super(ecoFlowAccessory, -25, 10, serviceSubType);
|
|
11
|
+
}
|
|
12
|
+
processOnSetTargetState() {
|
|
13
|
+
throw new this.platform.api.hap.HapStatusError(-70404 /* this.platform.api.hap.HAPStatus.READ_ONLY_CHARACTERISTIC */);
|
|
14
|
+
}
|
|
15
|
+
processOnSetTemperatureDisplayUnits(value, revert) {
|
|
16
|
+
return this.sendSetCommand(glacierMqttApiContracts_1.GlacierMqttSetOperateType.TemperatureUnit, { unit: value === characteristicContracts_1.TemperatureDisplayUnitsType.Celsius ? glacierHttpApiContracts_1.TemperatureType.Celsius : glacierHttpApiContracts_1.TemperatureType.Fahrenheit }, revert);
|
|
17
|
+
}
|
|
18
|
+
sendSetCommand(operateType, params, revert) {
|
|
19
|
+
const message = {
|
|
20
|
+
id: 0,
|
|
21
|
+
version: '',
|
|
22
|
+
moduleType: glacierMqttApiContracts_1.GlacierMqttSetModuleType.Default,
|
|
23
|
+
operateType,
|
|
24
|
+
params,
|
|
25
|
+
};
|
|
26
|
+
return this.ecoFlowAccessory.sendSetCommand(message, revert);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.GlacierThermostatFridgeServiceBase = GlacierThermostatFridgeServiceBase;
|
|
30
|
+
//# sourceMappingURL=glacierThermostatFridgeServiceBase.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glacierThermostatFridgeServiceBase.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/glacierThermostatFridgeServiceBase.ts"],"names":[],"mappings":";;;AACA,6GAAuH;AACvH,6GAMyE;AACzE,8FAA+F;AAC/F,+FAA4F;AAE5F,MAAsB,kCAAmC,SAAQ,yDAA2B;IAC1F,YAAY,gBAAoE,EAAE,cAAsB;QACtG,KAAK,CAAC,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;IACnD,CAAC;IAEkB,uBAAuB;QACxC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,uEAA0D,CAAC;IAC3G,CAAC;IAEkB,mCAAmC,CACpD,KAAkC,EAClC,MAAkB;QAElB,OAAO,IAAI,CAAC,cAAc,CACxB,mDAAyB,CAAC,eAAe,EACzC,EAAE,IAAI,EAAE,KAAK,KAAK,qDAA2B,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAe,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAe,CAAC,UAAU,EAAE,EAC9G,MAAM,CACP,CAAC;IACJ,CAAC;IAES,cAAc,CACtB,WAAsC,EACtC,MAAe,EACf,MAAkB;QAElB,MAAM,OAAO,GAA6C;YACxD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,kDAAwB,CAAC,OAAO;YAC5C,WAAW;YACX,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AAnCD,gFAmCC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
3
|
+
import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
|
|
4
|
+
import { OutletBatteryServiceBase } from '@ecoflow/services/outletBatteryServiceBase';
|
|
5
|
+
export declare class OutletBatteryService extends OutletBatteryServiceBase {
|
|
6
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>, batteryStatusProvider: BatteryStatusProvider);
|
|
7
|
+
protected processOnSetOn(): Promise<void>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.OutletBatteryService = void 0;
|
|
4
|
+
const outletBatteryServiceBase_1 = require("@ecoflow/services/outletBatteryServiceBase");
|
|
5
|
+
class OutletBatteryService extends outletBatteryServiceBase_1.OutletBatteryServiceBase {
|
|
6
|
+
constructor(ecoFlowAccessory, batteryStatusProvider) {
|
|
7
|
+
super(ecoFlowAccessory, batteryStatusProvider, 'Battery', ecoFlowAccessory.config.battery?.additionalCharacteristics);
|
|
8
|
+
}
|
|
9
|
+
processOnSetOn() {
|
|
10
|
+
throw new this.platform.api.hap.HapStatusError(-70404 /* this.platform.api.hap.HAPStatus.READ_ONLY_CHARACTERISTIC */);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.OutletBatteryService = OutletBatteryService;
|
|
14
|
+
//# sourceMappingURL=outletBatteryService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outletBatteryService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/outletBatteryService.ts"],"names":[],"mappings":";;;AAGA,yFAAsF;AAEtF,MAAa,oBAAqB,SAAQ,mDAAwB;IAChE,YACE,gBAAoE,EACpE,qBAA4C;QAE5C,KAAK,CACH,gBAAgB,EAChB,qBAAqB,EACrB,SAAS,EACT,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,CAC3D,CAAC;IACJ,CAAC;IAEkB,cAAc;QAC/B,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,uEAA0D,CAAC;IAC3G,CAAC;CACF;AAhBD,oDAgBC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
3
|
+
import { SwitchServiceBase } from '@ecoflow/services/switchServiceBase';
|
|
4
|
+
export declare class SwitchDetachIceService extends SwitchServiceBase {
|
|
5
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>);
|
|
6
|
+
protected processOnSetOn(value: boolean, revert: () => void): Promise<void>;
|
|
7
|
+
private sendOn;
|
|
8
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SwitchDetachIceService = void 0;
|
|
4
|
+
const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
|
|
5
|
+
const characteristicContracts_1 = require("@ecoflow/characteristics/characteristicContracts");
|
|
6
|
+
const switchServiceBase_1 = require("@ecoflow/services/switchServiceBase");
|
|
7
|
+
class SwitchDetachIceService extends switchServiceBase_1.SwitchServiceBase {
|
|
8
|
+
constructor(ecoFlowAccessory) {
|
|
9
|
+
super(ecoFlowAccessory, 'Detach Ice');
|
|
10
|
+
}
|
|
11
|
+
processOnSetOn(value, revert) {
|
|
12
|
+
return this.sendOn({
|
|
13
|
+
enable: value ? characteristicContracts_1.EnableType.On : characteristicContracts_1.EnableType.Off,
|
|
14
|
+
}, revert);
|
|
15
|
+
}
|
|
16
|
+
sendOn(params, revert) {
|
|
17
|
+
const message = {
|
|
18
|
+
id: 0,
|
|
19
|
+
version: '',
|
|
20
|
+
moduleType: glacierMqttApiContracts_1.GlacierMqttSetModuleType.Default,
|
|
21
|
+
operateType: glacierMqttApiContracts_1.GlacierMqttSetOperateType.DetachIce,
|
|
22
|
+
params,
|
|
23
|
+
};
|
|
24
|
+
return this.ecoFlowAccessory.sendSetCommand(message, revert);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.SwitchDetachIceService = SwitchDetachIceService;
|
|
28
|
+
//# sourceMappingURL=switchDetachIceService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switchDetachIceService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/switchDetachIceService.ts"],"names":[],"mappings":";;;AAEA,6GAMyE;AACzE,8FAA8E;AAC9E,2EAAwE;AAExE,MAAa,sBAAuB,SAAQ,qCAAiB;IAC3D,YAAY,gBAAoE;QAC9E,KAAK,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;IACxC,CAAC;IAEkB,cAAc,CAAC,KAAc,EAAE,MAAkB;QAClE,OAAO,IAAI,CAAC,MAAM,CAChB;YACE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,oCAAU,CAAC,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,GAAG;SAC/C,EACD,MAAM,CACP,CAAC;IACJ,CAAC;IAEO,MAAM,CAA8C,MAAe,EAAE,MAAkB;QAC7F,MAAM,OAAO,GAA6C;YACxD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,kDAAwB,CAAC,OAAO;YAC5C,WAAW,EAAE,mDAAyB,CAAC,SAAS;YAChD,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AAzBD,wDAyBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
3
|
+
import { SwitchServiceBase } from '@ecoflow/services/switchServiceBase';
|
|
4
|
+
export declare class SwitchEcoModeService extends SwitchServiceBase {
|
|
5
|
+
protected readonly ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>;
|
|
6
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>);
|
|
7
|
+
protected processOnSetOn(value: boolean, revert: () => void): Promise<void>;
|
|
8
|
+
private sendOn;
|
|
9
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SwitchEcoModeService = void 0;
|
|
4
|
+
const glacierHttpApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts");
|
|
5
|
+
const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
|
|
6
|
+
const switchServiceBase_1 = require("@ecoflow/services/switchServiceBase");
|
|
7
|
+
class SwitchEcoModeService extends switchServiceBase_1.SwitchServiceBase {
|
|
8
|
+
ecoFlowAccessory;
|
|
9
|
+
constructor(ecoFlowAccessory) {
|
|
10
|
+
super(ecoFlowAccessory, 'ECO mode');
|
|
11
|
+
this.ecoFlowAccessory = ecoFlowAccessory;
|
|
12
|
+
}
|
|
13
|
+
processOnSetOn(value, revert) {
|
|
14
|
+
return this.sendOn({
|
|
15
|
+
mode: value ? glacierHttpApiContracts_1.CoolModeType.Eco : glacierHttpApiContracts_1.CoolModeType.Normal,
|
|
16
|
+
}, revert);
|
|
17
|
+
}
|
|
18
|
+
sendOn(params, revert) {
|
|
19
|
+
const message = {
|
|
20
|
+
id: 0,
|
|
21
|
+
version: '',
|
|
22
|
+
moduleType: glacierMqttApiContracts_1.GlacierMqttSetModuleType.Default,
|
|
23
|
+
operateType: glacierMqttApiContracts_1.GlacierMqttSetOperateType.EcoMode,
|
|
24
|
+
params,
|
|
25
|
+
};
|
|
26
|
+
return this.ecoFlowAccessory.sendSetCommand(message, revert);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.SwitchEcoModeService = SwitchEcoModeService;
|
|
30
|
+
//# sourceMappingURL=switchEcoModeService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switchEcoModeService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/switchEcoModeService.ts"],"names":[],"mappings":";;;AACA,6GAAoH;AACpH,6GAMyE;AACzE,2EAAwE;AAExE,MAAa,oBAAqB,SAAQ,qCAAiB;IAC1B;IAA/B,YAA+B,gBAAoE;QACjG,KAAK,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAC;QADP,qBAAgB,GAAhB,gBAAgB,CAAoD;IAEnG,CAAC;IAEkB,cAAc,CAAC,KAAc,EAAE,MAAkB;QAClE,OAAO,IAAI,CAAC,MAAM,CAChB;YACE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,sCAAY,CAAC,GAAG,CAAC,CAAC,CAAC,sCAAY,CAAC,MAAM;SACrD,EACD,MAAM,CACP,CAAC;IACJ,CAAC;IAEO,MAAM,CAA8C,MAAe,EAAE,MAAkB;QAC7F,MAAM,OAAO,GAA6C;YACxD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,kDAAwB,CAAC,OAAO;YAC5C,WAAW,EAAE,mDAAyB,CAAC,OAAO;YAC9C,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AAzBD,oDAyBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
3
|
+
import { IceCubeShapeType } from '@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts';
|
|
4
|
+
import { SwitchServiceBase } from '@ecoflow/services/switchServiceBase';
|
|
5
|
+
export declare class SwitchMakeIceService extends SwitchServiceBase {
|
|
6
|
+
private readonly iceCubeShapeType;
|
|
7
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>, iceCubeShapeType: IceCubeShapeType);
|
|
8
|
+
protected processOnSetOn(value: boolean, revert: () => void): Promise<void>;
|
|
9
|
+
private sendOn;
|
|
10
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SwitchMakeIceService = void 0;
|
|
4
|
+
const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
|
|
5
|
+
const characteristicContracts_1 = require("@ecoflow/characteristics/characteristicContracts");
|
|
6
|
+
const switchServiceBase_1 = require("@ecoflow/services/switchServiceBase");
|
|
7
|
+
class SwitchMakeIceService extends switchServiceBase_1.SwitchServiceBase {
|
|
8
|
+
iceCubeShapeType;
|
|
9
|
+
constructor(ecoFlowAccessory, iceCubeShapeType) {
|
|
10
|
+
super(ecoFlowAccessory, `Make Ice ${iceCubeShapeType === glacierMqttApiContracts_1.IceCubeShapeType.Small ? 'Small' : 'Large'} Cubes`);
|
|
11
|
+
this.iceCubeShapeType = iceCubeShapeType;
|
|
12
|
+
}
|
|
13
|
+
processOnSetOn(value, revert) {
|
|
14
|
+
return this.sendOn({
|
|
15
|
+
enable: value ? characteristicContracts_1.EnableType.On : characteristicContracts_1.EnableType.Off,
|
|
16
|
+
iceShape: this.iceCubeShapeType,
|
|
17
|
+
}, revert);
|
|
18
|
+
}
|
|
19
|
+
sendOn(params, revert) {
|
|
20
|
+
const message = {
|
|
21
|
+
id: 0,
|
|
22
|
+
version: '',
|
|
23
|
+
moduleType: glacierMqttApiContracts_1.GlacierMqttSetModuleType.Default,
|
|
24
|
+
operateType: glacierMqttApiContracts_1.GlacierMqttSetOperateType.MakeIce,
|
|
25
|
+
params,
|
|
26
|
+
};
|
|
27
|
+
return this.ecoFlowAccessory.sendSetCommand(message, revert);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.SwitchMakeIceService = SwitchMakeIceService;
|
|
31
|
+
//# sourceMappingURL=switchMakeIceService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"switchMakeIceService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/switchMakeIceService.ts"],"names":[],"mappings":";;;AAEA,6GAOyE;AACzE,8FAA8E;AAC9E,2EAAwE;AAExE,MAAa,oBAAqB,SAAQ,qCAAiB;IAGtC;IAFnB,YACE,gBAAoE,EACnD,gBAAkC;QAEnD,KAAK,CAAC,gBAAgB,EAAE,YAAY,gBAAgB,KAAK,0CAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC;QAF5F,qBAAgB,GAAhB,gBAAgB,CAAkB;IAGrD,CAAC;IAEkB,cAAc,CAAC,KAAc,EAAE,MAAkB;QAClE,OAAO,IAAI,CAAC,MAAM,CAChB;YACE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,oCAAU,CAAC,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,GAAG;YAC9C,QAAQ,EAAE,IAAI,CAAC,gBAAgB;SAChC,EACD,MAAM,CACP,CAAC;IACJ,CAAC;IAEO,MAAM,CAA8C,MAAe,EAAE,MAAkB;QAC7F,MAAM,OAAO,GAA6C;YACxD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,UAAU,EAAE,kDAAwB,CAAC,OAAO;YAC5C,WAAW,EAAE,mDAAyB,CAAC,OAAO;YAC9C,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AA7BD,oDA6BC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
3
|
+
import { GlacierThermostatFridgeServiceBase } from '@ecoflow/accessories/glacier/services/glacierThermostatFridgeServiceBase';
|
|
4
|
+
export declare class ThermostatFridgeDualLeftZoneService extends GlacierThermostatFridgeServiceBase {
|
|
5
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>);
|
|
6
|
+
protected processOnSetTargetTemperature(value: number, revert: () => void): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ThermostatFridgeDualLeftZoneService = void 0;
|
|
4
|
+
const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
|
|
5
|
+
const glacierThermostatFridgeServiceBase_1 = require("@ecoflow/accessories/glacier/services/glacierThermostatFridgeServiceBase");
|
|
6
|
+
class ThermostatFridgeDualLeftZoneService extends glacierThermostatFridgeServiceBase_1.GlacierThermostatFridgeServiceBase {
|
|
7
|
+
constructor(ecoFlowAccessory) {
|
|
8
|
+
super(ecoFlowAccessory, 'Dual Left Zone');
|
|
9
|
+
}
|
|
10
|
+
processOnSetTargetTemperature(value, revert) {
|
|
11
|
+
return this.sendSetCommand(glacierMqttApiContracts_1.GlacierMqttSetOperateType.Temperature, { tmpL: value }, revert);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.ThermostatFridgeDualLeftZoneService = ThermostatFridgeDualLeftZoneService;
|
|
15
|
+
//# sourceMappingURL=thermostatFridgeDualLeftZoneService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thermostatFridgeDualLeftZoneService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/thermostatFridgeDualLeftZoneService.ts"],"names":[],"mappings":";;;AAEA,6GAGyE;AACzE,iIAA8H;AAE9H,MAAa,mCAAoC,SAAQ,uEAAkC;IACzF,YAAY,gBAAoE;QAC9E,KAAK,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;IAC5C,CAAC;IAEkB,6BAA6B,CAAC,KAAa,EAAE,MAAkB;QAChF,OAAO,IAAI,CAAC,cAAc,CACxB,mDAAyB,CAAC,WAAW,EACrC,EAAE,IAAI,EAAE,KAAK,EAAE,EACf,MAAM,CACP,CAAC;IACJ,CAAC;CACF;AAZD,kFAYC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
3
|
+
import { GlacierThermostatFridgeServiceBase } from '@ecoflow/accessories/glacier/services/glacierThermostatFridgeServiceBase';
|
|
4
|
+
export declare class ThermostatFridgeDualRightZoneService extends GlacierThermostatFridgeServiceBase {
|
|
5
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>);
|
|
6
|
+
protected processOnSetTargetTemperature(value: number, revert: () => void): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ThermostatFridgeDualRightZoneService = void 0;
|
|
4
|
+
const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
|
|
5
|
+
const glacierThermostatFridgeServiceBase_1 = require("@ecoflow/accessories/glacier/services/glacierThermostatFridgeServiceBase");
|
|
6
|
+
class ThermostatFridgeDualRightZoneService extends glacierThermostatFridgeServiceBase_1.GlacierThermostatFridgeServiceBase {
|
|
7
|
+
constructor(ecoFlowAccessory) {
|
|
8
|
+
super(ecoFlowAccessory, 'Dual Right Zone');
|
|
9
|
+
}
|
|
10
|
+
processOnSetTargetTemperature(value, revert) {
|
|
11
|
+
return this.sendSetCommand(glacierMqttApiContracts_1.GlacierMqttSetOperateType.Temperature, { tmpR: value }, revert);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.ThermostatFridgeDualRightZoneService = ThermostatFridgeDualRightZoneService;
|
|
15
|
+
//# sourceMappingURL=thermostatFridgeDualRightZoneService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thermostatFridgeDualRightZoneService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/thermostatFridgeDualRightZoneService.ts"],"names":[],"mappings":";;;AAEA,6GAGyE;AACzE,iIAA8H;AAE9H,MAAa,oCAAqC,SAAQ,uEAAkC;IAC1F,YAAY,gBAAoE;QAC9E,KAAK,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;IAC7C,CAAC;IAEkB,6BAA6B,CAAC,KAAa,EAAE,MAAkB;QAChF,OAAO,IAAI,CAAC,cAAc,CACxB,mDAAyB,CAAC,WAAW,EACrC,EAAE,IAAI,EAAE,KAAK,EAAE,EACf,MAAM,CACP,CAAC;IACJ,CAAC;CACF;AAZD,oFAYC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
|
|
2
|
+
import { GlacierAllQuotaData } from '@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts';
|
|
3
|
+
import { GlacierThermostatFridgeServiceBase } from '@ecoflow/accessories/glacier/services/glacierThermostatFridgeServiceBase';
|
|
4
|
+
export declare class ThermostatFridgeSingleZoneService extends GlacierThermostatFridgeServiceBase {
|
|
5
|
+
constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<GlacierAllQuotaData>);
|
|
6
|
+
protected processOnSetTargetTemperature(value: number, revert: () => void): Promise<void>;
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ThermostatFridgeSingleZoneService = void 0;
|
|
4
|
+
const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
|
|
5
|
+
const glacierThermostatFridgeServiceBase_1 = require("@ecoflow/accessories/glacier/services/glacierThermostatFridgeServiceBase");
|
|
6
|
+
class ThermostatFridgeSingleZoneService extends glacierThermostatFridgeServiceBase_1.GlacierThermostatFridgeServiceBase {
|
|
7
|
+
constructor(ecoFlowAccessory) {
|
|
8
|
+
super(ecoFlowAccessory, 'Single Zone');
|
|
9
|
+
}
|
|
10
|
+
processOnSetTargetTemperature(value, revert) {
|
|
11
|
+
return this.sendSetCommand(glacierMqttApiContracts_1.GlacierMqttSetOperateType.Temperature, { tmpM: value }, revert);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.ThermostatFridgeSingleZoneService = ThermostatFridgeSingleZoneService;
|
|
15
|
+
//# sourceMappingURL=thermostatFridgeSingleZoneService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"thermostatFridgeSingleZoneService.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/services/thermostatFridgeSingleZoneService.ts"],"names":[],"mappings":";;;AAEA,6GAGyE;AACzE,iIAA8H;AAE9H,MAAa,iCAAkC,SAAQ,uEAAkC;IACvF,YAAY,gBAAoE;QAC9E,KAAK,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;IACzC,CAAC;IAEkB,6BAA6B,CAAC,KAAa,EAAE,MAAkB;QAChF,OAAO,IAAI,CAAC,cAAc,CACxB,mDAAyB,CAAC,WAAW,EACrC,EAAE,IAAI,EAAE,KAAK,EAAE,EACf,MAAM,CACP,CAAC;IACJ,CAAC;CACF;AAZD,8EAYC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { GlacierMqttSetMessage } from '@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts';
|
|
2
|
+
import { SimulatorTyped } from '@ecoflow/apis/simulations/simulator';
|
|
3
|
+
export declare class GlacierSimulator extends SimulatorTyped<GlacierMqttSetMessage> {
|
|
4
|
+
generateQuota(): object;
|
|
5
|
+
generateSetReplyTyped(message: GlacierMqttSetMessage): object;
|
|
6
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.GlacierSimulator = void 0;
|
|
4
|
+
const glacierHttpApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierHttpApiContracts");
|
|
5
|
+
const glacierMqttApiContracts_1 = require("@ecoflow/accessories/glacier/interfaces/glacierMqttApiContracts");
|
|
6
|
+
const simulator_1 = require("@ecoflow/apis/simulations/simulator");
|
|
7
|
+
const characteristicContracts_1 = require("@ecoflow/characteristics/characteristicContracts");
|
|
8
|
+
class GlacierSimulator extends simulator_1.SimulatorTyped {
|
|
9
|
+
generateQuota() {
|
|
10
|
+
const quotaType = this.getRandomNumber(0, 100);
|
|
11
|
+
if (quotaType >= 0 && quotaType < 25) {
|
|
12
|
+
const quotaEmsStatus = {
|
|
13
|
+
typeCode: glacierMqttApiContracts_1.GlacierMqttMessageType.EMS,
|
|
14
|
+
params: {
|
|
15
|
+
lcdSoc: this.getRandomNumber(0, 100),
|
|
16
|
+
minDsgSoc: this.getRandomNumber(0, 20),
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
return quotaEmsStatus;
|
|
20
|
+
}
|
|
21
|
+
else if (quotaType >= 25 && quotaType < 50) {
|
|
22
|
+
const quotaBmsStatus = {
|
|
23
|
+
typeCode: glacierMqttApiContracts_1.GlacierMqttMessageType.BMS,
|
|
24
|
+
params: {
|
|
25
|
+
amp: this.getRandomNumber(0, 1000),
|
|
26
|
+
inWatts: this.getRandomNumber(0, 1000),
|
|
27
|
+
outWatts: this.getRandomNumber(0, 1000),
|
|
28
|
+
vol: this.getRandomNumber(1800, 2400),
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
return quotaBmsStatus;
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
const quotaPdStatus = {
|
|
35
|
+
typeCode: glacierMqttApiContracts_1.GlacierMqttMessageType.PD,
|
|
36
|
+
params: {
|
|
37
|
+
coolMode: this.getRandomBoolean() ? glacierHttpApiContracts_1.CoolModeType.Normal : glacierHttpApiContracts_1.CoolModeType.Eco,
|
|
38
|
+
doorStat: this.getRandomBoolean() ? glacierHttpApiContracts_1.ContactSensorType.Closed : glacierHttpApiContracts_1.ContactSensorType.Opened,
|
|
39
|
+
flagTwoZone: this.getRandomBoolean() ? glacierHttpApiContracts_1.CoolingZoneType.Single : glacierHttpApiContracts_1.CoolingZoneType.Dual,
|
|
40
|
+
pwrState: this.getRandomBoolean() ? characteristicContracts_1.EnableType.Off : characteristicContracts_1.EnableType.On,
|
|
41
|
+
tmpAver: this.getRandomNumber(-25, 10),
|
|
42
|
+
tmpL: this.getRandomNumber(-25, 10),
|
|
43
|
+
tmpR: this.getRandomNumber(-25, 10),
|
|
44
|
+
tmpLSet: this.getRandomNumber(-25, 10),
|
|
45
|
+
tmpRSet: this.getRandomNumber(-25, 10),
|
|
46
|
+
tmpMSet: this.getRandomNumber(-25, 10),
|
|
47
|
+
tmpUnit: this.getRandomBoolean() ? glacierHttpApiContracts_1.TemperatureType.Celsius : glacierHttpApiContracts_1.TemperatureType.Fahrenheit,
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
if (this.getRandomBoolean()) {
|
|
51
|
+
quotaPdStatus.params.icePercent = this.getRandomNumber(0, 100);
|
|
52
|
+
quotaPdStatus.params.iceMkMode = this.getRandomBoolean()
|
|
53
|
+
? glacierHttpApiContracts_1.MakeIceStatusType.SmallInProgress
|
|
54
|
+
: glacierHttpApiContracts_1.MakeIceStatusType.LargeInProgress;
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
quotaPdStatus.params.fsmState = this.getRandomInt(2, 5);
|
|
58
|
+
}
|
|
59
|
+
return quotaPdStatus;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
generateSetReplyTyped(message) {
|
|
63
|
+
const reply = {
|
|
64
|
+
id: message.id,
|
|
65
|
+
version: message.version,
|
|
66
|
+
moduleType: message.moduleType,
|
|
67
|
+
operateType: message.operateType,
|
|
68
|
+
data: {
|
|
69
|
+
ack: false,
|
|
70
|
+
},
|
|
71
|
+
};
|
|
72
|
+
return reply;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
exports.GlacierSimulator = GlacierSimulator;
|
|
76
|
+
//# sourceMappingURL=glacierSimulator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glacierSimulator.js","sourceRoot":"","sources":["../../../../src/accessories/glacier/simulations/glacierSimulator.ts"],"names":[],"mappings":"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"}
|