From 899cb106c44c0b7a56266b5470a22c0cc773cc44 Mon Sep 17 00:00:00 2001 From: Julian Buecher Date: Fri, 5 May 2023 17:48:02 +0200 Subject: [PATCH] fix: Handling of remote start transactions in reserved state --- src/charging-station/ocpp/OCPPConstants.ts | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/charging-station/ocpp/OCPPConstants.ts b/src/charging-station/ocpp/OCPPConstants.ts index 5a271f59..b8448fb6 100644 --- a/src/charging-station/ocpp/OCPPConstants.ts +++ b/src/charging-station/ocpp/OCPPConstants.ts @@ -9,6 +9,7 @@ import { TriggerMessageStatus, UnlockStatus, } from '../../types'; +import { CancelReservationStatus, ReservationStatus } from '../../types/ocpp/Responses'; import { Constants } from '../../utils'; export class OCPPConstants { @@ -101,6 +102,18 @@ export class OCPPConstants { status: DataTransferStatus.REJECTED, }); + static readonly OCPP_RESERVATION_RESPONSE_ACCEPTED = Object.freeze({ status: ReservationStatus.ACCEPTED }); // Reservation has been made + static readonly OCPP_RESERVATION_RESPONSE_FAULTED = Object.freeze({ status: ReservationStatus.FAULTED }); // Reservation has not been made, because of connector in FAULTED state + static readonly OCPP_RESERVATION_RESPONSE_OCCUPIED = Object.freeze({ status: ReservationStatus.OCCUPIED }); // Reservation has not been made, because all connectors are OCCUPIED + static readonly OCPP_RESERVATION_RESPONSE_REJECTED = Object.freeze({ status: ReservationStatus.REJECTED }); // Reservation has not been made, because CS is not configured to accept reservations + static readonly OCPP_RESERVATION_RESPONSE_UNAVAILABLE = Object.freeze({ status: ReservationStatus.UNAVAILABLE }); // Reservation has not been made, because connectors are spec. connector is in UNAVAILABLE state + + static readonly OCPP_CANCEL_RESERVATION_RESPONSE_ACCEPTED = Object.freeze({ status: CancelReservationStatus.ACCEPTED }); // Reservation for id has been cancelled has been made + static readonly OCPP_CANCEL_RESERVATION_RESPONSE_REJECTED = Object.freeze({ status: CancelReservationStatus.REJECTED }); // Reservation could not be cancelled, because there is no reservation active for id + + static readonly OCPP_SUPPORTED_FEATURE_PROFILE_RESERVATION = 'Reservation'; + static readonly OCPP_RESERVE_CONNECTOR_ZERO_SUPPORTED = 'ReserveConnectorZeroSupported'; + protected constructor() { // This is intentional } -- 2.34.1