1 export type ChargingStationData
= {
3 stationInfo
: ChargingStationInfo
;
4 connectors
: ConnectorStatus
[];
7 export type ChargingStationInfo
= {
8 chargingStationId
?: string;
9 chargePointModel
: string;
10 chargePointVendor
: string;
11 firmwareVersion
?: string;
12 numberOfConnectors
?: number | number[];
15 templateHash
?: string;
16 chargeBoxSerialNumber
?: string;
17 chargePointSerialNumber
?: string;
18 meterSerialNumber
?: string;
19 maximumPower
?: number; // Always in Watt
20 maximumAmperage
?: number; // Always in Ampere
21 supervisionUrls
?: string | string[];
22 supervisionUrlOcppConfiguration
?: boolean;
23 supervisionUrlOcppKey
?: string;
24 supervisionUser
?: string;
25 supervisionPassword
?: string;
26 ocppVersion
?: OCPPVersion
;
27 ocppProtocol
?: OCPPProtocol
;
28 ocppStrictCompliance
?: boolean;
29 ocppPersistentConfiguration
?: boolean;
30 stationInfoPersistentConfiguration
?: boolean;
31 authorizationFile
?: string;
37 powerSharedByConnectors
?: boolean;
38 currentOutType
?: CurrentType
;
40 numberOfPhases
?: number;
41 useConnectorId0
?: boolean;
42 randomConnectors
?: boolean;
44 autoRegister
?: boolean;
45 autoReconnectMaxRetries
?: number;
46 reconnectExponentialDelay
?: boolean;
47 registrationMaxRetries
?: number;
48 enableStatistics
?: boolean;
49 mayAuthorizeAtRemoteStart
?: boolean;
50 amperageLimitationOcppKey
?: string;
51 amperageLimitationUnit
?: AmpereUnits
;
52 beginEndMeterValues
?: boolean;
53 outOfOrderEndMeterValues
?: boolean;
54 meteringPerTransaction
?: boolean;
55 transactionDataMeterValues
?: boolean;
56 mainVoltageMeterValues
?: boolean;
57 phaseLineToLineVoltageMeterValues
?: boolean;
58 customValueLimitationMeterValues
?: boolean;
59 commandsSupport
?: CommandsSupport
;
62 export enum OCPP16IncomingRequestCommand
{
64 CLEAR_CACHE
= 'ClearCache',
65 CHANGE_AVAILABILITY
= 'ChangeAvailability',
66 UNLOCK_CONNECTOR
= 'UnlockConnector',
67 GET_CONFIGURATION
= 'GetConfiguration',
68 CHANGE_CONFIGURATION
= 'ChangeConfiguration',
69 SET_CHARGING_PROFILE
= 'SetChargingProfile',
70 CLEAR_CHARGING_PROFILE
= 'ClearChargingProfile',
71 REMOTE_START_TRANSACTION
= 'RemoteStartTransaction',
72 REMOTE_STOP_TRANSACTION
= 'RemoteStopTransaction',
73 GET_DIAGNOSTICS
= 'GetDiagnostics',
74 TRIGGER_MESSAGE
= 'TriggerMessage',
77 export type IncomingRequestCommand
= OCPP16IncomingRequestCommand
;
79 export const IncomingRequestCommand
= {
80 ...OCPP16IncomingRequestCommand
,
83 export enum OCPP16RequestCommand
{
84 BOOT_NOTIFICATION
= 'BootNotification',
85 HEARTBEAT
= 'Heartbeat',
86 STATUS_NOTIFICATION
= 'StatusNotification',
87 AUTHORIZE
= 'Authorize',
88 START_TRANSACTION
= 'StartTransaction',
89 STOP_TRANSACTION
= 'StopTransaction',
90 METER_VALUES
= 'MeterValues',
91 DIAGNOSTICS_STATUS_NOTIFICATION
= 'DiagnosticsStatusNotification',
94 export type RequestCommand
= OCPP16RequestCommand
;
96 export const RequestCommand
= {
97 ...OCPP16RequestCommand
,
100 export interface CommandsSupport
{
101 incomingCommands
: Record
<IncomingRequestCommand
, boolean>;
102 outgoingCommands
?: Record
<RequestCommand
, boolean>;
105 export enum OCPPVersion
{
110 export enum OCPPProtocol
{
115 export enum CurrentType
{
120 export enum Voltage
{
127 export enum AmpereUnits
{
134 export type ConnectorStatus
= {
135 availability
: AvailabilityType
;
136 bootStatus
?: ChargePointStatus
;
137 status?: ChargePointStatus
;
138 authorizeIdTag
?: string;
139 idTagAuthorized
?: boolean;
140 localAuthorizeIdTag
?: string;
141 idTagLocalAuthorized
?: boolean;
142 transactionRemoteStarted
?: boolean;
143 transactionStarted
?: boolean;
144 transactionId
?: number;
145 transactionIdTag
?: string;
146 energyActiveImportRegisterValue
?: number; // In Wh
147 transactionEnergyActiveImportRegisterValue
?: number; // In Wh
150 export type AvailabilityType
= OCPP16AvailabilityType
;
152 export enum OCPP16AvailabilityType
{
153 INOPERATIVE
= 'Inoperative',
154 OPERATIVE
= 'Operative',
157 export type ChargePointStatus
= OCPP16ChargePointStatus
;
159 export enum OCPP16ChargePointStatus
{
160 AVAILABLE
= 'Available',
161 PREPARING
= 'Preparing',
162 CHARGING
= 'Charging',
163 OCCUPIED
= 'Occupied',
164 SUSPENDED_EVSE
= 'SuspendedEVSE',
165 SUSPENDED_EV
= 'SuspendedEV',
166 FINISHING
= 'Finishing',
167 RESERVED
= 'Reserved',
168 UNAVAILABLE
= 'Unavailable',