4.3.3
Pre-release
Pre-release
Major enhancements to support [email protected]:
- Support for external accessories, not being bridged by the Homebridge accessory, but exposing their own HAP server;
- Support asynchronous initialisation of delegates.
- Accessories are only exposed once initialisation has completed.
- Automatic cleanup of services and characteristics restored from cache, for which no delegate has been created during initialisation.
- (Final subclass of) the delegate needs to emit and
initialised
event to indicate initialisation has been completed.
- Enhanced
CharacteristicDelegate
:- Support getter and setter functions for synchronous reads and writes by HomeKit;
- Support for monitoring through
didSet
events, emitted after HomeKit has been updated; - Support persisted values without a corresponding HomeKit characteristic;
- Loose the peer dependency setup:
homebridge-lib
can no longer be loaded by Homebridge; you might want to uninstall it usingsudo npm -g un homebridge-lib
;- Each plugin specifies
homebridge-lib
, once again, as a regular dependency, sonpm
will install it automatically with the plugin. This results, once again, in multiple installations ofhomebridge-lib
; - The first plugin (based on
homebridge-lib
) loaded by Homebridge also registershomebridge-lib
with Homebridge, and provides the hearbeat and UPnP listener to the other plugins.
- Major code cleanup in an attempt to provide more consistency (causing some breaking changes):
- Better distinction between
characteristic
vscharacteristicDelegate
. E.g.addCharacteristicDelegate()
instead ofaddCharacteristic()
. - Better distinction between
Characteristic
(class),Characteristics
(collection of classes),characteristic
(instance)characteristics
(collection of instances). Note:Characteristics.hap.*
,Characteristics.eve.*
vsCharacteristic.Format
vsCharacteristic.Formats.*
- Better distinction between
- Added developer documentation (work in progress).