| supervisionUrlOcppKey | | 'ConnectionUrl' | string | the vendor string that will be used as a vendor OCPP parameter key to set the supervision URL |
| ocppVersion | 1.6/2.0/2.0.1 | 1.6 | string | OCPP version |
| ocppProtocol | json | json | string | OCPP protocol |
-| ocppStrictCompliance | true/false | false | boolean | strict adherence to the OCPP version and protocol specifications |
+| ocppStrictCompliance | true/false | false | boolean | strict adherence to the OCPP version and protocol specifications. OCPP commands PDU validation against [OCA](https://www.openchargealliance.org/) JSON schemas |
| ocppPersistentConfiguration | true/false | true | boolean | enable persistent OCPP parameters storage by charging stations 'hashId'. The persistency is ensured by the charging stations configuration files in [dist/assets/configurations](dist/assets/configurations) |
| stationInfoPersistentConfiguration | true/false | true | boolean | enable persistent station information and specifications storage by charging stations 'hashId'. The persistency is ensured by the charging stations configuration files in [dist/assets/configurations](dist/assets/configurations) |
| automaticTransactionGeneratorPersistentConfiguration | true/false | true | boolean | enable persistent automatic transaction generator configuration storage by charging stations 'hashId'. The persistency is ensured by the charging stations configuration files in [dist/assets/configurations](dist/assets/configurations) |
| amperageLimitationUnit | A/cA/dA/mA | A | string | charging stations amperage limit unit |
| enableStatistics | true/false | false | boolean | enable charging stations statistics |
| mustAuthorizeAtRemoteStart | true/false | true | boolean | always send authorize at remote start transaction when AuthorizeRemoteTxRequests is enabled |
-| payloadSchemaValidation | true/false | true if ocppStrictCompliance is true/false if ocppStrictCompliance is false | boolean | validate OCPP commands PDU against [OCA](https://www.openchargealliance.org/) JSON schemas |
| beginEndMeterValues | true/false | false | boolean | enable Transaction.{Begin,End} MeterValues |
| outOfOrderEndMeterValues | true/false | false | boolean | send Transaction.End MeterValues out of order. Need to relax OCPP specifications strict compliance ('ocppStrictCompliance' parameter) |
| meteringPerTransaction | true/false | true | boolean | enable metering history on a per transaction basis |
return this.stationInfo.mustAuthorizeAtRemoteStart ?? true;
}
- public getPayloadSchemaValidation(): boolean {
- if (
- this.getOcppStrictCompliance() === true &&
- (isNullOrUndefined(this.stationInfo.payloadSchemaValidation) ||
- this.stationInfo.payloadSchemaValidation === false)
- ) {
- return true;
- } else if (
- this.getOcppStrictCompliance() === false &&
- (isNullOrUndefined(this.stationInfo.payloadSchemaValidation) ||
- this.stationInfo.payloadSchemaValidation === true)
- ) {
- return false;
- }
- return this.stationInfo.payloadSchemaValidation ?? true;
- }
-
public getNumberOfPhases(stationInfo?: ChargingStationInfo): number | undefined {
const localStationInfo: ChargingStationInfo = stationInfo ?? this.stationInfo;
switch (this.getCurrentOutType(stationInfo)) {
}
public getOcppStrictCompliance(): boolean {
- return this.stationInfo?.ocppStrictCompliance ?? false;
+ return this.stationInfo?.ocppStrictCompliance ?? true;
}
public getVoltageOut(stationInfo?: ChargingStationInfo): number | undefined {
schema: JSONSchemaType<T>,
payload: T
): boolean {
- if (chargingStation.getPayloadSchemaValidation() === false) {
+ if (chargingStation.getOcppStrictCompliance() === false) {
return true;
}
const validate = this.ajv.compile(schema);
commandName: RequestCommand | IncomingRequestCommand,
payload: T
): boolean {
- if (chargingStation.getPayloadSchemaValidation() === false) {
+ if (chargingStation.getOcppStrictCompliance() === false) {
return true;
}
if (this.jsonSchemas.has(commandName as RequestCommand) === false) {
commandName: RequestCommand | IncomingRequestCommand,
payload: T
): boolean {
- if (chargingStation.getPayloadSchemaValidation() === false) {
+ if (chargingStation.getOcppStrictCompliance() === false) {
return true;
}
if (
schema: JSONSchemaType<T>,
payload: T
): boolean {
- if (chargingStation.getPayloadSchemaValidation() === false) {
+ if (chargingStation.getOcppStrictCompliance() === false) {
return true;
}
const validate = this.ajv.compile(schema);
registrationMaxRetries?: number;
enableStatistics?: boolean;
mustAuthorizeAtRemoteStart?: boolean;
+ /** @deprecated Replaced by ocppStrictCompliance */
payloadSchemaValidation?: boolean;
amperageLimitationOcppKey?: string;
amperageLimitationUnit?: AmpereUnits;