ConfigurationStatus,
DataTransferStatus,
GenericStatus,
+ MeterValueMeasurand,
TriggerMessageStatus,
UnlockStatus,
} from '../../types';
+import { CancelReservationStatus, ReservationStatus } from '../../types/ocpp/Responses';
import { Constants } from '../../utils';
export class OCPPConstants {
+ static readonly OCPP_WEBSOCKET_TIMEOUT = 60000; // Ms
+ static readonly OCPP_TRIGGER_MESSAGE_DELAY = 500; // Ms
+
+ static readonly OCPP_MEASURANDS_SUPPORTED = Object.freeze([
+ MeterValueMeasurand.STATE_OF_CHARGE,
+ MeterValueMeasurand.VOLTAGE,
+ MeterValueMeasurand.POWER_ACTIVE_IMPORT,
+ MeterValueMeasurand.CURRENT_IMPORT,
+ MeterValueMeasurand.ENERGY_ACTIVE_IMPORT_REGISTER,
+ ]);
+
static readonly OCPP_REQUEST_EMPTY = Constants.EMPTY_FREEZED_OBJECT;
static readonly OCPP_RESPONSE_EMPTY = Constants.EMPTY_FREEZED_OBJECT;
static readonly OCPP_RESPONSE_ACCEPTED = Object.freeze({ status: GenericStatus.Accepted });
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
}