refactor(simulator): switch to internal modules export/import design
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 1.6 / Requests.ts
1 import type {
2 ChargingProfilePurposeType,
3 EmptyObject,
4 JsonObject,
5 OCPP16ChargePointErrorCode,
6 OCPP16ChargePointStatus,
7 OCPP16ChargingProfile,
8 OCPP16DiagnosticsStatus,
9 OCPP16StandardParametersKey,
10 } from '../../internal';
11
12 export enum OCPP16RequestCommand {
13 BOOT_NOTIFICATION = 'BootNotification',
14 HEARTBEAT = 'Heartbeat',
15 STATUS_NOTIFICATION = 'StatusNotification',
16 AUTHORIZE = 'Authorize',
17 START_TRANSACTION = 'StartTransaction',
18 STOP_TRANSACTION = 'StopTransaction',
19 METER_VALUES = 'MeterValues',
20 DIAGNOSTICS_STATUS_NOTIFICATION = 'DiagnosticsStatusNotification',
21 FIRMWARE_STATUS_NOTIFICATION = 'FirmwareStatusNotification',
22 DATA_TRANSFER = 'DataTransfer',
23 }
24
25 export enum OCPP16IncomingRequestCommand {
26 RESET = 'Reset',
27 CLEAR_CACHE = 'ClearCache',
28 CHANGE_AVAILABILITY = 'ChangeAvailability',
29 UNLOCK_CONNECTOR = 'UnlockConnector',
30 GET_CONFIGURATION = 'GetConfiguration',
31 CHANGE_CONFIGURATION = 'ChangeConfiguration',
32 SET_CHARGING_PROFILE = 'SetChargingProfile',
33 CLEAR_CHARGING_PROFILE = 'ClearChargingProfile',
34 REMOTE_START_TRANSACTION = 'RemoteStartTransaction',
35 REMOTE_STOP_TRANSACTION = 'RemoteStopTransaction',
36 GET_DIAGNOSTICS = 'GetDiagnostics',
37 TRIGGER_MESSAGE = 'TriggerMessage',
38 DATA_TRANSFER = 'DataTransfer',
39 UPDATE_FIRMWARE = 'UpdateFirmware',
40 }
41
42 export type OCPP16HeartbeatRequest = EmptyObject;
43
44 export interface OCPP16BootNotificationRequest extends JsonObject {
45 chargePointVendor: string;
46 chargePointModel: string;
47 chargePointSerialNumber?: string;
48 chargeBoxSerialNumber?: string;
49 firmwareVersion?: string;
50 iccid?: string;
51 imsi?: string;
52 meterType?: string;
53 meterSerialNumber?: string;
54 }
55
56 export interface OCPP16StatusNotificationRequest extends JsonObject {
57 connectorId: number;
58 errorCode: OCPP16ChargePointErrorCode;
59 status: OCPP16ChargePointStatus;
60 info?: string;
61 timestamp?: Date;
62 vendorId?: string;
63 vendorErrorCode?: string;
64 }
65
66 export type OCPP16ClearCacheRequest = EmptyObject;
67
68 export interface ChangeConfigurationRequest extends JsonObject {
69 key: string | OCPP16StandardParametersKey;
70 value: string;
71 }
72
73 export interface RemoteStartTransactionRequest extends JsonObject {
74 connectorId: number;
75 idTag: string;
76 chargingProfile?: OCPP16ChargingProfile;
77 }
78
79 export interface RemoteStopTransactionRequest extends JsonObject {
80 transactionId: number;
81 }
82
83 export interface UnlockConnectorRequest extends JsonObject {
84 connectorId: number;
85 }
86
87 export interface GetConfigurationRequest extends JsonObject {
88 key?: (string | OCPP16StandardParametersKey)[];
89 }
90
91 export enum ResetType {
92 HARD = 'Hard',
93 SOFT = 'Soft',
94 }
95
96 export interface ResetRequest extends JsonObject {
97 type: ResetType;
98 }
99
100 export interface SetChargingProfileRequest extends JsonObject {
101 connectorId: number;
102 csChargingProfiles: OCPP16ChargingProfile;
103 }
104
105 export enum OCPP16AvailabilityType {
106 INOPERATIVE = 'Inoperative',
107 OPERATIVE = 'Operative',
108 }
109
110 export interface ChangeAvailabilityRequest extends JsonObject {
111 connectorId: number;
112 type: OCPP16AvailabilityType;
113 }
114
115 export interface ClearChargingProfileRequest extends JsonObject {
116 id?: number;
117 connectorId?: number;
118 chargingProfilePurpose?: ChargingProfilePurposeType;
119 stackLevel?: number;
120 }
121
122 export interface OCPP16UpdateFirmwareRequest extends JsonObject {
123 location: string;
124 retrieveDate: Date;
125 retries?: number;
126 retryInterval?: number;
127 }
128
129 export enum OCPP16FirmwareStatus {
130 Downloaded = 'Downloaded',
131 DownloadFailed = 'DownloadFailed',
132 Downloading = 'Downloading',
133 Idle = 'Idle',
134 InstallationFailed = 'InstallationFailed',
135 Installing = 'Installing',
136 Installed = 'Installed',
137 }
138
139 export type OCPP16FirmwareStatusNotificationRequest = {
140 status: OCPP16FirmwareStatus;
141 } & JsonObject;
142
143 export interface GetDiagnosticsRequest extends JsonObject {
144 location: string;
145 retries?: number;
146 retryInterval?: number;
147 startTime?: Date;
148 stopTime?: Date;
149 }
150
151 export interface OCPP16DiagnosticsStatusNotificationRequest extends JsonObject {
152 status: OCPP16DiagnosticsStatus;
153 }
154
155 export enum OCPP16MessageTrigger {
156 BootNotification = 'BootNotification',
157 DiagnosticsStatusNotification = 'DiagnosticsStatusNotification',
158 FirmwareStatusNotification = 'FirmwareStatusNotification',
159 Heartbeat = 'Heartbeat',
160 MeterValues = 'MeterValues',
161 StatusNotification = 'StatusNotification',
162 }
163
164 export interface OCPP16TriggerMessageRequest extends JsonObject {
165 requestedMessage: OCPP16MessageTrigger;
166 connectorId?: number;
167 }
168
169 export enum OCPP16DataTransferVendorId {}
170
171 export interface OCPP16DataTransferRequest extends JsonObject {
172 vendorId: string;
173 messageId?: string;
174 data?: string;
175 }