@pietrolubini/homebridge-ecoflow 1.3.0 → 1.4.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.
Files changed (188) hide show
  1. package/README.md +174 -40
  2. package/config.schema.json +14 -2
  3. package/dist/accessories/batteries/delta2/delta2Accessory.d.ts +10 -0
  4. package/dist/accessories/batteries/delta2/delta2Accessory.js +14 -0
  5. package/dist/accessories/batteries/delta2/delta2Accessory.js.map +1 -0
  6. package/dist/accessories/batteries/delta2/delta2AccessoryBase.d.ts +32 -0
  7. package/dist/accessories/batteries/{batteryAccessoryBase.js → delta2/delta2AccessoryBase.js} +71 -32
  8. package/dist/accessories/batteries/delta2/delta2AccessoryBase.js.map +1 -0
  9. package/dist/accessories/batteries/delta2/delta2MaxAccessory.d.ts +10 -0
  10. package/dist/accessories/batteries/delta2/delta2MaxAccessory.js +14 -0
  11. package/dist/accessories/batteries/delta2/delta2MaxAccessory.js.map +1 -0
  12. package/dist/accessories/batteries/delta2/interfaces/delta2Configuration.d.ts +4 -0
  13. package/dist/accessories/batteries/{interfaces/httpApiBatteryContracts.js → delta2/interfaces/delta2Configuration.js} +1 -1
  14. package/dist/accessories/batteries/delta2/interfaces/delta2Configuration.js.map +1 -0
  15. package/dist/accessories/batteries/delta2/interfaces/delta2HttpApiContracts.d.ts +40 -0
  16. package/dist/accessories/batteries/delta2/interfaces/delta2HttpApiContracts.js +4 -0
  17. package/dist/accessories/batteries/delta2/interfaces/delta2HttpApiContracts.js.map +1 -0
  18. package/dist/accessories/batteries/delta2/interfaces/delta2MqttApiContracts.d.ts +45 -0
  19. package/dist/accessories/batteries/delta2/interfaces/delta2MqttApiContracts.js +25 -0
  20. package/dist/accessories/batteries/delta2/interfaces/delta2MqttApiContracts.js.map +1 -0
  21. package/dist/accessories/batteries/delta2/services/delta2OutletServiceBase.d.ts +5 -0
  22. package/dist/accessories/batteries/{services/outletBatteryServiceBase.js → delta2/services/delta2OutletServiceBase.js} +4 -4
  23. package/dist/accessories/batteries/delta2/services/delta2OutletServiceBase.js.map +1 -0
  24. package/dist/accessories/batteries/delta2/services/outletAcService.d.ts +10 -0
  25. package/dist/accessories/batteries/delta2/services/outletAcService.js +23 -0
  26. package/dist/accessories/batteries/delta2/services/outletAcService.js.map +1 -0
  27. package/dist/accessories/batteries/delta2/services/outletCarService.d.ts +7 -0
  28. package/dist/accessories/batteries/delta2/services/outletCarService.js +16 -0
  29. package/dist/accessories/batteries/delta2/services/outletCarService.js.map +1 -0
  30. package/dist/accessories/batteries/delta2/services/outletCarService.spec.d.ts +1 -0
  31. package/dist/accessories/batteries/delta2/services/outletUsbService.d.ts +7 -0
  32. package/dist/accessories/batteries/delta2/services/outletUsbService.js +16 -0
  33. package/dist/accessories/batteries/delta2/services/outletUsbService.js.map +1 -0
  34. package/dist/accessories/batteries/delta2/services/outletUsbService.spec.d.ts +1 -0
  35. package/dist/accessories/batteries/delta2/services/switchXboostService.d.ts +10 -0
  36. package/dist/accessories/batteries/delta2/services/switchXboostService.js +33 -0
  37. package/dist/accessories/batteries/delta2/services/switchXboostService.js.map +1 -0
  38. package/dist/accessories/batteries/delta2/services/switchXboostService.spec.d.ts +1 -0
  39. package/dist/accessories/batteries/delta2/simulations/delta2Simulator.d.ts +6 -0
  40. package/dist/accessories/batteries/delta2/simulations/delta2Simulator.js +73 -0
  41. package/dist/accessories/batteries/delta2/simulations/delta2Simulator.js.map +1 -0
  42. package/dist/accessories/batteries/deltapro/deltaProAccessory.d.ts +3 -0
  43. package/dist/accessories/batteries/deltapro/deltaProAccessory.js +8 -0
  44. package/dist/accessories/batteries/deltapro/deltaProAccessory.js.map +1 -0
  45. package/dist/accessories/batteries/{batteryAccessoryBase.d.ts → deltapro/deltaProAccessoryBase.d.ts} +8 -9
  46. package/dist/accessories/batteries/deltapro/deltaProAccessoryBase.js +119 -0
  47. package/dist/accessories/batteries/deltapro/deltaProAccessoryBase.js.map +1 -0
  48. package/dist/accessories/batteries/deltapro/deltaProAccessoryBase.spec.d.ts +1 -0
  49. package/dist/accessories/batteries/{interfaces/httpApiBatteryContracts.d.ts → deltapro/interfaces/deltaProHttpApiContracts.d.ts} +10 -8
  50. package/dist/accessories/batteries/deltapro/interfaces/deltaProHttpApiContracts.js +3 -0
  51. package/dist/accessories/batteries/deltapro/interfaces/deltaProHttpApiContracts.js.map +1 -0
  52. package/dist/accessories/batteries/deltapro/interfaces/deltaProMqttApiContracts.d.ts +30 -0
  53. package/dist/accessories/batteries/deltapro/interfaces/deltaProMqttApiContracts.js +3 -0
  54. package/dist/accessories/batteries/deltapro/interfaces/deltaProMqttApiContracts.js.map +1 -0
  55. package/dist/accessories/batteries/deltapro/services/deltaProOutletServiceBase.d.ts +5 -0
  56. package/dist/accessories/batteries/deltapro/services/deltaProOutletServiceBase.js +17 -0
  57. package/dist/accessories/batteries/deltapro/services/deltaProOutletServiceBase.js.map +1 -0
  58. package/dist/accessories/batteries/deltapro/services/outletAcService.d.ts +8 -0
  59. package/dist/accessories/batteries/deltapro/services/outletAcService.js +20 -0
  60. package/dist/accessories/batteries/deltapro/services/outletAcService.js.map +1 -0
  61. package/dist/accessories/batteries/deltapro/services/outletAcService.spec.d.ts +1 -0
  62. package/dist/accessories/batteries/deltapro/services/outletCarService.d.ts +7 -0
  63. package/dist/accessories/batteries/deltapro/services/outletCarService.js +19 -0
  64. package/dist/accessories/batteries/deltapro/services/outletCarService.js.map +1 -0
  65. package/dist/accessories/batteries/deltapro/services/outletCarService.spec.d.ts +1 -0
  66. package/dist/accessories/batteries/deltapro/services/outletUsbService.d.ts +7 -0
  67. package/dist/accessories/batteries/deltapro/services/outletUsbService.js +14 -0
  68. package/dist/accessories/batteries/deltapro/services/outletUsbService.js.map +1 -0
  69. package/dist/accessories/batteries/deltapro/services/outletUsbService.spec.d.ts +1 -0
  70. package/dist/accessories/batteries/deltapro/services/switchXboostService.d.ts +9 -0
  71. package/dist/accessories/batteries/deltapro/services/switchXboostService.js +31 -0
  72. package/dist/accessories/batteries/deltapro/services/switchXboostService.js.map +1 -0
  73. package/dist/accessories/batteries/deltapro/services/switchXboostService.spec.d.ts +1 -0
  74. package/dist/accessories/batteries/deltapro/simulations/deltaProSimulator.d.ts +6 -0
  75. package/dist/accessories/batteries/deltapro/simulations/deltaProSimulator.js +48 -0
  76. package/dist/accessories/batteries/deltapro/simulations/deltaProSimulator.js.map +1 -0
  77. package/dist/accessories/batteries/deltaproultra/deltaProUltraAccessory.d.ts +28 -0
  78. package/dist/accessories/batteries/deltaproultra/deltaProUltraAccessory.js +123 -0
  79. package/dist/accessories/batteries/deltaproultra/deltaProUltraAccessory.js.map +1 -0
  80. package/dist/accessories/batteries/deltaproultra/deltaProUltraAccessory.spec.d.ts +1 -0
  81. package/dist/accessories/batteries/deltaproultra/interfaces/deltaProUltraHttpApiContracts.d.ts +48 -0
  82. package/dist/accessories/batteries/deltaproultra/interfaces/deltaProUltraHttpApiContracts.js +10 -0
  83. package/dist/accessories/batteries/deltaproultra/interfaces/deltaProUltraHttpApiContracts.js.map +1 -0
  84. package/dist/accessories/batteries/deltaproultra/interfaces/deltaProUltraMqttApiContracts.d.ts +33 -0
  85. package/dist/accessories/batteries/deltaproultra/interfaces/deltaProUltraMqttApiContracts.js +15 -0
  86. package/dist/accessories/batteries/deltaproultra/interfaces/deltaProUltraMqttApiContracts.js.map +1 -0
  87. package/dist/accessories/batteries/deltaproultra/services/deltaProUltraOutletServiceBase.d.ts +5 -0
  88. package/dist/accessories/batteries/deltaproultra/services/deltaProUltraOutletServiceBase.js +17 -0
  89. package/dist/accessories/batteries/deltaproultra/services/deltaProUltraOutletServiceBase.js.map +1 -0
  90. package/dist/accessories/batteries/deltaproultra/services/outletAcService.d.ts +8 -0
  91. package/dist/accessories/batteries/deltaproultra/services/outletAcService.js +14 -0
  92. package/dist/accessories/batteries/deltaproultra/services/outletAcService.js.map +1 -0
  93. package/dist/accessories/batteries/deltaproultra/services/outletAcService.spec.d.ts +1 -0
  94. package/dist/accessories/batteries/deltaproultra/services/outletUsbService.d.ts +8 -0
  95. package/dist/accessories/batteries/deltaproultra/services/outletUsbService.js +18 -0
  96. package/dist/accessories/batteries/deltaproultra/services/outletUsbService.js.map +1 -0
  97. package/dist/accessories/batteries/deltaproultra/services/outletUsbService.spec.d.ts +1 -0
  98. package/dist/accessories/batteries/deltaproultra/services/switchXboostService.d.ts +9 -0
  99. package/dist/accessories/batteries/deltaproultra/services/switchXboostService.js +31 -0
  100. package/dist/accessories/batteries/deltaproultra/services/switchXboostService.js.map +1 -0
  101. package/dist/accessories/batteries/deltaproultra/services/switchXboostService.spec.d.ts +1 -0
  102. package/dist/accessories/batteries/deltaproultra/simulations/deltaProUltraSimulator.d.ts +6 -0
  103. package/dist/accessories/batteries/deltaproultra/simulations/deltaProUltraSimulator.js +50 -0
  104. package/dist/accessories/batteries/deltaproultra/simulations/deltaProUltraSimulator.js.map +1 -0
  105. package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.d.ts +20 -0
  106. package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.js +28 -0
  107. package/dist/accessories/batteries/interfaces/batteryHttpApiContracts.js.map +1 -0
  108. package/dist/accessories/ecoFlowAccessoryBase.js +3 -1
  109. package/dist/accessories/ecoFlowAccessoryBase.js.map +1 -1
  110. package/dist/accessories/powerstream/interfaces/powerStreamHttpApiContracts.d.ts +21 -0
  111. package/dist/accessories/powerstream/interfaces/powerStreamHttpApiContracts.js +9 -0
  112. package/dist/accessories/powerstream/interfaces/powerStreamHttpApiContracts.js.map +1 -0
  113. package/dist/accessories/powerstream/interfaces/powerStreamMqttApiContracts.d.ts +44 -0
  114. package/dist/accessories/powerstream/interfaces/powerStreamMqttApiContracts.js +21 -0
  115. package/dist/accessories/powerstream/interfaces/powerStreamMqttApiContracts.js.map +1 -0
  116. package/dist/accessories/powerstream/powerStreamAccessory.d.ts +3 -2
  117. package/dist/accessories/powerstream/powerStreamAccessory.js +15 -12
  118. package/dist/accessories/powerstream/powerStreamAccessory.js.map +1 -1
  119. package/dist/accessories/powerstream/services/outletInvService.d.ts +2 -1
  120. package/dist/accessories/powerstream/services/outletInvService.js +2 -2
  121. package/dist/accessories/powerstream/services/outletInvService.js.map +1 -1
  122. package/dist/accessories/powerstream/services/outletService.d.ts +3 -2
  123. package/dist/accessories/powerstream/services/outletService.js +2 -2
  124. package/dist/accessories/powerstream/services/outletService.js.map +1 -1
  125. package/dist/accessories/powerstream/services/powerDemandService.js +2 -2
  126. package/dist/accessories/powerstream/simulations/powerStreamSimulator.d.ts +3 -3
  127. package/dist/accessories/powerstream/simulations/powerStreamSimulator.js +5 -4
  128. package/dist/accessories/powerstream/simulations/powerStreamSimulator.js.map +1 -1
  129. package/dist/apis/containers/mqttClientContainer.js +5 -0
  130. package/dist/apis/containers/mqttClientContainer.js.map +1 -1
  131. package/dist/apis/containers/mqttDevice.js +1 -1
  132. package/dist/apis/containers/mqttDevice.js.map +1 -1
  133. package/dist/apis/interfaces/mqttApiContracts.d.ts +15 -4
  134. package/dist/apis/interfaces/mqttApiContracts.js.map +1 -1
  135. package/dist/config.d.ts +3 -1
  136. package/dist/config.js +4 -0
  137. package/dist/config.js.map +1 -1
  138. package/dist/helpers/batteryStatusProvider.d.ts +4 -0
  139. package/dist/helpers/batteryStatusProvider.js +12 -0
  140. package/dist/helpers/batteryStatusProvider.js.map +1 -0
  141. package/dist/helpers/batteryStatusProvider.spec.d.ts +1 -0
  142. package/dist/homebridge-ui/public/index.html +1 -1
  143. package/dist/homebridge-ui/public/index.js +1 -1
  144. package/dist/homebridge-ui/public/renderers/pluginConfigDevicesRenderer.d.ts +2 -0
  145. package/dist/platform.d.ts +1 -0
  146. package/dist/platform.js +20 -9
  147. package/dist/platform.js.map +1 -1
  148. package/dist/services/batteryStatusService.d.ts +5 -3
  149. package/dist/services/batteryStatusService.js +8 -9
  150. package/dist/services/batteryStatusService.js.map +1 -1
  151. package/dist/services/outletServiceBase.d.ts +6 -2
  152. package/dist/services/outletServiceBase.js +19 -8
  153. package/dist/services/outletServiceBase.js.map +1 -1
  154. package/dist/services/switchXboostServiceBase.d.ts +9 -0
  155. package/dist/services/switchXboostServiceBase.js +23 -0
  156. package/dist/services/switchXboostServiceBase.js.map +1 -0
  157. package/dist/services/switchXboostServiceBase.spec.d.ts +1 -0
  158. package/junit.xml +757 -343
  159. package/package.json +1 -1
  160. package/dist/accessories/batteries/batteryAccessoryBase.js.map +0 -1
  161. package/dist/accessories/batteries/delta2Accessory.d.ts +0 -3
  162. package/dist/accessories/batteries/delta2Accessory.js +0 -8
  163. package/dist/accessories/batteries/delta2Accessory.js.map +0 -1
  164. package/dist/accessories/batteries/delta2maxAccessory.d.ts +0 -3
  165. package/dist/accessories/batteries/delta2maxAccessory.js +0 -8
  166. package/dist/accessories/batteries/delta2maxAccessory.js.map +0 -1
  167. package/dist/accessories/batteries/interfaces/httpApiBatteryContracts.js.map +0 -1
  168. package/dist/accessories/batteries/interfaces/mqttApiBatteryContracts.d.ts +0 -36
  169. package/dist/accessories/batteries/interfaces/mqttApiBatteryContracts.js +0 -18
  170. package/dist/accessories/batteries/interfaces/mqttApiBatteryContracts.js.map +0 -1
  171. package/dist/accessories/batteries/services/outletAcService.d.ts +0 -8
  172. package/dist/accessories/batteries/services/outletAcService.js +0 -24
  173. package/dist/accessories/batteries/services/outletAcService.js.map +0 -1
  174. package/dist/accessories/batteries/services/outletBatteryServiceBase.d.ts +0 -5
  175. package/dist/accessories/batteries/services/outletBatteryServiceBase.js.map +0 -1
  176. package/dist/accessories/batteries/services/outletCarService.d.ts +0 -6
  177. package/dist/accessories/batteries/services/outletCarService.js +0 -17
  178. package/dist/accessories/batteries/services/outletCarService.js.map +0 -1
  179. package/dist/accessories/batteries/services/outletUsbService.d.ts +0 -6
  180. package/dist/accessories/batteries/services/outletUsbService.js +0 -15
  181. package/dist/accessories/batteries/services/outletUsbService.js.map +0 -1
  182. package/dist/accessories/batteries/simulations/batterySimulator.d.ts +0 -6
  183. package/dist/accessories/batteries/simulations/batterySimulator.js +0 -60
  184. package/dist/accessories/batteries/simulations/batterySimulator.js.map +0 -1
  185. /package/dist/accessories/batteries/{batteryAccessoryBase.spec.d.ts → delta2/delta2Accessory.spec.d.ts} +0 -0
  186. /package/dist/accessories/batteries/{services/outletAcService.spec.d.ts → delta2/delta2AccessoryBase.spec.d.ts} +0 -0
  187. /package/dist/accessories/batteries/{services/outletCarService.spec.d.ts → delta2/delta2MaxAccessory.spec.d.ts} +0 -0
  188. /package/dist/accessories/batteries/{services/outletUsbService.spec.d.ts → delta2/services/outletAcService.spec.d.ts} +0 -0
@@ -1,22 +1,24 @@
1
+ import { AcEnableType, AcOutFrequencyType, AcXBoostType, EnableType } from '@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts';
1
2
  export interface EmsStatus {
2
3
  f32LcdShowSoc?: number;
4
+ minDsgSoc?: number;
3
5
  }
4
6
  export interface InvStatusAc {
5
7
  outputWatts?: number;
6
- cfgAcEnabled?: boolean;
7
- cfgAcXboost?: boolean;
8
- cfgAcOutFreq?: number;
9
- cfgAcOutVol?: number;
8
+ cfgAcEnabled?: AcEnableType;
9
+ cfgAcXboost?: AcXBoostType;
10
+ cfgAcOutFreq?: AcOutFrequencyType;
11
+ cfgAcOutVoltage?: number;
10
12
  }
11
13
  export interface InvStatus extends InvStatusAc {
12
14
  inputWatts?: number;
13
15
  }
14
16
  export interface PdStatusCar {
15
- carState?: boolean;
17
+ carState?: EnableType;
16
18
  carWatts?: number;
17
19
  }
18
20
  export interface PdStatusUsb {
19
- dcOutState?: boolean;
21
+ dcOutState?: EnableType;
20
22
  usb1Watts?: number;
21
23
  usb2Watts?: number;
22
24
  qcUsb1Watts?: number;
@@ -26,8 +28,8 @@ export interface PdStatusUsb {
26
28
  }
27
29
  export interface PdStatus extends PdStatusUsb, PdStatusCar {
28
30
  }
29
- export interface BatteryAllQuotaData {
30
- bms_emsStatus: EmsStatus;
31
+ export interface DeltaProAllQuotaData {
32
+ ems: EmsStatus;
31
33
  inv: InvStatus;
32
34
  pd: PdStatus;
33
35
  }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=deltaProHttpApiContracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deltaProHttpApiContracts.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltapro/interfaces/deltaProHttpApiContracts.ts"],"names":[],"mappings":""}
@@ -0,0 +1,30 @@
1
+ import { AcXBoostType } from '@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts';
2
+ import { MqttQuotaMessage, MqttQuotaMessageWithData, MqttSetMessage, MqttSetMessageWithParams, MqttSetReplyMessageData, MqttSetReplyMessageWithData } from '@ecoflow/apis/interfaces/mqttApiContracts';
3
+ export interface DeltaProMqttQuotaMessage extends MqttQuotaMessage {
4
+ }
5
+ export interface DeltaProMqttQuotaMessageWithParams<TParams> extends MqttQuotaMessageWithData<TParams>, DeltaProMqttQuotaMessage {
6
+ }
7
+ export type DeltaProMqttSetOperationType = 'TCP';
8
+ export type DeltaProMqttSetCmdSetType = 32;
9
+ export interface DeltaProMqttSetMessage extends MqttSetMessage {
10
+ operateType: DeltaProMqttSetOperationType;
11
+ }
12
+ export interface DeltaProMqttSetMessageParams {
13
+ cmdSet: DeltaProMqttSetCmdSetType;
14
+ id: number;
15
+ }
16
+ export interface DeltaProMqttSetMessageWithParams<TParams extends DeltaProMqttSetMessageParams> extends MqttSetMessageWithParams<TParams>, DeltaProMqttSetMessage {
17
+ }
18
+ export interface DeltaProMqttSetOnMessageParams extends DeltaProMqttSetMessageParams {
19
+ enabled: number;
20
+ }
21
+ export interface DeltaProMqttSetAcOnMessageParams extends DeltaProMqttSetOnMessageParams {
22
+ xboost: AcXBoostType;
23
+ }
24
+ export interface DeltaProMqttSetReplyMessageData extends MqttSetReplyMessageData {
25
+ cmdSet: DeltaProMqttSetCmdSetType;
26
+ id: number;
27
+ }
28
+ export interface DeltaProMqttSetReplyMessage extends MqttSetReplyMessageWithData<DeltaProMqttSetReplyMessageData> {
29
+ operateType: DeltaProMqttSetOperationType;
30
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=deltaProMqttApiContracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deltaProMqttApiContracts.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltapro/interfaces/deltaProMqttApiContracts.ts"],"names":[],"mappings":""}
@@ -0,0 +1,5 @@
1
+ import { DeltaProMqttSetMessageParams } from '@ecoflow/accessories/batteries/deltapro/interfaces/deltaProMqttApiContracts';
2
+ import { OutletServiceBase } from '@ecoflow/services/outletServiceBase';
3
+ export declare abstract class DeltaProOutletServiceBase extends OutletServiceBase {
4
+ protected sendOn<TParams extends DeltaProMqttSetMessageParams>(params: TParams, revert: () => void): Promise<void>;
5
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeltaProOutletServiceBase = void 0;
4
+ const outletServiceBase_1 = require("@ecoflow/services/outletServiceBase");
5
+ class DeltaProOutletServiceBase extends outletServiceBase_1.OutletServiceBase {
6
+ sendOn(params, revert) {
7
+ const message = {
8
+ id: 0,
9
+ version: '',
10
+ operateType: 'TCP',
11
+ params,
12
+ };
13
+ return this.ecoFlowAccessory.sendSetCommand(message, revert);
14
+ }
15
+ }
16
+ exports.DeltaProOutletServiceBase = DeltaProOutletServiceBase;
17
+ //# sourceMappingURL=deltaProOutletServiceBase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deltaProOutletServiceBase.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltapro/services/deltaProOutletServiceBase.ts"],"names":[],"mappings":";;;AAIA,2EAAwE;AAExE,MAAsB,yBAA0B,SAAQ,qCAAiB;IAC7D,MAAM,CAA+C,MAAe,EAAE,MAAkB;QAChG,MAAM,OAAO,GAA8C;YACzD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,KAAK;YAClB,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AAXD,8DAWC"}
@@ -0,0 +1,8 @@
1
+ import { DeltaProAllQuotaData } from '@ecoflow/accessories/batteries/deltapro/interfaces/deltaProHttpApiContracts';
2
+ import { DeltaProOutletServiceBase } from '@ecoflow/accessories/batteries/deltapro/services/deltaProOutletServiceBase';
3
+ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
4
+ import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
5
+ export declare class OutletAcService extends DeltaProOutletServiceBase {
6
+ constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<DeltaProAllQuotaData>, batteryStatusProvider: BatteryStatusProvider);
7
+ protected setOn(value: boolean, revert: () => void): Promise<void>;
8
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutletAcService = void 0;
4
+ const deltaProOutletServiceBase_1 = require("@ecoflow/accessories/batteries/deltapro/services/deltaProOutletServiceBase");
5
+ const batteryHttpApiContracts_1 = require("@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts");
6
+ class OutletAcService extends deltaProOutletServiceBase_1.DeltaProOutletServiceBase {
7
+ constructor(ecoFlowAccessory, batteryStatusProvider) {
8
+ super(ecoFlowAccessory, batteryStatusProvider, 'AC', ecoFlowAccessory.config.battery?.additionalCharacteristics);
9
+ }
10
+ setOn(value, revert) {
11
+ return this.sendOn({
12
+ cmdSet: 32,
13
+ id: 66,
14
+ xboost: batteryHttpApiContracts_1.AcXBoostType.Ignore,
15
+ enabled: value ? batteryHttpApiContracts_1.AcEnableType.On : batteryHttpApiContracts_1.AcEnableType.Off,
16
+ }, revert);
17
+ }
18
+ }
19
+ exports.OutletAcService = OutletAcService;
20
+ //# sourceMappingURL=outletAcService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outletAcService.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltapro/services/outletAcService.ts"],"names":[],"mappings":";;;AAEA,0HAAuH;AACvH,+GAA+G;AAI/G,MAAa,eAAgB,SAAQ,qDAAyB;IAC5D,YACE,gBAAqE,EACrE,qBAA4C;QAE5C,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;IACnH,CAAC;IAEkB,KAAK,CAAC,KAAc,EAAE,MAAkB;QACzD,OAAO,IAAI,CAAC,MAAM,CAChB;YACE,MAAM,EAAE,EAAE;YACV,EAAE,EAAE,EAAE;YACN,MAAM,EAAE,sCAAY,CAAC,MAAM;YAC3B,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,sCAAY,CAAC,EAAE,CAAC,CAAC,CAAC,sCAAY,CAAC,GAAG;SACpD,EACD,MAAM,CACP,CAAC;IACJ,CAAC;CACF;AAnBD,0CAmBC"}
@@ -0,0 +1,7 @@
1
+ import { DeltaProOutletServiceBase } from '@ecoflow/accessories/batteries/deltapro/services/deltaProOutletServiceBase';
2
+ import { EcoFlowAccessoryBase } from '@ecoflow/accessories/ecoFlowAccessoryBase';
3
+ import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
4
+ export declare class OutletCarService extends DeltaProOutletServiceBase {
5
+ constructor(ecoFlowAccessory: EcoFlowAccessoryBase, batteryStatusProvider: BatteryStatusProvider);
6
+ protected setOn(value: boolean, revert: () => void): Promise<void>;
7
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutletCarService = void 0;
4
+ const deltaProOutletServiceBase_1 = require("@ecoflow/accessories/batteries/deltapro/services/deltaProOutletServiceBase");
5
+ const batteryHttpApiContracts_1 = require("@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts");
6
+ class OutletCarService extends deltaProOutletServiceBase_1.DeltaProOutletServiceBase {
7
+ constructor(ecoFlowAccessory, batteryStatusProvider) {
8
+ super(ecoFlowAccessory, batteryStatusProvider, 'CAR', ecoFlowAccessory.config.battery?.additionalCharacteristics);
9
+ }
10
+ setOn(value, revert) {
11
+ return this.sendOn({
12
+ cmdSet: 32,
13
+ id: 81,
14
+ enabled: value ? batteryHttpApiContracts_1.EnableType.On : batteryHttpApiContracts_1.EnableType.Off,
15
+ }, revert);
16
+ }
17
+ }
18
+ exports.OutletCarService = OutletCarService;
19
+ //# sourceMappingURL=outletCarService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outletCarService.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltapro/services/outletCarService.ts"],"names":[],"mappings":";;;AACA,0HAAuH;AACvH,+GAA+F;AAI/F,MAAa,gBAAiB,SAAQ,qDAAyB;IAC7D,YAAY,gBAAsC,EAAE,qBAA4C;QAC9F,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;IACpH,CAAC;IAEkB,KAAK,CAAC,KAAc,EAAE,MAAkB;QACzD,OAAO,IAAI,CAAC,MAAM,CAChB;YACE,MAAM,EAAE,EAAE;YACV,EAAE,EAAE,EAAE;YACN,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,oCAAU,CAAC,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,GAAG;SAChD,EACD,MAAM,CACP,CAAC;IACJ,CAAC;CACF;AAfD,4CAeC"}
@@ -0,0 +1,7 @@
1
+ import { DeltaProOutletServiceBase } from '@ecoflow/accessories/batteries/deltapro/services/deltaProOutletServiceBase';
2
+ import { EcoFlowAccessoryBase } from '@ecoflow/accessories/ecoFlowAccessoryBase';
3
+ import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
4
+ export declare class OutletUsbService extends DeltaProOutletServiceBase {
5
+ constructor(ecoFlowAccessory: EcoFlowAccessoryBase, batteryStatusProvider: BatteryStatusProvider);
6
+ protected setOn(): Promise<void>;
7
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OutletUsbService = void 0;
4
+ const deltaProOutletServiceBase_1 = require("@ecoflow/accessories/batteries/deltapro/services/deltaProOutletServiceBase");
5
+ class OutletUsbService extends deltaProOutletServiceBase_1.DeltaProOutletServiceBase {
6
+ constructor(ecoFlowAccessory, batteryStatusProvider) {
7
+ super(ecoFlowAccessory, batteryStatusProvider, 'USB', ecoFlowAccessory.config.battery?.additionalCharacteristics);
8
+ }
9
+ setOn() {
10
+ throw new this.platform.api.hap.HapStatusError(-70404 /* this.platform.api.hap.HAPStatus.READ_ONLY_CHARACTERISTIC */);
11
+ }
12
+ }
13
+ exports.OutletUsbService = OutletUsbService;
14
+ //# sourceMappingURL=outletUsbService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outletUsbService.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltapro/services/outletUsbService.ts"],"names":[],"mappings":";;;AAAA,0HAAuH;AAIvH,MAAa,gBAAiB,SAAQ,qDAAyB;IAC7D,YAAY,gBAAsC,EAAE,qBAA4C;QAC9F,KAAK,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;IACpH,CAAC;IAEkB,KAAK;QACtB,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,cAAc,uEAA0D,CAAC;IAC3G,CAAC;CACF;AARD,4CAQC"}
@@ -0,0 +1,9 @@
1
+ import { DeltaProAllQuotaData } from '@ecoflow/accessories/batteries/deltapro/interfaces/deltaProHttpApiContracts';
2
+ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
3
+ import { SwitchXboostServiceBase } from '@ecoflow/services/switchXboostServiceBase';
4
+ export declare class SwitchXboostService extends SwitchXboostServiceBase {
5
+ protected readonly ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<DeltaProAllQuotaData>;
6
+ constructor(ecoFlowAccessory: EcoFlowAccessoryWithQuotaBase<DeltaProAllQuotaData>);
7
+ protected setOn(value: boolean, revert: () => void): Promise<void>;
8
+ private sendOn;
9
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SwitchXboostService = void 0;
4
+ const batteryHttpApiContracts_1 = require("@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts");
5
+ const switchXboostServiceBase_1 = require("@ecoflow/services/switchXboostServiceBase");
6
+ class SwitchXboostService extends switchXboostServiceBase_1.SwitchXboostServiceBase {
7
+ ecoFlowAccessory;
8
+ constructor(ecoFlowAccessory) {
9
+ super(ecoFlowAccessory);
10
+ this.ecoFlowAccessory = ecoFlowAccessory;
11
+ }
12
+ setOn(value, revert) {
13
+ return this.sendOn({
14
+ cmdSet: 32,
15
+ id: 66,
16
+ xboost: value ? batteryHttpApiContracts_1.AcXBoostType.On : batteryHttpApiContracts_1.AcXBoostType.Off,
17
+ enabled: batteryHttpApiContracts_1.AcEnableType.Ignore,
18
+ }, revert);
19
+ }
20
+ sendOn(params, revert) {
21
+ const message = {
22
+ id: 0,
23
+ version: '',
24
+ operateType: 'TCP',
25
+ params,
26
+ };
27
+ return this.ecoFlowAccessory.sendSetCommand(message, revert);
28
+ }
29
+ }
30
+ exports.SwitchXboostService = SwitchXboostService;
31
+ //# sourceMappingURL=switchXboostService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switchXboostService.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltapro/services/switchXboostService.ts"],"names":[],"mappings":";;;AAMA,+GAA+G;AAE/G,uFAAoF;AAEpF,MAAa,mBAAoB,SAAQ,iDAAuB;IAC/B;IAA/B,YAA+B,gBAAqE;QAClG,KAAK,CAAC,gBAAgB,CAAC,CAAC;QADK,qBAAgB,GAAhB,gBAAgB,CAAqD;IAEpG,CAAC;IAES,KAAK,CAAC,KAAc,EAAE,MAAkB;QAChD,OAAO,IAAI,CAAC,MAAM,CAChB;YACE,MAAM,EAAE,EAAE;YACV,EAAE,EAAE,EAAE;YACN,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,sCAAY,CAAC,EAAE,CAAC,CAAC,CAAC,sCAAY,CAAC,GAAG;YAClD,OAAO,EAAE,sCAAY,CAAC,MAAM;SAC7B,EACD,MAAM,CACP,CAAC;IACJ,CAAC;IAEO,MAAM,CAA+C,MAAe,EAAE,MAAkB;QAC9F,MAAM,OAAO,GAA8C;YACzD,EAAE,EAAE,CAAC;YACL,OAAO,EAAE,EAAE;YACX,WAAW,EAAE,KAAK;YAClB,MAAM;SACP,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;CACF;AA3BD,kDA2BC"}
@@ -0,0 +1,6 @@
1
+ import { DeltaProMqttSetMessageParams, DeltaProMqttSetMessageWithParams } from '@ecoflow/accessories/batteries/deltapro/interfaces/deltaProMqttApiContracts';
2
+ import { SimulatorTyped } from '@ecoflow/apis/simulations/simulator';
3
+ export declare class DeltaProSimulator extends SimulatorTyped<DeltaProMqttSetMessageWithParams<DeltaProMqttSetMessageParams>> {
4
+ generateQuota(): object;
5
+ generateSetReplyTyped(message: DeltaProMqttSetMessageWithParams<DeltaProMqttSetMessageParams>): object;
6
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeltaProSimulator = void 0;
4
+ const batteryHttpApiContracts_1 = require("@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts");
5
+ const simulator_1 = require("@ecoflow/apis/simulations/simulator");
6
+ class DeltaProSimulator extends simulator_1.SimulatorTyped {
7
+ generateQuota() {
8
+ const quota = {
9
+ data: {
10
+ ems: {
11
+ f32LcdShowSoc: this.getRandomNumber(0, 100),
12
+ minDsgSoc: this.getRandomNumber(0, 20),
13
+ },
14
+ inv: {
15
+ cfgAcEnabled: this.getRandomBoolean() ? batteryHttpApiContracts_1.AcEnableType.On : batteryHttpApiContracts_1.AcEnableType.Off,
16
+ cfgAcOutFreq: batteryHttpApiContracts_1.AcOutFrequencyType['50 Hz'],
17
+ cfgAcOutVoltage: 220000,
18
+ cfgAcXboost: this.getRandomBoolean() ? batteryHttpApiContracts_1.AcXBoostType.On : batteryHttpApiContracts_1.AcXBoostType.Off,
19
+ inputWatts: this.getRandomNumber(0, 1000),
20
+ outputWatts: this.getRandomNumber(0, 1000),
21
+ },
22
+ pd: {
23
+ carState: this.getRandomBoolean() ? batteryHttpApiContracts_1.EnableType.On : batteryHttpApiContracts_1.EnableType.Off,
24
+ carWatts: this.getRandomNumber(0, 1000),
25
+ dcOutState: this.getRandomBoolean() ? batteryHttpApiContracts_1.EnableType.On : batteryHttpApiContracts_1.EnableType.Off,
26
+ typec1Watts: this.getRandomNumber(0, 100),
27
+ typec2Watts: this.getRandomNumber(0, 100),
28
+ },
29
+ },
30
+ };
31
+ return quota;
32
+ }
33
+ generateSetReplyTyped(message) {
34
+ const reply = {
35
+ id: message.id,
36
+ version: message.version,
37
+ operateType: message.operateType,
38
+ data: {
39
+ cmdSet: message.params.cmdSet,
40
+ id: message.params.id,
41
+ ack: false,
42
+ },
43
+ };
44
+ return reply;
45
+ }
46
+ }
47
+ exports.DeltaProSimulator = DeltaProSimulator;
48
+ //# sourceMappingURL=deltaProSimulator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deltaProSimulator.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltapro/simulations/deltaProSimulator.ts"],"names":[],"mappings":";;;AAOA,+GAK2E;AAC3E,mEAAqE;AAErE,MAAa,iBAAkB,SAAQ,0BAA8E;IACnG,aAAa;QAC3B,MAAM,KAAK,GAA6D;YACtE,IAAI,EAAE;gBACJ,GAAG,EAAE;oBACH,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC;oBAC3C,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,EAAE,CAAC;iBACvC;gBACD,GAAG,EAAE;oBACH,YAAY,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,sCAAY,CAAC,EAAE,CAAC,CAAC,CAAC,sCAAY,CAAC,GAAG;oBAC1E,YAAY,EAAE,4CAAkB,CAAC,OAAO,CAAC;oBACzC,eAAe,EAAE,MAAM;oBACvB,WAAW,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,sCAAY,CAAC,EAAE,CAAC,CAAC,CAAC,sCAAY,CAAC,GAAG;oBACzE,UAAU,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC;oBACzC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC;iBAC3C;gBACD,EAAE,EAAE;oBACF,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,GAAG;oBAClE,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC;oBACvC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,EAAE,CAAC,CAAC,CAAC,oCAAU,CAAC,GAAG;oBACpE,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC;oBACzC,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,GAAG,CAAC;iBAC1C;aACF;SACF,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IAEe,qBAAqB,CACnC,OAAuE;QAEvE,MAAM,KAAK,GAAgC;YACzC,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,IAAI,EAAE;gBACJ,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;gBAC7B,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;gBACrB,GAAG,EAAE,KAAK;aACX;SACF,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA5CD,8CA4CC"}
@@ -0,0 +1,28 @@
1
+ import { DeltaProUltraAllQuotaData } from '@ecoflow/accessories/batteries/deltaproultra/interfaces/deltaProUltraHttpApiContracts';
2
+ import { EcoFlowAccessoryWithQuotaBase } from '@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase';
3
+ import { EcoFlowHttpApiManager } from '@ecoflow/apis/ecoFlowHttpApiManager';
4
+ import { EcoFlowMqttApiManager } from '@ecoflow/apis/ecoFlowMqttApiManager';
5
+ import { MqttQuotaMessage } from '@ecoflow/apis/interfaces/mqttApiContracts';
6
+ import { DeviceConfig } from '@ecoflow/config';
7
+ import { BatteryStatusProvider } from '@ecoflow/helpers/batteryStatusProvider';
8
+ import { EcoFlowHomebridgePlatform } from '@ecoflow/platform';
9
+ import { ServiceBase } from '@ecoflow/services/serviceBase';
10
+ import { Logging, PlatformAccessory } from 'homebridge';
11
+ export declare class DeltaProUltraAccessory extends EcoFlowAccessoryWithQuotaBase<DeltaProUltraAllQuotaData> {
12
+ private readonly batteryStatusService;
13
+ private readonly outletUsbService;
14
+ private readonly outletAcService;
15
+ private readonly switchXboostService;
16
+ constructor(platform: EcoFlowHomebridgePlatform, accessory: PlatformAccessory, config: DeviceConfig, log: Logging, httpApiManager: EcoFlowHttpApiManager, mqttApiManager: EcoFlowMqttApiManager, batteryStatusProvider: BatteryStatusProvider);
17
+ protected getServices(): ServiceBase[];
18
+ protected processQuotaMessage(message: MqttQuotaMessage): void;
19
+ protected initializeQuota(quota: DeltaProUltraAllQuotaData | null): DeltaProUltraAllQuotaData;
20
+ protected updateInitialValues(initialData: DeltaProUltraAllQuotaData): void;
21
+ private updatePdStatusInitialValues;
22
+ private updatePdSetStatusInitialValues;
23
+ private updatePdValues;
24
+ private updateBatteryLevelValues;
25
+ private updateChargingStateValues;
26
+ private updatePdAcValues;
27
+ private updatePdUsbValues;
28
+ }
@@ -0,0 +1,123 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeltaProUltraAccessory = void 0;
4
+ const deltaProUltraMqttApiContracts_1 = require("@ecoflow/accessories/batteries/deltaproultra/interfaces/deltaProUltraMqttApiContracts");
5
+ const outletAcService_1 = require("@ecoflow/accessories/batteries/deltaproultra/services/outletAcService");
6
+ const outletUsbService_1 = require("@ecoflow/accessories/batteries/deltaproultra/services/outletUsbService");
7
+ const switchXboostService_1 = require("@ecoflow/accessories/batteries/deltaproultra/services/switchXboostService");
8
+ const ecoFlowAccessoryWithQuotaBase_1 = require("@ecoflow/accessories/ecoFlowAccessoryWithQuotaBase");
9
+ const batteryStatusService_1 = require("@ecoflow/services/batteryStatusService");
10
+ class DeltaProUltraAccessory extends ecoFlowAccessoryWithQuotaBase_1.EcoFlowAccessoryWithQuotaBase {
11
+ batteryStatusService;
12
+ outletUsbService;
13
+ outletAcService;
14
+ switchXboostService;
15
+ constructor(platform, accessory, config, log, httpApiManager, mqttApiManager, batteryStatusProvider) {
16
+ super(platform, accessory, config, log, httpApiManager, mqttApiManager);
17
+ this.batteryStatusService = new batteryStatusService_1.BatteryStatusService(this, batteryStatusProvider);
18
+ this.outletUsbService = new outletUsbService_1.OutletUsbService(this, batteryStatusProvider);
19
+ this.outletAcService = new outletAcService_1.OutletAcService(this, batteryStatusProvider);
20
+ this.switchXboostService = new switchXboostService_1.SwitchXboostService(this);
21
+ }
22
+ getServices() {
23
+ return [this.batteryStatusService, this.outletUsbService, this.outletAcService, this.switchXboostService];
24
+ }
25
+ processQuotaMessage(message) {
26
+ const accessoryMessage = message;
27
+ if (accessoryMessage.addr === deltaProUltraMqttApiContracts_1.DeltaProUltraMqttMessageAddrType.PD) {
28
+ const pdStatus = message.param;
29
+ Object.assign(this.quota.hs_yj751_pd_appshow_addr, pdStatus);
30
+ this.updatePdValues(pdStatus);
31
+ }
32
+ else if (accessoryMessage.addr === deltaProUltraMqttApiContracts_1.DeltaProUltraMqttMessageAddrType.PD_SET) {
33
+ const pdSetStatus = message.param;
34
+ Object.assign(this.quota.hs_yj751_pd_app_set_info_addr, pdSetStatus);
35
+ // this.updatePdSetValues(pdSetStatus);
36
+ }
37
+ }
38
+ initializeQuota(quota) {
39
+ const result = quota ?? {};
40
+ if (!result.hs_yj751_pd_appshow_addr) {
41
+ result.hs_yj751_pd_appshow_addr = {};
42
+ }
43
+ if (!result.hs_yj751_pd_app_set_info_addr) {
44
+ result.hs_yj751_pd_app_set_info_addr = {};
45
+ }
46
+ return result;
47
+ }
48
+ updateInitialValues(initialData) {
49
+ this.updatePdStatusInitialValues(initialData.hs_yj751_pd_appshow_addr);
50
+ this.updatePdSetStatusInitialValues(initialData.hs_yj751_pd_app_set_info_addr);
51
+ }
52
+ updatePdStatusInitialValues(params) {
53
+ const message = {
54
+ param: params,
55
+ addr: deltaProUltraMqttApiContracts_1.DeltaProUltraMqttMessageAddrType.PD,
56
+ };
57
+ this.processQuotaMessage(message);
58
+ }
59
+ updatePdSetStatusInitialValues(params) {
60
+ const message = {
61
+ param: params,
62
+ addr: deltaProUltraMqttApiContracts_1.DeltaProUltraMqttMessageAddrType.PD_SET,
63
+ };
64
+ this.processQuotaMessage(message);
65
+ }
66
+ updatePdValues(params) {
67
+ this.updateBatteryLevelValues(params);
68
+ this.updateChargingStateValues(params);
69
+ this.updatePdAcValues(params);
70
+ this.updatePdUsbValues(params);
71
+ }
72
+ // private updatePdSetValues(params: PdSetStatus): void {
73
+ // if (params.acXboost !== undefined && params.acXboost !== AcXBoostType.Ignore) {
74
+ // this.switchXboostService.updateState(params.acXboost === AcXBoostType.On);
75
+ // }
76
+ // }
77
+ updateBatteryLevelValues(params) {
78
+ if (params.soc !== undefined) {
79
+ this.batteryStatusService.updateBatteryLevel(params.soc, 0);
80
+ this.outletAcService.updateBatteryLevel(params.soc, 0);
81
+ this.outletUsbService.updateBatteryLevel(params.soc, 0);
82
+ }
83
+ }
84
+ updateChargingStateValues(params) {
85
+ if (params.wattsInSum !== undefined) {
86
+ const isCharging = params.wattsInSum > 0 && (params.wattsOutSum === undefined || params.wattsInSum !== params.wattsOutSum);
87
+ this.batteryStatusService.updateChargingState(isCharging);
88
+ this.outletAcService.updateChargingState(isCharging);
89
+ this.outletUsbService.updateChargingState(isCharging);
90
+ this.outletAcService.updateInputConsumption(params.wattsInSum);
91
+ this.outletUsbService.updateInputConsumption(params.wattsInSum);
92
+ }
93
+ }
94
+ updatePdAcValues(params) {
95
+ // if (params.acOutState !== undefined) {
96
+ // this.outletAcService.updateState(params.acOutState === EnableType.On);
97
+ // }
98
+ if (params.outAcL11Pwr !== undefined ||
99
+ params.outAcL12Pwr !== undefined ||
100
+ params.outAcL21Pwr !== undefined ||
101
+ params.outAcL22Pwr !== undefined ||
102
+ params.outAcTtPwr !== undefined ||
103
+ params.outAcL14Pwr !== undefined ||
104
+ params.outAc5p8Pwr !== undefined) {
105
+ const usbWatts = this.sum(params.outAcL11Pwr, params.outAcL12Pwr, params.outAcL21Pwr, params.outAcL22Pwr, params.outAcTtPwr, params.outAcL14Pwr, params.outAc5p8Pwr);
106
+ this.outletAcService.updateOutputConsumption(usbWatts);
107
+ }
108
+ }
109
+ updatePdUsbValues(params) {
110
+ // if (params.dcOutState !== undefined) {
111
+ // this.outletUsbService.updateState(params.dcOutState === EnableType.On);
112
+ // }
113
+ if (params.outUsb1Pwr !== undefined ||
114
+ params.outUsb2Pwr !== undefined ||
115
+ params.outTypec1Pwr !== undefined ||
116
+ params.outTypec2Pwr !== undefined) {
117
+ const usbWatts = this.sum(params.outUsb1Pwr, params.outUsb2Pwr, params.outTypec1Pwr, params.outTypec2Pwr);
118
+ this.outletUsbService.updateOutputConsumption(usbWatts);
119
+ }
120
+ }
121
+ }
122
+ exports.DeltaProUltraAccessory = DeltaProUltraAccessory;
123
+ //# sourceMappingURL=deltaProUltraAccessory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deltaProUltraAccessory.js","sourceRoot":"","sources":["../../../../src/accessories/batteries/deltaproultra/deltaProUltraAccessory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ export interface PdSetStatus {
2
+ acOutFreq?: AcOutFrequencyType;
3
+ dsgMinSoc?: number;
4
+ }
5
+ export declare enum AcOutFrequencyType {
6
+ None = 0,
7
+ '50 Hz' = 50,
8
+ '60 Hz' = 60
9
+ }
10
+ export interface PdStatusUsb {
11
+ outUsb1Pwr?: number;
12
+ outUsb2Pwr?: number;
13
+ outTypec1Pwr?: number;
14
+ outTypec2Pwr?: number;
15
+ }
16
+ export interface PdStatusBackupAc {
17
+ outAcL11Pwr?: number;
18
+ outAcL12Pwr?: number;
19
+ }
20
+ export interface PdStatusOnlineAc {
21
+ outAcL21Pwr?: number;
22
+ outAcL22Pwr?: number;
23
+ }
24
+ export interface PdStatusTt30Ac {
25
+ outAcTtPwr?: number;
26
+ }
27
+ export interface PdStatusL14Ac {
28
+ outAcL14Pwr?: number;
29
+ }
30
+ export interface PdStatusInOutAc {
31
+ inAc5p8Pwr?: number;
32
+ outAc5p8Pwr?: number;
33
+ }
34
+ export interface PdStatusAc extends PdStatusBackupAc, PdStatusOnlineAc, PdStatusTt30Ac, PdStatusL14Ac, PdStatusInOutAc {
35
+ }
36
+ export interface PdStatusSoc {
37
+ soc?: number;
38
+ }
39
+ export interface PdStatusWatts {
40
+ wattsInSum?: number;
41
+ wattsOutSum?: number;
42
+ }
43
+ export interface PdStatus extends PdStatusSoc, PdStatusWatts, PdStatusAc, PdStatusUsb {
44
+ }
45
+ export interface DeltaProUltraAllQuotaData {
46
+ hs_yj751_pd_appshow_addr: PdStatus;
47
+ hs_yj751_pd_app_set_info_addr: PdSetStatus;
48
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AcOutFrequencyType = void 0;
4
+ var AcOutFrequencyType;
5
+ (function (AcOutFrequencyType) {
6
+ AcOutFrequencyType[AcOutFrequencyType["None"] = 0] = "None";
7
+ AcOutFrequencyType[AcOutFrequencyType["50 Hz"] = 50] = "50 Hz";
8
+ AcOutFrequencyType[AcOutFrequencyType["60 Hz"] = 60] = "60 Hz";
9
+ })(AcOutFrequencyType || (exports.AcOutFrequencyType = AcOutFrequencyType = {}));
10
+ //# sourceMappingURL=deltaProUltraHttpApiContracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deltaProUltraHttpApiContracts.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltaproultra/interfaces/deltaProUltraHttpApiContracts.ts"],"names":[],"mappings":";;;AAOA,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,2DAAQ,CAAA;IACR,8DAAY,CAAA;IACZ,8DAAY,CAAA;AACd,CAAC,EAJW,kBAAkB,kCAAlB,kBAAkB,QAI7B"}
@@ -0,0 +1,33 @@
1
+ import { AcOutFrequencyType } from '@ecoflow/accessories/batteries/deltaproultra/interfaces/deltaProUltraHttpApiContracts';
2
+ import { AcXBoostType } from '@ecoflow/accessories/batteries/interfaces/batteryHttpApiContracts';
3
+ import { MqttQuotaMessage, MqttQuotaMessageWithParam, MqttSetMessage, MqttSetMessageWithParams } from '@ecoflow/apis/interfaces/mqttApiContracts';
4
+ export declare enum DeltaProUltraMqttMessageAddrType {
5
+ PD = "hs_yj751_pd_appshow_addr",
6
+ PD_SET = "hs_yj751_pd_app_set_info_addr"
7
+ }
8
+ export interface DeltaProUltraMqttQuotaMessage extends MqttQuotaMessage {
9
+ addr: DeltaProUltraMqttMessageAddrType;
10
+ }
11
+ export interface DeltaProUltraMqttQuotaMessageWithParams<TParams> extends MqttQuotaMessageWithParam<TParams>, DeltaProUltraMqttQuotaMessage {
12
+ }
13
+ export declare enum DeltaProUltraMqttSetCmdCodeType {
14
+ YJ751_PD_DC_SWITCH_SET = "YJ751_PD_DC_SWITCH_SET",
15
+ YJ751_PD_AC_DSG_SET = "YJ751_PD_AC_DSG_SET"
16
+ }
17
+ export interface DeltaProUltraMqttSetMessage extends MqttSetMessage {
18
+ cmdCode: DeltaProUltraMqttSetCmdCodeType;
19
+ }
20
+ export interface DeltaProUltraMqttSetMessageParams {
21
+ }
22
+ export interface DeltaProUltraMqttSetMessageWithParams<TParams extends DeltaProUltraMqttSetMessageParams> extends MqttSetMessageWithParams<TParams>, DeltaProUltraMqttSetMessage {
23
+ }
24
+ export interface DeltaProMqttSetOnMessageParams extends DeltaProUltraMqttSetMessageParams {
25
+ enabled: number;
26
+ }
27
+ export interface DeltaProUltraMqttSetOnMessageParams extends DeltaProUltraMqttSetMessageParams {
28
+ enabled: number;
29
+ }
30
+ export interface DeltaProUltraMqttSetXBoostMessageParams extends DeltaProUltraMqttSetMessageParams {
31
+ xboost: AcXBoostType;
32
+ outFreq: AcOutFrequencyType;
33
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DeltaProUltraMqttSetCmdCodeType = exports.DeltaProUltraMqttMessageAddrType = void 0;
4
+ var DeltaProUltraMqttMessageAddrType;
5
+ (function (DeltaProUltraMqttMessageAddrType) {
6
+ DeltaProUltraMqttMessageAddrType["PD"] = "hs_yj751_pd_appshow_addr";
7
+ DeltaProUltraMqttMessageAddrType["PD_SET"] = "hs_yj751_pd_app_set_info_addr";
8
+ })(DeltaProUltraMqttMessageAddrType || (exports.DeltaProUltraMqttMessageAddrType = DeltaProUltraMqttMessageAddrType = {}));
9
+ var DeltaProUltraMqttSetCmdCodeType;
10
+ (function (DeltaProUltraMqttSetCmdCodeType) {
11
+ // YJ751_PD_AC_SWITCH_SET = 'YJ751_PD_AC_SWITCH_SET', // TBD: verify that it exists in API
12
+ DeltaProUltraMqttSetCmdCodeType["YJ751_PD_DC_SWITCH_SET"] = "YJ751_PD_DC_SWITCH_SET";
13
+ DeltaProUltraMqttSetCmdCodeType["YJ751_PD_AC_DSG_SET"] = "YJ751_PD_AC_DSG_SET";
14
+ })(DeltaProUltraMqttSetCmdCodeType || (exports.DeltaProUltraMqttSetCmdCodeType = DeltaProUltraMqttSetCmdCodeType = {}));
15
+ //# sourceMappingURL=deltaProUltraMqttApiContracts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deltaProUltraMqttApiContracts.js","sourceRoot":"","sources":["../../../../../src/accessories/batteries/deltaproultra/interfaces/deltaProUltraMqttApiContracts.ts"],"names":[],"mappings":";;;AASA,IAAY,gCAGX;AAHD,WAAY,gCAAgC;IAC1C,mEAA+B,CAAA;IAC/B,4EAAwC,CAAA;AAC1C,CAAC,EAHW,gCAAgC,gDAAhC,gCAAgC,QAG3C;AAUD,IAAY,+BAIX;AAJD,WAAY,+BAA+B;IACzC,0FAA0F;IAC1F,oFAAiD,CAAA;IACjD,8EAA2C,CAAA;AAC7C,CAAC,EAJW,+BAA+B,+CAA/B,+BAA+B,QAI1C"}