X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2Focpp%2FRequests.ts;h=0d60daf5872044d5a365da2ce75ef01c179a70c3;hb=f5a1ff8ce8f87a149791c2c98fe7c5e8a20b5392;hp=a21949962049f95634c73d5fb061a7694748ead0;hpb=d4c84337227e85dfbf20ff23d153e6bd1f685b87;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/ocpp/Requests.ts b/src/types/ocpp/Requests.ts index a2194996..0d60daf5 100644 --- a/src/types/ocpp/Requests.ts +++ b/src/types/ocpp/Requests.ts @@ -1,25 +1,31 @@ -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, type OCPP16BootNotificationRequest, + type OCPP16CancelReservationRequest, type OCPP16DataTransferRequest, + type OCPP16DiagnosticsStatusNotificationRequest, OCPP16FirmwareStatus, + type OCPP16FirmwareStatusNotificationRequest, type OCPP16HeartbeatRequest, OCPP16IncomingRequestCommand, OCPP16MessageTrigger, OCPP16RequestCommand, + type OCPP16ReserveNowRequest, type OCPP16StatusNotificationRequest, -} from './1.6/Requests'; +} from './1.6/Requests.js'; +import { OperationalStatusEnumType } from './2.0/Common.js'; import { type OCPP20BootNotificationRequest, OCPP20IncomingRequestCommand, OCPP20RequestCommand, -} from './2.0/Requests'; -import type { MessageType } from './MessageType'; + 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, @@ -29,10 +35,11 @@ export type RequestCommand = OCPP16RequestCommand | OCPP20RequestCommand; export type OutgoingRequest = [MessageType.CALL_MESSAGE, string, RequestCommand, JsonType]; -export type RequestParams = { +export interface RequestParams { skipBufferingOnError?: boolean; triggerMessage?: boolean; -}; + throwError?: boolean; +} export const IncomingRequestCommand = { ...OCPP16IncomingRequestCommand, @@ -42,15 +49,20 @@ export type IncomingRequestCommand = OCPP16IncomingRequestCommand | OCPP20Incomi 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 ErrorCallback = (error: OCPPError, requestStatistic?: boolean) => void; +export type ErrorCallback = (ocppError: OCPPError, requestStatistic?: boolean) => void; export type CachedRequest = [ ResponseCallback, ErrorCallback, RequestCommand | IncomingRequestCommand, - JsonType + JsonType, ]; export const MessageTrigger = { @@ -62,21 +74,23 @@ export type BootNotificationRequest = OCPP16BootNotificationRequest | OCPP20Boot export type HeartbeatRequest = OCPP16HeartbeatRequest; -export type StatusNotificationRequest = OCPP16StatusNotificationRequest; +export type StatusNotificationRequest = + | OCPP16StatusNotificationRequest + | OCPP20StatusNotificationRequest; export type MeterValuesRequest = OCPP16MeterValuesRequest; export type DataTransferRequest = OCPP16DataTransferRequest; -export type IncomingRequestHandler = ( - chargingStation: ChargingStation, - commandPayload: JsonType -) => JsonType | Promise; +export type DiagnosticsStatusNotificationRequest = OCPP16DiagnosticsStatusNotificationRequest; + +export type FirmwareStatusNotificationRequest = OCPP16FirmwareStatusNotificationRequest; export const AvailabilityType = { ...OCPP16AvailabilityType, + ...OperationalStatusEnumType, } as const; -export type AvailabilityType = OCPP16AvailabilityType; +export type AvailabilityType = OCPP16AvailabilityType | OperationalStatusEnumType; export const DiagnosticsStatus = { ...OCPP16DiagnosticsStatus, @@ -89,3 +103,7 @@ export const FirmwareStatus = { export type FirmwareStatus = OCPP16FirmwareStatus; export type ResponseType = JsonType | OCPPError; + +export type ReserveNowRequest = OCPP16ReserveNowRequest; + +export type CancelReservationRequest = OCPP16CancelReservationRequest;