X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FAutomaticTransactionGenerator.ts;h=1592c5507fb4d8b7629dd51d1e22cba31971fd88;hb=d64ea57bcb4fd9151a43b16ff4d4b5ed059ad1d7;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..1592c550 100644 --- a/src/types/AutomaticTransactionGenerator.ts +++ b/src/types/AutomaticTransactionGenerator.ts @@ -1,28 +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; - 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[] +}