X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FAutomaticTransactionGenerator.ts;h=1592c5507fb4d8b7629dd51d1e22cba31971fd88;hb=d64ea57bcb4fd9151a43b16ff4d4b5ed059ad1d7;hp=de26ce62bdc2d4770641715a951051f0fbc9209e;hpb=6d9876e7b9b024879f1463aa7407c6874c5ca06b;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/AutomaticTransactionGenerator.ts b/src/types/AutomaticTransactionGenerator.ts index de26ce62..1592c550 100644 --- a/src/types/AutomaticTransactionGenerator.ts +++ b/src/types/AutomaticTransactionGenerator.ts @@ -1,30 +1,42 @@ -export type AutomaticTransactionGeneratorConfiguration = { - enable: boolean; - minDuration: number; - maxDuration: number; - minDelayBetweenTwoTransactions: number; - maxDelayBetweenTwoTransactions: number; - probabilityOfStart: number; - stopAfterHours: number; - stopOnConnectionFailure: boolean; - requireAuthorize?: boolean; -}; +export enum IdTagDistribution { + RANDOM = 'random', + ROUND_ROBIN = 'round-robin', + CONNECTOR_AFFINITY = 'connector-affinity' +} -export type Status = { - 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 AutomaticTransactionGeneratorConfiguration { + enable: boolean + minDuration: number + maxDuration: number + minDelayBetweenTwoTransactions: number + maxDelayBetweenTwoTransactions: number + probabilityOfStart: number + stopAfterHours: number + stopAbsoluteDuration: boolean + requireAuthorize?: boolean + idTagDistribution?: IdTagDistribution +} + +export interface Status { + 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[] +}