Fixing stateless device buttons to not error out when pressed
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
bc2208b5cb
commit
1121dbc52c
@ -75,23 +75,28 @@ export class DeviceButton {
|
||||
}
|
||||
|
||||
//Execute command
|
||||
if (this._device) {
|
||||
//change state if stateful
|
||||
if (this._deviceInfo.IsStateful && this._buttonState != newState) {
|
||||
this._buttonState = newState;
|
||||
await this._device.sendCommand(this._deviceInfo.ButtonName);
|
||||
} else if (!this._deviceInfo.IsStateful) {
|
||||
//Send the number of configured key presses
|
||||
for (let i = 0; i < this._deviceInfo.NumberOfKeyPresses; i++) {
|
||||
await this._device.sendCommand(this._deviceInfo.ButtonName);
|
||||
}
|
||||
this._switchService
|
||||
.getCharacteristic(this._platform.Characteristic.On)
|
||||
.updateValue(false);
|
||||
return callback(new Error("Normal Response"));
|
||||
}
|
||||
if (!this._device) {
|
||||
return callback();
|
||||
}
|
||||
|
||||
//change state if stateful
|
||||
if (this._deviceInfo.IsStateful && this._buttonState != newState) {
|
||||
this._buttonState = newState;
|
||||
await this._device.sendCommand(this._deviceInfo.ButtonName);
|
||||
return callback();
|
||||
} else if (!this._deviceInfo.IsStateful) {
|
||||
//Send the number of configured key presses
|
||||
for (let i = 0; i < this._deviceInfo.NumberOfKeyPresses; i++) {
|
||||
await this._device.sendCommand(this._deviceInfo.ButtonName);
|
||||
}
|
||||
|
||||
this._switchService
|
||||
.getCharacteristic(this._platform.Characteristic.On)
|
||||
.updateValue(false);
|
||||
|
||||
this._buttonState = false;
|
||||
return callback();
|
||||
}
|
||||
return callback();
|
||||
};
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user