UNPKG

nubli

Version:
32 lines (31 loc) 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const SmartLockCommand_1 = require("./SmartLockCommand"); const states_1 = require("../states"); const smartLock_1 = require("../smartLock"); class RequestAdvancedConfigCommand extends SmartLockCommand_1.SmartLockCommand { constructor() { super(...arguments); this.requiresChallenge = true; } requestData(config) { return smartLock_1.SmartLock.prepareCommand(states_1.Command.REQUEST_ADVANCED_CONFIG, this.challenge); } handleData(command, payload) { this._response.data.totalDegrees = payload.readUInt16LE(0); this._response.data.unlockedPositionOffsetDegrees = payload.readInt16LE(2); this._response.data.lockedPositionOffsetDegrees = payload.readInt16LE(4); this._response.data.singleLockedPositionOffsetDegrees = payload.readInt16LE(6); this._response.data.unlockedToLockedTransitionOffsetDegrees = payload.readInt16LE(8); this._response.data.lockNGoTimeout = payload.readUInt8(10); this._response.data.singleButtonPressAction = payload.readUInt8(11); this._response.data.doubleButtonPressAction = payload.readUInt8(12); this._response.data.detachedCylinder = payload.readUInt8(13) == 1; this._response.data.batteryType = payload.readUInt8(14); this._response.data.automaticBatteryTypeDetection = payload.readUInt8(15) == 1; this._response.data.unlatchDuration = payload.readUInt8(16); this._response.data.autoLockTimeout = payload.readUInt16LE(17); this._complete = true; } } exports.RequestAdvancedConfigCommand = RequestAdvancedConfigCommand;