670590d491307aeb97f03bcd3d1bb2019ceb1773
[e-mobility-charging-stations-simulator.git] / src / types / AutomaticTransactionGenerator.ts
1 export enum IdTagDistribution {
2 RANDOM = 'random',
3 ROUND_ROBIN = 'round-robin',
4 CONNECTOR_AFFINITY = 'connector-affinity',
5 }
6
7 export interface AutomaticTransactionGeneratorConfiguration {
8 enable: boolean
9 minDuration: number
10 maxDuration: number
11 minDelayBetweenTwoTransactions: number
12 maxDelayBetweenTwoTransactions: number
13 probabilityOfStart: number
14 stopAfterHours: number
15 stopOnConnectionFailure: boolean
16 requireAuthorize?: boolean
17 idTagDistribution?: IdTagDistribution
18 }
19
20 export interface Status {
21 start: boolean
22 startDate?: Date
23 lastRunDate?: Date
24 stopDate?: Date
25 stoppedDate?: Date
26 authorizeRequests: number
27 acceptedAuthorizeRequests: number
28 rejectedAuthorizeRequests: number
29 startTransactionRequests: number
30 acceptedStartTransactionRequests: number
31 rejectedStartTransactionRequests: number
32 stopTransactionRequests: number
33 acceptedStopTransactionRequests: number
34 rejectedStopTransactionRequests: number
35 skippedConsecutiveTransactions: number
36 skippedTransactions: number
37 }
38
39 export interface ChargingStationAutomaticTransactionGeneratorConfiguration {
40 automaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration
41 automaticTransactionGeneratorStatuses?: Status[]
42 }