Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
Server.prototype._publish = function() {
// pull out our custom Bridge settings from config.json, if any
var bridgeConfig = this._config.bridge || {};
var info = this._bridge.getService(Service.AccessoryInformation);
info.setCharacteristic(Characteristic.Manufacturer, `${toTitleCase(require('../package.json').author.name)}`);
info.setCharacteristic(Characteristic.Model, `${toTitleCase(require('../package.json').name)}`);
info.setCharacteristic(Characteristic.SerialNumber, bridgeConfig.username);
info.setCharacteristic(Characteristic.FirmwareRevision, require('../package.json').version);
this._bridge.on('listening', function(port) {
log.info("Homebridge is running on port %s.", port);
});
var publishInfo = {
username: bridgeConfig.username || "CC:22:3D:E3:CE:30",
port: bridgeConfig.port || 0,
pincode: bridgeConfig.pin || "031-45-154",
category: Accessory.Categories.BRIDGE,
mdns: this._config.mdns
};
if (bridgeConfig.setupID && bridgeConfig.setupID.length === 4) {
publishInfo['setupID'] = bridgeConfig.setupID;
getServices: function() {
// you can OPTIONALLY create an information service if you wish to override
// the default values for things like serial number, model, etc.
var informationService = new Service.AccessoryInformation();
informationService
.setCharacteristic(Characteristic.Name, this.name)
.setCharacteristic(Characteristic.Manufacturer, "Homebridge")
.setCharacteristic(Characteristic.Model, "File Sensor")
.setCharacteristic(Characteristic.SerialNumber, this.sn);
var service, changeAction;
if(this.sensor_type === "c"){
service = new Service.ContactSensor();
changeAction = function(newState){
service.getCharacteristic(Characteristic.ContactSensorState)
.setValue(newState ? Characteristic.ContactSensorState.CONTACT_DETECTED : Characteristic.ContactSensorState.CONTACT_NOT_DETECTED);
};
} else {
service = new Service.MotionSensor();
changeAction = function(newState){
service.getCharacteristic(Characteristic.MotionDetected)
.setValue(newState);
};
}
getServices: function() {
// you can OPTIONALLY create an information service if you wish to override
// the default values for things like serial number, model, etc.
var informationService = new Service.AccessoryInformation();
informationService
.setCharacteristic(Characteristic.Manufacturer, "HTTP Manufacturer")
.setCharacteristic(Characteristic.Model, "HTTP Hygrometer")
.setCharacteristic(Characteristic.SerialNumber, "HTTP Serial Number");
var humidityService = new Service.HumiditySensor();
humidityService
.getCharacteristic(Characteristic.CurrentRelativeHumidity)
.on('get', this.getCurrentRelativeHumidity.bind(this));
return [informationService, humidityService];
}
};
function setupAccessory(switchConfig) {
const outletUUID = uuid.v3({
namespace: uuid.namespace.url,
name: switchConfig.id
});
const outlet = new Accessory(switchConfig.name, outletUUID);
outlet
.getService(Service.AccessoryInformation)
.setCharacteristic(Characteristic.Manufacturer, 'HALBERT')
.setCharacteristic(
Characteristic.Model,
`${switchConfig.type}-${switchConfig.protocol}-switch`
)
.setCharacteristic(Characteristic.SerialNumber, switchConfig.id);
outlet.on('identify', (paired, callback) => {
console.logger.info(
`${switchConfig.name} was identified. Paired: ${paired}.`
);
callback();
});
outlet
.addService(Service.Outlet, switchConfig.name)
.getCharacteristic(Characteristic.On)
.on('set', (value, callback) => {
const action = value ? 'switch.on' : 'switch.off';
runAction(action, {
switchId: switchConfig.id
function setupAccessory(switchConfig) {
const outletUUID = uuid.v3({
namespace: uuid.namespace.url,
name: switchConfig.id
});
const outlet = new Accessory(switchConfig.name, outletUUID);
outlet
.getService(Service.AccessoryInformation)
.setCharacteristic(Characteristic.Manufacturer, 'HALBERT')
.setCharacteristic(Characteristic.Model, `${switchConfig.type}-${switchConfig.protocol}-switch`)
.setCharacteristic(Characteristic.SerialNumber, switchConfig.id);
outlet.on('identify', (paired, callback) => {
console.logger.info(`${switchConfig.name} was identified. Paired: ${paired}.`);
callback();
});
outlet
.addService(Service.Outlet, switchConfig.name)
.getCharacteristic(Characteristic.On)
.on('set', (value, callback) => {
const action = value
? 'switch.on'
: 'switch.off';
runAction(action, {
switchId: switchConfig.id
getServices: function() {
var switchService = new Service.Switch(this.name);
var informationService = new Service.AccessoryInformation();
informationService
.setCharacteristic(Characteristic.Manufacturer, this.manufacturer)
.setCharacteristic(Characteristic.Model, this.model_name)
.setCharacteristic(Characteristic.SerialNumber, this.id);
switchService
.getCharacteristic(Characteristic.On)
.on('set', this.setPowerState.bind(this));
return [informationService, switchService];
}
}
getServices: function() {
var informationService = new Service.AccessoryInformation();
informationService
.setCharacteristic(Characteristic.Manufacturer, "MiLight")
.setCharacteristic(Characteristic.Model, this.type)
.setCharacteristic(Characteristic.SerialNumber, "MILIGHT12345");
var lightbulbService = new Service.Lightbulb();
lightbulbService
.getCharacteristic(Characteristic.On)
.on('set', this.setPowerState.bind(this));
lightbulbService
.addCharacteristic(new Characteristic.Brightness())
.on('set', this.setBrightness.bind(this));
lightbulbService
.addCharacteristic(new Characteristic.Hue())
.on('set', this.setHue.bind(this));
return [informationService, lightbulbService];
getServices: function() {
var informationService = new Service.AccessoryInformation();
informationService
.setCharacteristic(Characteristic.Manufacturer, "MPD")
.setCharacteristic(Characteristic.Model, "MPD Client")
.setCharacteristic(Characteristic.SerialNumber, "81536334");
var switchService = new Service.Switch();
switchService.getCharacteristic(Characteristic.On)
.on('get', this.getPowerState.bind(this))
.on('set', this.setPowerState.bind(this));
return [informationService, switchService];
}
};
ISYLockAccessory.prototype.getServices = function() {
var informationService = new Service.AccessoryInformation();
informationService
.setCharacteristic(Characteristic.Manufacturer, "SmartHome")
.setCharacteristic(Characteristic.Model, this.device.deviceFriendlyName)
.setCharacteristic(Characteristic.SerialNumber, this.device.address);
var lockMechanismService = new Service.LockMechanism();
this.lockService = lockMechanismService;
this.informationService = informationService;
lockMechanismService
.getCharacteristic(Characteristic.LockTargetState)
.on('set', this.setTargetLockState.bind(this));
lockMechanismService
.getCharacteristic(Characteristic.LockTargetState)
.on('get', this.getTargetLockState.bind(this));
lockMechanismService
.getCharacteristic(Characteristic.LockCurrentState)
this.UUID = UUID;
this.category = category || Accessory.Categories.OTHER;
this.services = [];
this.reachable = false;
this.context = {};
this._associatedPlugin;
this._associatedPlatform;
this._associatedHAPAccessory;
this
.addService(Service.AccessoryInformation)
.setCharacteristic(Characteristic.Name, displayName)
.setCharacteristic(Characteristic.Manufacturer, "Default-Manufacturer")
.setCharacteristic(Characteristic.Model, "Default-Model")
.setCharacteristic(Characteristic.SerialNumber, "Default-SerialNumber");
}