homebridge-virtual-accessories
Version:
Virtual HomeKit accessories for Homebridge.
43 lines • 1.44 kB
JavaScript
import { Sensor } from './sensor.js';
/**
* ContactSensor - Sensor implementation
*/
export class ContactSensor extends Sensor {
static ACCESSORY_TYPE_NAME = 'ContactSensor';
static CONTACT_DETECTED = 0; // Characteristic.ContactSensorState.CONTACT_DETECTED;
static CONTACT_NOT_DETECTED = 1; // Characteristic.ContactSensorState.CONTACT_NOT_DETECTED;
constructor(platform, accessory, accessoryConfiguration) {
super(platform, accessory, accessoryConfiguration);
}
getService() {
return this.platform.Service.ContactSensor;
}
getEventDetectedCharacteristic() {
return this.platform.Characteristic.ContactSensorState;
}
getStateName(state) {
let sensorStateName;
switch (state) {
case undefined: {
sensorStateName = 'undefined';
break;
}
case ContactSensor.CONTACT_DETECTED: {
sensorStateName = Sensor.NORMAL_INACTIVE;
break;
}
case ContactSensor.CONTACT_NOT_DETECTED: {
sensorStateName = Sensor.TRIGGERED_ACTIVE;
break;
}
default: {
sensorStateName = state.toString();
}
}
return sensorStateName;
}
getAccessoryTypeName() {
return ContactSensor.ACCESSORY_TYPE_NAME;
}
}
//# sourceMappingURL=virtualSensorContact.js.map