fix: ensure running transactions are stopped at CS stop
[e-mobility-charging-stations-simulator.git] / src / types / ocpp / 1.6 / Responses.ts
index d6a5d3470dcd9d07c7385f4ae09cb66f6a3b2291..c98c03a36b13210e0b448ff68f32b1e862401291 100644 (file)
@@ -1,9 +1,11 @@
-import { EmptyObject } from '../../EmptyObject';
-import { JsonType } from '../../JsonType';
-import { OCPPConfigurationKey } from '../Configuration';
+import type { OCPP16ChargingSchedule } from './ChargingProfile';
+import type { EmptyObject } from '../../EmptyObject';
+import type { JsonObject } from '../../JsonType';
+import type { GenericStatus, RegistrationStatusEnumType } from '../Common';
+import type { OCPPConfigurationKey } from '../Configuration';
 
-export interface HeartbeatResponse extends JsonType {
-  currentTime: string;
+export interface OCPP16HeartbeatResponse extends JsonObject {
+  currentTime: Date;
 }
 
 export enum OCPP16UnlockStatus {
@@ -12,7 +14,7 @@ export enum OCPP16UnlockStatus {
   NOT_SUPPORTED = 'NotSupported',
 }
 
-export interface UnlockConnectorResponse extends JsonType {
+export interface UnlockConnectorResponse extends JsonObject {
   status: OCPP16UnlockStatus;
 }
 
@@ -23,25 +25,19 @@ export enum OCPP16ConfigurationStatus {
   NOT_SUPPORTED = 'NotSupported',
 }
 
-export interface ChangeConfigurationResponse extends JsonType {
+export interface ChangeConfigurationResponse extends JsonObject {
   status: OCPP16ConfigurationStatus;
 }
 
-export enum OCPP16RegistrationStatus {
-  ACCEPTED = 'Accepted',
-  PENDING = 'Pending',
-  REJECTED = 'Rejected',
-}
-
-export interface OCPP16BootNotificationResponse extends JsonType {
-  status: OCPP16RegistrationStatus;
-  currentTime: string;
+export interface OCPP16BootNotificationResponse extends JsonObject {
+  status: RegistrationStatusEnumType;
+  currentTime: Date;
   interval: number;
 }
 
-export type StatusNotificationResponse = EmptyObject;
+export type OCPP16StatusNotificationResponse = EmptyObject;
 
-export interface GetConfigurationResponse extends JsonType {
+export interface GetConfigurationResponse extends JsonObject {
   configurationKey: OCPPConfigurationKey[];
   unknownKey: string[];
 }
@@ -52,7 +48,14 @@ export enum OCPP16ChargingProfileStatus {
   NOT_SUPPORTED = 'NotSupported',
 }
 
-export interface SetChargingProfileResponse extends JsonType {
+export interface OCPP16GetCompositeScheduleResponse extends JsonObject {
+  status: GenericStatus;
+  connectorId?: number;
+  scheduleStart?: Date;
+  chargingSchedule?: OCPP16ChargingSchedule;
+}
+
+export interface SetChargingProfileResponse extends JsonObject {
   status: OCPP16ChargingProfileStatus;
 }
 
@@ -62,7 +65,7 @@ export enum OCPP16AvailabilityStatus {
   SCHEDULED = 'Scheduled',
 }
 
-export interface ChangeAvailabilityResponse extends JsonType {
+export interface OCPP16ChangeAvailabilityResponse extends JsonObject {
   status: OCPP16AvailabilityStatus;
 }
 
@@ -71,15 +74,19 @@ export enum OCPP16ClearChargingProfileStatus {
   UNKNOWN = 'Unknown',
 }
 
-export interface ClearChargingProfileResponse extends JsonType {
+export interface ClearChargingProfileResponse extends JsonObject {
   status: OCPP16ClearChargingProfileStatus;
 }
 
-export interface GetDiagnosticsResponse extends JsonType {
+export type OCPP16UpdateFirmwareResponse = EmptyObject;
+
+export type OCPP16FirmwareStatusNotificationResponse = EmptyObject;
+
+export interface GetDiagnosticsResponse extends JsonObject {
   fileName?: string;
 }
 
-export type DiagnosticsStatusNotificationResponse = EmptyObject;
+export type OCPP16DiagnosticsStatusNotificationResponse = EmptyObject;
 
 export enum OCPP16TriggerMessageStatus {
   ACCEPTED = 'Accepted',
@@ -87,6 +94,31 @@ export enum OCPP16TriggerMessageStatus {
   NOT_IMPLEMENTED = 'NotImplemented',
 }
 
-export interface OCPP16TriggerMessageResponse extends JsonType {
+export interface OCPP16TriggerMessageResponse extends JsonObject {
   status: OCPP16TriggerMessageStatus;
 }
+
+export enum OCPP16DataTransferStatus {
+  ACCEPTED = 'Accepted',
+  REJECTED = 'Rejected',
+  UNKNOWN_MESSAGE_ID = 'UnknownMessageId',
+  UNKNOWN_VENDOR_ID = 'UnknownVendorId',
+}
+
+export interface OCPP16DataTransferResponse extends JsonObject {
+  status: OCPP16DataTransferStatus;
+  data?: string;
+}
+
+export enum OCPP16ReservationStatus {
+  ACCEPTED = 'Accepted',
+  FAULTED = 'Faulted',
+  OCCUPIED = 'Occupied',
+  REJECTED = 'Rejected',
+  UNAVAILABLE = 'Unavailable',
+  NOT_SUPPORTED = 'NotSupported',
+}
+
+export interface OCPP16ReserveNowResponse extends JsonObject {
+  status: OCPP16ReservationStatus;
+}