X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Ftypes%2Focpp%2FRequests.ts;h=72555e64d5006ced8ecef53a05cff62c5b449e9d;hb=e8044a69a745aab08dfeea0bd9ec9dd7fe84cdd7;hp=9934f1671292158bb5d4f3d47d03f95f3e7c361a;hpb=c60ed4b8646f72758a27b62003e51568d3966d29;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/ocpp/Requests.ts b/src/types/ocpp/Requests.ts index 9934f167..72555e64 100644 --- a/src/types/ocpp/Requests.ts +++ b/src/types/ocpp/Requests.ts @@ -1,76 +1,101 @@ -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 type { ChargingStation } from '../../charging-station'; +import type { OCPPError } from '../../exception'; import { + type JsonType, + type MessageType, OCPP16AvailabilityType, - OCPP16BootNotificationRequest, - OCPP16HeartbeatRequest, + type OCPP16BootNotificationRequest, + type OCPP16DataTransferRequest, + OCPP16DiagnosticsStatus, + type OCPP16DiagnosticsStatusNotificationRequest, + OCPP16FirmwareStatus, + type OCPP16FirmwareStatusNotificationRequest, + type OCPP16HeartbeatRequest, OCPP16IncomingRequestCommand, OCPP16MessageTrigger, + type OCPP16MeterValuesRequest, OCPP16RequestCommand, - OCPP16StatusNotificationRequest, -} from './1.6/Requests'; -import type { MessageType } from './MessageType'; - -export type RequestCommand = OCPP16RequestCommand; + type OCPP16StatusNotificationRequest, + type OCPP20BootNotificationRequest, + OCPP20IncomingRequestCommand, + OCPP20RequestCommand, + type OCPP20StatusNotificationRequest, + OperationalStatusEnumType, +} from '../internal'; export const RequestCommand = { ...OCPP16RequestCommand, -}; + ...OCPP20RequestCommand, +} as const; +export type RequestCommand = OCPP16RequestCommand | OCPP20RequestCommand; export type OutgoingRequest = [MessageType.CALL_MESSAGE, string, RequestCommand, JsonType]; export type RequestParams = { skipBufferingOnError?: boolean; triggerMessage?: boolean; + throwError?: boolean; }; -export type IncomingRequestCommand = OCPP16IncomingRequestCommand; - export const IncomingRequestCommand = { ...OCPP16IncomingRequestCommand, -}; + ...OCPP20IncomingRequestCommand, +} as const; +export type IncomingRequestCommand = OCPP16IncomingRequestCommand | OCPP20IncomingRequestCommand; export type IncomingRequest = [MessageType.CALL_MESSAGE, string, IncomingRequestCommand, JsonType]; +export type ResponseCallback = (payload: JsonType, requestPayload: JsonType) => void; + +export type ErrorCallback = (error: OCPPError, requestStatistic?: boolean) => void; + export type CachedRequest = [ - (payload: JsonType, requestPayload: JsonType) => void, - (error: OCPPError, requestStatistic?: boolean) => void, + ResponseCallback, + ErrorCallback, RequestCommand | IncomingRequestCommand, JsonType ]; -export type MessageTrigger = OCPP16MessageTrigger; - export const MessageTrigger = { ...OCPP16MessageTrigger, -}; +} as const; +export type MessageTrigger = OCPP16MessageTrigger; -export type BootNotificationRequest = OCPP16BootNotificationRequest; +export type BootNotificationRequest = OCPP16BootNotificationRequest | OCPP20BootNotificationRequest; export type HeartbeatRequest = OCPP16HeartbeatRequest; -export type StatusNotificationRequest = OCPP16StatusNotificationRequest; +export type StatusNotificationRequest = + | OCPP16StatusNotificationRequest + | OCPP20StatusNotificationRequest; export type MeterValuesRequest = OCPP16MeterValuesRequest; +export type DataTransferRequest = OCPP16DataTransferRequest; + +export type DiagnosticsStatusNotificationRequest = OCPP16DiagnosticsStatusNotificationRequest; + +export type FirmwareStatusNotificationRequest = OCPP16FirmwareStatusNotificationRequest; + export type IncomingRequestHandler = ( chargingStation: ChargingStation, commandPayload: JsonType ) => JsonType | Promise; -export type AvailabilityType = OCPP16AvailabilityType; - export const AvailabilityType = { ...OCPP16AvailabilityType, -}; - -export type DiagnosticsStatus = OCPP16DiagnosticsStatus; + ...OperationalStatusEnumType, +} as const; +export type AvailabilityType = OCPP16AvailabilityType | OperationalStatusEnumType; export const DiagnosticsStatus = { ...OCPP16DiagnosticsStatus, -}; +} as const; +export type DiagnosticsStatus = OCPP16DiagnosticsStatus; + +export const FirmwareStatus = { + ...OCPP16FirmwareStatus, +} as const; +export type FirmwareStatus = OCPP16FirmwareStatus; export type ResponseType = JsonType | OCPPError;