X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Ftypes%2FChargingStationTemplate.ts;h=cd92616c11063cb4060013081ce8ffd45e974bc2;hb=b25b86842dc61b2a95f672dcf38992f7d63d6ec3;hp=7cc8023f8a729acb6160d2fd089a37285d8d2414;hpb=f765beaae7c12b03f9f05aa688d94a64389db785;p=e-mobility-charging-stations-simulator.git diff --git a/src/types/ChargingStationTemplate.ts b/src/types/ChargingStationTemplate.ts index 7cc8023f..cd92616c 100644 --- a/src/types/ChargingStationTemplate.ts +++ b/src/types/ChargingStationTemplate.ts @@ -1,9 +1,13 @@ -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 'http'; + +import type { ClientOptions } from 'ws'; + +import type { AutomaticTransactionGeneratorConfiguration } from './AutomaticTransactionGenerator'; +import type { ChargingStationOcppConfiguration } from './ChargingStationOcppConfiguration'; +import type { ConnectorStatus } from './ConnectorStatus'; +import type { OCPPProtocol } from './ocpp/OCPPProtocol'; +import type { OCPPVersion } from './ocpp/OCPPVersion'; +import type { IncomingRequestCommand, MessageTrigger, RequestCommand } from './ocpp/Requests'; export enum CurrentType { AC = 'AC', @@ -29,21 +33,24 @@ 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 default interface ChargingStationTemplate { +type FirmwareUpgrade = { + versionUpgrade: { + patternGroup?: number | number[]; + to?: string; + }; + reset?: boolean; + resetDelay?: number; + checkIntegrity?: boolean; +}; + +type CommandsSupport = { + incomingCommands: Record; + outgoingCommands?: Record; +}; + +export type ChargingStationTemplate = { templateHash?: string; supervisionUrls?: string | string[]; supervisionUrlOcppConfiguration?: boolean; @@ -54,6 +61,7 @@ export default interface ChargingStationTemplate { ocppProtocol?: OCPPProtocol; ocppStrictCompliance?: boolean; ocppPersistentConfiguration?: boolean; + stationInfoPersistentConfiguration?: boolean; wsOptions?: WsOptions; authorizationFile?: string; baseName: string; @@ -63,7 +71,9 @@ export default interface ChargingStationTemplate { chargePointVendor: string; chargePointSerialNumberPrefix?: string; chargeBoxSerialNumberPrefix?: string; + firmwareVersionPattern?: string; firmwareVersion?: string; + firmwareUpgrade?: FirmwareUpgrade; iccid?: string; imsi?: string; meterSerialNumberPrefix?: string; @@ -78,12 +88,13 @@ export default interface ChargingStationTemplate { useConnectorId0?: boolean; randomConnectors?: boolean; resetTime?: number; - autoRegister: boolean; + autoRegister?: boolean; autoReconnectMaxRetries?: number; reconnectExponentialDelay?: boolean; registrationMaxRetries?: number; enableStatistics?: boolean; - mayAuthorizeAtRemoteStart: boolean; + mustAuthorizeAtRemoteStart?: boolean; + payloadSchemaValidation?: boolean; amperageLimitationOcppKey?: string; amperageLimitationUnit?: AmpereUnits; beginEndMeterValues?: boolean; @@ -92,7 +103,10 @@ export default interface ChargingStationTemplate { transactionDataMeterValues?: boolean; mainVoltageMeterValues?: boolean; phaseLineToLineVoltageMeterValues?: boolean; + customValueLimitationMeterValues?: boolean; + commandsSupport?: CommandsSupport; + messageTriggerSupport?: Record; Configuration?: ChargingStationOcppConfiguration; - AutomaticTransactionGenerator: AutomaticTransactionGenerator; + AutomaticTransactionGenerator?: AutomaticTransactionGeneratorConfiguration; Connectors: Record; -} +};