X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FAutomaticTransactionGenerator.ts;h=2ae3abd7fedead24a3779622fedda4b0475414e8;hb=041365be4e6cfcec381c895a203815dd933afff5;hp=f88659bff630ce8025e6f9f6082a9a2cee2e3e8e;hpb=4dff3039b8a3a3b3383cfb321bc2275b942652ed;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/AutomaticTransactionGenerator.ts b/src/types/AutomaticTransactionGenerator.ts index f88659bf..2ae3abd7 100644 --- a/src/types/AutomaticTransactionGenerator.ts +++ b/src/types/AutomaticTransactionGenerator.ts @@ -1,4 +1,10 @@ -export type AutomaticTransactionGeneratorConfiguration = { +export enum IdTagDistribution { + RANDOM = 'random', + ROUND_ROBIN = 'round-robin', + CONNECTOR_AFFINITY = 'connector-affinity', +} + +export interface AutomaticTransactionGeneratorConfiguration { enable: boolean; minDuration: number; maxDuration: number; @@ -8,9 +14,10 @@ export type AutomaticTransactionGeneratorConfiguration = { stopAfterHours: number; stopOnConnectionFailure: boolean; requireAuthorize?: boolean; -}; + idTagDistribution?: IdTagDistribution; +} -export type Status = { +export interface Status { start: boolean; startDate?: Date; lastRunDate?: Date; @@ -27,4 +34,9 @@ export type Status = { rejectedStopTransactionRequests?: number; skippedConsecutiveTransactions?: number; skippedTransactions?: number; -}; +} + +export interface ChargingStationAutomaticTransactionGeneratorConfiguration { + automaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration; + automaticTransactionGeneratorStatuses?: Status[]; +}