X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Ftypes%2FChargingStationTemplate.ts;h=68c20597c4edf2cbf8f5db99fe61ab6e3d970ea2;hb=20558952fb18725ad134a5148a873a30fcced31d;hp=e2f2a2bcfa79cab93ba31661687b8642fb43ea28;hpb=794aea9d3e6b713d55bf5adb06faa211206cfa77;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/ChargingStationTemplate.ts b/src/types/ChargingStationTemplate.ts index e2f2a2bc..68c20597 100644 --- a/src/types/ChargingStationTemplate.ts +++ b/src/types/ChargingStationTemplate.ts @@ -1,9 +1,19 @@ -import ChargingStationOcppConfiguration from './ChargingStationOcppConfiguration'; -import { ClientOptions } from 'ws'; -import { ClientRequestArgs } from 'http'; -import { ConnectorStatus } from './ConnectorStatus'; -import { OCPPProtocol } from './ocpp/OCPPProtocol'; -import { OCPPVersion } from './ocpp/OCPPVersion'; +import type { ClientRequestArgs } from 'node:http'; + +import type { ClientOptions } from 'ws'; + +import type { AutomaticTransactionGeneratorConfiguration } from './AutomaticTransactionGenerator'; +import type { ChargingStationOcppConfiguration } from './ChargingStationOcppConfiguration'; +import type { ConnectorStatus } from './ConnectorStatus'; +import type { EvseTemplate } from './Evse'; +import type { OCPPProtocol } from './ocpp/OCPPProtocol'; +import type { OCPPVersion } from './ocpp/OCPPVersion'; +import type { + FirmwareStatus, + IncomingRequestCommand, + MessageTrigger, + RequestCommand, +} from './ocpp/Requests'; export enum CurrentType { AC = 'AC', @@ -29,21 +39,33 @@ export enum Voltage { VOLTAGE_800 = 800, } -export interface AutomaticTransactionGenerator { - enable: boolean; - minDuration: number; - maxDuration: number; - minDelayBetweenTwoTransactions: number; - maxDelayBetweenTwoTransactions: number; - probabilityOfStart: number; - stopAfterHours: number; - stopOnConnectionFailure: boolean; - requireAuthorize?: boolean; +export type WsOptions = ClientOptions & ClientRequestArgs; + +export interface FirmwareUpgrade { + versionUpgrade?: { + patternGroup?: number; + step?: number; + }; + reset?: boolean; + failureStatus?: FirmwareStatus; +} + +interface CommandsSupport { + incomingCommands: Record; + outgoingCommands?: Record; } -export type WsOptions = ClientOptions & ClientRequestArgs; +enum x509CertificateType { + V2GRootCertificate = 'V2GRootCertificate', + MORootCertificate = 'MORootCertificate', + CSMSRootCertificate = 'CSMSRootCertificate', + ManufacturerRootCertificate = 'ManufacturerRootCertificate', + ChargingStationCertificate = 'ChargingStationCertificate', + V2GCertificate = 'V2GCertificate', +} -export default interface ChargingStationTemplate { +export interface ChargingStationTemplate { + templateHash?: string; supervisionUrls?: string | string[]; supervisionUrlOcppConfiguration?: boolean; supervisionUrlOcppKey?: string; @@ -53,8 +75,10 @@ export default interface ChargingStationTemplate { ocppProtocol?: OCPPProtocol; ocppStrictCompliance?: boolean; ocppPersistentConfiguration?: boolean; + stationInfoPersistentConfiguration?: boolean; + automaticTransactionGeneratorPersistentConfiguration?: boolean; wsOptions?: WsOptions; - authorizationFile?: string; + idTagsFile?: string; baseName: string; nameSuffix?: string; fixedName?: boolean; @@ -62,14 +86,16 @@ export default interface ChargingStationTemplate { chargePointVendor: string; chargePointSerialNumberPrefix?: string; chargeBoxSerialNumberPrefix?: string; + firmwareVersionPattern?: string; firmwareVersion?: string; + firmwareUpgrade?: FirmwareUpgrade; iccid?: string; imsi?: string; meterSerialNumberPrefix?: string; meterType?: string; - power: number | number[]; + power?: number | number[]; + powerUnit?: PowerUnits; powerSharedByConnectors?: boolean; - powerUnit: PowerUnits; currentOutType?: CurrentType; voltageOut?: Voltage; numberOfPhases?: number; @@ -77,12 +103,16 @@ export default interface ChargingStationTemplate { useConnectorId0?: boolean; randomConnectors?: boolean; resetTime?: number; - autoRegister: boolean; + autoRegister?: boolean; autoReconnectMaxRetries?: number; reconnectExponentialDelay?: boolean; registrationMaxRetries?: number; enableStatistics?: boolean; - mayAuthorizeAtRemoteStart: boolean; + remoteAuthorization?: boolean; + /** @deprecated Replaced by remoteAuthorization */ + mustAuthorizeAtRemoteStart?: boolean; + /** @deprecated Replaced by ocppStrictCompliance */ + payloadSchemaValidation?: boolean; amperageLimitationOcppKey?: string; amperageLimitationUnit?: AmpereUnits; beginEndMeterValues?: boolean; @@ -91,7 +121,12 @@ export default interface ChargingStationTemplate { transactionDataMeterValues?: boolean; mainVoltageMeterValues?: boolean; phaseLineToLineVoltageMeterValues?: boolean; + customValueLimitationMeterValues?: boolean; + commandsSupport?: CommandsSupport; + messageTriggerSupport?: Record; Configuration?: ChargingStationOcppConfiguration; - AutomaticTransactionGenerator: AutomaticTransactionGenerator; - Connectors: Record; + AutomaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration; + Evses?: Record; + Connectors?: Record; + x509Certificates?: Record; }