@enyo-energy/energy-app-sdk 1.11.0 → 1.12.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 +5 -0
- package/dist/cjs/types/enyo-data-bus-value.d.cts +24 -1
- package/dist/cjs/types/enyo-flexibility-announcement.cjs +4 -3
- package/dist/cjs/types/enyo-flexibility-announcement.d.cts +19 -9
- package/dist/cjs/version.cjs +1 -1
- package/dist/cjs/version.d.cts +1 -1
- package/dist/types/enyo-data-bus-value.d.ts +24 -1
- package/dist/types/enyo-flexibility-announcement.d.ts +19 -9
- package/dist/types/enyo-flexibility-announcement.js +4 -3
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -3597,6 +3597,11 @@ Notes:
|
|
|
3597
3597
|
- The same breakdown is available on category-level announcements via
|
|
3598
3598
|
`context.targets` on `EnyoFlexibilityAnnouncementContext`, so the
|
|
3599
3599
|
per-appliance and aggregated surfaces stay in step.
|
|
3600
|
+
- The V2 available-power commands carry the same breakdown in the other
|
|
3601
|
+
direction: `targets` on `EnyoAvailablePowerCommandData` lets the energy manager
|
|
3602
|
+
say what the granted envelope is meant for, using the same vocabulary, so a
|
|
3603
|
+
grant can be read against the announcement it answers. It is advisory — the
|
|
3604
|
+
command's `powerW` remains the only limit.
|
|
3600
3605
|
|
|
3601
3606
|
### Settings Management
|
|
3602
3607
|
|
|
@@ -911,6 +911,20 @@ export interface EnyoAvailablePowerCommandData {
|
|
|
911
911
|
* Must be non-negative. The appliance must not exceed this envelope.
|
|
912
912
|
*/
|
|
913
913
|
powerW: number;
|
|
914
|
+
/**
|
|
915
|
+
* Optional breakdown of what the granted envelope is meant for and at which
|
|
916
|
+
* power — the same "how much watt for what" vocabulary an appliance uses to
|
|
917
|
+
* announce its flexibility
|
|
918
|
+
* ({@link EnyoDataBusApplianceFlexibilityAnnouncementV1}), so a grant can be
|
|
919
|
+
* read against the announcement it answers.
|
|
920
|
+
*
|
|
921
|
+
* Advisory, and never a second limit: `powerW` alone bounds what the
|
|
922
|
+
* appliance may draw. The shares SHOULD NOT exceed `powerW` in sum, may be
|
|
923
|
+
* partial, and a given target SHOULD appear at most once. An appliance that
|
|
924
|
+
* does not understand a target should fall back to spending the envelope as
|
|
925
|
+
* it sees fit rather than refusing it.
|
|
926
|
+
*/
|
|
927
|
+
targets?: EnyoFlexibilityTargetPower[];
|
|
914
928
|
/** Optional reason why this command was issued */
|
|
915
929
|
reason?: EnyoDataBusCommandReason;
|
|
916
930
|
}
|
|
@@ -2287,7 +2301,8 @@ export interface EnyoPowerSourceShare {
|
|
|
2287
2301
|
/**
|
|
2288
2302
|
* V2 command announcing the available / maximum active-power envelope (in
|
|
2289
2303
|
* Watts) a heatpump may draw, together with optional context describing what
|
|
2290
|
-
* the power should be used for ({@link EnyoHeatpumpControlPurposeEnum})
|
|
2304
|
+
* the power should be used for ({@link EnyoHeatpumpControlPurposeEnum}), how it
|
|
2305
|
+
* splits across targets ({@link EnyoAvailablePowerCommandData.targets}), and
|
|
2291
2306
|
* where it comes from ({@link EnyoPowerSourceShare}). Supersedes the deprecated
|
|
2292
2307
|
* {@link EnyoDataBusHeatpumpAvailablePowerAnnouncementV1}.
|
|
2293
2308
|
*
|
|
@@ -2304,6 +2319,14 @@ export interface EnyoDataBusSetHeatpumpAvailablePowerV2 extends EnyoDataBusMessa
|
|
|
2304
2319
|
/**
|
|
2305
2320
|
* What the heatpump should use the announced power for (e.g. DHW boost,
|
|
2306
2321
|
* pre-heating). Advisory — the appliance may still apply its own logic.
|
|
2322
|
+
*
|
|
2323
|
+
* This names a single intent for the whole envelope, and covers intents
|
|
2324
|
+
* that are not a heat sink at all ({@link
|
|
2325
|
+
* EnyoHeatpumpControlPurposeEnum.PreHeating}). To instead split the
|
|
2326
|
+
* envelope across sinks — "1500 W for hot water, 800 W for the buffer
|
|
2327
|
+
* tank" — use {@link EnyoAvailablePowerCommandData.targets}. The two may
|
|
2328
|
+
* be sent together; they are separate vocabularies and neither is derived
|
|
2329
|
+
* from the other.
|
|
2307
2330
|
*/
|
|
2308
2331
|
purpose?: EnyoHeatpumpControlPurposeEnum;
|
|
2309
2332
|
/**
|
|
@@ -47,9 +47,10 @@ var EnyoFlexibilityHeatpumpTargetTypeEnum;
|
|
|
47
47
|
EnyoFlexibilityHeatpumpTargetTypeEnum["Dhw"] = "dhw";
|
|
48
48
|
})(EnyoFlexibilityHeatpumpTargetTypeEnum || (exports.EnyoFlexibilityHeatpumpTargetTypeEnum = EnyoFlexibilityHeatpumpTargetTypeEnum = {}));
|
|
49
49
|
/**
|
|
50
|
-
* What
|
|
51
|
-
*
|
|
52
|
-
* {@link EnyoFlexibilityTargetPower}
|
|
50
|
+
* What a share of power is physically aimed at — the open vocabulary behind the
|
|
51
|
+
* "how much watt for what" breakdown carried by
|
|
52
|
+
* {@link EnyoFlexibilityTargetPower}, on flexibility announcements and on the
|
|
53
|
+
* available-power commands that answer them alike.
|
|
53
54
|
*
|
|
54
55
|
* The members present today all describe heat sinks, because thermal appliances
|
|
55
56
|
* are the first ones to split their draw. The enum is deliberately **not**
|
|
@@ -38,9 +38,10 @@ export declare enum EnyoFlexibilityHeatpumpTargetTypeEnum {
|
|
|
38
38
|
Dhw = "dhw"
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
* What
|
|
42
|
-
*
|
|
43
|
-
* {@link EnyoFlexibilityTargetPower}
|
|
41
|
+
* What a share of power is physically aimed at — the open vocabulary behind the
|
|
42
|
+
* "how much watt for what" breakdown carried by
|
|
43
|
+
* {@link EnyoFlexibilityTargetPower}, on flexibility announcements and on the
|
|
44
|
+
* available-power commands that answer them alike.
|
|
44
45
|
*
|
|
45
46
|
* The members present today all describe heat sinks, because thermal appliances
|
|
46
47
|
* are the first ones to split their draw. The enum is deliberately **not**
|
|
@@ -99,13 +100,22 @@ export declare enum EnyoFlexibilityOptimizationModeEnum {
|
|
|
99
100
|
PriceLimit = "price-limit"
|
|
100
101
|
}
|
|
101
102
|
/**
|
|
102
|
-
* How much power
|
|
103
|
-
*
|
|
103
|
+
* How much power is meant for one target — one entry of the "how much watt for
|
|
104
|
+
* what" breakdown.
|
|
104
105
|
*
|
|
105
|
-
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
106
|
+
* Used in both directions, with the same shape and the same vocabulary so the
|
|
107
|
+
* two can be read against each other:
|
|
108
|
+
*
|
|
109
|
+
* - **Appliance → manager**, on a flexibility announcement: what the announced
|
|
110
|
+
* flexibility would be spent on.
|
|
111
|
+
* - **Manager → appliance**, on an available-power command
|
|
112
|
+
* (`EnyoAvailablePowerCommandData.targets`): what the granted envelope is
|
|
113
|
+
* meant for.
|
|
114
|
+
*
|
|
115
|
+
* Informational in both cases — the carrying message's own energy or power
|
|
116
|
+
* figure stays authoritative, and this breakdown never acts as a second limit. A
|
|
117
|
+
* breakdown may be partial, and a given {@link target} SHOULD appear at most
|
|
118
|
+
* once per breakdown.
|
|
109
119
|
*
|
|
110
120
|
* @example
|
|
111
121
|
* ```typescript
|
package/dist/cjs/version.cjs
CHANGED
|
@@ -9,7 +9,7 @@ exports.getSdkVersion = getSdkVersion;
|
|
|
9
9
|
/**
|
|
10
10
|
* Current version of the enyo Energy App SDK.
|
|
11
11
|
*/
|
|
12
|
-
exports.SDK_VERSION = '1.
|
|
12
|
+
exports.SDK_VERSION = '1.12.0';
|
|
13
13
|
/**
|
|
14
14
|
* Gets the current SDK version.
|
|
15
15
|
* @returns The semantic version string of the SDK
|
package/dist/cjs/version.d.cts
CHANGED
|
@@ -911,6 +911,20 @@ export interface EnyoAvailablePowerCommandData {
|
|
|
911
911
|
* Must be non-negative. The appliance must not exceed this envelope.
|
|
912
912
|
*/
|
|
913
913
|
powerW: number;
|
|
914
|
+
/**
|
|
915
|
+
* Optional breakdown of what the granted envelope is meant for and at which
|
|
916
|
+
* power — the same "how much watt for what" vocabulary an appliance uses to
|
|
917
|
+
* announce its flexibility
|
|
918
|
+
* ({@link EnyoDataBusApplianceFlexibilityAnnouncementV1}), so a grant can be
|
|
919
|
+
* read against the announcement it answers.
|
|
920
|
+
*
|
|
921
|
+
* Advisory, and never a second limit: `powerW` alone bounds what the
|
|
922
|
+
* appliance may draw. The shares SHOULD NOT exceed `powerW` in sum, may be
|
|
923
|
+
* partial, and a given target SHOULD appear at most once. An appliance that
|
|
924
|
+
* does not understand a target should fall back to spending the envelope as
|
|
925
|
+
* it sees fit rather than refusing it.
|
|
926
|
+
*/
|
|
927
|
+
targets?: EnyoFlexibilityTargetPower[];
|
|
914
928
|
/** Optional reason why this command was issued */
|
|
915
929
|
reason?: EnyoDataBusCommandReason;
|
|
916
930
|
}
|
|
@@ -2287,7 +2301,8 @@ export interface EnyoPowerSourceShare {
|
|
|
2287
2301
|
/**
|
|
2288
2302
|
* V2 command announcing the available / maximum active-power envelope (in
|
|
2289
2303
|
* Watts) a heatpump may draw, together with optional context describing what
|
|
2290
|
-
* the power should be used for ({@link EnyoHeatpumpControlPurposeEnum})
|
|
2304
|
+
* the power should be used for ({@link EnyoHeatpumpControlPurposeEnum}), how it
|
|
2305
|
+
* splits across targets ({@link EnyoAvailablePowerCommandData.targets}), and
|
|
2291
2306
|
* where it comes from ({@link EnyoPowerSourceShare}). Supersedes the deprecated
|
|
2292
2307
|
* {@link EnyoDataBusHeatpumpAvailablePowerAnnouncementV1}.
|
|
2293
2308
|
*
|
|
@@ -2304,6 +2319,14 @@ export interface EnyoDataBusSetHeatpumpAvailablePowerV2 extends EnyoDataBusMessa
|
|
|
2304
2319
|
/**
|
|
2305
2320
|
* What the heatpump should use the announced power for (e.g. DHW boost,
|
|
2306
2321
|
* pre-heating). Advisory — the appliance may still apply its own logic.
|
|
2322
|
+
*
|
|
2323
|
+
* This names a single intent for the whole envelope, and covers intents
|
|
2324
|
+
* that are not a heat sink at all ({@link
|
|
2325
|
+
* EnyoHeatpumpControlPurposeEnum.PreHeating}). To instead split the
|
|
2326
|
+
* envelope across sinks — "1500 W for hot water, 800 W for the buffer
|
|
2327
|
+
* tank" — use {@link EnyoAvailablePowerCommandData.targets}. The two may
|
|
2328
|
+
* be sent together; they are separate vocabularies and neither is derived
|
|
2329
|
+
* from the other.
|
|
2307
2330
|
*/
|
|
2308
2331
|
purpose?: EnyoHeatpumpControlPurposeEnum;
|
|
2309
2332
|
/**
|
|
@@ -38,9 +38,10 @@ export declare enum EnyoFlexibilityHeatpumpTargetTypeEnum {
|
|
|
38
38
|
Dhw = "dhw"
|
|
39
39
|
}
|
|
40
40
|
/**
|
|
41
|
-
* What
|
|
42
|
-
*
|
|
43
|
-
* {@link EnyoFlexibilityTargetPower}
|
|
41
|
+
* What a share of power is physically aimed at — the open vocabulary behind the
|
|
42
|
+
* "how much watt for what" breakdown carried by
|
|
43
|
+
* {@link EnyoFlexibilityTargetPower}, on flexibility announcements and on the
|
|
44
|
+
* available-power commands that answer them alike.
|
|
44
45
|
*
|
|
45
46
|
* The members present today all describe heat sinks, because thermal appliances
|
|
46
47
|
* are the first ones to split their draw. The enum is deliberately **not**
|
|
@@ -99,13 +100,22 @@ export declare enum EnyoFlexibilityOptimizationModeEnum {
|
|
|
99
100
|
PriceLimit = "price-limit"
|
|
100
101
|
}
|
|
101
102
|
/**
|
|
102
|
-
* How much power
|
|
103
|
-
*
|
|
103
|
+
* How much power is meant for one target — one entry of the "how much watt for
|
|
104
|
+
* what" breakdown.
|
|
104
105
|
*
|
|
105
|
-
*
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
106
|
+
* Used in both directions, with the same shape and the same vocabulary so the
|
|
107
|
+
* two can be read against each other:
|
|
108
|
+
*
|
|
109
|
+
* - **Appliance → manager**, on a flexibility announcement: what the announced
|
|
110
|
+
* flexibility would be spent on.
|
|
111
|
+
* - **Manager → appliance**, on an available-power command
|
|
112
|
+
* (`EnyoAvailablePowerCommandData.targets`): what the granted envelope is
|
|
113
|
+
* meant for.
|
|
114
|
+
*
|
|
115
|
+
* Informational in both cases — the carrying message's own energy or power
|
|
116
|
+
* figure stays authoritative, and this breakdown never acts as a second limit. A
|
|
117
|
+
* breakdown may be partial, and a given {@link target} SHOULD appear at most
|
|
118
|
+
* once per breakdown.
|
|
109
119
|
*
|
|
110
120
|
* @example
|
|
111
121
|
* ```typescript
|
|
@@ -44,9 +44,10 @@ export var EnyoFlexibilityHeatpumpTargetTypeEnum;
|
|
|
44
44
|
EnyoFlexibilityHeatpumpTargetTypeEnum["Dhw"] = "dhw";
|
|
45
45
|
})(EnyoFlexibilityHeatpumpTargetTypeEnum || (EnyoFlexibilityHeatpumpTargetTypeEnum = {}));
|
|
46
46
|
/**
|
|
47
|
-
* What
|
|
48
|
-
*
|
|
49
|
-
* {@link EnyoFlexibilityTargetPower}
|
|
47
|
+
* What a share of power is physically aimed at — the open vocabulary behind the
|
|
48
|
+
* "how much watt for what" breakdown carried by
|
|
49
|
+
* {@link EnyoFlexibilityTargetPower}, on flexibility announcements and on the
|
|
50
|
+
* available-power commands that answer them alike.
|
|
50
51
|
*
|
|
51
52
|
* The members present today all describe heat sinks, because thermal appliances
|
|
52
53
|
* are the first ones to split their draw. The enum is deliberately **not**
|
package/dist/version.d.ts
CHANGED
package/dist/version.js
CHANGED