refactor: factor out performance records JSON file path building
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 2.0 / Requests.ts
index 72ad392eace7838e6e00295ee55189e4d6319345..d584c8289ad88db7e3d79ad56b95610062b15f99 100644 (file)
@@ -1,9 +1,16 @@
-import type { EmptyObject } from '../../EmptyObject';
-import type { JsonObject } from '../../JsonType';
+import type {
+  BootReasonEnumType,
+  EmptyObject,
+  InstallCertificateUseEnumType,
+  JsonObject,
+  OCPP20ConnectorStatusEnumType,
+  OCPP20SetVariableDataType,
+} from '../../internal';
 
 export enum OCPP20RequestCommand {
   BOOT_NOTIFICATION = 'BootNotification',
   HEARTBEAT = 'Heartbeat',
+  STATUS_NOTIFICATION = 'StatusNotification',
 }
 
 export enum OCPP20IncomingRequestCommand {
@@ -12,24 +19,12 @@ export enum OCPP20IncomingRequestCommand {
   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 = {
+type ModemType = {
   iccid?: string;
   imsi?: string;
 } & JsonObject;
 
-export type ChargingStationType = {
+type ChargingStationType = {
   serialNumber?: string;
   model: string;
   vendorName: string;
@@ -45,3 +40,19 @@ export type OCPP20BootNotificationRequest = {
 export type OCPP20HeartbeatRequest = EmptyObject;
 
 export type OCPP20ClearCacheRequest = EmptyObject;
+
+export type OCPP20StatusNotificationRequest = {
+  timestamp: Date;
+  connectorStatus: OCPP20ConnectorStatusEnumType;
+  evseId: number;
+  connectorId: number;
+} & JsonObject;
+
+export type OCPP20SetVariablesRequest = {
+  setVariableData: OCPP20SetVariableDataType[];
+} & JsonObject;
+
+export type OCPP20InstallCertificateRequest = {
+  certificateType: InstallCertificateUseEnumType;
+  certificate: string;
+} & JsonObject;