repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
refactor: cleanup boot notification handling internal handling
[e-mobility-charging-stations-simulator.git]
/
src
/
charging-station
/
AutomaticTransactionGenerator.ts
diff --git
a/src/charging-station/AutomaticTransactionGenerator.ts
b/src/charging-station/AutomaticTransactionGenerator.ts
index 40b7c7818a7731c3ea56dac4d81986a689ddc6b9..0e081f7750011a095c5fe8a8917fa1aa8e099c90 100644
(file)
--- a/
src/charging-station/AutomaticTransactionGenerator.ts
+++ b/
src/charging-station/AutomaticTransactionGenerator.ts
@@
-1,5
+1,7
@@
// Partial Copyright Jerome Benoit. 2021-2024. All Rights Reserved.
// Partial Copyright Jerome Benoit. 2021-2024. All Rights Reserved.
+import { randomInt } from 'node:crypto'
+
import { hoursToMilliseconds, secondsToMilliseconds } from 'date-fns'
import { BaseError } from '../exception/index.js'
import { hoursToMilliseconds, secondsToMilliseconds } from 'date-fns'
import { BaseError } from '../exception/index.js'
@@
-18,7
+20,6
@@
import {
Constants,
convertToDate,
formatDurationMilliSeconds,
Constants,
convertToDate,
formatDurationMilliSeconds,
- getRandomInteger,
isValidDate,
logger,
logPrefix,
isValidDate,
logger,
logPrefix,
@@
-199,11
+200,11
@@
export class AutomaticTransactionGenerator {
break
}
const wait = secondsToMilliseconds(
break
}
const wait = secondsToMilliseconds(
-
getRandomInteger
(
+
randomInt
(
this.chargingStation.getAutomaticTransactionGeneratorConfiguration()
this.chargingStation.getAutomaticTransactionGeneratorConfiguration()
- ?.m
ax
DelayBetweenTwoTransactions,
+ ?.m
in
DelayBetweenTwoTransactions,
this.chargingStation.getAutomaticTransactionGeneratorConfiguration()
this.chargingStation.getAutomaticTransactionGeneratorConfiguration()
- ?.m
in
DelayBetweenTwoTransactions
+ ?.m
ax
DelayBetweenTwoTransactions
)
)
logger.info(`${this.logPrefix(connectorId)} waiting for ${formatDurationMilliSeconds(wait)}`)
)
)
logger.info(`${this.logPrefix(connectorId)} waiting for ${formatDurationMilliSeconds(wait)}`)
@@
-221,9
+222,9
@@
export class AutomaticTransactionGenerator {
if (startResponse?.idTagInfo.status === AuthorizationStatus.ACCEPTED) {
// Wait until end of transaction
const waitTrxEnd = secondsToMilliseconds(
if (startResponse?.idTagInfo.status === AuthorizationStatus.ACCEPTED) {
// Wait until end of transaction
const waitTrxEnd = secondsToMilliseconds(
-
getRandomInteger
(
- this.chargingStation.getAutomaticTransactionGeneratorConfiguration()?.m
ax
Duration,
- this.chargingStation.getAutomaticTransactionGeneratorConfiguration()?.m
in
Duration
+
randomInt
(
+ this.chargingStation.getAutomaticTransactionGeneratorConfiguration()?.m
in
Duration,
+ this.chargingStation.getAutomaticTransactionGeneratorConfiguration()?.m
ax
Duration
)
)
logger.info(
)
)
logger.info(
@@
-332,9
+333,9
@@
export class AutomaticTransactionGenerator {
const connectorStatus = this.chargingStation.getConnectorStatus(connectorId)
if (connectorStatus?.transactionStarted === true) {
logger.info(
const connectorStatus = this.chargingStation.getConnectorStatus(connectorId)
if (connectorStatus?.transactionStarted === true) {
logger.info(
- `${this.logPrefix(
- connectorId
-
)} entered in transaction loop while a transaction ${connectorStatus.transactionId
} is already started on connector ${connectorId}`
+ `${this.logPrefix(
connectorId)} entered in transaction loop while a transaction ${
+ connector
Status.transaction
Id
+ } is already started on connector ${connectorId}`
)
return false
}
)
return false
}
@@
-377,9
+378,9
@@
export class AutomaticTransactionGenerator {
while (connectorStatus?.transactionStarted === true) {
if (!logged) {
logger.info(
while (connectorStatus?.transactionStarted === true) {
if (!logged) {
logger.info(
- `${this.logPrefix(
- connectorId
-
)} transaction loop waiting for started transaction ${connectorStatus.transactionId
} on connector ${connectorId} to be stopped`
+ `${this.logPrefix(
connectorId)} transaction loop waiting for started transaction ${
+ connector
Status.transaction
Id
+ } on connector ${connectorId} to be stopped`
)
logged = true
}
)
logged = true
}
@@
-415,7
+416,9
@@
export class AutomaticTransactionGenerator {
)
} else if (this.chargingStation.getAutomaticTransactionGeneratorStatuses() != null) {
logger.warn(
)
} else if (this.chargingStation.getAutomaticTransactionGeneratorStatuses() != null) {
logger.warn(
- `${this.logPrefix(connectorId)} no status found for connector #${connectorId} in charging station configuration file. New status will be created`
+ `${this.logPrefix(
+ connectorId
+ )} no status found for connector #${connectorId} in charging station configuration file. New status will be created`
)
}
if (connectorStatus != null) {
)
}
if (connectorStatus != null) {
@@
-474,7
+477,7
@@
export class AutomaticTransactionGenerator {
logger.info(startTransactionLogMsg)
// Start transaction
startResponse = await this.chargingStation.ocppRequestService.requestHandler<
logger.info(startTransactionLogMsg)
// Start transaction
startResponse = await this.chargingStation.ocppRequestService.requestHandler<
-
StartTransactionRequest
,
+
Partial<StartTransactionRequest>
,
StartTransactionResponse
>(this.chargingStation, RequestCommand.START_TRANSACTION, {
connectorId,
StartTransactionResponse
>(this.chargingStation, RequestCommand.START_TRANSACTION, {
connectorId,
@@
-492,7
+495,7
@@
export class AutomaticTransactionGenerator {
logger.info(startTransactionLogMsg)
// Start transaction
startResponse = await this.chargingStation.ocppRequestService.requestHandler<
logger.info(startTransactionLogMsg)
// Start transaction
startResponse = await this.chargingStation.ocppRequestService.requestHandler<
-
StartTransactionRequest
,
+
Partial<StartTransactionRequest>
,
StartTransactionResponse
>(this.chargingStation, RequestCommand.START_TRANSACTION, {
connectorId,
StartTransactionResponse
>(this.chargingStation, RequestCommand.START_TRANSACTION, {
connectorId,
@@
-504,9
+507,11
@@
export class AutomaticTransactionGenerator {
}
logger.info(`${this.logPrefix(connectorId)} start transaction without an idTag`)
startResponse = await this.chargingStation.ocppRequestService.requestHandler<
}
logger.info(`${this.logPrefix(connectorId)} start transaction without an idTag`)
startResponse = await this.chargingStation.ocppRequestService.requestHandler<
-
StartTransactionRequest
,
+
Partial<StartTransactionRequest>
,
StartTransactionResponse
StartTransactionResponse
- >(this.chargingStation, RequestCommand.START_TRANSACTION, { connectorId })
+ >(this.chargingStation, RequestCommand.START_TRANSACTION, {
+ connectorId
+ })
this.handleStartTransactionResponse(connectorId, startResponse)
PerformanceStatistics.endMeasure(measureId, beginId)
return startResponse
this.handleStartTransactionResponse(connectorId, startResponse)
PerformanceStatistics.endMeasure(measureId, beginId)
return startResponse