X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FAutomaticTransactionGenerator.ts;h=2ae3abd7fedead24a3779622fedda4b0475414e8;hb=b8efd65b4afd9229385af677e3e2a829f3280712;hp=562996f096014a0c970f02bc6688e3a8ff7435be;hpb=02cde3b711fb54b1a72d9828680eea54024d4ea0;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/AutomaticTransactionGenerator.ts b/src/types/AutomaticTransactionGenerator.ts index 562996f0..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,10 +14,11 @@ export type AutomaticTransactionGeneratorConfiguration = { stopAfterHours: number; stopOnConnectionFailure: boolean; requireAuthorize?: boolean; -}; + idTagDistribution?: IdTagDistribution; +} -export type Status = { - start?: boolean; +export interface Status { + start: boolean; startDate?: Date; lastRunDate?: Date; stopDate?: Date; @@ -23,6 +30,13 @@ export type Status = { acceptedStartTransactionRequests?: number; rejectedStartTransactionRequests?: number; stopTransactionRequests?: number; + acceptedStopTransactionRequests?: number; + rejectedStopTransactionRequests?: number; skippedConsecutiveTransactions?: number; skippedTransactions?: number; -}; +} + +export interface ChargingStationAutomaticTransactionGeneratorConfiguration { + automaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration; + automaticTransactionGeneratorStatuses?: Status[]; +}