X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2Focpp%2FResponses.ts;h=da5948a92fe7fca90ab0d4b3f5144cd1a5a0432b;hb=db652e1ea3fbb7ae3902c4b91b857bca44c87ac1;hp=7e0a3c32dd621a9e4fb4307b9d127dd982805e7c;hpb=9c13b3b52e1ab803a92f090da6920310c80c12da;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/ocpp/Responses.ts b/src/types/ocpp/Responses.ts index 7e0a3c32..da5948a9 100644 --- a/src/types/ocpp/Responses.ts +++ b/src/types/ocpp/Responses.ts @@ -1,9 +1,119 @@ -import { OCPP16BootNotificationResponse, OCPP16RegistrationStatus } from './1.6/Responses'; +import type { OCPP16MeterValuesResponse } from './1.6/MeterValues'; +import { + OCPP16AvailabilityStatus, + type OCPP16BootNotificationResponse, + OCPP16CancelReservationStatus, + OCPP16ChargingProfileStatus, + OCPP16ClearChargingProfileStatus, + OCPP16ConfigurationStatus, + type OCPP16DataTransferResponse, + OCPP16DataTransferStatus, + type OCPP16DiagnosticsStatusNotificationResponse, + type OCPP16FirmwareStatusNotificationResponse, + type OCPP16HeartbeatResponse, + OCPP16ReservationStatus, + type OCPP16StatusNotificationResponse, + OCPP16TriggerMessageStatus, + OCPP16UnlockStatus, +} from './1.6/Responses'; +import type { + OCPP20BootNotificationResponse, + OCPP20ClearCacheResponse, + OCPP20StatusNotificationResponse, +} from './2.0/Responses'; +import type { ErrorType } from './ErrorType'; +import type { MessageType } from './MessageType'; +import type { ChargingStation } from '../../charging-station'; +import type { JsonType } from '../JsonType'; -export type BootNotificationResponse = OCPP16BootNotificationResponse; +export type Response = [MessageType.CALL_RESULT_MESSAGE, string, JsonType]; -export type RegistrationStatus = typeof RegistrationStatus; +export type ErrorResponse = [MessageType.CALL_ERROR_MESSAGE, string, ErrorType, string, JsonType]; -export const RegistrationStatus = { - ...OCPP16RegistrationStatus +export type ResponseHandler = ( + chargingStation: ChargingStation, + payload: JsonType, + requestPayload?: JsonType +) => void | Promise; + +export type BootNotificationResponse = + | OCPP16BootNotificationResponse + | OCPP20BootNotificationResponse; + +export type HeartbeatResponse = OCPP16HeartbeatResponse; + +export type ClearCacheResponse = GenericResponse | OCPP20ClearCacheResponse; + +export type StatusNotificationResponse = + | OCPP16StatusNotificationResponse + | OCPP20StatusNotificationResponse; + +export type MeterValuesResponse = OCPP16MeterValuesResponse; + +export type DataTransferResponse = OCPP16DataTransferResponse; + +export type DiagnosticsStatusNotificationResponse = OCPP16DiagnosticsStatusNotificationResponse; + +export type FirmwareStatusNotificationResponse = OCPP16FirmwareStatusNotificationResponse; + +export enum GenericStatus { + Accepted = 'Accepted', + Rejected = 'Rejected', +} + +export type GenericResponse = { + status: GenericStatus; +}; + +export enum RegistrationStatusEnumType { + ACCEPTED = 'Accepted', + PENDING = 'Pending', + REJECTED = 'Rejected', +} + +export const AvailabilityStatus = { + ...OCPP16AvailabilityStatus, +} as const; +export type AvailabilityStatus = OCPP16AvailabilityStatus; + +export const ChargingProfileStatus = { + ...OCPP16ChargingProfileStatus, +} as const; +export type ChargingProfileStatus = OCPP16ChargingProfileStatus; + +export const ClearChargingProfileStatus = { + ...OCPP16ClearChargingProfileStatus, +} as const; +export type ClearChargingProfileStatus = OCPP16ClearChargingProfileStatus; + +export const ConfigurationStatus = { + ...OCPP16ConfigurationStatus, +} as const; +export type ConfigurationStatus = OCPP16ConfigurationStatus; + +export const UnlockStatus = { + ...OCPP16UnlockStatus, +} as const; +export type UnlockStatus = OCPP16UnlockStatus; + +export const TriggerMessageStatus = { + ...OCPP16TriggerMessageStatus, +} as const; +export type TriggerMessageStatus = OCPP16TriggerMessageStatus; + +export const DataTransferStatus = { + ...OCPP16DataTransferStatus, +} as const; +export type DataTransferStatus = OCPP16DataTransferStatus; + +export type ReservationStatus = OCPP16ReservationStatus; + +export const ReservationStatus = { + ...OCPP16ReservationStatus, +}; + +export type CancelReservationStatus = OCPP16CancelReservationStatus; + +export const CancelReservationStatus = { + ...OCPP16CancelReservationStatus, };