UNPKG

@pmouli/isy-matter-server

Version:

Service to expose an ISY device as a Matter Border router

83 lines 3.03 kB
/* THIS FILE WAS AUTOMATICALLY GENERATED. DO NOT EDIT DIRECTLY. */ import { Driver } from '../../../Definitions/Global/Drivers.js'; import { UnitOfMeasure } from '../../../Definitions/Global/index.js'; import { NodeFactory } from '../../NodeFactory.js'; import { Base } from '../index.js'; export class DoorLock extends Base { commands = { LOCK: this.lock, UNLOCK: this.unlock, QUERY: this.query, SETTP: this.setTime, CONFIG: this.setConfiguration, WDU: this.writeChanges }; static nodeDefId = '111'; static implements = ['111']; constructor(isy, nodeInfo) { super(isy, nodeInfo); this.drivers.ST = Driver.create('ST', this, nodeInfo.state['ST'], { uom: UnitOfMeasure.DeadboltStatus, label: 'Status', name: 'status' }); this.drivers.BATLVL = Driver.create('BATLVL', this, nodeInfo.state['BATLVL'], { uom: UnitOfMeasure.Percent, label: 'Battery Level', name: 'batteryLevel' }); this.drivers.ERR = Driver.create('ERR', this, nodeInfo.state['ERR'], { uom: UnitOfMeasure.Index, label: 'Responding', name: 'responding' }); } async lock() { return this.sendCommand('LOCK'); } async unlock(value) { return this.sendCommand('UNLOCK', [value, UnitOfMeasure.Index]); } async query() { return this.sendCommand('QUERY'); } async setTime() { return this.sendCommand('SETTP'); } async setConfiguration(parameterNumber, parameterValue) { return this.sendCommand('CONFIG', { NUM: [parameterNumber, UnitOfMeasure.Raw1ByteUnsignedValue], VAL: parameterValue }); } async writeChanges() { return this.sendCommand('WDU'); } get status() { return this.drivers.ST?.value; } get batteryLevel() { return this.drivers.BATLVL?.value; } get responding() { return this.drivers.ERR?.value; } } NodeFactory.register(DoorLock); (function (DoorLock) { function is(node) { return ['111'].includes(node.nodeDefId); } DoorLock.is = is; function isImplementedBy(node) { return ['111'].includes(node.nodeDefId); } DoorLock.isImplementedBy = isImplementedBy; function create(isy, nodeInfo) { return new DoorLock(isy, nodeInfo); } DoorLock.create = create; DoorLock.Node = DoorLock; DoorLock.Class = DoorLock; let Commands; (function (Commands) { Commands["lock"] = "LOCK"; Commands["unlock"] = "UNLOCK"; Commands["query"] = "QUERY"; Commands["setTime"] = "SETTP"; Commands["setConfiguration"] = "CONFIG"; Commands["writeChanges"] = "WDU"; })(Commands = DoorLock.Commands || (DoorLock.Commands = {})); let Drivers; (function (Drivers) { Drivers["status"] = "ST"; Drivers["batteryLevel"] = "BATLVL"; Drivers["responding"] = "ERR"; })(Drivers = DoorLock.Drivers || (DoorLock.Drivers = {})); })(DoorLock || (DoorLock = {})); //# sourceMappingURL=DoorLock.js.map