commandPayload: RemoteStartTransactionRequest,
): Promise<GenericResponse> {
const { connectorId: transactionConnectorId, idTag, chargingProfile } = commandPayload;
- if (
- (chargingStation.getConnectorStatus(transactionConnectorId)?.status ===
- OCPP16ChargePointStatus.Reserved &&
- chargingStation.getReservationBy('connectorId', transactionConnectorId)?.idTag !== idTag) ||
- (chargingStation.getConnectorStatus(0)?.status === OCPP16ChargePointStatus.Reserved &&
- chargingStation.getReservationBy('connectorId', 0)?.idTag !== idTag)
- ) {
- return OCPP16Constants.OCPP_RESPONSE_REJECTED;
- }
if (chargingStation.hasConnector(transactionConnectorId) === false) {
return this.notifyRemoteStartTransactionRejected(
chargingStation,
idTag,
);
}
+ if (
+ (chargingStation.getConnectorStatus(transactionConnectorId)?.status ===
+ OCPP16ChargePointStatus.Reserved &&
+ chargingStation.getReservationBy('connectorId', transactionConnectorId)?.idTag !== idTag) ||
+ (chargingStation.getConnectorStatus(0)?.status === OCPP16ChargePointStatus.Reserved &&
+ chargingStation.getReservationBy('connectorId', 0)?.idTag !== idTag)
+ ) {
+ return OCPP16Constants.OCPP_RESPONSE_REJECTED;
+ }
const remoteStartTransactionLogMsg = `
${chargingStation.logPrefix()} Transaction remotely STARTED on ${
chargingStation.stationInfo.chargingStationId
OCPP16ChargePointStatus.Preparing,
);
const connectorStatus = chargingStation.getConnectorStatus(transactionConnectorId)!;
- if (
- chargingStation.getAuthorizeRemoteTxRequests() &&
- !chargingStation.getLocalAuthListEnabled() &&
- !chargingStation.getMustAuthorizeAtRemoteStart()
- ) {
- logger.warn(
- `${chargingStation.logPrefix()} The charging station configuration expects authorize at remote start transaction
- but local authorization or must authorize at remote start isn't enabled`,
- );
- }
// Authorization check required
if (
chargingStation.getAuthorizeRemoteTxRequests() === true &&
- chargingStation.getMustAuthorizeAtRemoteStart() === true &&
(await OCPP16ServiceUtils.isIdTagAuthorized(chargingStation, transactionConnectorId, idTag))
) {
// Authorization successful, start transaction