export default class AutomaticTransactionGenerator {
public timeToStop: boolean;
private chargingStation: ChargingStation;
- private performanceObserver: PerformanceObserver;
+ private performanceObserver!: PerformanceObserver;
constructor(chargingStation: ChargingStation) {
this.chargingStation = chargingStation;
const transactionId = this.chargingStation.getConnector(Utils.convertToInt(connector)).transactionId;
if (this.chargingStation.getConnector(Utils.convertToInt(connector)).transactionStarted) {
logger.info(this.logPrefix(Utils.convertToInt(connector)) + ' ATG OVER. Stop transaction ' + transactionId.toString());
- await this.chargingStation.ocppRequestService.sendStopTransaction(transactionId, this.chargingStation.getTransactionMeterStop(transactionId),
+ await this.chargingStation.ocppRequestService.sendStopTransaction(transactionId, this.chargingStation.getEnergyActiveImportRegisterByTransactionId(transactionId),
this.chargingStation.getTransactionIdTag(transactionId), reason);
}
}
private async startTransaction(connectorId: number, self: AutomaticTransactionGenerator): Promise<StartTransactionResponse | AuthorizeResponse> {
if (self.chargingStation.hasAuthorizedTags()) {
const tagId = self.chargingStation.getRandomTagId();
- if (self.chargingStation.stationInfo.AutomaticTransactionGenerator.requireAuthorize) {
+ if (self.chargingStation.getAutomaticTransactionGeneratorRequireAuthorize()) {
// Authorize tagId
- const authorizeResponse = await self.chargingStation.ocppRequestService.sendAuthorize(tagId);
+ const authorizeResponse = await self.chargingStation.ocppRequestService.sendAuthorize(connectorId, tagId);
if (authorizeResponse?.idTagInfo?.status === AuthorizationStatus.ACCEPTED) {
logger.info(self.logPrefix(connectorId) + ' start transaction for tagID ' + tagId);
// Start transaction
// eslint-disable-next-line consistent-this
private async stopTransaction(connectorId: number, self: AutomaticTransactionGenerator): Promise<StopTransactionResponse> {
const transactionId = self.chargingStation.getConnector(connectorId).transactionId;
- return await self.chargingStation.ocppRequestService.sendStopTransaction(transactionId, self.chargingStation.getTransactionMeterStop(transactionId), self.chargingStation.getTransactionIdTag(transactionId));
+ return await self.chargingStation.ocppRequestService.sendStopTransaction(transactionId, self.chargingStation.getEnergyActiveImportRegisterByTransactionId(transactionId),
+ self.chargingStation.getTransactionIdTag(transactionId));
}
- private logPrefix(connectorId: number = null): string {
+ private logPrefix(connectorId?: number): string {
if (connectorId) {
return Utils.logPrefix(' ' + this.chargingStation.stationInfo.chargingStationId + ' | ATG on connector #' + connectorId.toString() + ':');
}