perf: lookup connector status once at OCPP responses handling
[e-mobility-charging-stations-simulator.git] / src / types / AutomaticTransactionGenerator.ts
index 940a5d75b7115bf212928223e514f01109e8b112..2ae3abd7fedead24a3779622fedda4b0475414e8 100644 (file)
@@ -1,5 +1,24 @@
+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;
@@ -11,6 +30,13 @@ export interface Status {
   acceptedStartTransactionRequests?: number;
   rejectedStartTransactionRequests?: number;
   stopTransactionRequests?: number;
+  acceptedStopTransactionRequests?: number;
+  rejectedStopTransactionRequests?: number;
   skippedConsecutiveTransactions?: number;
   skippedTransactions?: number;
 }
+
+export interface ChargingStationAutomaticTransactionGeneratorConfiguration {
+  automaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration;
+  automaticTransactionGeneratorStatuses?: Status[];
+}