homecontrol-control-base/ColorlampBase.js

54 lines
1.1 KiB
JavaScript

const HCControlBase = require('./ControlBase');
const ColorlampState = require('./states/ColorlampState');
class HCColorlamp extends HCControlBase {
constructor(config) {
super(config, new ColorlampState());
}
get type() {
return "colorlamp";
}
get effects() {
return [];
}
turnOn() {
return Promise.reject(new Error("Not implemented"));
}
turnOff() {
return Promise.reject(new Error("Not implemented"));
}
togglePower() {
if(this.state.on) {
return this.turnOff();
} else {
return this.turnOn();
}
}
setBrightness(brightness) {
return Promise.reject(new Error("Not implemented"));
}
/**
* Sets the color to the values given in the colors object
* Also accepts partial values (only update hue and sat for example)
* @param {Object} color
* @param {Number} color.hue Hue
* @param {Number} color.sat Saturation
* @param {Number} color.l Lightness
*/
setColor(color) {
return Promise.reject(new Error("Not implemented"));
}
setEffect(id) {
return Promise.reject(new Error("Not implemented"));
}
}
module.exports = HCColorlamp;