roundTo
} from '../../utils/index.js'
-export const getMessageTypeString = (messageType: MessageType): string => {
+export const getMessageTypeString = (messageType: MessageType | undefined): string => {
switch (messageType) {
case MessageType.CALL_MESSAGE:
return 'request'
}
}
-export const buildStatusNotificationRequest = (
+const buildStatusNotificationRequest = (
chargingStation: ChargingStation,
connectorId: number,
status: ConnectorStatusEnum,
chargingStation.idTagsCache
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
.getIdTags(getIdTagsFile(chargingStation.stationInfo!)!)
- ?.find((tag) => tag === idTag)
+ ?.find(tag => tag === idTag)
)
)
}
if (
(connectorId === 0 &&
OCPP16Constants.ChargePointStatusChargingStationTransitions.findIndex(
- (transition) => transition.from === fromStatus && transition.to === status
+ transition => transition.from === fromStatus && transition.to === status
) !== -1) ||
(connectorId > 0 &&
OCPP16Constants.ChargePointStatusConnectorTransitions.findIndex(
- (transition) => transition.from === fromStatus && transition.to === status
+ transition => transition.from === fromStatus && transition.to === status
) !== -1)
) {
transitionAllowed = true
if (
(connectorId === 0 &&
OCPP20Constants.ChargingStationStatusTransitions.findIndex(
- (transition) => transition.from === fromStatus && transition.to === status
+ transition => transition.from === fromStatus && transition.to === status
) !== -1) ||
(connectorId > 0 &&
OCPP20Constants.ConnectorStatusTransitions.findIndex(
- (transition) => transition.from === fromStatus && transition.to === status
+ transition => transition.from === fromStatus && transition.to === status
) !== -1)
) {
transitionAllowed = true
}
}
if (powerSampledValueTemplate != null) {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
checkMeasurandPowerDivider(chargingStation, powerSampledValueTemplate.measurand)
const errMsg = `MeterValues measurand ${
powerSampledValueTemplate.measurand ?? MeterValueMeasurand.ENERGY_ACTIVE_IMPORT_REGISTER
)
? getRandomFloatFluctuatedRounded(
getLimitFromSampledValueTemplateCustomValue(
- powerPerPhaseSampledValueTemplates.L1?.value,
+ powerPerPhaseSampledValueTemplates.L1.value,
connectorMaximumPowerPerPhase / unitDivider,
connectorMinimumPowerPerPhase / unitDivider,
{
fallbackValue: connectorMinimumPowerPerPhase / unitDivider
}
),
- powerPerPhaseSampledValueTemplates.L1?.fluctuationPercent ??
+ powerPerPhaseSampledValueTemplates.L1.fluctuationPercent ??
Constants.DEFAULT_FLUCTUATION_PERCENT
)
: undefined
)
? getRandomFloatFluctuatedRounded(
getLimitFromSampledValueTemplateCustomValue(
- powerPerPhaseSampledValueTemplates.L2?.value,
+ powerPerPhaseSampledValueTemplates.L2.value,
connectorMaximumPowerPerPhase / unitDivider,
connectorMinimumPowerPerPhase / unitDivider,
{
fallbackValue: connectorMinimumPowerPerPhase / unitDivider
}
),
- powerPerPhaseSampledValueTemplates.L2?.fluctuationPercent ??
+ powerPerPhaseSampledValueTemplates.L2.fluctuationPercent ??
Constants.DEFAULT_FLUCTUATION_PERCENT
)
: undefined
)
? getRandomFloatFluctuatedRounded(
getLimitFromSampledValueTemplateCustomValue(
- powerPerPhaseSampledValueTemplates.L3?.value,
+ powerPerPhaseSampledValueTemplates.L3.value,
connectorMaximumPowerPerPhase / unitDivider,
connectorMinimumPowerPerPhase / unitDivider,
{
fallbackValue: connectorMinimumPowerPerPhase / unitDivider
}
),
- powerPerPhaseSampledValueTemplates.L3?.fluctuationPercent ??
+ powerPerPhaseSampledValueTemplates.L3.fluctuationPercent ??
Constants.DEFAULT_FLUCTUATION_PERCENT
)
: undefined
)
? getRandomFloatFluctuatedRounded(
getLimitFromSampledValueTemplateCustomValue(
- currentPerPhaseSampledValueTemplates.L1?.value,
+ currentPerPhaseSampledValueTemplates.L1.value,
connectorMaximumAmperage,
connectorMinimumAmperage,
{
fallbackValue: connectorMinimumAmperage
}
),
- currentPerPhaseSampledValueTemplates.L1?.fluctuationPercent ??
+ currentPerPhaseSampledValueTemplates.L1.fluctuationPercent ??
Constants.DEFAULT_FLUCTUATION_PERCENT
)
: undefined
)
? getRandomFloatFluctuatedRounded(
getLimitFromSampledValueTemplateCustomValue(
- currentPerPhaseSampledValueTemplates.L2?.value,
+ currentPerPhaseSampledValueTemplates.L2.value,
connectorMaximumAmperage,
connectorMinimumAmperage,
{
fallbackValue: connectorMinimumAmperage
}
),
- currentPerPhaseSampledValueTemplates.L2?.fluctuationPercent ??
+ currentPerPhaseSampledValueTemplates.L2.fluctuationPercent ??
Constants.DEFAULT_FLUCTUATION_PERCENT
)
: undefined
)
? getRandomFloatFluctuatedRounded(
getLimitFromSampledValueTemplateCustomValue(
- currentPerPhaseSampledValueTemplates.L3?.value,
+ currentPerPhaseSampledValueTemplates.L3.value,
connectorMaximumAmperage,
connectorMinimumAmperage,
{
fallbackValue: connectorMinimumAmperage
}
),
- currentPerPhaseSampledValueTemplates.L3?.fluctuationPercent ??
+ currentPerPhaseSampledValueTemplates.L3.fluctuationPercent ??
Constants.DEFAULT_FLUCTUATION_PERCENT
)
: undefined
// Energy.Active.Import.Register measurand (default)
energySampledValueTemplate = getSampledValueTemplate(chargingStation, connectorId)
if (energySampledValueTemplate != null) {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
checkMeasurandPowerDivider(chargingStation, energySampledValueTemplate.measurand)
const unitDivider =
energySampledValueTemplate.unit === MeterValueUnit.KILO_WATT_HOUR ? 1000 : 1
// eslint-disable-next-line @typescript-eslint/no-extraneous-class
export class OCPPServiceUtils {
- public static getMessageTypeString = getMessageTypeString
- public static sendAndSetConnectorStatus = sendAndSetConnectorStatus
- public static isIdTagAuthorized = isIdTagAuthorized
- public static buildTransactionEndMeterValue = buildTransactionEndMeterValue
+ public static readonly getMessageTypeString = getMessageTypeString
+ public static readonly sendAndSetConnectorStatus = sendAndSetConnectorStatus
+ public static readonly isIdTagAuthorized = isIdTagAuthorized
+ public static readonly buildTransactionEndMeterValue = buildTransactionEndMeterValue
protected static getSampledValueTemplate = getSampledValueTemplate
protected static buildSampledValue = buildSampledValue
// This is intentional
}
- public static ajvErrorsToErrorType (errors: ErrorObject[] | null | undefined): ErrorType {
+ public static ajvErrorsToErrorType (errors: ErrorObject[] | undefined | null): ErrorType {
if (isNotEmptyArray(errors)) {
for (const error of errors as DefinedError[]) {
switch (error.keyword) {
return true
}
- public static convertDateToISOString<T extends JsonType>(obj: T): void {
- for (const key in obj) {
+ public static convertDateToISOString<T extends JsonType>(object: T): void {
+ for (const key in object) {
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion, @typescript-eslint/no-non-null-assertion
- if (isDate(obj![key])) {
+ if (isDate(object![key])) {
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion, @typescript-eslint/no-non-null-assertion
- (obj![key] as string) = (obj![key] as Date).toISOString()
+ (object![key] as string) = (object![key] as Date).toISOString()
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion, @typescript-eslint/no-non-null-assertion, @typescript-eslint/no-unnecessary-condition
- } else if (typeof obj![key] === 'object' && obj![key] !== null) {
+ } else if (typeof object![key] === 'object' && object![key] !== null) {
// eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion, @typescript-eslint/no-non-null-assertion
- OCPPServiceUtils.convertDateToISOString<T>(obj![key] as T)
+ OCPPServiceUtils.convertDateToISOString<T>(object![key] as T)
}
}
}