UNPKG

hap-nodejs

Version:

HAP-NodeJS is a Node.js implementation of HomeKit Accessory Server.

78 lines 3.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const __1 = require(".."); const FAKE_GARAGE = { opened: false, open: () => { console.log("Opening the Garage!"); //add your code here which allows the garage to open FAKE_GARAGE.opened = true; }, close: () => { console.log("Closing the Garage!"); //add your code here which allows the garage to close FAKE_GARAGE.opened = false; }, identify: () => { //add your code here which allows the garage to be identified console.log("Identify the Garage"); }, status: () => { //use this section to get sensor values. set the boolean FAKE_GARAGE.opened with a sensor value. console.log("Sensor queried!"); //FAKE_GARAGE.opened = true/false; }, }; const garageUUID = __1.uuid.generate("hap-nodejs:accessories:" + "GarageDoor"); const garage = exports.accessory = new __1.Accessory("Garage Door", garageUUID); // Add properties for publishing (in case we're using Core.js and not BridgedCore.js) // @ts-expect-error: Core/BridgeCore API garage.username = "C1:5D:3F:EE:5E:FA"; //edit this if you use Core.js // @ts-expect-error: Core/BridgeCore API garage.pincode = "031-45-154"; garage.category = 4 /* Categories.GARAGE_DOOR_OPENER */; garage .getService(__1.Service.AccessoryInformation) .setCharacteristic(__1.Characteristic.Manufacturer, "Liftmaster") .setCharacteristic(__1.Characteristic.Model, "Rev-1") .setCharacteristic(__1.Characteristic.SerialNumber, "TW000165"); garage.on("identify" /* AccessoryEventTypes.IDENTIFY */, (paired, callback) => { FAKE_GARAGE.identify(); callback(); }); garage .addService(__1.Service.GarageDoorOpener, "Garage Door") .setCharacteristic(__1.Characteristic.TargetDoorState, __1.Characteristic.TargetDoorState.CLOSED) // force initial state to CLOSED .getCharacteristic(__1.Characteristic.TargetDoorState) .on("set" /* CharacteristicEventTypes.SET */, (value, callback) => { if (value === __1.Characteristic.TargetDoorState.CLOSED) { FAKE_GARAGE.close(); callback(); garage .getService(__1.Service.GarageDoorOpener) .setCharacteristic(__1.Characteristic.CurrentDoorState, __1.Characteristic.CurrentDoorState.CLOSED); } else if (value === __1.Characteristic.TargetDoorState.OPEN) { FAKE_GARAGE.open(); callback(); garage .getService(__1.Service.GarageDoorOpener) .setCharacteristic(__1.Characteristic.CurrentDoorState, __1.Characteristic.CurrentDoorState.OPEN); } }); garage .getService(__1.Service.GarageDoorOpener) .getCharacteristic(__1.Characteristic.CurrentDoorState) .on("get" /* CharacteristicEventTypes.GET */, (callback) => { const err = null; FAKE_GARAGE.status(); if (FAKE_GARAGE.opened) { console.log("Query: Is Garage Open? Yes."); callback(err, __1.Characteristic.CurrentDoorState.OPEN); } else { console.log("Query: Is Garage Open? No."); callback(err, __1.Characteristic.CurrentDoorState.CLOSED); } }); //# sourceMappingURL=GarageDoorOpener_accessory.js.map