isEmptyArray,
isNotEmptyArray,
isNotEmptyString,
- isNullOrUndefined,
- isUndefined,
logger,
sleep
} from '../../../utils/index.js'
const { key } = commandPayload
const configurationKey: OCPPConfigurationKey[] = []
const unknownKey: string[] = []
- if (isUndefined(key)) {
+ if (key == null) {
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- for (const configuration of chargingStation.ocppConfiguration!.configurationKey!) {
- if (isUndefined(configuration.visible)) {
- configuration.visible = true
- }
- if (configuration.visible === false) {
+ for (const configKey of chargingStation.ocppConfiguration!.configurationKey!) {
+ if (!OCPP16ServiceUtils.isConfigurationKeyVisible(configKey)) {
continue
}
configurationKey.push({
- key: configuration.key,
- readonly: configuration.readonly,
- value: configuration.value
+ key: configKey.key,
+ readonly: configKey.readonly,
+ value: configKey.value
})
}
} else if (isNotEmptyArray(key)) {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- for (const k of key!) {
+ for (const k of key) {
const keyFound = getConfigurationKey(chargingStation, k, true)
- if (keyFound !== undefined) {
- if (isUndefined(keyFound.visible)) {
- keyFound.visible = true
- }
- if (keyFound.visible === false) {
+ if (keyFound != null) {
+ if (!OCPP16ServiceUtils.isConfigurationKeyVisible(keyFound)) {
continue
}
configurationKey.push({
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
const connectorStatus = chargingStation.getConnectorStatus(connectorId)!
if (
- isEmptyArray(
- connectorStatus?.chargingProfiles != null &&
- isEmptyArray(chargingStation.getConnectorStatus(0)?.chargingProfiles)
- )
+ isEmptyArray(connectorStatus?.chargingProfiles) &&
+ isEmptyArray(chargingStation.getConnectorStatus(0)?.chargingProfiles)
) {
return OCPP16Constants.OCPP_RESPONSE_REJECTED
}
let compositeSchedule: OCPP16ChargingSchedule | undefined
for (const chargingProfile of chargingProfiles) {
if (
- isNullOrUndefined(chargingProfile.chargingSchedule?.startSchedule) &&
+ chargingProfile.chargingSchedule?.startSchedule == null &&
connectorStatus?.transactionStarted === true
) {
logger.debug(
chargingProfile.chargingSchedule.startSchedule = connectorStatus?.transactionStart
}
if (
- !isNullOrUndefined(chargingProfile.chargingSchedule?.startSchedule) &&
+ chargingProfile.chargingSchedule?.startSchedule != null &&
!isDate(chargingProfile.chargingSchedule?.startSchedule)
) {
logger.warn(
)!
}
if (
- !isNullOrUndefined(chargingProfile.chargingSchedule?.startSchedule) &&
- isNullOrUndefined(chargingProfile.chargingSchedule?.duration)
+ chargingProfile.chargingSchedule?.startSchedule != null &&
+ chargingProfile.chargingSchedule?.duration == null
) {
logger.debug(
`${chargingStation.logPrefix()} ${moduleName}.handleRequestGetCompositeSchedule: Charging profile id ${
// OCPP specifies that if duration is not defined, it should be infinite
chargingProfile.chargingSchedule.duration = differenceInSeconds(
maxTime,
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- chargingProfile.chargingSchedule.startSchedule!
+ chargingProfile.chargingSchedule.startSchedule
)
}
if (
}
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
const connectorStatus = chargingStation.getConnectorStatus(connectorId!)
- if (!isNullOrUndefined(connectorId) && isNotEmptyArray(connectorStatus?.chargingProfiles)) {
+ if (connectorId != null && isNotEmptyArray(connectorStatus?.chargingProfiles)) {
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
connectorStatus!.chargingProfiles = []
logger.debug(
)
return OCPP16Constants.OCPP_CLEAR_CHARGING_PROFILE_RESPONSE_ACCEPTED
}
- if (isNullOrUndefined(connectorId)) {
+ if (connectorId == null) {
let clearedCP = false
if (chargingStation.hasEvses) {
for (const evseStatus of chargingStation.evses.values()) {
}
let { retrieveDate } = commandPayload
if (
- !isNullOrUndefined(chargingStation.stationInfo.firmwareStatus) &&
+ chargingStation.stationInfo.firmwareStatus != null &&
chargingStation.stationInfo.firmwareStatus !== OCPP16FirmwareStatus.Installed
) {
logger.warn(
return OCPP16Constants.OCPP_TRIGGER_MESSAGE_RESPONSE_ACCEPTED
case OCPP16MessageTrigger.StatusNotification:
setTimeout(() => {
- if (!isNullOrUndefined(connectorId)) {
+ if (connectorId != null) {
chargingStation.ocppRequestService
.requestHandler<OCPP16StatusNotificationRequest, OCPP16StatusNotificationResponse>(
chargingStation,
{
connectorId,
errorCode: OCPP16ChargePointErrorCode.NO_ERROR,
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- status: chargingStation.getConnectorStatus(connectorId!)?.status
+ status: chargingStation.getConnectorStatus(connectorId)?.status
},
{
triggerMessage: true
try {
const { reservationId } = commandPayload
const reservation = chargingStation.getReservationBy('reservationId', reservationId)
- if (isUndefined(reservation)) {
+ if (reservation == null) {
logger.debug(
`${chargingStation.logPrefix()} Reservation with id ${reservationId} does not exist on charging station`
)
return OCPP16Constants.OCPP_CANCEL_RESERVATION_RESPONSE_REJECTED
}
await chargingStation.removeReservation(
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- reservation!,
+ reservation,
ReservationTerminationReason.RESERVATION_CANCELED
)
return OCPP16Constants.OCPP_CANCEL_RESERVATION_RESPONSE_ACCEPTED