@enyo-energy/energy-app-sdk 0.0.71 → 0.0.72
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/dist/cjs/energy-app-appliance-type.enum.cjs +1 -0
- package/dist/cjs/energy-app-appliance-type.enum.d.cts +2 -1
- package/dist/cjs/implementations/appliances/appliance-manager.cjs +1 -0
- package/dist/cjs/implementations/appliances/appliance-manager.d.cts +2 -0
- package/dist/cjs/packages/energy-app-charge.d.cts +2 -0
- package/dist/cjs/types/enyo-appliance.cjs +1 -0
- package/dist/cjs/types/enyo-appliance.d.cts +5 -1
- package/dist/cjs/types/enyo-data-bus-value.cjs +2 -0
- package/dist/cjs/types/enyo-data-bus-value.d.cts +68 -35
- package/dist/cjs/types/enyo-temperature-sensor-appliance.cjs +15 -0
- package/dist/cjs/types/enyo-temperature-sensor-appliance.d.cts +33 -0
- package/dist/cjs/version.cjs +1 -1
- package/dist/cjs/version.d.cts +1 -1
- package/dist/energy-app-appliance-type.enum.d.ts +2 -1
- package/dist/energy-app-appliance-type.enum.js +1 -0
- package/dist/implementations/appliances/appliance-manager.d.ts +2 -0
- package/dist/implementations/appliances/appliance-manager.js +1 -0
- package/dist/packages/energy-app-charge.d.ts +2 -0
- package/dist/types/enyo-appliance.d.ts +5 -1
- package/dist/types/enyo-appliance.js +1 -0
- package/dist/types/enyo-data-bus-value.d.ts +68 -35
- package/dist/types/enyo-data-bus-value.js +2 -0
- package/dist/types/enyo-temperature-sensor-appliance.d.ts +33 -0
- package/dist/types/enyo-temperature-sensor-appliance.js +12 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
|
@@ -11,4 +11,5 @@ var EnergyAppApplianceTypeEnum;
|
|
|
11
11
|
EnergyAppApplianceTypeEnum["EnergyManagement"] = "energy-management";
|
|
12
12
|
EnergyAppApplianceTypeEnum["BatteryStorage"] = "battery-storage";
|
|
13
13
|
EnergyAppApplianceTypeEnum["ClimateControl"] = "climate-control";
|
|
14
|
+
EnergyAppApplianceTypeEnum["TemperatureSensor"] = "temperature-sensor";
|
|
14
15
|
})(EnergyAppApplianceTypeEnum || (exports.EnergyAppApplianceTypeEnum = EnergyAppApplianceTypeEnum = {}));
|
|
@@ -6,5 +6,6 @@ export declare enum EnergyAppApplianceTypeEnum {
|
|
|
6
6
|
HeatPump = "heat-pump",
|
|
7
7
|
EnergyManagement = "energy-management",
|
|
8
8
|
BatteryStorage = "battery-storage",
|
|
9
|
-
ClimateControl = "climate-control"
|
|
9
|
+
ClimateControl = "climate-control",
|
|
10
|
+
TemperatureSensor = "temperature-sensor"
|
|
10
11
|
}
|
|
@@ -83,6 +83,7 @@ class ApplianceManager {
|
|
|
83
83
|
battery: appliance.battery,
|
|
84
84
|
charger: appliance.charger,
|
|
85
85
|
inverter: appliance.inverter,
|
|
86
|
+
temperatureSensor: appliance.temperatureSensor,
|
|
86
87
|
};
|
|
87
88
|
// Save appliance
|
|
88
89
|
const applianceId = await this.energyApp.useAppliances().save(applianceData, existingApplianceId);
|
|
@@ -6,6 +6,7 @@ import type { EnyoHeatpumpApplianceMetadata } from "../../types/enyo-heatpump-ap
|
|
|
6
6
|
import type { EnyoBatteryApplianceMetadata } from "../../types/enyo-battery-appliance.cjs";
|
|
7
7
|
import type { EnyoInverterApplianceMetadata } from "../../types/enyo-inverter-appliance.cjs";
|
|
8
8
|
import type { EnyoMeterAppliance } from "../../types/enyo-meter-appliance.cjs";
|
|
9
|
+
import type { EnyoTemperatureSensorApplianceMetadata } from "../../types/enyo-temperature-sensor-appliance.cjs";
|
|
9
10
|
import { IdentifierStrategy } from "./identifier-strategies.cjs";
|
|
10
11
|
/**
|
|
11
12
|
* Configuration for creating or updating an appliance.
|
|
@@ -27,6 +28,7 @@ export interface ApplianceConfig {
|
|
|
27
28
|
charger?: EnyoChargerApplianceMetadata;
|
|
28
29
|
heatpump?: EnyoHeatpumpApplianceMetadata;
|
|
29
30
|
battery?: EnyoBatteryApplianceMetadata;
|
|
31
|
+
temperatureSensor?: EnyoTemperatureSensorApplianceMetadata;
|
|
30
32
|
}
|
|
31
33
|
/**
|
|
32
34
|
* Configuration options for the ApplianceManager.
|
|
@@ -12,4 +12,6 @@ export interface EnergyAppCharge {
|
|
|
12
12
|
getById: (id: string) => Promise<EnyoCharge | null>;
|
|
13
13
|
/** to find the currently active charge */
|
|
14
14
|
findActiveCharge: (applianceId: string) => Promise<EnyoCharge | null>;
|
|
15
|
+
/** Find the currently active charge by appliance ID and transaction ID */
|
|
16
|
+
findActiveChargeByTransactionId: (applianceId: string, transactionId: string) => Promise<EnyoCharge | null>;
|
|
15
17
|
}
|
|
@@ -8,6 +8,7 @@ var EnyoApplianceTypeEnum;
|
|
|
8
8
|
EnyoApplianceTypeEnum["Storage"] = "Storage";
|
|
9
9
|
EnyoApplianceTypeEnum["Meter"] = "Meter";
|
|
10
10
|
EnyoApplianceTypeEnum["Heatpump"] = "Heatpump";
|
|
11
|
+
EnyoApplianceTypeEnum["TemperatureSensor"] = "TemperatureSensor";
|
|
11
12
|
})(EnyoApplianceTypeEnum || (exports.EnyoApplianceTypeEnum = EnyoApplianceTypeEnum = {}));
|
|
12
13
|
var EnyoApplianceStateEnum;
|
|
13
14
|
(function (EnyoApplianceStateEnum) {
|
|
@@ -4,12 +4,14 @@ import { EnyoHeatpumpApplianceMetadata } from "./enyo-heatpump-appliance.cjs";
|
|
|
4
4
|
import { EnyoBatteryApplianceMetadata } from "./enyo-battery-appliance.cjs";
|
|
5
5
|
import { EnyoInverterApplianceMetadata } from "./enyo-inverter-appliance.cjs";
|
|
6
6
|
import { EnyoMeterAppliance } from "./enyo-meter-appliance.cjs";
|
|
7
|
+
import { EnyoTemperatureSensorApplianceMetadata } from "./enyo-temperature-sensor-appliance.cjs";
|
|
7
8
|
export declare enum EnyoApplianceTypeEnum {
|
|
8
9
|
Inverter = "Inverter",
|
|
9
10
|
Charger = "Charger",
|
|
10
11
|
Storage = "Storage",
|
|
11
12
|
Meter = "Meter",
|
|
12
|
-
Heatpump = "Heatpump"
|
|
13
|
+
Heatpump = "Heatpump",
|
|
14
|
+
TemperatureSensor = "TemperatureSensor"
|
|
13
15
|
}
|
|
14
16
|
export interface EnyoApplianceName {
|
|
15
17
|
language: EnergyAppPackageLanguage;
|
|
@@ -86,4 +88,6 @@ export interface EnyoAppliance {
|
|
|
86
88
|
heatpump?: EnyoHeatpumpApplianceMetadata;
|
|
87
89
|
/** Optional Metadata of the Appliance if of type Battery */
|
|
88
90
|
battery?: EnyoBatteryApplianceMetadata;
|
|
91
|
+
/** Optional Metadata of the Appliance if of type TemperatureSensor */
|
|
92
|
+
temperatureSensor?: EnyoTemperatureSensorApplianceMetadata;
|
|
89
93
|
}
|
|
@@ -113,6 +113,8 @@ var EnyoDataBusMessageEnum;
|
|
|
113
113
|
EnyoDataBusMessageEnum["SetStorageDischargeLimitV1"] = "SetStorageDischargeLimitV1";
|
|
114
114
|
EnyoDataBusMessageEnum["SetInverterFeedInLimitV1"] = "SetInverterFeedInLimitV1";
|
|
115
115
|
EnyoDataBusMessageEnum["CommandAcknowledgeV1"] = "CommandAcknowledgeV1";
|
|
116
|
+
EnyoDataBusMessageEnum["TemperatureSensorValuesUpdateV1"] = "TemperatureSensorValuesUpdateV1";
|
|
117
|
+
EnyoDataBusMessageEnum["HeatpumpTemperaturesUpdateV1"] = "HeatpumpTemperaturesUpdateV1";
|
|
116
118
|
})(EnyoDataBusMessageEnum || (exports.EnyoDataBusMessageEnum = EnyoDataBusMessageEnum = {}));
|
|
117
119
|
/**
|
|
118
120
|
* Possible answers an appliance can give when acknowledging a command.
|
|
@@ -104,21 +104,6 @@ export interface EnyoAggregatedStateApplianceValues {
|
|
|
104
104
|
kWh?: number;
|
|
105
105
|
availableUntilIsoTimestamp?: string;
|
|
106
106
|
};
|
|
107
|
-
outdoorTemperatureC?: number;
|
|
108
|
-
heatpumpFlowTemperatureC?: number;
|
|
109
|
-
domesticHotWater?: {
|
|
110
|
-
index: number;
|
|
111
|
-
targetTemperatureC: number;
|
|
112
|
-
temperatureC: number;
|
|
113
|
-
}[];
|
|
114
|
-
heatingCircuits?: {
|
|
115
|
-
index: number;
|
|
116
|
-
targetTemperatureC: number;
|
|
117
|
-
temperatureC: number;
|
|
118
|
-
}[];
|
|
119
|
-
bufferTank?: {
|
|
120
|
-
temperatureC: number;
|
|
121
|
-
};
|
|
122
107
|
}
|
|
123
108
|
export declare enum EnyoDataBusMessageEnum {
|
|
124
109
|
InverterValuesUpdateV1 = "InverterValuesUpdateV1",
|
|
@@ -147,7 +132,9 @@ export declare enum EnyoDataBusMessageEnum {
|
|
|
147
132
|
StopStorageGridChargeV1 = "StopStorageGridChargeV1",
|
|
148
133
|
SetStorageDischargeLimitV1 = "SetStorageDischargeLimitV1",
|
|
149
134
|
SetInverterFeedInLimitV1 = "SetInverterFeedInLimitV1",
|
|
150
|
-
CommandAcknowledgeV1 = "CommandAcknowledgeV1"
|
|
135
|
+
CommandAcknowledgeV1 = "CommandAcknowledgeV1",
|
|
136
|
+
TemperatureSensorValuesUpdateV1 = "TemperatureSensorValuesUpdateV1",
|
|
137
|
+
HeatpumpTemperaturesUpdateV1 = "HeatpumpTemperaturesUpdateV1"
|
|
151
138
|
}
|
|
152
139
|
export type EnyoDataBusMessageResolution = '10s' | '30s' | '1m' | '15m' | '1h' | '1d' | 'dynamic';
|
|
153
140
|
export interface EnyoDataBusMessage {
|
|
@@ -202,25 +189,6 @@ export interface EnyoDataBusHeatpumpValuesV1 extends EnyoDataBusMessage {
|
|
|
202
189
|
/** Power generation for domestic hot water in Wh (meter value)*/
|
|
203
190
|
heatGenerationDomesticHotWaterWh?: number;
|
|
204
191
|
};
|
|
205
|
-
temperatures?: {
|
|
206
|
-
outdoorTemperatureC?: number;
|
|
207
|
-
/** The current temperature of the domestic hot water tank */
|
|
208
|
-
domesticHotWater?: {
|
|
209
|
-
index: number;
|
|
210
|
-
targetTemperatureC: number;
|
|
211
|
-
temperatureC: number;
|
|
212
|
-
}[];
|
|
213
|
-
/** The current flow temperature of the heatpump */
|
|
214
|
-
heatpumpFlowTemperatureC?: number;
|
|
215
|
-
heatingCircuits?: {
|
|
216
|
-
index: number;
|
|
217
|
-
targetTemperatureC: number;
|
|
218
|
-
temperatureC: number;
|
|
219
|
-
}[];
|
|
220
|
-
bufferTank?: {
|
|
221
|
-
temperatureC: number;
|
|
222
|
-
};
|
|
223
|
-
};
|
|
224
192
|
};
|
|
225
193
|
}
|
|
226
194
|
export interface EnyoDataBusBatteryValuesUpdateV1 extends EnyoDataBusMessage {
|
|
@@ -708,3 +676,68 @@ export interface EnyoDataBusCommandAcknowledgeV1 extends EnyoDataBusMessage {
|
|
|
708
676
|
rejectionReason?: string;
|
|
709
677
|
};
|
|
710
678
|
}
|
|
679
|
+
/**
|
|
680
|
+
* A single temperature sensor reading within a temperature sensor values update.
|
|
681
|
+
*/
|
|
682
|
+
export interface EnyoTemperatureSensorValue {
|
|
683
|
+
/** Unique sensor identifier */
|
|
684
|
+
id: string;
|
|
685
|
+
/** Current temperature in Celsius */
|
|
686
|
+
temperatureC: number;
|
|
687
|
+
/** Optional target temperature in Celsius */
|
|
688
|
+
targetTemperatureC?: number;
|
|
689
|
+
}
|
|
690
|
+
/**
|
|
691
|
+
* Data bus message for reporting temperature sensor values.
|
|
692
|
+
* Contains an array of sensor readings from a temperature sensor appliance.
|
|
693
|
+
*/
|
|
694
|
+
export interface EnyoDataBusTemperatureSensorValuesV1 extends EnyoDataBusMessage {
|
|
695
|
+
type: 'message';
|
|
696
|
+
message: EnyoDataBusMessageEnum.TemperatureSensorValuesUpdateV1;
|
|
697
|
+
/** ID of the temperature sensor appliance that delivered these values */
|
|
698
|
+
applianceId: string;
|
|
699
|
+
data: {
|
|
700
|
+
/** Array of temperature sensor readings */
|
|
701
|
+
sensors: EnyoTemperatureSensorValue[];
|
|
702
|
+
};
|
|
703
|
+
}
|
|
704
|
+
/**
|
|
705
|
+
* Data bus message for reporting heatpump-specific temperature values.
|
|
706
|
+
* Contains outdoor temperature, domestic hot water temperatures, flow temperature,
|
|
707
|
+
* heating circuit temperatures, and buffer tank temperature from a heatpump appliance.
|
|
708
|
+
*/
|
|
709
|
+
export interface EnyoDataBusHeatpumpTemperaturesV1 extends EnyoDataBusMessage {
|
|
710
|
+
type: 'message';
|
|
711
|
+
message: EnyoDataBusMessageEnum.HeatpumpTemperaturesUpdateV1;
|
|
712
|
+
/** ID of the heatpump appliance that delivered these temperature values */
|
|
713
|
+
applianceId: string;
|
|
714
|
+
data: {
|
|
715
|
+
/** Outdoor temperature in Celsius */
|
|
716
|
+
outdoorTemperatureC?: number;
|
|
717
|
+
/** Domestic hot water tank temperatures */
|
|
718
|
+
domesticHotWater?: {
|
|
719
|
+
/** Index of the domestic hot water tank */
|
|
720
|
+
index: number;
|
|
721
|
+
/** Target temperature in Celsius */
|
|
722
|
+
targetTemperatureC: number;
|
|
723
|
+
/** Current temperature in Celsius */
|
|
724
|
+
temperatureC: number;
|
|
725
|
+
}[];
|
|
726
|
+
/** Heatpump flow temperature in Celsius */
|
|
727
|
+
heatpumpFlowTemperatureC?: number;
|
|
728
|
+
/** Heating circuit temperatures */
|
|
729
|
+
heatingCircuits?: {
|
|
730
|
+
/** Index of the heating circuit */
|
|
731
|
+
index: number;
|
|
732
|
+
/** Target temperature in Celsius */
|
|
733
|
+
targetTemperatureC: number;
|
|
734
|
+
/** Current temperature in Celsius */
|
|
735
|
+
temperatureC: number;
|
|
736
|
+
}[];
|
|
737
|
+
/** Buffer tank temperature */
|
|
738
|
+
bufferTank?: {
|
|
739
|
+
/** Current buffer tank temperature in Celsius */
|
|
740
|
+
temperatureC: number;
|
|
741
|
+
};
|
|
742
|
+
};
|
|
743
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EnyoTemperatureSensorTypeEnum = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Enum representing the type classification of a temperature sensor.
|
|
6
|
+
*/
|
|
7
|
+
var EnyoTemperatureSensorTypeEnum;
|
|
8
|
+
(function (EnyoTemperatureSensorTypeEnum) {
|
|
9
|
+
/** Outdoor ambient temperature sensor */
|
|
10
|
+
EnyoTemperatureSensorTypeEnum["Outdoor"] = "Outdoor";
|
|
11
|
+
/** Room temperature sensor */
|
|
12
|
+
EnyoTemperatureSensorTypeEnum["Room"] = "Room";
|
|
13
|
+
/** Other/unclassified temperature sensor */
|
|
14
|
+
EnyoTemperatureSensorTypeEnum["Other"] = "Other";
|
|
15
|
+
})(EnyoTemperatureSensorTypeEnum || (exports.EnyoTemperatureSensorTypeEnum = EnyoTemperatureSensorTypeEnum = {}));
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { EnergyAppPackageLanguage } from "../energy-app-package-definition.cjs";
|
|
2
|
+
/**
|
|
3
|
+
* Enum representing the type classification of a temperature sensor.
|
|
4
|
+
*/
|
|
5
|
+
export declare enum EnyoTemperatureSensorTypeEnum {
|
|
6
|
+
/** Outdoor ambient temperature sensor */
|
|
7
|
+
Outdoor = "Outdoor",
|
|
8
|
+
/** Room temperature sensor */
|
|
9
|
+
Room = "Room",
|
|
10
|
+
/** Other/unclassified temperature sensor */
|
|
11
|
+
Other = "Other"
|
|
12
|
+
}
|
|
13
|
+
export interface EnyoApplianceSensorName {
|
|
14
|
+
language: EnergyAppPackageLanguage;
|
|
15
|
+
name: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Represents a single temperature sensor definition within an appliance.
|
|
19
|
+
*/
|
|
20
|
+
export interface EnyoTemperatureSensor {
|
|
21
|
+
/** Unique identifier for the sensor */
|
|
22
|
+
id: string;
|
|
23
|
+
name: EnyoApplianceSensorName[];
|
|
24
|
+
/** Optional type classification of the sensor */
|
|
25
|
+
type?: EnyoTemperatureSensorTypeEnum;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Metadata for a temperature sensor appliance, containing the list of sensors it manages.
|
|
29
|
+
*/
|
|
30
|
+
export interface EnyoTemperatureSensorApplianceMetadata {
|
|
31
|
+
/** Array of sensor definitions managed by this appliance */
|
|
32
|
+
sensors: EnyoTemperatureSensor[];
|
|
33
|
+
}
|
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 = '0.0.
|
|
12
|
+
exports.SDK_VERSION = '0.0.72';
|
|
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
|
@@ -6,5 +6,6 @@ export declare enum EnergyAppApplianceTypeEnum {
|
|
|
6
6
|
HeatPump = "heat-pump",
|
|
7
7
|
EnergyManagement = "energy-management",
|
|
8
8
|
BatteryStorage = "battery-storage",
|
|
9
|
-
ClimateControl = "climate-control"
|
|
9
|
+
ClimateControl = "climate-control",
|
|
10
|
+
TemperatureSensor = "temperature-sensor"
|
|
10
11
|
}
|
|
@@ -8,4 +8,5 @@ export var EnergyAppApplianceTypeEnum;
|
|
|
8
8
|
EnergyAppApplianceTypeEnum["EnergyManagement"] = "energy-management";
|
|
9
9
|
EnergyAppApplianceTypeEnum["BatteryStorage"] = "battery-storage";
|
|
10
10
|
EnergyAppApplianceTypeEnum["ClimateControl"] = "climate-control";
|
|
11
|
+
EnergyAppApplianceTypeEnum["TemperatureSensor"] = "temperature-sensor";
|
|
11
12
|
})(EnergyAppApplianceTypeEnum || (EnergyAppApplianceTypeEnum = {}));
|
|
@@ -6,6 +6,7 @@ import type { EnyoHeatpumpApplianceMetadata } from "../../types/enyo-heatpump-ap
|
|
|
6
6
|
import type { EnyoBatteryApplianceMetadata } from "../../types/enyo-battery-appliance.js";
|
|
7
7
|
import type { EnyoInverterApplianceMetadata } from "../../types/enyo-inverter-appliance.js";
|
|
8
8
|
import type { EnyoMeterAppliance } from "../../types/enyo-meter-appliance.js";
|
|
9
|
+
import type { EnyoTemperatureSensorApplianceMetadata } from "../../types/enyo-temperature-sensor-appliance.js";
|
|
9
10
|
import { IdentifierStrategy } from "./identifier-strategies.js";
|
|
10
11
|
/**
|
|
11
12
|
* Configuration for creating or updating an appliance.
|
|
@@ -27,6 +28,7 @@ export interface ApplianceConfig {
|
|
|
27
28
|
charger?: EnyoChargerApplianceMetadata;
|
|
28
29
|
heatpump?: EnyoHeatpumpApplianceMetadata;
|
|
29
30
|
battery?: EnyoBatteryApplianceMetadata;
|
|
31
|
+
temperatureSensor?: EnyoTemperatureSensorApplianceMetadata;
|
|
30
32
|
}
|
|
31
33
|
/**
|
|
32
34
|
* Configuration options for the ApplianceManager.
|
|
@@ -80,6 +80,7 @@ export class ApplianceManager {
|
|
|
80
80
|
battery: appliance.battery,
|
|
81
81
|
charger: appliance.charger,
|
|
82
82
|
inverter: appliance.inverter,
|
|
83
|
+
temperatureSensor: appliance.temperatureSensor,
|
|
83
84
|
};
|
|
84
85
|
// Save appliance
|
|
85
86
|
const applianceId = await this.energyApp.useAppliances().save(applianceData, existingApplianceId);
|
|
@@ -12,4 +12,6 @@ export interface EnergyAppCharge {
|
|
|
12
12
|
getById: (id: string) => Promise<EnyoCharge | null>;
|
|
13
13
|
/** to find the currently active charge */
|
|
14
14
|
findActiveCharge: (applianceId: string) => Promise<EnyoCharge | null>;
|
|
15
|
+
/** Find the currently active charge by appliance ID and transaction ID */
|
|
16
|
+
findActiveChargeByTransactionId: (applianceId: string, transactionId: string) => Promise<EnyoCharge | null>;
|
|
15
17
|
}
|
|
@@ -4,12 +4,14 @@ import { EnyoHeatpumpApplianceMetadata } from "./enyo-heatpump-appliance.js";
|
|
|
4
4
|
import { EnyoBatteryApplianceMetadata } from "./enyo-battery-appliance.js";
|
|
5
5
|
import { EnyoInverterApplianceMetadata } from "./enyo-inverter-appliance.js";
|
|
6
6
|
import { EnyoMeterAppliance } from "./enyo-meter-appliance.js";
|
|
7
|
+
import { EnyoTemperatureSensorApplianceMetadata } from "./enyo-temperature-sensor-appliance.js";
|
|
7
8
|
export declare enum EnyoApplianceTypeEnum {
|
|
8
9
|
Inverter = "Inverter",
|
|
9
10
|
Charger = "Charger",
|
|
10
11
|
Storage = "Storage",
|
|
11
12
|
Meter = "Meter",
|
|
12
|
-
Heatpump = "Heatpump"
|
|
13
|
+
Heatpump = "Heatpump",
|
|
14
|
+
TemperatureSensor = "TemperatureSensor"
|
|
13
15
|
}
|
|
14
16
|
export interface EnyoApplianceName {
|
|
15
17
|
language: EnergyAppPackageLanguage;
|
|
@@ -86,4 +88,6 @@ export interface EnyoAppliance {
|
|
|
86
88
|
heatpump?: EnyoHeatpumpApplianceMetadata;
|
|
87
89
|
/** Optional Metadata of the Appliance if of type Battery */
|
|
88
90
|
battery?: EnyoBatteryApplianceMetadata;
|
|
91
|
+
/** Optional Metadata of the Appliance if of type TemperatureSensor */
|
|
92
|
+
temperatureSensor?: EnyoTemperatureSensorApplianceMetadata;
|
|
89
93
|
}
|
|
@@ -5,6 +5,7 @@ export var EnyoApplianceTypeEnum;
|
|
|
5
5
|
EnyoApplianceTypeEnum["Storage"] = "Storage";
|
|
6
6
|
EnyoApplianceTypeEnum["Meter"] = "Meter";
|
|
7
7
|
EnyoApplianceTypeEnum["Heatpump"] = "Heatpump";
|
|
8
|
+
EnyoApplianceTypeEnum["TemperatureSensor"] = "TemperatureSensor";
|
|
8
9
|
})(EnyoApplianceTypeEnum || (EnyoApplianceTypeEnum = {}));
|
|
9
10
|
export var EnyoApplianceStateEnum;
|
|
10
11
|
(function (EnyoApplianceStateEnum) {
|
|
@@ -104,21 +104,6 @@ export interface EnyoAggregatedStateApplianceValues {
|
|
|
104
104
|
kWh?: number;
|
|
105
105
|
availableUntilIsoTimestamp?: string;
|
|
106
106
|
};
|
|
107
|
-
outdoorTemperatureC?: number;
|
|
108
|
-
heatpumpFlowTemperatureC?: number;
|
|
109
|
-
domesticHotWater?: {
|
|
110
|
-
index: number;
|
|
111
|
-
targetTemperatureC: number;
|
|
112
|
-
temperatureC: number;
|
|
113
|
-
}[];
|
|
114
|
-
heatingCircuits?: {
|
|
115
|
-
index: number;
|
|
116
|
-
targetTemperatureC: number;
|
|
117
|
-
temperatureC: number;
|
|
118
|
-
}[];
|
|
119
|
-
bufferTank?: {
|
|
120
|
-
temperatureC: number;
|
|
121
|
-
};
|
|
122
107
|
}
|
|
123
108
|
export declare enum EnyoDataBusMessageEnum {
|
|
124
109
|
InverterValuesUpdateV1 = "InverterValuesUpdateV1",
|
|
@@ -147,7 +132,9 @@ export declare enum EnyoDataBusMessageEnum {
|
|
|
147
132
|
StopStorageGridChargeV1 = "StopStorageGridChargeV1",
|
|
148
133
|
SetStorageDischargeLimitV1 = "SetStorageDischargeLimitV1",
|
|
149
134
|
SetInverterFeedInLimitV1 = "SetInverterFeedInLimitV1",
|
|
150
|
-
CommandAcknowledgeV1 = "CommandAcknowledgeV1"
|
|
135
|
+
CommandAcknowledgeV1 = "CommandAcknowledgeV1",
|
|
136
|
+
TemperatureSensorValuesUpdateV1 = "TemperatureSensorValuesUpdateV1",
|
|
137
|
+
HeatpumpTemperaturesUpdateV1 = "HeatpumpTemperaturesUpdateV1"
|
|
151
138
|
}
|
|
152
139
|
export type EnyoDataBusMessageResolution = '10s' | '30s' | '1m' | '15m' | '1h' | '1d' | 'dynamic';
|
|
153
140
|
export interface EnyoDataBusMessage {
|
|
@@ -202,25 +189,6 @@ export interface EnyoDataBusHeatpumpValuesV1 extends EnyoDataBusMessage {
|
|
|
202
189
|
/** Power generation for domestic hot water in Wh (meter value)*/
|
|
203
190
|
heatGenerationDomesticHotWaterWh?: number;
|
|
204
191
|
};
|
|
205
|
-
temperatures?: {
|
|
206
|
-
outdoorTemperatureC?: number;
|
|
207
|
-
/** The current temperature of the domestic hot water tank */
|
|
208
|
-
domesticHotWater?: {
|
|
209
|
-
index: number;
|
|
210
|
-
targetTemperatureC: number;
|
|
211
|
-
temperatureC: number;
|
|
212
|
-
}[];
|
|
213
|
-
/** The current flow temperature of the heatpump */
|
|
214
|
-
heatpumpFlowTemperatureC?: number;
|
|
215
|
-
heatingCircuits?: {
|
|
216
|
-
index: number;
|
|
217
|
-
targetTemperatureC: number;
|
|
218
|
-
temperatureC: number;
|
|
219
|
-
}[];
|
|
220
|
-
bufferTank?: {
|
|
221
|
-
temperatureC: number;
|
|
222
|
-
};
|
|
223
|
-
};
|
|
224
192
|
};
|
|
225
193
|
}
|
|
226
194
|
export interface EnyoDataBusBatteryValuesUpdateV1 extends EnyoDataBusMessage {
|
|
@@ -708,3 +676,68 @@ export interface EnyoDataBusCommandAcknowledgeV1 extends EnyoDataBusMessage {
|
|
|
708
676
|
rejectionReason?: string;
|
|
709
677
|
};
|
|
710
678
|
}
|
|
679
|
+
/**
|
|
680
|
+
* A single temperature sensor reading within a temperature sensor values update.
|
|
681
|
+
*/
|
|
682
|
+
export interface EnyoTemperatureSensorValue {
|
|
683
|
+
/** Unique sensor identifier */
|
|
684
|
+
id: string;
|
|
685
|
+
/** Current temperature in Celsius */
|
|
686
|
+
temperatureC: number;
|
|
687
|
+
/** Optional target temperature in Celsius */
|
|
688
|
+
targetTemperatureC?: number;
|
|
689
|
+
}
|
|
690
|
+
/**
|
|
691
|
+
* Data bus message for reporting temperature sensor values.
|
|
692
|
+
* Contains an array of sensor readings from a temperature sensor appliance.
|
|
693
|
+
*/
|
|
694
|
+
export interface EnyoDataBusTemperatureSensorValuesV1 extends EnyoDataBusMessage {
|
|
695
|
+
type: 'message';
|
|
696
|
+
message: EnyoDataBusMessageEnum.TemperatureSensorValuesUpdateV1;
|
|
697
|
+
/** ID of the temperature sensor appliance that delivered these values */
|
|
698
|
+
applianceId: string;
|
|
699
|
+
data: {
|
|
700
|
+
/** Array of temperature sensor readings */
|
|
701
|
+
sensors: EnyoTemperatureSensorValue[];
|
|
702
|
+
};
|
|
703
|
+
}
|
|
704
|
+
/**
|
|
705
|
+
* Data bus message for reporting heatpump-specific temperature values.
|
|
706
|
+
* Contains outdoor temperature, domestic hot water temperatures, flow temperature,
|
|
707
|
+
* heating circuit temperatures, and buffer tank temperature from a heatpump appliance.
|
|
708
|
+
*/
|
|
709
|
+
export interface EnyoDataBusHeatpumpTemperaturesV1 extends EnyoDataBusMessage {
|
|
710
|
+
type: 'message';
|
|
711
|
+
message: EnyoDataBusMessageEnum.HeatpumpTemperaturesUpdateV1;
|
|
712
|
+
/** ID of the heatpump appliance that delivered these temperature values */
|
|
713
|
+
applianceId: string;
|
|
714
|
+
data: {
|
|
715
|
+
/** Outdoor temperature in Celsius */
|
|
716
|
+
outdoorTemperatureC?: number;
|
|
717
|
+
/** Domestic hot water tank temperatures */
|
|
718
|
+
domesticHotWater?: {
|
|
719
|
+
/** Index of the domestic hot water tank */
|
|
720
|
+
index: number;
|
|
721
|
+
/** Target temperature in Celsius */
|
|
722
|
+
targetTemperatureC: number;
|
|
723
|
+
/** Current temperature in Celsius */
|
|
724
|
+
temperatureC: number;
|
|
725
|
+
}[];
|
|
726
|
+
/** Heatpump flow temperature in Celsius */
|
|
727
|
+
heatpumpFlowTemperatureC?: number;
|
|
728
|
+
/** Heating circuit temperatures */
|
|
729
|
+
heatingCircuits?: {
|
|
730
|
+
/** Index of the heating circuit */
|
|
731
|
+
index: number;
|
|
732
|
+
/** Target temperature in Celsius */
|
|
733
|
+
targetTemperatureC: number;
|
|
734
|
+
/** Current temperature in Celsius */
|
|
735
|
+
temperatureC: number;
|
|
736
|
+
}[];
|
|
737
|
+
/** Buffer tank temperature */
|
|
738
|
+
bufferTank?: {
|
|
739
|
+
/** Current buffer tank temperature in Celsius */
|
|
740
|
+
temperatureC: number;
|
|
741
|
+
};
|
|
742
|
+
};
|
|
743
|
+
}
|
|
@@ -110,6 +110,8 @@ export var EnyoDataBusMessageEnum;
|
|
|
110
110
|
EnyoDataBusMessageEnum["SetStorageDischargeLimitV1"] = "SetStorageDischargeLimitV1";
|
|
111
111
|
EnyoDataBusMessageEnum["SetInverterFeedInLimitV1"] = "SetInverterFeedInLimitV1";
|
|
112
112
|
EnyoDataBusMessageEnum["CommandAcknowledgeV1"] = "CommandAcknowledgeV1";
|
|
113
|
+
EnyoDataBusMessageEnum["TemperatureSensorValuesUpdateV1"] = "TemperatureSensorValuesUpdateV1";
|
|
114
|
+
EnyoDataBusMessageEnum["HeatpumpTemperaturesUpdateV1"] = "HeatpumpTemperaturesUpdateV1";
|
|
113
115
|
})(EnyoDataBusMessageEnum || (EnyoDataBusMessageEnum = {}));
|
|
114
116
|
/**
|
|
115
117
|
* Possible answers an appliance can give when acknowledging a command.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { EnergyAppPackageLanguage } from "../energy-app-package-definition.js";
|
|
2
|
+
/**
|
|
3
|
+
* Enum representing the type classification of a temperature sensor.
|
|
4
|
+
*/
|
|
5
|
+
export declare enum EnyoTemperatureSensorTypeEnum {
|
|
6
|
+
/** Outdoor ambient temperature sensor */
|
|
7
|
+
Outdoor = "Outdoor",
|
|
8
|
+
/** Room temperature sensor */
|
|
9
|
+
Room = "Room",
|
|
10
|
+
/** Other/unclassified temperature sensor */
|
|
11
|
+
Other = "Other"
|
|
12
|
+
}
|
|
13
|
+
export interface EnyoApplianceSensorName {
|
|
14
|
+
language: EnergyAppPackageLanguage;
|
|
15
|
+
name: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Represents a single temperature sensor definition within an appliance.
|
|
19
|
+
*/
|
|
20
|
+
export interface EnyoTemperatureSensor {
|
|
21
|
+
/** Unique identifier for the sensor */
|
|
22
|
+
id: string;
|
|
23
|
+
name: EnyoApplianceSensorName[];
|
|
24
|
+
/** Optional type classification of the sensor */
|
|
25
|
+
type?: EnyoTemperatureSensorTypeEnum;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Metadata for a temperature sensor appliance, containing the list of sensors it manages.
|
|
29
|
+
*/
|
|
30
|
+
export interface EnyoTemperatureSensorApplianceMetadata {
|
|
31
|
+
/** Array of sensor definitions managed by this appliance */
|
|
32
|
+
sensors: EnyoTemperatureSensor[];
|
|
33
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Enum representing the type classification of a temperature sensor.
|
|
3
|
+
*/
|
|
4
|
+
export var EnyoTemperatureSensorTypeEnum;
|
|
5
|
+
(function (EnyoTemperatureSensorTypeEnum) {
|
|
6
|
+
/** Outdoor ambient temperature sensor */
|
|
7
|
+
EnyoTemperatureSensorTypeEnum["Outdoor"] = "Outdoor";
|
|
8
|
+
/** Room temperature sensor */
|
|
9
|
+
EnyoTemperatureSensorTypeEnum["Room"] = "Room";
|
|
10
|
+
/** Other/unclassified temperature sensor */
|
|
11
|
+
EnyoTemperatureSensorTypeEnum["Other"] = "Other";
|
|
12
|
+
})(EnyoTemperatureSensorTypeEnum || (EnyoTemperatureSensorTypeEnum = {}));
|
package/dist/version.d.ts
CHANGED
package/dist/version.js
CHANGED