RegistrationStatusEnumType,
type ResponseHandler,
} from '../../../types';
-import { logger } from '../../../utils/Logger';
+import { logger } from '../../../utils';
import { OCPP20ServiceUtils, OCPPResponseService } from '../internal';
const moduleName = 'OCPP20ResponseService';
private jsonSchemas: Map<OCPP20RequestCommand, JSONSchemaType<JsonObject>>;
public constructor() {
- if (new.target?.name === moduleName) {
- throw new TypeError(`Cannot construct ${new.target?.name} instances directly`);
- }
+ // if (new.target?.name === moduleName) {
+ // throw new TypeError(`Cannot construct ${new.target?.name} instances directly`);
+ // }
super(OCPPVersion.VERSION_20);
this.responseHandlers = new Map<OCPP20RequestCommand, ResponseHandler>([
[OCPP20RequestCommand.BOOT_NOTIFICATION, this.handleResponseBootNotification.bind(this)],
),
],
]);
- this.validatePayload.bind(this);
+ this.validatePayload = this.validatePayload.bind(this) as (
+ chargingStation: ChargingStation,
+ commandName: OCPP20RequestCommand,
+ payload: JsonType
+ ) => boolean;
}
public async responseHandler(
{},
{ overwrite: true, save: true }
);
- chargingStation.heartbeatSetInterval
- ? chargingStation.restartHeartbeat()
- : chargingStation.startHeartbeat();
+ OCPP20ServiceUtils.startHeartbeatInterval(chargingStation, payload.interval);
}
if (Object.values(RegistrationStatusEnumType).includes(payload.status)) {
const logMsg = `${chargingStation.logPrefix()} Charging station in '${