X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Fcharging-station%2FAutomaticTransactionGenerator.ts;h=32d9897380b261ce1338bfe84c1e82e96cd156e7;hb=84e13ca9efa04e9516d65c99a54ba9b81457bef8;hp=a916000f1634d73d27d2c01e8b1a61d27165ab78;hpb=68c993d5b34c191022256f26d4e95e5f3b9974d4;p=e-mobility-charging-stations-simulator.git diff --git a/src/charging-station/AutomaticTransactionGenerator.ts b/src/charging-station/AutomaticTransactionGenerator.ts index a916000f..32d98973 100644 --- a/src/charging-station/AutomaticTransactionGenerator.ts +++ b/src/charging-station/AutomaticTransactionGenerator.ts @@ -10,6 +10,7 @@ import { import type ChargingStation from './ChargingStation'; import Constants from '../utils/Constants'; +import { MeterValuesResponse } from '../types/ocpp/Responses'; import { OCPP16ServiceUtils } from './ocpp/1.6/OCPP16ServiceUtils'; import PerformanceStatistics from '../performance/PerformanceStatistics'; import { RequestCommand } from '../types/ocpp/Requests'; @@ -35,13 +36,13 @@ export default class AutomaticTransactionGenerator { } public static getInstance(chargingStation: ChargingStation): AutomaticTransactionGenerator { - if (!AutomaticTransactionGenerator.instances.has(chargingStation.id)) { + if (!AutomaticTransactionGenerator.instances.has(chargingStation.hashId)) { AutomaticTransactionGenerator.instances.set( - chargingStation.id, + chargingStation.hashId, new AutomaticTransactionGenerator(chargingStation) ); } - return AutomaticTransactionGenerator.instances.get(chargingStation.id); + return AutomaticTransactionGenerator.instances.get(chargingStation.hashId); } public start(): void { @@ -274,24 +275,25 @@ export default class AutomaticTransactionGenerator { this.chargingStation.getConnectorStatus(connectorId).authorizeIdTag = idTag; // Authorize idTag const authorizeResponse: AuthorizeResponse = - (await this.chargingStation.ocppRequestService.sendMessageHandler( + await this.chargingStation.ocppRequestService.sendMessageHandler( RequestCommand.AUTHORIZE, { idTag, } - )) as AuthorizeResponse; + ); this.connectorsStatus.get(connectorId).authorizeRequests++; if (authorizeResponse?.idTagInfo?.status === AuthorizationStatus.ACCEPTED) { this.connectorsStatus.get(connectorId).acceptedAuthorizeRequests++; logger.info(this.logPrefix(connectorId) + ' start transaction for idTag ' + idTag); // Start transaction - startResponse = (await this.chargingStation.ocppRequestService.sendMessageHandler( - RequestCommand.START_TRANSACTION, - { - connectorId, - idTag, - } - )) as StartTransactionResponse; + startResponse = + await this.chargingStation.ocppRequestService.sendMessageHandler( + RequestCommand.START_TRANSACTION, + { + connectorId, + idTag, + } + ); PerformanceStatistics.endMeasure(measureId, beginId); return startResponse; } @@ -301,21 +303,23 @@ export default class AutomaticTransactionGenerator { } logger.info(this.logPrefix(connectorId) + ' start transaction for idTag ' + idTag); // Start transaction - startResponse = (await this.chargingStation.ocppRequestService.sendMessageHandler( - RequestCommand.START_TRANSACTION, - { - connectorId, - idTag, - } - )) as StartTransactionResponse; + startResponse = + await this.chargingStation.ocppRequestService.sendMessageHandler( + RequestCommand.START_TRANSACTION, + { + connectorId, + idTag, + } + ); PerformanceStatistics.endMeasure(measureId, beginId); return startResponse; } logger.info(this.logPrefix(connectorId) + ' start transaction without an idTag'); - startResponse = (await this.chargingStation.ocppRequestService.sendMessageHandler( - RequestCommand.START_TRANSACTION, - { connectorId } - )) as StartTransactionResponse; + startResponse = + await this.chargingStation.ocppRequestService.sendMessageHandler( + RequestCommand.START_TRANSACTION, + { connectorId } + ); PerformanceStatistics.endMeasure(measureId, beginId); return startResponse; } @@ -341,22 +345,26 @@ export default class AutomaticTransactionGenerator { connectorId, this.chargingStation.getEnergyActiveImportRegisterByTransactionId(transactionId) ); - await this.chargingStation.ocppRequestService.sendTransactionEndMeterValues( - connectorId, - transactionId, - transactionEndMeterValue + await this.chargingStation.ocppRequestService.sendMessageHandler( + RequestCommand.METER_VALUES, + { + connectorId, + transactionId, + meterValue: transactionEndMeterValue, + } ); } - stopResponse = (await this.chargingStation.ocppRequestService.sendMessageHandler( - RequestCommand.STOP_TRANSACTION, - { - transactionId, - meterStop: - this.chargingStation.getEnergyActiveImportRegisterByTransactionId(transactionId), - idTag: this.chargingStation.getTransactionIdTag(transactionId), - reason, - } - )) as StopTransactionResponse; + stopResponse = + await this.chargingStation.ocppRequestService.sendMessageHandler( + RequestCommand.STOP_TRANSACTION, + { + transactionId, + meterStop: + this.chargingStation.getEnergyActiveImportRegisterByTransactionId(transactionId), + idTag: this.chargingStation.getTransactionIdTag(transactionId), + reason, + } + ); this.connectorsStatus.get(connectorId).stopTransactionRequests++; } else { logger.warn(