Add Hearbeat command to OCPP 2.0.1
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 2.0 / Requests.ts
index 04c6c91da2733dbfab51270bed5acb03b56440ca..72ad392eace7838e6e00295ee55189e4d6319345 100644 (file)
@@ -1,3 +1,47 @@
-export enum OCPP20RequestCommand {}
+import type { EmptyObject } from '../../EmptyObject';
+import type { JsonObject } from '../../JsonType';
 
-export enum OCPP20IncomingRequestCommand {}
+export enum OCPP20RequestCommand {
+  BOOT_NOTIFICATION = 'BootNotification',
+  HEARTBEAT = 'Heartbeat',
+}
+
+export enum OCPP20IncomingRequestCommand {
+  CLEAR_CACHE = 'ClearCache',
+  REQUEST_START_TRANSACTION = 'RequestStartTransaction',
+  REQUEST_STOP_TRANSACTION = 'RequestStopTransaction',
+}
+
+export enum BootReasonEnumType {
+  ApplicationReset = 'ApplicationReset',
+  FirmwareUpdate = 'FirmwareUpdate',
+  LocalReset = 'LocalReset',
+  PowerUp = 'PowerUp',
+  RemoteReset = 'RemoteReset',
+  ScheduledReset = 'ScheduledReset',
+  Triggered = 'Triggered',
+  Unknown = 'Unknown',
+  Watchdog = 'Watchdog',
+}
+
+export type ModemType = {
+  iccid?: string;
+  imsi?: string;
+} & JsonObject;
+
+export type ChargingStationType = {
+  serialNumber?: string;
+  model: string;
+  vendorName: string;
+  firmwareVersion?: string;
+  modem?: ModemType;
+} & JsonObject;
+
+export type OCPP20BootNotificationRequest = {
+  reason: BootReasonEnumType;
+  chargingStation: ChargingStationType;
+} & JsonObject;
+
+export type OCPP20HeartbeatRequest = EmptyObject;
+
+export type OCPP20ClearCacheRequest = EmptyObject;