homebridge-virtual-accessories
Version:
Virtual HomeKit accessories for Homebridge.
41 lines • 1.4 kB
JavaScript
import { AccessoryConfiguration } from './configurationAccessory.js';
import { WebhookServerConfiguration } from './configurationWebhookServer.js';
import { deserialize } from 'typeserializer';
import 'reflect-metadata';
/**
*
*/
export class ConfigurationUtils {
log;
constructor(log) {
this.log = log;
}
deserializeAccessoryConfig(config) {
let accessoryConfig;
const json = (typeof config === 'object') ? JSON.stringify(config) : config;
try {
accessoryConfig = deserialize(json, AccessoryConfiguration);
}
catch (error) {
this.log.error(`[Configuration] Error: ${JSON.stringify(error)}`);
}
return accessoryConfig;
}
deserializeWebhookServerConfig(config) {
let sensorServerConfig;
if (config !== undefined) {
const json = (typeof config === 'object') ? JSON.stringify(config) : config;
try {
sensorServerConfig = deserialize(json, WebhookServerConfiguration);
}
catch (error) {
this.log.error(`[Configuration] SensorServer configuration error: ${JSON.stringify(error)}`);
}
}
else {
this.log.debug('[Configuration] No SensorServer configuration. Skipping');
}
return sensorServerConfig;
}
}
//# sourceMappingURL=utils.js.map