X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2Focpp%2FOCPPServiceUtils.ts;h=d3930db4244b11502ccea147df11e641af5b5d0b;hb=156c5f4ee0466adeb90e1e131e98b3f271955787;hp=a9c5c562ea18c47e4d88470ca2a54831736af31a;hpb=e0fda4811c974718613467174702af152d1c3eea;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/ocpp/OCPPServiceUtils.ts b/src/charging-station/ocpp/OCPPServiceUtils.ts index a9c5c562..d3930db4 100644 --- a/src/charging-station/ocpp/OCPPServiceUtils.ts +++ b/src/charging-station/ocpp/OCPPServiceUtils.ts @@ -227,20 +227,23 @@ export class OCPPServiceUtils { connectorId: number, idTag: string, ): Promise { - let authorized = false; - if (OCPPServiceUtils.isIdTagLocalAuthorized(chargingStation, idTag)) { + if (!chargingStation.getLocalAuthListEnabled() && !chargingStation.getRemoteAuthorization()) { + logger.warn( + `${chargingStation.logPrefix()} The charging station expects to authorize RFID tags but nor local authorization nor remote authorization are enabled. Misbehavior may occur`, + ); + } + if ( + chargingStation.getLocalAuthListEnabled() === true && + OCPPServiceUtils.isIdTagLocalAuthorized(chargingStation, idTag) + ) { const connectorStatus: ConnectorStatus = chargingStation.getConnectorStatus(connectorId)!; connectorStatus.localAuthorizeIdTag = idTag; connectorStatus.idTagLocalAuthorized = true; - authorized = true; - } else if (chargingStation.getMustAuthorizeAtRemoteStart()) { - authorized = await OCPPServiceUtils.isIdTagRemoteAuthorized( - chargingStation, - connectorId, - idTag, - ); + return true; + } else if (chargingStation.getRemoteAuthorization()) { + return await OCPPServiceUtils.isIdTagRemoteAuthorized(chargingStation, connectorId, idTag); } - return authorized; + return false; } protected static checkConnectorStatusTransition( @@ -403,10 +406,7 @@ export class OCPPServiceUtils { protected static getLimitFromSampledValueTemplateCustomValue( value: string, limit: number, - options: { limitationEnabled?: boolean; unitMultiplier?: number } = { - limitationEnabled: true, - unitMultiplier: 1, - }, + options?: { limitationEnabled?: boolean; unitMultiplier?: number }, ): number { options = { ...{ @@ -424,7 +424,6 @@ export class OCPPServiceUtils { private static isIdTagLocalAuthorized(chargingStation: ChargingStation, idTag: string): boolean { return ( - chargingStation.getLocalAuthListEnabled() === true && chargingStation.hasIdTags() === true && isNotEmptyString( chargingStation.idTagsCache