X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FAutomaticTransactionGenerator.ts;h=2ae3abd7fedead24a3779622fedda4b0475414e8;hb=041365be4e6cfcec381c895a203815dd933afff5;hp=e7fe178fba29940b5646c748100adcf29472e484;hpb=9664ec50ce58f2fa682ad687a214d090a95d51f7;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/AutomaticTransactionGenerator.ts b/src/types/AutomaticTransactionGenerator.ts index e7fe178f..2ae3abd7 100644 --- a/src/types/AutomaticTransactionGenerator.ts +++ b/src/types/AutomaticTransactionGenerator.ts @@ -1,9 +1,42 @@ +export enum IdTagDistribution { + RANDOM = 'random', + ROUND_ROBIN = 'round-robin', + CONNECTOR_AFFINITY = 'connector-affinity', +} + +export interface AutomaticTransactionGeneratorConfiguration { + enable: boolean; + minDuration: number; + maxDuration: number; + minDelayBetweenTwoTransactions: number; + maxDelayBetweenTwoTransactions: number; + probabilityOfStart: number; + stopAfterHours: number; + stopOnConnectionFailure: boolean; + requireAuthorize?: boolean; + idTagDistribution?: IdTagDistribution; +} + export interface Status { - start?: boolean; + start: boolean; startDate?: Date; lastRunDate?: Date; stopDate?: Date; stoppedDate?: Date; + authorizeRequests?: number; + acceptedAuthorizeRequests?: number; + rejectedAuthorizeRequests?: number; + startTransactionRequests?: number; + acceptedStartTransactionRequests?: number; + rejectedStartTransactionRequests?: number; + stopTransactionRequests?: number; + acceptedStopTransactionRequests?: number; + rejectedStopTransactionRequests?: number; skippedConsecutiveTransactions?: number; skippedTransactions?: number; } + +export interface ChargingStationAutomaticTransactionGeneratorConfiguration { + automaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration; + automaticTransactionGeneratorStatuses?: Status[]; +}