hap-nodejs 1.1.1-beta.1 → 1.1.1-beta.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/@types/bonjour-hap.d.ts +50 -53
- package/README.md +16 -19
- package/dist/accessories/AirConditioner_accessory.js +28 -30
- package/dist/accessories/AirConditioner_accessory.js.map +1 -1
- package/dist/accessories/AppleTVRemote_accessory.js +69 -81
- package/dist/accessories/AppleTVRemote_accessory.js.map +1 -1
- package/dist/accessories/Camera_accessory.js +141 -136
- package/dist/accessories/Camera_accessory.js.map +1 -1
- package/dist/accessories/Fan_accessory.js +18 -22
- package/dist/accessories/Fan_accessory.js.map +1 -1
- package/dist/accessories/GarageDoorOpener_accessory.js +33 -35
- package/dist/accessories/GarageDoorOpener_accessory.js.map +1 -1
- package/dist/accessories/Light-AdaptiveLighting_accessory.js +42 -44
- package/dist/accessories/Light-AdaptiveLighting_accessory.js.map +1 -1
- package/dist/accessories/Light_accessory.js +32 -34
- package/dist/accessories/Light_accessory.js.map +1 -1
- package/dist/accessories/Lock_accessory.js +25 -26
- package/dist/accessories/Lock_accessory.js.map +1 -1
- package/dist/accessories/MotionSensor_accessory.js +13 -16
- package/dist/accessories/MotionSensor_accessory.js.map +1 -1
- package/dist/accessories/Outlet_accessory.js +20 -22
- package/dist/accessories/Outlet_accessory.js.map +1 -1
- package/dist/accessories/SmartSpeaker_accessory.js +18 -20
- package/dist/accessories/SmartSpeaker_accessory.js.map +1 -1
- package/dist/accessories/Sprinkler_accessory.js +34 -37
- package/dist/accessories/Sprinkler_accessory.js.map +1 -1
- package/dist/accessories/TV_accessory.js +43 -45
- package/dist/accessories/TV_accessory.js.map +1 -1
- package/dist/accessories/TemperatureSensor_accessory.js +12 -15
- package/dist/accessories/TemperatureSensor_accessory.js.map +1 -1
- package/dist/accessories/Wi-FiRouter_accessory.d.ts +1 -1
- package/dist/accessories/Wi-FiRouter_accessory.d.ts.map +1 -1
- package/dist/accessories/Wi-FiRouter_accessory.js +9 -12
- package/dist/accessories/Wi-FiRouter_accessory.js.map +1 -1
- package/dist/accessories/Wi-FiSatellite_accessory.d.ts +1 -1
- package/dist/accessories/Wi-FiSatellite_accessory.d.ts.map +1 -1
- package/dist/accessories/Wi-FiSatellite_accessory.js +11 -14
- package/dist/accessories/Wi-FiSatellite_accessory.js.map +1 -1
- package/dist/accessories/gstreamer-audioProducer.d.ts +3 -3
- package/dist/accessories/gstreamer-audioProducer.d.ts.map +1 -1
- package/dist/accessories/gstreamer-audioProducer.js +37 -38
- package/dist/accessories/gstreamer-audioProducer.js.map +1 -1
- package/dist/accessories/types.d.ts +63 -63
- package/dist/accessories/types.d.ts.map +1 -1
- package/dist/accessories/types.js +83 -87
- package/dist/accessories/types.js.map +1 -1
- package/dist/index.d.ts +26 -28
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +40 -34
- package/dist/index.js.map +1 -1
- package/dist/internal-types.d.ts +1 -1
- package/dist/internal-types.d.ts.map +1 -1
- package/dist/internal-types.js +19 -21
- package/dist/internal-types.js.map +1 -1
- package/dist/lib/Accessory.d.ts +39 -38
- package/dist/lib/Accessory.d.ts.map +1 -1
- package/dist/lib/Accessory.js +314 -292
- package/dist/lib/Accessory.js.map +1 -1
- package/dist/lib/Advertiser.d.ts +7 -7
- package/dist/lib/Advertiser.d.ts.map +1 -1
- package/dist/lib/Advertiser.js +128 -136
- package/dist/lib/Advertiser.js.map +1 -1
- package/dist/lib/Bridge.d.ts +1 -1
- package/dist/lib/Bridge.d.ts.map +1 -1
- package/dist/lib/Bridge.js +2 -6
- package/dist/lib/Bridge.js.map +1 -1
- package/dist/lib/Characteristic.d.ts +40 -41
- package/dist/lib/Characteristic.d.ts.map +1 -1
- package/dist/lib/Characteristic.js +204 -208
- package/dist/lib/Characteristic.js.map +1 -1
- package/dist/lib/HAPServer.d.ts +31 -30
- package/dist/lib/HAPServer.d.ts.map +1 -1
- package/dist/lib/HAPServer.js +220 -229
- package/dist/lib/HAPServer.js.map +1 -1
- package/dist/lib/Service.d.ts +22 -22
- package/dist/lib/Service.d.ts.map +1 -1
- package/dist/lib/Service.js +63 -67
- package/dist/lib/Service.js.map +1 -1
- package/dist/lib/camera/RTPProxy.d.ts +2 -1
- package/dist/lib/camera/RTPProxy.d.ts.map +1 -1
- package/dist/lib/camera/RTPProxy.js +28 -44
- package/dist/lib/camera/RTPProxy.js.map +1 -1
- package/dist/lib/camera/RTPStreamManagement.d.ts +34 -33
- package/dist/lib/camera/RTPStreamManagement.d.ts.map +1 -1
- package/dist/lib/camera/RTPStreamManagement.js +179 -151
- package/dist/lib/camera/RTPStreamManagement.js.map +1 -1
- package/dist/lib/camera/RecordingManagement.d.ts +19 -17
- package/dist/lib/camera/RecordingManagement.d.ts.map +1 -1
- package/dist/lib/camera/RecordingManagement.js +160 -151
- package/dist/lib/camera/RecordingManagement.js.map +1 -1
- package/dist/lib/camera/index.d.ts +3 -3
- package/dist/lib/camera/index.d.ts.map +1 -1
- package/dist/lib/camera/index.js +3 -6
- package/dist/lib/camera/index.js.map +1 -1
- package/dist/lib/controller/AdaptiveLightingController.d.ts +33 -33
- package/dist/lib/controller/AdaptiveLightingController.d.ts.map +1 -1
- package/dist/lib/controller/AdaptiveLightingController.js +152 -144
- package/dist/lib/controller/AdaptiveLightingController.js.map +1 -1
- package/dist/lib/controller/CameraController.d.ts +22 -20
- package/dist/lib/controller/CameraController.d.ts.map +1 -1
- package/dist/lib/controller/CameraController.js +74 -78
- package/dist/lib/controller/CameraController.js.map +1 -1
- package/dist/lib/controller/Controller.d.ts +4 -4
- package/dist/lib/controller/Controller.d.ts.map +1 -1
- package/dist/lib/controller/Controller.js +5 -8
- package/dist/lib/controller/Controller.js.map +1 -1
- package/dist/lib/controller/DoorbellController.d.ts +5 -4
- package/dist/lib/controller/DoorbellController.d.ts.map +1 -1
- package/dist/lib/controller/DoorbellController.js +9 -13
- package/dist/lib/controller/DoorbellController.js.map +1 -1
- package/dist/lib/controller/RemoteController.d.ts +39 -37
- package/dist/lib/controller/RemoteController.d.ts.map +1 -1
- package/dist/lib/controller/RemoteController.js +208 -197
- package/dist/lib/controller/RemoteController.js.map +1 -1
- package/dist/lib/controller/index.d.ts +5 -5
- package/dist/lib/controller/index.d.ts.map +1 -1
- package/dist/lib/controller/index.js +5 -8
- package/dist/lib/controller/index.js.map +1 -1
- package/dist/lib/datastream/DataStreamManagement.d.ts +2 -2
- package/dist/lib/datastream/DataStreamManagement.d.ts.map +1 -1
- package/dist/lib/datastream/DataStreamManagement.js +39 -39
- package/dist/lib/datastream/DataStreamManagement.js.map +1 -1
- package/dist/lib/datastream/DataStreamParser.d.ts +1 -0
- package/dist/lib/datastream/DataStreamParser.d.ts.map +1 -1
- package/dist/lib/datastream/DataStreamParser.js +57 -77
- package/dist/lib/datastream/DataStreamParser.js.map +1 -1
- package/dist/lib/datastream/DataStreamServer.d.ts +23 -22
- package/dist/lib/datastream/DataStreamServer.d.ts.map +1 -1
- package/dist/lib/datastream/DataStreamServer.js +154 -164
- package/dist/lib/datastream/DataStreamServer.js.map +1 -1
- package/dist/lib/datastream/index.d.ts +3 -3
- package/dist/lib/datastream/index.d.ts.map +1 -1
- package/dist/lib/datastream/index.js +3 -6
- package/dist/lib/datastream/index.js.map +1 -1
- package/dist/lib/dbus/align.d.ts +2 -0
- package/dist/lib/dbus/align.d.ts.map +1 -0
- package/dist/lib/dbus/align.js +12 -0
- package/dist/lib/dbus/align.js.map +1 -0
- package/dist/lib/dbus/bus.d.ts +38 -0
- package/dist/lib/dbus/bus.d.ts.map +1 -0
- package/dist/lib/dbus/bus.js +222 -0
- package/dist/lib/dbus/bus.js.map +1 -0
- package/dist/lib/dbus/constants.d.ts +43 -0
- package/dist/lib/dbus/constants.d.ts.map +1 -0
- package/dist/lib/dbus/constants.js +53 -0
- package/dist/lib/dbus/constants.js.map +1 -0
- package/dist/lib/dbus/dbus-buffer.d.ts +30 -0
- package/dist/lib/dbus/dbus-buffer.d.ts.map +1 -0
- package/dist/lib/dbus/dbus-buffer.js +175 -0
- package/dist/lib/dbus/dbus-buffer.js.map +1 -0
- package/dist/lib/dbus/handshake.d.ts +2 -0
- package/dist/lib/dbus/handshake.d.ts.map +1 -0
- package/dist/lib/dbus/handshake.js +130 -0
- package/dist/lib/dbus/handshake.js.map +1 -0
- package/dist/lib/dbus/index.d.ts +3 -0
- package/dist/lib/dbus/index.d.ts.map +1 -0
- package/dist/lib/dbus/index.js +123 -0
- package/dist/lib/dbus/index.js.map +1 -0
- package/dist/lib/dbus/introspect.d.ts +30 -0
- package/dist/lib/dbus/introspect.d.ts.map +1 -0
- package/dist/lib/dbus/introspect.js +208 -0
- package/dist/lib/dbus/introspect.js.map +1 -0
- package/dist/lib/dbus/marshall.d.ts +2 -0
- package/dist/lib/dbus/marshall.d.ts.map +1 -0
- package/dist/lib/dbus/marshall.js +97 -0
- package/dist/lib/dbus/marshall.js.map +1 -0
- package/dist/lib/dbus/marshallers.d.ts +10 -0
- package/dist/lib/dbus/marshallers.d.ts.map +1 -0
- package/dist/lib/dbus/marshallers.js +329 -0
- package/dist/lib/dbus/marshallers.js.map +1 -0
- package/dist/lib/dbus/message.d.ts +4 -0
- package/dist/lib/dbus/message.d.ts.map +1 -0
- package/dist/lib/dbus/message.js +116 -0
- package/dist/lib/dbus/message.js.map +1 -0
- package/dist/lib/dbus/put.d.ts +21 -0
- package/dist/lib/dbus/put.d.ts.map +1 -0
- package/dist/lib/dbus/put.js +120 -0
- package/dist/lib/dbus/put.js.map +1 -0
- package/dist/lib/dbus/readline.d.ts +2 -0
- package/dist/lib/dbus/readline.d.ts.map +1 -0
- package/dist/lib/dbus/readline.js +27 -0
- package/dist/lib/dbus/readline.js.map +1 -0
- package/dist/lib/dbus/signature.d.ts +2 -0
- package/dist/lib/dbus/signature.d.ts.map +1 -0
- package/dist/lib/dbus/signature.js +58 -0
- package/dist/lib/dbus/signature.js.map +1 -0
- package/dist/lib/dbus/stdifaces.d.ts +3 -0
- package/dist/lib/dbus/stdifaces.d.ts.map +1 -0
- package/dist/lib/dbus/stdifaces.js +206 -0
- package/dist/lib/dbus/stdifaces.js.map +1 -0
- package/dist/lib/definitions/CharacteristicDefinitions.d.ts +1 -1
- package/dist/lib/definitions/CharacteristicDefinitions.d.ts.map +1 -1
- package/dist/lib/definitions/CharacteristicDefinitions.js +958 -1204
- package/dist/lib/definitions/CharacteristicDefinitions.js.map +1 -1
- package/dist/lib/definitions/ServiceDefinitions.d.ts +1 -1
- package/dist/lib/definitions/ServiceDefinitions.d.ts.map +1 -1
- package/dist/lib/definitions/ServiceDefinitions.js +620 -695
- package/dist/lib/definitions/ServiceDefinitions.js.map +1 -1
- package/dist/lib/definitions/generate-definitions.d.ts +3 -3
- package/dist/lib/definitions/generate-definitions.d.ts.map +1 -1
- package/dist/lib/definitions/generate-definitions.js +246 -253
- package/dist/lib/definitions/generate-definitions.js.map +1 -1
- package/dist/lib/definitions/generator-configuration.d.ts +1 -1
- package/dist/lib/definitions/generator-configuration.d.ts.map +1 -1
- package/dist/lib/definitions/generator-configuration.js +160 -165
- package/dist/lib/definitions/generator-configuration.js.map +1 -1
- package/dist/lib/definitions/index.d.ts +2 -2
- package/dist/lib/definitions/index.d.ts.map +1 -1
- package/dist/lib/definitions/index.js +2 -5
- package/dist/lib/definitions/index.js.map +1 -1
- package/dist/lib/model/AccessoryInfo.d.ts +4 -3
- package/dist/lib/model/AccessoryInfo.d.ts.map +1 -1
- package/dist/lib/model/AccessoryInfo.js +50 -53
- package/dist/lib/model/AccessoryInfo.js.map +1 -1
- package/dist/lib/model/ControllerStorage.d.ts +3 -3
- package/dist/lib/model/ControllerStorage.d.ts.map +1 -1
- package/dist/lib/model/ControllerStorage.js +17 -22
- package/dist/lib/model/ControllerStorage.js.map +1 -1
- package/dist/lib/model/HAPStorage.d.ts +2 -2
- package/dist/lib/model/HAPStorage.d.ts.map +1 -1
- package/dist/lib/model/HAPStorage.js +4 -11
- package/dist/lib/model/HAPStorage.js.map +1 -1
- package/dist/lib/model/IdentifierCache.d.ts +1 -1
- package/dist/lib/model/IdentifierCache.d.ts.map +1 -1
- package/dist/lib/model/IdentifierCache.js +19 -27
- package/dist/lib/model/IdentifierCache.js.map +1 -1
- package/dist/lib/tv/AccessControlManagement.d.ts +9 -9
- package/dist/lib/tv/AccessControlManagement.d.ts.map +1 -1
- package/dist/lib/tv/AccessControlManagement.js +27 -29
- package/dist/lib/tv/AccessControlManagement.js.map +1 -1
- package/dist/lib/util/checkName.d.ts +2 -2
- package/dist/lib/util/checkName.d.ts.map +1 -1
- package/dist/lib/util/checkName.js +6 -9
- package/dist/lib/util/checkName.js.map +1 -1
- package/dist/lib/util/clone.d.ts.map +1 -1
- package/dist/lib/util/clone.js +1 -5
- package/dist/lib/util/clone.js.map +1 -1
- package/dist/lib/util/color-utils.d.ts +1 -1
- package/dist/lib/util/color-utils.d.ts.map +1 -1
- package/dist/lib/util/color-utils.js +4 -9
- package/dist/lib/util/color-utils.js.map +1 -1
- package/dist/lib/util/eventedhttp.d.ts +23 -22
- package/dist/lib/util/eventedhttp.d.ts.map +1 -1
- package/dist/lib/util/eventedhttp.js +109 -116
- package/dist/lib/util/eventedhttp.js.map +1 -1
- package/dist/lib/util/hapCrypto.d.ts +3 -2
- package/dist/lib/util/hapCrypto.d.ts.map +1 -1
- package/dist/lib/util/hapCrypto.js +31 -40
- package/dist/lib/util/hapCrypto.js.map +1 -1
- package/dist/lib/util/hapStatusError.d.ts +1 -1
- package/dist/lib/util/hapStatusError.d.ts.map +1 -1
- package/dist/lib/util/hapStatusError.js +4 -8
- package/dist/lib/util/hapStatusError.js.map +1 -1
- package/dist/lib/util/net-utils.d.ts +1 -1
- package/dist/lib/util/net-utils.js +17 -23
- package/dist/lib/util/net-utils.js.map +1 -1
- package/dist/lib/util/once.d.ts.map +1 -1
- package/dist/lib/util/once.js +2 -6
- package/dist/lib/util/once.js.map +1 -1
- package/dist/lib/util/promise-utils.d.ts +1 -1
- package/dist/lib/util/promise-utils.d.ts.map +1 -1
- package/dist/lib/util/promise-utils.js +3 -9
- package/dist/lib/util/promise-utils.js.map +1 -1
- package/dist/lib/util/request-util.d.ts +3 -2
- package/dist/lib/util/request-util.d.ts.map +1 -1
- package/dist/lib/util/request-util.js +11 -19
- package/dist/lib/util/request-util.js.map +1 -1
- package/dist/lib/util/time.d.ts +1 -0
- package/dist/lib/util/time.d.ts.map +1 -1
- package/dist/lib/util/time.js +6 -11
- package/dist/lib/util/time.js.map +1 -1
- package/dist/lib/util/tlv.d.ts +1 -0
- package/dist/lib/util/tlv.d.ts.map +1 -1
- package/dist/lib/util/tlv.js +28 -43
- package/dist/lib/util/tlv.js.map +1 -1
- package/dist/lib/util/uuid.d.ts +1 -0
- package/dist/lib/util/uuid.d.ts.map +1 -1
- package/dist/lib/util/uuid.js +26 -38
- package/dist/lib/util/uuid.js.map +1 -1
- package/dist/types.d.ts +24 -24
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +3 -5
- package/dist/types.js.map +1 -1
- package/package.json +51 -46
- package/@types/simple-plist.d.ts +0 -4
- package/dist/lib/gen/HomeKit.d.ts +0 -7
- package/dist/lib/gen/HomeKit.d.ts.map +0 -1
- package/dist/lib/gen/HomeKit.js +0 -8
- package/dist/lib/gen/HomeKit.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HAPServer.js","sourceRoot":"","sources":["../../src/lib/HAPServer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HAPServer.js","sourceRoot":"","sources":["../../src/lib/HAPServer.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/Service.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import type {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
1
|
+
import type { CharacteristicValue, Nullable, ServiceJsonObject, WithUUID } from '../types';
|
|
2
|
+
import type { CharacteristicWarning } from './Accessory';
|
|
3
|
+
import type { CharacteristicChange, SerializedCharacteristic } from './Characteristic';
|
|
4
|
+
import type { AccessCode, AccessControl, AccessoryInformation, AccessoryMetrics, AccessoryRuntimeInformation, AirPurifier, AirQualitySensor, AssetUpdate, Assistant, AudioStreamManagement, Battery, CameraOperatingMode, CameraRecordingManagement, CameraRTPStreamManagement, CarbonDioxideSensor, CarbonMonoxideSensor, ContactSensor, DataStreamTransportManagement, Diagnostics, Door, Doorbell, Fan, Fanv2, Faucet, FilterMaintenance, FirmwareUpdate, GarageDoorOpener, HeaterCooler, HumidifierDehumidifier, HumiditySensor, InputSource, IrrigationSystem, LeakSensor, Lightbulb, LightSensor, LockManagement, LockMechanism, Microphone, MotionSensor, NFCAccess, OccupancySensor, Outlet, Pairing, PowerManagement, ProtocolInformation, SecuritySystem, ServiceLabel, Siri, SiriEndpoint, Slats, SmartSpeaker, SmokeSensor, Speaker, StatefulProgrammableSwitch, StatelessProgrammableSwitch, Switch, TapManagement, TargetControl, TargetControlManagement, Television, TelevisionSpeaker, TemperatureSensor, Thermostat, ThreadTransport, TransferTransportManagement, Valve, WiFiRouter, WiFiSatellite, WiFiTransport, Window, WindowCovering } from './definitions';
|
|
5
|
+
import type { IdentifierCache } from './model/IdentifierCache';
|
|
6
|
+
import type { HAPConnection } from './util/eventedhttp';
|
|
7
|
+
import type { HapStatusError } from './util/hapStatusError';
|
|
8
|
+
import { EventEmitter } from 'node:events';
|
|
9
|
+
import { Characteristic } from './Characteristic.js';
|
|
9
10
|
/**
|
|
10
11
|
* @group Service
|
|
11
12
|
*/
|
|
@@ -43,12 +44,12 @@ export declare const enum ServiceEventTypes {
|
|
|
43
44
|
* @group Service
|
|
44
45
|
*/
|
|
45
46
|
export declare interface Service {
|
|
46
|
-
on(event:
|
|
47
|
-
on(event:
|
|
48
|
-
on(event:
|
|
49
|
-
emit(event:
|
|
50
|
-
emit(event:
|
|
51
|
-
emit(event:
|
|
47
|
+
on(event: 'characteristic-change', listener: (change: ServiceCharacteristicChange) => void): this;
|
|
48
|
+
on(event: 'service-configurationChange', listener: () => void): this;
|
|
49
|
+
on(event: 'characteristic-warning', listener: (warning: CharacteristicWarning) => void): this;
|
|
50
|
+
emit(event: 'characteristic-change', change: ServiceCharacteristicChange): boolean;
|
|
51
|
+
emit(event: 'service-configurationChange'): boolean;
|
|
52
|
+
emit(event: 'characteristic-warning', warning: CharacteristicWarning): boolean;
|
|
52
53
|
}
|
|
53
54
|
/**
|
|
54
55
|
* Service represents a set of grouped values necessary to provide a logical function. For instance, a
|
|
@@ -462,8 +463,8 @@ export declare class Service extends EventEmitter {
|
|
|
462
463
|
* @param error - The error object
|
|
463
464
|
*
|
|
464
465
|
* Note: Erroneous state is never **pushed** to the client side. Only, if the HomeKit client requests the current
|
|
465
|
-
*
|
|
466
|
-
*
|
|
466
|
+
* state of the Characteristic, the corresponding {@link HapStatusError} is returned. As described above,
|
|
467
|
+
* any {@link Characteristic.onGet} or {@link CharacteristicEventTypes.GET} handlers have preference.
|
|
467
468
|
*/
|
|
468
469
|
setCharacteristic<T extends WithUUID<{
|
|
469
470
|
new (): Characteristic;
|
|
@@ -495,8 +496,8 @@ export declare class Service extends EventEmitter {
|
|
|
495
496
|
* guide for more information on how to present erroneous state to the user.
|
|
496
497
|
*
|
|
497
498
|
* Note: Erroneous state is never **pushed** to the client side. Only, if the HomeKit client requests the current
|
|
498
|
-
*
|
|
499
|
-
*
|
|
499
|
+
* state of the Characteristic, the corresponding {@link HapStatusError} is returned. As described above,
|
|
500
|
+
* any {@link Characteristic.onGet} or {@link CharacteristicEventTypes.GET} handlers have precedence.
|
|
500
501
|
*/
|
|
501
502
|
updateCharacteristic<T extends WithUUID<{
|
|
502
503
|
new (): Characteristic;
|
|
@@ -512,7 +513,7 @@ export declare class Service extends EventEmitter {
|
|
|
512
513
|
* It will not remove characteristics which are present currently but not added on the other characteristic.
|
|
513
514
|
* It will not replace the characteristic if the value is falsy (except of '0' or 'false')
|
|
514
515
|
* @param service
|
|
515
|
-
* @private
|
|
516
|
+
* @private
|
|
516
517
|
*/
|
|
517
518
|
replaceCharacteristicsFromService(service: Service): void;
|
|
518
519
|
/**
|
|
@@ -525,12 +526,12 @@ export declare class Service extends EventEmitter {
|
|
|
525
526
|
_assignIDs(identifierCache: IdentifierCache, accessoryName: string, baseIID?: number): void;
|
|
526
527
|
/**
|
|
527
528
|
* Returns a JSON representation of this service suitable for delivering to HAP clients.
|
|
528
|
-
* @private
|
|
529
|
+
* @private
|
|
529
530
|
*/
|
|
530
531
|
toHAP(connection: HAPConnection, contactGetHandlers?: boolean): Promise<ServiceJsonObject>;
|
|
531
532
|
/**
|
|
532
533
|
* Returns a JSON representation of this service without characteristic values.
|
|
533
|
-
* @private
|
|
534
|
+
* @private
|
|
534
535
|
*/
|
|
535
536
|
internalHAPRepresentation(): ServiceJsonObject;
|
|
536
537
|
/**
|
|
@@ -554,5 +555,4 @@ export declare class Service extends EventEmitter {
|
|
|
554
555
|
*/
|
|
555
556
|
static deserialize(json: SerializedService): Service;
|
|
556
557
|
}
|
|
557
|
-
import "./definitions/ServiceDefinitions";
|
|
558
558
|
//# sourceMappingURL=Service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Service.d.ts","sourceRoot":"","sources":["../../src/lib/Service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Service.d.ts","sourceRoot":"","sources":["../../src/lib/Service.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/Service.js
CHANGED
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
const Characteristic_1 = require("./Characteristic");
|
|
9
|
-
const uuid_1 = require("./util/uuid");
|
|
10
|
-
const checkName_1 = require("./util/checkName");
|
|
11
|
-
const debug = (0, debug_1.default)("HAP-NodeJS:Service");
|
|
1
|
+
import assert from 'node:assert';
|
|
2
|
+
import { EventEmitter } from 'node:events';
|
|
3
|
+
import createDebug from 'debug';
|
|
4
|
+
import { Characteristic } from './Characteristic.js';
|
|
5
|
+
import { checkName } from './util/checkName.js';
|
|
6
|
+
import { toShortForm } from './util/uuid.js';
|
|
7
|
+
const debug = createDebug('HAP-NodeJS:Service');
|
|
12
8
|
/**
|
|
13
9
|
* HAP spec allows a maximum of 100 characteristics per service!
|
|
14
10
|
*/
|
|
@@ -16,12 +12,13 @@ const MAX_CHARACTERISTICS = 100;
|
|
|
16
12
|
/**
|
|
17
13
|
* @group Service
|
|
18
14
|
*/
|
|
19
|
-
|
|
15
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
16
|
+
export var ServiceEventTypes;
|
|
20
17
|
(function (ServiceEventTypes) {
|
|
21
18
|
ServiceEventTypes["CHARACTERISTIC_CHANGE"] = "characteristic-change";
|
|
22
19
|
ServiceEventTypes["SERVICE_CONFIGURATION_CHANGE"] = "service-configurationChange";
|
|
23
20
|
ServiceEventTypes["CHARACTERISTIC_WARNING"] = "characteristic-warning";
|
|
24
|
-
})(ServiceEventTypes || (
|
|
21
|
+
})(ServiceEventTypes || (ServiceEventTypes = {}));
|
|
25
22
|
/**
|
|
26
23
|
* Service represents a set of grouped values necessary to provide a logical function. For instance, a
|
|
27
24
|
* "Door Lock Mechanism" service might contain two values, one for the "desired lock state" and one for the
|
|
@@ -44,8 +41,8 @@ var ServiceEventTypes;
|
|
|
44
41
|
*
|
|
45
42
|
* @group Service
|
|
46
43
|
*/
|
|
47
|
-
// eslint-disable-next-line
|
|
48
|
-
class Service extends
|
|
44
|
+
// eslint-disable-next-line ts/no-unsafe-declaration-merging
|
|
45
|
+
export class Service extends EventEmitter {
|
|
49
46
|
// Service MUST NOT have any other static variables
|
|
50
47
|
// Pattern below is for automatic detection of the section of defined services. Used by the generator
|
|
51
48
|
// -=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|
|
@@ -354,9 +351,9 @@ class Service extends events_1.EventEmitter {
|
|
|
354
351
|
* @private
|
|
355
352
|
*/
|
|
356
353
|
linkedServices = [];
|
|
357
|
-
constructor(displayName =
|
|
354
|
+
constructor(displayName = '', UUID, subtype) {
|
|
358
355
|
super();
|
|
359
|
-
(
|
|
356
|
+
assert(UUID, 'Services must be created with a valid UUID.');
|
|
360
357
|
this.displayName = displayName;
|
|
361
358
|
this.UUID = UUID;
|
|
362
359
|
this.subtype = subtype;
|
|
@@ -365,9 +362,9 @@ class Service extends events_1.EventEmitter {
|
|
|
365
362
|
// if you don't provide a display name, some HomeKit apps may choose to hide the device.
|
|
366
363
|
if (displayName) {
|
|
367
364
|
// create the characteristic if necessary
|
|
368
|
-
|
|
369
|
-
const nameCharacteristic = this.getCharacteristic(
|
|
370
|
-
this.addCharacteristic(
|
|
365
|
+
checkName(this.displayName, 'Name', displayName);
|
|
366
|
+
const nameCharacteristic = this.getCharacteristic(Characteristic.Name)
|
|
367
|
+
|| this.addCharacteristic(Characteristic.Name);
|
|
371
368
|
nameCharacteristic.updateValue(displayName);
|
|
372
369
|
}
|
|
373
370
|
}
|
|
@@ -379,24 +376,24 @@ class Service extends events_1.EventEmitter {
|
|
|
379
376
|
* @returns the serviceId
|
|
380
377
|
*/
|
|
381
378
|
getServiceId() {
|
|
382
|
-
return this.UUID + (this.subtype ||
|
|
379
|
+
return this.UUID + (this.subtype || '');
|
|
383
380
|
}
|
|
384
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
385
381
|
addCharacteristic(input, ...constructorArgs) {
|
|
386
382
|
// characteristic might be a constructor like `Characteristic.Brightness` instead of an instance of Characteristic. Coerce if necessary.
|
|
387
|
-
|
|
383
|
+
// eslint-disable-next-line new-cap
|
|
384
|
+
const characteristic = typeof input === 'function' ? new input(...constructorArgs) : input;
|
|
388
385
|
// check for UUID conflict
|
|
389
386
|
for (const existing of this.characteristics) {
|
|
390
387
|
if (existing.UUID === characteristic.UUID) {
|
|
391
|
-
if (characteristic.UUID ===
|
|
392
|
-
//This is a special workaround for the Firmware Revision characteristic.
|
|
388
|
+
if (characteristic.UUID === '00000052-0000-1000-8000-0026BB765291') {
|
|
389
|
+
// This is a special workaround for the Firmware Revision characteristic.
|
|
393
390
|
return existing;
|
|
394
391
|
}
|
|
395
|
-
throw new Error(
|
|
392
|
+
throw new Error(`Cannot add a Characteristic with the same UUID as another Characteristic in this Service: ${existing.UUID}`);
|
|
396
393
|
}
|
|
397
394
|
}
|
|
398
395
|
if (this.characteristics.length >= MAX_CHARACTERISTICS) {
|
|
399
|
-
throw new Error(
|
|
396
|
+
throw new Error(`Cannot add more than ${MAX_CHARACTERISTICS} characteristics to a single service!`);
|
|
400
397
|
}
|
|
401
398
|
this.setupCharacteristicEventHandlers(characteristic);
|
|
402
399
|
this.characteristics.push(characteristic);
|
|
@@ -431,7 +428,7 @@ class Service extends events_1.EventEmitter {
|
|
|
431
428
|
* @param service - The service this service should link to
|
|
432
429
|
*/
|
|
433
430
|
addLinkedService(service) {
|
|
434
|
-
//TODO: Add a check if the service is on the same accessory.
|
|
431
|
+
// TODO: Add a check if the service is on the same accessory.
|
|
435
432
|
if (!this.linkedServices.includes(service)) {
|
|
436
433
|
this.linkedServices.push(service);
|
|
437
434
|
}
|
|
@@ -443,7 +440,7 @@ class Service extends events_1.EventEmitter {
|
|
|
443
440
|
* @param service - Previously linked service
|
|
444
441
|
*/
|
|
445
442
|
removeLinkedService(service) {
|
|
446
|
-
//TODO: Add a check if the service is on the same accessory.
|
|
443
|
+
// TODO: Add a check if the service is on the same accessory.
|
|
447
444
|
const index = this.linkedServices.indexOf(service);
|
|
448
445
|
if (index !== -1) {
|
|
449
446
|
this.linkedServices.splice(index, 1);
|
|
@@ -463,17 +460,17 @@ class Service extends events_1.EventEmitter {
|
|
|
463
460
|
// If Service.prototype.getCharacteristic(Characteristic.Type) does not find the characteristic,
|
|
464
461
|
// but the type is in optionalCharacteristics, it adds the characteristic.type to the service and returns it.
|
|
465
462
|
for (const characteristic of this.characteristics) {
|
|
466
|
-
if (typeof name ===
|
|
463
|
+
if (typeof name === 'string' && characteristic.displayName === name) {
|
|
467
464
|
return characteristic;
|
|
468
465
|
}
|
|
469
466
|
else {
|
|
470
467
|
// @ts-expect-error ('UUID' does not exist on type 'never')
|
|
471
|
-
if (typeof name ===
|
|
468
|
+
if (typeof name === 'function' && ((characteristic instanceof name) || (name.UUID === characteristic.UUID))) {
|
|
472
469
|
return characteristic;
|
|
473
470
|
}
|
|
474
471
|
}
|
|
475
472
|
}
|
|
476
|
-
if (typeof name ===
|
|
473
|
+
if (typeof name === 'function') {
|
|
477
474
|
for (const characteristic of this.optionalCharacteristics) {
|
|
478
475
|
// @ts-expect-error ('UUID' does not exist on type 'never')
|
|
479
476
|
if ((characteristic instanceof name) || (name.UUID === characteristic.UUID)) {
|
|
@@ -482,8 +479,8 @@ class Service extends events_1.EventEmitter {
|
|
|
482
479
|
}
|
|
483
480
|
const instance = this.addCharacteristic(name);
|
|
484
481
|
// Not found in optional Characteristics. Adding anyway, but warning about it if it isn't the Name.
|
|
485
|
-
if (name.UUID !==
|
|
486
|
-
this.emitCharacteristicWarningEvent(instance, "warn-message" /* CharacteristicWarningType.WARN_MESSAGE */,
|
|
482
|
+
if (name.UUID !== Characteristic.Name.UUID) {
|
|
483
|
+
this.emitCharacteristicWarningEvent(instance, "warn-message" /* CharacteristicWarningType.WARN_MESSAGE */, `Characteristic not in required or optional characteristic section for service ${this.constructor.name}. Adding anyway.`);
|
|
487
484
|
}
|
|
488
485
|
return instance;
|
|
489
486
|
}
|
|
@@ -491,12 +488,12 @@ class Service extends events_1.EventEmitter {
|
|
|
491
488
|
testCharacteristic(name) {
|
|
492
489
|
// checks for the existence of a characteristic object in the service
|
|
493
490
|
for (const characteristic of this.characteristics) {
|
|
494
|
-
if (typeof name ===
|
|
491
|
+
if (typeof name === 'string' && characteristic.displayName === name) {
|
|
495
492
|
return true;
|
|
496
493
|
}
|
|
497
494
|
else {
|
|
498
495
|
// @ts-expect-error ('UUID' does not exist on type 'never')
|
|
499
|
-
if (typeof name ===
|
|
496
|
+
if (typeof name === 'function' && ((characteristic instanceof name) || (name.UUID === characteristic.UUID))) {
|
|
500
497
|
return true;
|
|
501
498
|
}
|
|
502
499
|
}
|
|
@@ -515,12 +512,11 @@ class Service extends events_1.EventEmitter {
|
|
|
515
512
|
addOptionalCharacteristic(characteristic) {
|
|
516
513
|
// characteristic might be a constructor like `Characteristic.Brightness` instead of an instance
|
|
517
514
|
// of Characteristic. Coerce if necessary.
|
|
518
|
-
if (typeof characteristic ===
|
|
519
|
-
characteristic = new characteristic();
|
|
515
|
+
if (typeof characteristic === 'function') {
|
|
516
|
+
characteristic = new characteristic(); // eslint-disable-line new-cap
|
|
520
517
|
}
|
|
521
518
|
this.optionalCharacteristics.push(characteristic);
|
|
522
519
|
}
|
|
523
|
-
// noinspection JSUnusedGlobalSymbols
|
|
524
520
|
/**
|
|
525
521
|
* This method was created to copy all characteristics from another service to this.
|
|
526
522
|
* It's only adopting is currently in homebridge to merge the AccessoryInformation service. So some things
|
|
@@ -529,7 +525,7 @@ class Service extends events_1.EventEmitter {
|
|
|
529
525
|
* It will not remove characteristics which are present currently but not added on the other characteristic.
|
|
530
526
|
* It will not replace the characteristic if the value is falsy (except of '0' or 'false')
|
|
531
527
|
* @param service
|
|
532
|
-
* @private
|
|
528
|
+
* @private
|
|
533
529
|
*/
|
|
534
530
|
replaceCharacteristicsFromService(service) {
|
|
535
531
|
if (this.UUID !== service.UUID) {
|
|
@@ -537,7 +533,7 @@ class Service extends events_1.EventEmitter {
|
|
|
537
533
|
}
|
|
538
534
|
const foreignCharacteristics = {}; // index foreign characteristics by UUID
|
|
539
535
|
service.characteristics.forEach(characteristic => foreignCharacteristics[characteristic.UUID] = characteristic);
|
|
540
|
-
this.characteristics.forEach(characteristic => {
|
|
536
|
+
this.characteristics.forEach((characteristic) => {
|
|
541
537
|
const foreignCharacteristic = foreignCharacteristics[characteristic.UUID];
|
|
542
538
|
if (foreignCharacteristic) {
|
|
543
539
|
delete foreignCharacteristics[characteristic.UUID];
|
|
@@ -565,7 +561,7 @@ class Service extends events_1.EventEmitter {
|
|
|
565
561
|
*/
|
|
566
562
|
_assignIDs(identifierCache, accessoryName, baseIID = 0) {
|
|
567
563
|
// the Accessory Information service must have a (reserved by IdentifierCache) ID of 1
|
|
568
|
-
if (this.UUID ===
|
|
564
|
+
if (this.UUID === '0000003E-0000-1000-8000-0026BB765291') {
|
|
569
565
|
this.iid = 1;
|
|
570
566
|
}
|
|
571
567
|
else {
|
|
@@ -579,14 +575,14 @@ class Service extends events_1.EventEmitter {
|
|
|
579
575
|
}
|
|
580
576
|
/**
|
|
581
577
|
* Returns a JSON representation of this service suitable for delivering to HAP clients.
|
|
582
|
-
* @private
|
|
578
|
+
* @private
|
|
583
579
|
*/
|
|
584
580
|
toHAP(connection, contactGetHandlers = true) {
|
|
585
|
-
return new Promise(resolve => {
|
|
586
|
-
(
|
|
587
|
-
(
|
|
581
|
+
return new Promise((resolve) => {
|
|
582
|
+
assert(this.iid, `iid cannot be undefined for service '${this.displayName}'`);
|
|
583
|
+
assert(this.characteristics.length, `service '${this.displayName}' does not have any characteristics!`);
|
|
588
584
|
const service = {
|
|
589
|
-
type:
|
|
585
|
+
type: toShortForm(this.UUID),
|
|
590
586
|
iid: this.iid,
|
|
591
587
|
characteristics: [],
|
|
592
588
|
hidden: this.isHiddenService ? true : undefined,
|
|
@@ -615,8 +611,7 @@ class Service extends events_1.EventEmitter {
|
|
|
615
611
|
timeout = setTimeout(() => {
|
|
616
612
|
timeout = undefined;
|
|
617
613
|
for (const characteristic of missingCharacteristics) {
|
|
618
|
-
this.emitCharacteristicWarningEvent(characteristic, "timeout-read" /* CharacteristicWarningType.TIMEOUT_READ */,
|
|
619
|
-
"' didn't respond at all!. Please check that you properly call the callback!");
|
|
614
|
+
this.emitCharacteristicWarningEvent(characteristic, "timeout-read" /* CharacteristicWarningType.TIMEOUT_READ */, `The read handler for the characteristic '${characteristic?.displayName}' didn't respond at all!. Please check that you properly call the callback!`);
|
|
620
615
|
service.characteristics.push(characteristic.internalHAPRepresentation()); // value is set to null
|
|
621
616
|
}
|
|
622
617
|
missingCharacteristics.clear();
|
|
@@ -625,7 +620,7 @@ class Service extends events_1.EventEmitter {
|
|
|
625
620
|
}, 3000);
|
|
626
621
|
for (const characteristic of this.characteristics) {
|
|
627
622
|
missingCharacteristics.add(characteristic);
|
|
628
|
-
characteristic.toHAP(connection, contactGetHandlers).then(value => {
|
|
623
|
+
characteristic.toHAP(connection, contactGetHandlers).then((value) => {
|
|
629
624
|
if (!timeout) {
|
|
630
625
|
return; // if timeout is undefined, response was already sent out
|
|
631
626
|
}
|
|
@@ -644,13 +639,13 @@ class Service extends events_1.EventEmitter {
|
|
|
644
639
|
}
|
|
645
640
|
/**
|
|
646
641
|
* Returns a JSON representation of this service without characteristic values.
|
|
647
|
-
* @private
|
|
642
|
+
* @private
|
|
648
643
|
*/
|
|
649
644
|
internalHAPRepresentation() {
|
|
650
|
-
(
|
|
651
|
-
(
|
|
645
|
+
assert(this.iid, `iid cannot be undefined for service '${this.displayName}'`);
|
|
646
|
+
assert(this.characteristics.length, `service '${this.displayName}' does not have any characteristics!`);
|
|
652
647
|
const service = {
|
|
653
|
-
type:
|
|
648
|
+
type: toShortForm(this.UUID),
|
|
654
649
|
iid: this.iid,
|
|
655
650
|
characteristics: this.characteristics.map(characteristic => characteristic.internalHAPRepresentation()),
|
|
656
651
|
hidden: this.isHiddenService ? true : undefined,
|
|
@@ -679,7 +674,7 @@ class Service extends events_1.EventEmitter {
|
|
|
679
674
|
setupCharacteristicEventHandlers(characteristic) {
|
|
680
675
|
// listen for changes in characteristics and bubble them up
|
|
681
676
|
characteristic.on("change" /* CharacteristicEventTypes.CHANGE */, (change) => {
|
|
682
|
-
this.emit("characteristic-change" /* ServiceEventTypes.CHARACTERISTIC_CHANGE */, { ...change, characteristic
|
|
677
|
+
this.emit("characteristic-change" /* ServiceEventTypes.CHARACTERISTIC_CHANGE */, { ...change, characteristic });
|
|
683
678
|
});
|
|
684
679
|
characteristic.on("characteristic-warning" /* CharacteristicEventTypes.CHARACTERISTIC_WARNING */, this.emitCharacteristicWarningEvent.bind(this, characteristic));
|
|
685
680
|
}
|
|
@@ -688,11 +683,11 @@ class Service extends events_1.EventEmitter {
|
|
|
688
683
|
*/
|
|
689
684
|
emitCharacteristicWarningEvent(characteristic, type, message, stack) {
|
|
690
685
|
this.emit("characteristic-warning" /* ServiceEventTypes.CHARACTERISTIC_WARNING */, {
|
|
691
|
-
characteristic
|
|
692
|
-
type
|
|
693
|
-
message
|
|
686
|
+
characteristic,
|
|
687
|
+
type,
|
|
688
|
+
message,
|
|
694
689
|
originatorChain: [this.displayName, characteristic.displayName],
|
|
695
|
-
stack
|
|
690
|
+
stack,
|
|
696
691
|
});
|
|
697
692
|
}
|
|
698
693
|
/**
|
|
@@ -709,18 +704,18 @@ class Service extends events_1.EventEmitter {
|
|
|
709
704
|
*/
|
|
710
705
|
static serialize(service) {
|
|
711
706
|
let constructorName;
|
|
712
|
-
if (service.constructor.name !==
|
|
707
|
+
if (service.constructor.name !== 'Service') {
|
|
713
708
|
constructorName = service.constructor.name;
|
|
714
709
|
}
|
|
715
710
|
return {
|
|
716
711
|
displayName: service.displayName,
|
|
717
712
|
UUID: service.UUID,
|
|
718
713
|
subtype: service.subtype,
|
|
719
|
-
constructorName
|
|
714
|
+
constructorName,
|
|
720
715
|
hiddenService: service.isHiddenService,
|
|
721
716
|
primaryService: service.isPrimaryService,
|
|
722
|
-
characteristics: service.characteristics.map(characteristic =>
|
|
723
|
-
optionalCharacteristics: service.optionalCharacteristics.map(characteristic =>
|
|
717
|
+
characteristics: service.characteristics.map(characteristic => Characteristic.serialize(characteristic)),
|
|
718
|
+
optionalCharacteristics: service.optionalCharacteristics.map(characteristic => Characteristic.serialize(characteristic)),
|
|
724
719
|
};
|
|
725
720
|
}
|
|
726
721
|
/**
|
|
@@ -738,17 +733,18 @@ class Service extends events_1.EventEmitter {
|
|
|
738
733
|
}
|
|
739
734
|
service.isHiddenService = !!json.hiddenService;
|
|
740
735
|
service.isPrimaryService = !!json.primaryService;
|
|
741
|
-
const characteristics = json.characteristics.map(serialized =>
|
|
736
|
+
const characteristics = json.characteristics.map(serialized => Characteristic.deserialize(serialized));
|
|
742
737
|
service._sideloadCharacteristics(characteristics);
|
|
743
738
|
if (json.optionalCharacteristics) {
|
|
744
|
-
service.optionalCharacteristics = json.optionalCharacteristics.map(serialized =>
|
|
739
|
+
service.optionalCharacteristics = json.optionalCharacteristics.map(serialized => Characteristic.deserialize(serialized));
|
|
745
740
|
}
|
|
746
741
|
return service;
|
|
747
742
|
}
|
|
748
743
|
}
|
|
749
|
-
exports.Service = Service;
|
|
750
744
|
// We have a cyclic dependency problem. Within this file we have the definitions of "./definitions" as
|
|
751
745
|
// type imports only (in order to define the static properties). Setting those properties is done outside
|
|
752
746
|
// this file, within the definition files. Therefore, we import it at the end of this file. Seems weird, but is important.
|
|
753
|
-
|
|
747
|
+
(async () => {
|
|
748
|
+
await import('./definitions/ServiceDefinitions.js');
|
|
749
|
+
})();
|
|
754
750
|
//# sourceMappingURL=Service.js.map
|