README.md: section name refinement
[e-mobility-charging-stations-simulator.git] / src / types / ChargingStationTemplate.ts
CommitLineData
2484ac1e 1import ChargingStationOcppConfiguration from './ChargingStationOcppConfiguration';
cd8dd457
JB
2import { ClientOptions } from 'ws';
3import { ClientRequestArgs } from 'http';
057e2042 4import { ConnectorStatus } from './ConnectorStatus';
c0560973
JB
5import { OCPPProtocol } from './ocpp/OCPPProtocol';
6import { OCPPVersion } from './ocpp/OCPPVersion';
9ac86a7e 7
4c2b4904 8export enum CurrentType {
9ac86a7e
JB
9 AC = 'AC',
10 DC = 'DC',
11}
12
a02da55f 13export enum PowerUnits {
9ac86a7e
JB
14 WATT = 'W',
15 KILO_WATT = 'kW',
16}
17
4c2b4904 18export enum Voltage {
84d4e562
JB
19 VOLTAGE_110 = 110,
20 VOLTAGE_230 = 230,
fd0c36fa 21 VOLTAGE_400 = 400,
e7aeea18 22 VOLTAGE_800 = 800,
84d4e562
JB
23}
24
9ac86a7e
JB
25export interface AutomaticTransactionGenerator {
26 enable: boolean;
27 minDuration: number;
28 maxDuration: number;
29 minDelayBetweenTwoTransactions: number;
30 maxDelayBetweenTwoTransactions: number;
31 probabilityOfStart: number;
32 stopAfterHours: number;
5fdab605 33 stopOnConnectionFailure: boolean;
e7aeea18 34 requireAuthorize?: boolean;
9ac86a7e
JB
35}
36
2484ac1e
JB
37export type WsOptions = ClientOptions & ClientRequestArgs;
38
9ac86a7e 39export default interface ChargingStationTemplate {
2484ac1e 40 hash?: string;
2dcfe98e 41 supervisionUrls?: string | string[];
1f5df42a
JB
42 supervisionUrlOcppConfiguration?: boolean;
43 supervisionUrlOcppKey?: string;
15042c5f
JB
44 supervisionUser?: string;
45 supervisionPassword?: string;
c0560973
JB
46 ocppVersion?: OCPPVersion;
47 ocppProtocol?: OCPPProtocol;
672fed6e 48 ocppStrictCompliance?: boolean;
e8e865ea 49 ocppPersistentConfiguration?: boolean;
2484ac1e 50 wsOptions?: WsOptions;
9ac86a7e
JB
51 authorizationFile?: string;
52 baseName: string;
5fdab605 53 nameSuffix?: string;
a02da55f 54 fixedName?: boolean;
9ac86a7e
JB
55 chargePointModel: string;
56 chargePointVendor: string;
43bb4cd9 57 chargePointSerialNumberPrefix?: string;
9ac86a7e
JB
58 chargeBoxSerialNumberPrefix?: string;
59 firmwareVersion?: string;
3f94cab5
JB
60 iccid?: string;
61 imsi?: string;
62 meterSerialNumber?: string;
63 meterType?: string;
9ac86a7e
JB
64 power: number | number[];
65 powerSharedByConnectors?: boolean;
ef16e252 66 powerUnit: PowerUnits;
4c2b4904
JB
67 currentOutType?: CurrentType;
68 voltageOut?: Voltage;
9ac86a7e
JB
69 numberOfPhases?: number;
70 numberOfConnectors?: number | number[];
71 useConnectorId0?: boolean;
72 randomConnectors?: boolean;
73 resetTime?: number;
47e22477 74 autoRegister: boolean;
3574dfd3 75 autoReconnectMaxRetries?: number;
032d6efc 76 reconnectExponentialDelay?: boolean;
6ad94506 77 registrationMaxRetries?: number;
9ac86a7e 78 enableStatistics?: boolean;
a7fc8211 79 mayAuthorizeAtRemoteStart: boolean;
6ed92bc1
JB
80 beginEndMeterValues?: boolean;
81 outOfOrderEndMeterValues?: boolean;
82 meteringPerTransaction?: boolean;
fd0c36fa 83 transactionDataMeterValues?: boolean;
9ccca265 84 mainVoltageMeterValues?: boolean;
6b10669b 85 phaseLineToLineVoltageMeterValues?: boolean;
2484ac1e 86 Configuration?: ChargingStationOcppConfiguration;
9ac86a7e 87 AutomaticTransactionGenerator: AutomaticTransactionGenerator;
734d790d 88 Connectors: Record<string, ConnectorStatus>;
9ac86a7e 89}