Skip to content

Commit ae29039

Browse files
committed
Fix characteristic warning on first launch
1 parent ff2f8d4 commit ae29039

5 files changed

Lines changed: 15 additions & 7 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
All notable changes to homebridge-dummy will be documented in this file.
44

5-
## 1.5.17-beta.3 ()
5+
## 1.5.17-beta.4 ()
66

77
### Added
88
- 'Simulate Duration' option to enable auto-shutoff for [`Valves`](https://github.com/mpatfield/homebridge-easy-mqtt/wiki/Valve) that do not have duration topics

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"displayName": "Homebridge Easy MQTT",
55
"description": "Homebridge plugin for MQTT devices",
66
"type": "module",
7-
"version": "1.5.17-beta.3",
7+
"version": "1.5.17-beta.4",
88
"homepage": "https://github.com/mpatfield/homebridge-easy-mqtt#readme",
99
"repository": {
1010
"type": "git",

src/accessory/abstract/common.ts

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
1-
import { Characteristic, CharacteristicSetHandler, CharacteristicValue, Nullable, Perms, PrimitiveTypes, Service } from 'homebridge';
1+
import {
2+
Characteristic, CharacteristicProps, CharacteristicSetHandler, CharacteristicValue,
3+
Nullable, PartialAllowingNull, Perms, PrimitiveTypes, Service,
4+
} from 'homebridge';
25

36
import { EveCharacteristic, isEveCharacteristic } from '../characteristic/eve.js';
47

@@ -214,7 +217,7 @@ export abstract class Common<C extends Assertable> {
214217
}
215218

216219
protected setupTopicless(characteristicKey: CharacteristicKey, defaultValue: CharacteristicValue,
217-
onSetCallback?: (value: CharacteristicValue, changed: boolean) => (void)): Characteristic | undefined {
220+
onSetCallback?: (value: CharacteristicValue, changed: boolean) => (void), props?: PartialAllowingNull<CharacteristicProps>): Characteristic | undefined {
218221

219222
const startingValue = this.getProperty(characteristicKey) ?? defaultValue;
220223

@@ -223,6 +226,11 @@ export abstract class Common<C extends Assertable> {
223226
}
224227

225228
const characteristic = this.service.getCharacteristic(this.characteristicFromKey(characteristicKey));
229+
230+
if (props !== undefined) {
231+
characteristic.setProps(props);
232+
}
233+
226234
characteristic.setValue(startingValue);
227235

228236
this.setProperty(characteristicKey, startingValue);

src/accessory/valve.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ export class ValveAccessory extends BaseAccessory<ValveConfig> {
5858
dependency.log.warning(strings.valve.durationTopicsIgnored, this.name, `(${durationTopics.join(', ')})`);
5959
}
6060

61-
this.setupTopicless(HKCharacteristicKey.SetDuration, minimumDuration, ()=>{})?.setProps( {
61+
this.setupTopicless(HKCharacteristicKey.SetDuration, minimumDuration, ()=>{}, {
6262
minValue: minimumDuration,
6363
maxValue: maximumDuration,
6464
});

0 commit comments

Comments
 (0)