homebridge-miot
Version:
Homebridge plugin for devices supporting the miot protocol
68 lines (38 loc) • 1.66 kB
JavaScript
const BaseDevice = require('../../base/BaseDevice.js');
const Properties = require('../../constants/Properties.js');
const Constants = require('../../constants/Constants.js');
const DevTypes = require('../../constants/DevTypes.js');
const PropFormat = require('../../constants/PropFormat.js');
const PropUnit = require('../../constants/PropUnit.js');
const PropAccess = require('../../constants/PropAccess.js');
// DEVICES: http://miot-spec.org/miot-spec-v2/instances?status=all
class GenericDevice extends BaseDevice {
constructor(model, deviceId, name, logger) {
super(model, deviceId, name, logger);
}
/*----------========== DEVICE INFO ==========----------*/
getDeviceName() {
return "Generic device";
}
/*----------========== INIT ==========----------*/
initDeviceProperties() {
// most devices have the power control on 2,1 so use that for base devices
this.addProperty(Properties.POWER, 2, 1, PropFormat.BOOL, PropAccess.READ_WRITE_NOTIFY, PropUnit.NONE);
}
initialPropertyFetchDone() {
super.initialPropertyFetchDone();
// nothing special yet
}
/*----------========== INFO ==========----------*/
getType() {
return DevTypes.UNKNOWN;
}
/*----------========== CONFIG ==========----------*/
/*----------========== FEATURES ==========----------*/
/*----------========== GETTERS ==========----------*/
/*----------========== SETTERS ==========----------*/
/*----------========== ACTIONS ==========----------*/
/*----------========== CONVENIENCE ==========----------*/
/*----------========== HELPERS ==========----------*/
}
module.exports = GenericDevice;