X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2Focpp%2FRequests.ts;h=c718f1e03ab5b61c6fc8b92cdf49dd1154f179fd;hb=a474cbe107fedbe17398e5d21f852f0ce0d5ca2f;hp=1aa015b6c956500e953a0d3bc23caa590f244dbe;hpb=d900c8d7647a6119a2c8f9f1c283422a8398ef75;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/ocpp/Requests.ts b/src/types/ocpp/Requests.ts index 1aa015b6..c718f1e0 100644 --- a/src/types/ocpp/Requests.ts +++ b/src/types/ocpp/Requests.ts @@ -1,83 +1,115 @@ -import type ChargingStation from '../../charging-station/ChargingStation'; -import type OCPPError from '../../exception/OCPPError'; -import type { JsonType } from '../JsonType'; -import { OCPP16DiagnosticsStatus } from './1.6/DiagnosticsStatus'; -import type { OCPP16MeterValuesRequest } from './1.6/MeterValues'; +import { OCPP16DiagnosticsStatus } from './1.6/DiagnosticsStatus.js' +import type { OCPP16MeterValuesRequest } from './1.6/MeterValues.js' import { OCPP16AvailabilityType, - OCPP16BootNotificationRequest, - OCPP16DataTransferRequest, - OCPP16HeartbeatRequest, + type OCPP16BootNotificationRequest, + type OCPP16CancelReservationRequest, + type OCPP16DataTransferRequest, + type OCPP16DiagnosticsStatusNotificationRequest, + OCPP16FirmwareStatus, + type OCPP16FirmwareStatusNotificationRequest, + type OCPP16HeartbeatRequest, OCPP16IncomingRequestCommand, OCPP16MessageTrigger, OCPP16RequestCommand, - OCPP16StatusNotificationRequest, -} from './1.6/Requests'; -import type { MessageType } from './MessageType'; - -export type RequestCommand = OCPP16RequestCommand; + type OCPP16ReserveNowRequest, + type OCPP16StatusNotificationRequest +} from './1.6/Requests.js' +import { OperationalStatusEnumType } from './2.0/Common.js' +import { + type OCPP20BootNotificationRequest, + OCPP20IncomingRequestCommand, + OCPP20RequestCommand, + type OCPP20StatusNotificationRequest +} from './2.0/Requests.js' +import type { MessageType } from './MessageType.js' +import type { ChargingStation } from '../../charging-station/index.js' +import type { OCPPError } from '../../exception/index.js' +import type { JsonType } from '../JsonType.js' export const RequestCommand = { ...OCPP16RequestCommand, -}; + ...OCPP20RequestCommand +} as const +// eslint-disable-next-line @typescript-eslint/no-redeclare +export type RequestCommand = OCPP16RequestCommand | OCPP20RequestCommand -export type OutgoingRequest = [MessageType.CALL_MESSAGE, string, RequestCommand, JsonType]; +export type OutgoingRequest = [MessageType.CALL_MESSAGE, string, RequestCommand, JsonType] -export type RequestParams = { - skipBufferingOnError?: boolean; - triggerMessage?: boolean; -}; - -export type IncomingRequestCommand = OCPP16IncomingRequestCommand; +export interface RequestParams { + skipBufferingOnError?: boolean + triggerMessage?: boolean + throwError?: boolean +} export const IncomingRequestCommand = { ...OCPP16IncomingRequestCommand, -}; + ...OCPP20IncomingRequestCommand +} as const +// eslint-disable-next-line @typescript-eslint/no-redeclare +export type IncomingRequestCommand = OCPP16IncomingRequestCommand | OCPP20IncomingRequestCommand + +export type IncomingRequest = [MessageType.CALL_MESSAGE, string, IncomingRequestCommand, JsonType] -export type IncomingRequest = [MessageType.CALL_MESSAGE, string, IncomingRequestCommand, JsonType]; +export type IncomingRequestHandler = ( + chargingStation: ChargingStation, + commandPayload: JsonType +) => JsonType | Promise -export type ResponseCallback = (payload: JsonType, requestPayload: JsonType) => void; +export type ResponseCallback = (payload: JsonType, requestPayload: JsonType) => void -export type ErrorCallback = (error: OCPPError, requestStatistic?: boolean) => void; +export type ErrorCallback = (ocppError: OCPPError, requestStatistic?: boolean) => void export type CachedRequest = [ ResponseCallback, ErrorCallback, RequestCommand | IncomingRequestCommand, JsonType -]; - -export type MessageTrigger = OCPP16MessageTrigger; +] export const MessageTrigger = { - ...OCPP16MessageTrigger, -}; + ...OCPP16MessageTrigger +} as const +// eslint-disable-next-line @typescript-eslint/no-redeclare +export type MessageTrigger = OCPP16MessageTrigger -export type BootNotificationRequest = OCPP16BootNotificationRequest; +export type BootNotificationRequest = OCPP16BootNotificationRequest | OCPP20BootNotificationRequest -export type HeartbeatRequest = OCPP16HeartbeatRequest; +export type HeartbeatRequest = OCPP16HeartbeatRequest -export type StatusNotificationRequest = OCPP16StatusNotificationRequest; +export type StatusNotificationRequest = + | OCPP16StatusNotificationRequest + | OCPP20StatusNotificationRequest -export type MeterValuesRequest = OCPP16MeterValuesRequest; +export type MeterValuesRequest = OCPP16MeterValuesRequest -export type DataTransferRequest = OCPP16DataTransferRequest; +export type DataTransferRequest = OCPP16DataTransferRequest -export type IncomingRequestHandler = ( - chargingStation: ChargingStation, - commandPayload: JsonType -) => JsonType | Promise; +export type DiagnosticsStatusNotificationRequest = OCPP16DiagnosticsStatusNotificationRequest -export type AvailabilityType = OCPP16AvailabilityType; +export type FirmwareStatusNotificationRequest = OCPP16FirmwareStatusNotificationRequest export const AvailabilityType = { ...OCPP16AvailabilityType, -}; - -export type DiagnosticsStatus = OCPP16DiagnosticsStatus; + ...OperationalStatusEnumType +} as const +// eslint-disable-next-line @typescript-eslint/no-redeclare +export type AvailabilityType = OCPP16AvailabilityType | OperationalStatusEnumType export const DiagnosticsStatus = { - ...OCPP16DiagnosticsStatus, -}; + ...OCPP16DiagnosticsStatus +} as const +// eslint-disable-next-line @typescript-eslint/no-redeclare +export type DiagnosticsStatus = OCPP16DiagnosticsStatus + +export const FirmwareStatus = { + ...OCPP16FirmwareStatus +} as const +// eslint-disable-next-line @typescript-eslint/no-redeclare +export type FirmwareStatus = OCPP16FirmwareStatus + +export type ResponseType = JsonType | OCPPError + +export type ReserveNowRequest = OCPP16ReserveNowRequest -export type ResponseType = JsonType | OCPPError; +export type CancelReservationRequest = OCPP16CancelReservationRequest