homebridge-daikin-smart-ac
Version:
A Homebridge plugin for Daikin Wifi Adapter AC using Local API
81 lines • 4.46 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.Accessory = void 0;
const CoolingThresholdTemperature_1 = __importDefault(require("./characteristics/CoolingThresholdTemperature"));
const HeatingThresholdTemperature_1 = __importDefault(require("./characteristics/HeatingThresholdTemperature"));
const CurrentTemperature_1 = __importDefault(require("./characteristics/CurrentTemperature"));
const RotationSpeed_1 = __importDefault(require("./characteristics/RotationSpeed"));
const CurrentState_1 = __importDefault(require("./characteristics/CurrentState"));
const TargetState_1 = __importDefault(require("./characteristics/TargetState"));
const SwingMode_1 = __importDefault(require("./characteristics/SwingMode"));
const Active_1 = __importDefault(require("./characteristics/Active"));
class Accessory {
constructor(platform, accessory) {
this.platform = platform;
this.accessory = accessory;
try {
this.accessory
.getService(this.platform.Service.AccessoryInformation)
.setCharacteristic(this.platform.Characteristic.Manufacturer, 'Daikin')
.setCharacteristic(this.platform.Characteristic.Model, 'WifiAdapter')
.setCharacteristic(this.platform.Characteristic.SerialNumber, this.daikinAC.MAC);
this.heaterCoolerService =
this.accessory.getService(this.platform.Service.HeaterCooler) ||
this.accessory.addService(this.platform.Service.HeaterCooler);
this.heaterCoolerService
.getCharacteristic(this.platform.Characteristic.Active)
.onGet(Active_1.default.get.bind(this))
.onSet(Active_1.default.set.bind(this));
this.currentStateCharacteristic = this.heaterCoolerService
.getCharacteristic(this.platform.Characteristic.CurrentHeaterCoolerState)
.onGet(CurrentState_1.default.get.bind(this));
this.heaterCoolerService
.getCharacteristic(this.platform.Characteristic.TargetHeaterCoolerState)
.onGet(TargetState_1.default.get.bind(this))
.onSet(TargetState_1.default.set.bind(this));
this.heaterCoolerService
.getCharacteristic(this.platform.Characteristic.CurrentTemperature)
.onGet(CurrentTemperature_1.default.get.bind(this));
this.heaterCoolerService
.getCharacteristic(this.platform.Characteristic.CoolingThresholdTemperature)
.setProps({
minValue: this.daikinAC.MIN_COOLING_TEMPERATURE,
maxValue: this.daikinAC.MAX_COOLING_TEMPERATURE
})
.onGet(CoolingThresholdTemperature_1.default.get.bind(this))
.onSet(CoolingThresholdTemperature_1.default.set.bind(this));
this.heaterCoolerService
.getCharacteristic(this.platform.Characteristic.HeatingThresholdTemperature)
.setProps({
minValue: this.daikinAC.MIN_HEATING_TEMPERATURE,
maxValue: this.daikinAC.MAX_HEATING_TEMPERATURE
})
.onGet(HeatingThresholdTemperature_1.default.get.bind(this))
.onSet(HeatingThresholdTemperature_1.default.set.bind(this));
this.heaterCoolerService
.getCharacteristic(this.platform.Characteristic.RotationSpeed)
.setProps({
minValue: 0,
maxValue: this.daikinAC.MAX_SPEED,
validValueRanges: [0, this.daikinAC.MAX_SPEED]
})
.onGet(RotationSpeed_1.default.get.bind(this))
.onSet(RotationSpeed_1.default.set.bind(this));
this.heaterCoolerService
.getCharacteristic(this.platform.Characteristic.SwingMode)
.onGet(SwingMode_1.default.get.bind(this))
.onSet(SwingMode_1.default.set.bind(this));
}
catch (error) {
this.platform.log.error(`Failed to setup accessory: ${error === null || error === void 0 ? void 0 : error.message}`);
}
}
get daikinAC() {
return this.accessory.context.daikinAC;
}
}
exports.Accessory = Accessory;
//# sourceMappingURL=Accessory.js.map