How to use the hap-nodejs.Characteristic.SerialNumber function in hap-nodejs

To help you get started, we’ve selected a few hap-nodejs examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github nfarina / homebridge / lib / server.js View on Github external
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;
github nfarina / homebridge / accessories / FileSensor.js View on Github external
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);
        };
    }
github nfarina / homebridge / accessories / HttpHygrometer.js View on Github external
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];
  }
};
github Capevace / halbert / system / moduleRegistry / built-in / switch / accessories.js View on Github external
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
github Capevace / halbert / system / modules / switch / accessories.js View on Github external
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
github nfarina / homebridge / accessories / GenericRS232Device.js View on Github external
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];
  }
}
github nfarina / homebridge / platforms / MiLight.js View on Github external
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];
github nfarina / homebridge / accessories / mpdclient.js View on Github external
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];
  }
};
github SphtKr / homebridge-zway / isy-js.js View on Github external
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)
github nfarina / homebridge / lib / platformAccessory.js View on Github external
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");
}