hap-nodejs 1.0.0-beta.7 → 1.0.0
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/README.md +7 -3
- package/dist/accessories/AirConditioner_accessory.js +24 -24
- package/dist/accessories/AirConditioner_accessory.js.map +1 -1
- package/dist/accessories/AppleTVRemote_accessory.js +23 -23
- package/dist/accessories/AppleTVRemote_accessory.js.map +1 -1
- package/dist/accessories/Camera_accessory.js +295 -380
- package/dist/accessories/Camera_accessory.js.map +1 -1
- package/dist/accessories/Fan_accessory.js +15 -21
- package/dist/accessories/Fan_accessory.js.map +1 -1
- package/dist/accessories/GarageDoorOpener_accessory.js +12 -12
- package/dist/accessories/GarageDoorOpener_accessory.js.map +1 -1
- package/dist/accessories/Light-AdaptiveLighting_accessory.js +31 -21
- package/dist/accessories/Light-AdaptiveLighting_accessory.js.map +1 -1
- package/dist/accessories/Light_accessory.js +45 -48
- package/dist/accessories/Light_accessory.js.map +1 -1
- package/dist/accessories/Lock_accessory.js +11 -11
- package/dist/accessories/Lock_accessory.js.map +1 -1
- package/dist/accessories/MotionSensor_accessory.js +8 -8
- package/dist/accessories/MotionSensor_accessory.js.map +1 -1
- package/dist/accessories/Outlet_accessory.js +10 -10
- package/dist/accessories/Outlet_accessory.js.map +1 -1
- package/dist/accessories/SmartSpeaker_accessory.js +11 -11
- package/dist/accessories/SmartSpeaker_accessory.js.map +1 -1
- package/dist/accessories/Sprinkler_accessory.js +19 -19
- package/dist/accessories/Sprinkler_accessory.js.map +1 -1
- package/dist/accessories/TV_accessory.js +17 -17
- package/dist/accessories/TV_accessory.js.map +1 -1
- package/dist/accessories/TemperatureSensor_accessory.js +6 -6
- package/dist/accessories/TemperatureSensor_accessory.js.map +1 -1
- package/dist/accessories/Wi-FiRouter_accessory.js +3 -3
- package/dist/accessories/Wi-FiRouter_accessory.js.map +1 -1
- package/dist/accessories/Wi-FiSatellite_accessory.js +4 -4
- package/dist/accessories/Wi-FiSatellite_accessory.js.map +1 -1
- package/dist/accessories/gstreamer-audioProducer.js +45 -55
- package/dist/accessories/gstreamer-audioProducer.js.map +1 -1
- package/dist/accessories/types.js +2 -2
- package/dist/accessories/types.js.map +1 -1
- package/dist/index.d.ts +0 -14
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -31
- package/dist/index.js.map +1 -1
- package/dist/internal-types.d.ts +4 -4
- package/dist/internal-types.d.ts.map +1 -1
- package/dist/internal-types.js +10 -6
- package/dist/internal-types.js.map +1 -1
- package/dist/lib/Accessory.d.ts +19 -74
- package/dist/lib/Accessory.d.ts.map +1 -1
- package/dist/lib/Accessory.js +775 -1155
- package/dist/lib/Accessory.js.map +1 -1
- package/dist/lib/Advertiser.d.ts +5 -6
- package/dist/lib/Advertiser.d.ts.map +1 -1
- package/dist/lib/Advertiser.js +402 -521
- package/dist/lib/Advertiser.js.map +1 -1
- package/dist/lib/Bridge.js +6 -10
- package/dist/lib/Bridge.js.map +1 -1
- package/dist/lib/Characteristic.d.ts +31 -93
- package/dist/lib/Characteristic.d.ts.map +1 -1
- package/dist/lib/Characteristic.js +1474 -668
- package/dist/lib/Characteristic.js.map +1 -1
- package/dist/lib/HAPServer.d.ts +10 -22
- package/dist/lib/HAPServer.d.ts.map +1 -1
- package/dist/lib/HAPServer.js +224 -286
- package/dist/lib/HAPServer.js.map +1 -1
- package/dist/lib/Service.d.ts +9 -27
- package/dist/lib/Service.d.ts.map +1 -1
- package/dist/lib/Service.js +476 -314
- package/dist/lib/Service.js.map +1 -1
- package/dist/lib/camera/RTPProxy.d.ts +0 -2
- package/dist/lib/camera/RTPProxy.d.ts.map +1 -1
- package/dist/lib/camera/RTPProxy.js +112 -104
- package/dist/lib/camera/RTPProxy.js.map +1 -1
- package/dist/lib/camera/RTPStreamManagement.d.ts +2 -67
- package/dist/lib/camera/RTPStreamManagement.d.ts.map +1 -1
- package/dist/lib/camera/RTPStreamManagement.js +272 -292
- package/dist/lib/camera/RTPStreamManagement.js.map +1 -1
- package/dist/lib/camera/RecordingManagement.d.ts +0 -1
- package/dist/lib/camera/RecordingManagement.d.ts.map +1 -1
- package/dist/lib/camera/RecordingManagement.js +325 -392
- package/dist/lib/camera/RecordingManagement.js.map +1 -1
- package/dist/lib/camera/index.d.ts +0 -1
- package/dist/lib/camera/index.d.ts.map +1 -1
- package/dist/lib/camera/index.js +1 -2
- package/dist/lib/camera/index.js.map +1 -1
- package/dist/lib/controller/AdaptiveLightingController.d.ts +19 -4
- package/dist/lib/controller/AdaptiveLightingController.d.ts.map +1 -1
- package/dist/lib/controller/AdaptiveLightingController.js +220 -221
- package/dist/lib/controller/AdaptiveLightingController.js.map +1 -1
- package/dist/lib/controller/CameraController.d.ts +0 -6
- package/dist/lib/controller/CameraController.d.ts.map +1 -1
- package/dist/lib/controller/CameraController.js +192 -258
- package/dist/lib/controller/CameraController.js.map +1 -1
- package/dist/lib/controller/Controller.d.ts +1 -1
- package/dist/lib/controller/Controller.d.ts.map +1 -1
- package/dist/lib/controller/Controller.js +3 -3
- package/dist/lib/controller/Controller.js.map +1 -1
- package/dist/lib/controller/DoorbellController.js +38 -39
- package/dist/lib/controller/DoorbellController.js.map +1 -1
- package/dist/lib/controller/RemoteController.d.ts +4 -20
- package/dist/lib/controller/RemoteController.d.ts.map +1 -1
- package/dist/lib/controller/RemoteController.js +351 -424
- package/dist/lib/controller/RemoteController.js.map +1 -1
- package/dist/lib/controller/index.js +1 -1
- package/dist/lib/datastream/DataStreamManagement.js +57 -58
- package/dist/lib/datastream/DataStreamManagement.js.map +1 -1
- package/dist/lib/datastream/DataStreamParser.d.ts +0 -1
- package/dist/lib/datastream/DataStreamParser.d.ts.map +1 -1
- package/dist/lib/datastream/DataStreamParser.js +261 -306
- package/dist/lib/datastream/DataStreamParser.js.map +1 -1
- package/dist/lib/datastream/DataStreamServer.d.ts +0 -8
- package/dist/lib/datastream/DataStreamServer.d.ts.map +1 -1
- package/dist/lib/datastream/DataStreamServer.js +262 -275
- package/dist/lib/datastream/DataStreamServer.js.map +1 -1
- package/dist/lib/datastream/index.js +1 -1
- package/dist/lib/definitions/CharacteristicDefinitions.d.ts +50 -40
- package/dist/lib/definitions/CharacteristicDefinitions.d.ts.map +1 -1
- package/dist/lib/definitions/CharacteristicDefinitions.js +2059 -2754
- package/dist/lib/definitions/CharacteristicDefinitions.js.map +1 -1
- package/dist/lib/definitions/ServiceDefinitions.d.ts +14 -8
- package/dist/lib/definitions/ServiceDefinitions.d.ts.map +1 -1
- package/dist/lib/definitions/ServiceDefinitions.js +834 -1053
- package/dist/lib/definitions/ServiceDefinitions.js.map +1 -1
- package/dist/lib/definitions/generate-definitions.js +383 -679
- package/dist/lib/definitions/generate-definitions.js.map +1 -1
- package/dist/lib/definitions/generator-configuration.d.ts.map +1 -1
- package/dist/lib/definitions/generator-configuration.js +163 -35
- package/dist/lib/definitions/generator-configuration.js.map +1 -1
- package/dist/lib/definitions/index.js +1 -1
- package/dist/lib/model/AccessoryInfo.d.ts +0 -1
- package/dist/lib/model/AccessoryInfo.d.ts.map +1 -1
- package/dist/lib/model/AccessoryInfo.js +102 -137
- package/dist/lib/model/AccessoryInfo.js.map +1 -1
- package/dist/lib/model/ControllerStorage.js +86 -89
- package/dist/lib/model/ControllerStorage.js.map +1 -1
- package/dist/lib/model/HAPStorage.js +15 -16
- package/dist/lib/model/HAPStorage.js.map +1 -1
- package/dist/lib/model/IdentifierCache.js +49 -49
- package/dist/lib/model/IdentifierCache.js.map +1 -1
- package/dist/lib/tv/AccessControlManagement.d.ts +0 -1
- package/dist/lib/tv/AccessControlManagement.d.ts.map +1 -1
- package/dist/lib/tv/AccessControlManagement.js +43 -46
- package/dist/lib/tv/AccessControlManagement.js.map +1 -1
- package/dist/lib/util/checkName.d.ts +8 -0
- package/dist/lib/util/checkName.d.ts.map +1 -0
- package/dist/lib/util/checkName.js +17 -0
- package/dist/lib/util/checkName.js.map +1 -0
- package/dist/lib/util/clone.js +6 -29
- package/dist/lib/util/clone.js.map +1 -1
- package/dist/lib/util/color-utils.js +8 -12
- package/dist/lib/util/color-utils.js.map +1 -1
- package/dist/lib/util/eventedhttp.d.ts +5 -9
- package/dist/lib/util/eventedhttp.d.ts.map +1 -1
- package/dist/lib/util/eventedhttp.js +306 -405
- package/dist/lib/util/eventedhttp.js.map +1 -1
- package/dist/lib/util/hapCrypto.d.ts +0 -1
- package/dist/lib/util/hapCrypto.d.ts.map +1 -1
- package/dist/lib/util/hapCrypto.js +39 -41
- package/dist/lib/util/hapCrypto.js.map +1 -1
- package/dist/lib/util/hapStatusError.js +9 -12
- package/dist/lib/util/hapStatusError.js.map +1 -1
- package/dist/lib/util/net-utils.d.ts.map +1 -1
- package/dist/lib/util/net-utils.js +34 -54
- package/dist/lib/util/net-utils.js.map +1 -1
- package/dist/lib/util/once.js +4 -10
- package/dist/lib/util/once.js.map +1 -1
- package/dist/lib/util/promise-utils.d.ts +0 -1
- package/dist/lib/util/promise-utils.d.ts.map +1 -1
- package/dist/lib/util/promise-utils.js +10 -16
- package/dist/lib/util/promise-utils.js.map +1 -1
- package/dist/lib/util/request-util.js +8 -10
- package/dist/lib/util/request-util.js.map +1 -1
- package/dist/lib/util/time.d.ts +0 -1
- package/dist/lib/util/time.d.ts.map +1 -1
- package/dist/lib/util/time.js +7 -8
- package/dist/lib/util/time.js.map +1 -1
- package/dist/lib/util/tlv.d.ts +0 -28
- package/dist/lib/util/tlv.d.ts.map +1 -1
- package/dist/lib/util/tlv.js +83 -126
- package/dist/lib/util/tlv.js.map +1 -1
- package/dist/lib/util/uuid.d.ts +0 -10
- package/dist/lib/util/uuid.d.ts.map +1 -1
- package/dist/lib/util/uuid.js +22 -40
- package/dist/lib/util/uuid.js.map +1 -1
- package/dist/types.d.ts +0 -35
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/package.json +29 -28
- package/dist/BridgedCore.d.ts +0 -2
- package/dist/BridgedCore.d.ts.map +0 -1
- package/dist/BridgedCore.js +0 -43
- package/dist/BridgedCore.js.map +0 -1
- package/dist/Core.d.ts +0 -2
- package/dist/Core.d.ts.map +0 -1
- package/dist/Core.js +0 -52
- package/dist/Core.js.map +0 -1
- package/dist/lib/AccessoryLoader.d.ts +0 -28
- package/dist/lib/AccessoryLoader.d.ts.map +0 -1
- package/dist/lib/AccessoryLoader.js +0 -167
- package/dist/lib/AccessoryLoader.js.map +0 -1
- package/dist/lib/camera/Camera.d.ts +0 -44
- package/dist/lib/camera/Camera.d.ts.map +0 -1
- package/dist/lib/camera/Camera.js +0 -36
- package/dist/lib/camera/Camera.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../../../src/lib/util/uuid.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"uuid.d.ts","sourceRoot":"","sources":["../../../src/lib/util/uuid.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC;AAC3D,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAEzC,eAAO,MAAM,SAAS,iCAAiC,CAAC;AAGxD,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAejD;AAID,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE7C;AAGD;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;AAC5C;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;AAW5D,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;AAC3C,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;AActE,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAkB,GAAG,MAAM,CAY1E;AAID,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAkB,GAAG,MAAM,CAYzE"}
|
package/dist/lib/util/uuid.js
CHANGED
|
@@ -1,16 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
exports.BASE_UUID = void 0;
|
|
4
|
+
exports.generate = generate;
|
|
5
|
+
exports.isValid = isValid;
|
|
6
|
+
exports.unparse = unparse;
|
|
7
|
+
exports.write = write;
|
|
8
|
+
exports.toShortForm = toShortForm;
|
|
9
|
+
exports.toLongForm = toLongForm;
|
|
10
|
+
const tslib_1 = require("tslib");
|
|
11
|
+
const crypto_1 = tslib_1.__importDefault(require("crypto"));
|
|
6
12
|
exports.BASE_UUID = "-0000-1000-8000-0026BB765291";
|
|
7
13
|
// http://stackoverflow.com/a/25951500/66673
|
|
8
14
|
function generate(data) {
|
|
9
|
-
|
|
15
|
+
const sha1sum = crypto_1.default.createHash("sha1");
|
|
10
16
|
sha1sum.update(data);
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,
|
|
17
|
+
const s = sha1sum.digest("hex");
|
|
18
|
+
let i = -1;
|
|
19
|
+
return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c) => {
|
|
14
20
|
i += 1;
|
|
15
21
|
switch (c) {
|
|
16
22
|
case "y":
|
|
@@ -21,39 +27,20 @@ function generate(data) {
|
|
|
21
27
|
}
|
|
22
28
|
});
|
|
23
29
|
}
|
|
24
|
-
|
|
25
|
-
var VALID_UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
30
|
+
const VALID_UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
26
31
|
function isValid(UUID) {
|
|
27
32
|
return VALID_UUID_REGEX.test(UUID);
|
|
28
33
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
if (offset === void 0) { offset = 0; }
|
|
32
|
-
if (typeof buf === "string" && isValid(buf)) {
|
|
33
|
-
/*
|
|
34
|
-
This check was added to fix backwards compatibility with the old style CameraSource API.
|
|
35
|
-
The old StreamController implementation would not unparse the HAP provided sessionId for the current streaming session.
|
|
36
|
-
This was changed when the new Controller API was introduced, which now turns the sessionId Buffer into a string
|
|
37
|
-
and passes it to the implementor of the Camera.
|
|
38
|
-
Old style CameraSource implementations would use this unparse function to turn the Buffer into a string.
|
|
39
|
-
As the sessionId is already a string we just return it here.
|
|
40
|
-
|
|
41
|
-
The buf attribute being a also type of "string" as actually an error. Also I don't know who decided to
|
|
42
|
-
not unparse the sessionId. I'm only here to fix things.
|
|
43
|
-
*/
|
|
44
|
-
return buf;
|
|
45
|
-
}
|
|
46
|
-
var i = offset;
|
|
34
|
+
function unparse(buf, offset = 0) {
|
|
35
|
+
let i = offset;
|
|
47
36
|
return buf.toString("hex", i, (i += 4)) + "-" +
|
|
48
37
|
buf.toString("hex", i, (i += 2)) + "-" +
|
|
49
38
|
buf.toString("hex", i, (i += 2)) + "-" +
|
|
50
39
|
buf.toString("hex", i, (i += 2)) + "-" +
|
|
51
40
|
buf.toString("hex", i, i + 6);
|
|
52
41
|
}
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
if (offset === void 0) { offset = 0; }
|
|
56
|
-
var buffer = Buffer.from(uuid.replace(/-/g, ""), "hex");
|
|
42
|
+
function write(uuid, buf, offset = 0) {
|
|
43
|
+
const buffer = Buffer.from(uuid.replace(/-/g, ""), "hex");
|
|
57
44
|
if (buf) {
|
|
58
45
|
buffer.copy(buf, offset);
|
|
59
46
|
return buf;
|
|
@@ -62,10 +49,8 @@ function write(uuid, buf, offset) {
|
|
|
62
49
|
return buffer;
|
|
63
50
|
}
|
|
64
51
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
function toShortForm(uuid, base) {
|
|
68
|
-
if (base === void 0) { base = exports.BASE_UUID; }
|
|
52
|
+
const SHORT_FORM_REGEX = /^0*([0-9a-f]{1,8})-([0-9a-f]{4}-){3}[0-9a-f]{12}$/i;
|
|
53
|
+
function toShortForm(uuid, base = exports.BASE_UUID) {
|
|
69
54
|
if (!isValid(uuid)) {
|
|
70
55
|
throw new TypeError("uuid was not a valid UUID or short form UUID");
|
|
71
56
|
}
|
|
@@ -77,10 +62,8 @@ function toShortForm(uuid, base) {
|
|
|
77
62
|
}
|
|
78
63
|
return uuid.replace(SHORT_FORM_REGEX, "$1").toUpperCase();
|
|
79
64
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
function toLongForm(uuid, base) {
|
|
83
|
-
if (base === void 0) { base = exports.BASE_UUID; }
|
|
65
|
+
const VALID_SHORT_REGEX = /^[0-9a-f]{1,8}$/i;
|
|
66
|
+
function toLongForm(uuid, base = exports.BASE_UUID) {
|
|
84
67
|
if (isValid(uuid)) {
|
|
85
68
|
return uuid.toUpperCase();
|
|
86
69
|
}
|
|
@@ -92,5 +75,4 @@ function toLongForm(uuid, base) {
|
|
|
92
75
|
}
|
|
93
76
|
return (("00000000" + uuid).substr(-8) + base).toUpperCase();
|
|
94
77
|
}
|
|
95
|
-
exports.toLongForm = toLongForm;
|
|
96
78
|
//# sourceMappingURL=uuid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../../src/lib/util/uuid.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../../src/lib/util/uuid.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -79,38 +79,6 @@ export type PrimitiveTypes = string | number | boolean;
|
|
|
79
79
|
export type CharacteristicValue = PrimitiveTypes | PrimitiveTypes[] | {
|
|
80
80
|
[key: string]: PrimitiveTypes;
|
|
81
81
|
};
|
|
82
|
-
/**
|
|
83
|
-
* @group Camera
|
|
84
|
-
* @deprecated replaced by {@link AudioStreamingCodec}
|
|
85
|
-
*/
|
|
86
|
-
export type AudioCodec = {
|
|
87
|
-
samplerate: number;
|
|
88
|
-
type: string;
|
|
89
|
-
};
|
|
90
|
-
/**
|
|
91
|
-
* @group Camera
|
|
92
|
-
* @deprecated replaced by {@link H264CodecParameters}
|
|
93
|
-
*/
|
|
94
|
-
export type VideoCodec = {
|
|
95
|
-
levels: number[];
|
|
96
|
-
profiles: number[];
|
|
97
|
-
};
|
|
98
|
-
/**
|
|
99
|
-
* @group Camera
|
|
100
|
-
* @deprecated replaced by {@link AudioStreamingOptions}
|
|
101
|
-
*/
|
|
102
|
-
export type StreamAudioParams = {
|
|
103
|
-
comfort_noise: boolean;
|
|
104
|
-
codecs: AudioCodec[];
|
|
105
|
-
};
|
|
106
|
-
/**
|
|
107
|
-
* @group Camera
|
|
108
|
-
* @deprecated replaced by {@link VideoStreamingOptions}
|
|
109
|
-
*/
|
|
110
|
-
export type StreamVideoParams = {
|
|
111
|
-
codec?: VideoCodec;
|
|
112
|
-
resolutions: [number, number, number][];
|
|
113
|
-
};
|
|
114
82
|
/**
|
|
115
83
|
* @group HAP Accessory Server
|
|
116
84
|
*/
|
|
@@ -230,9 +198,6 @@ export interface CharacteristicWrite {
|
|
|
230
198
|
value?: CharacteristicValue;
|
|
231
199
|
ev?: boolean;
|
|
232
200
|
authData?: string;
|
|
233
|
-
/**
|
|
234
|
-
* @deprecated This indicated if access was done via the old iCloud relay
|
|
235
|
-
*/
|
|
236
201
|
remote?: boolean;
|
|
237
202
|
r?: boolean;
|
|
238
203
|
}
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/C;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,CAAC,CAAC,IAAI;KAClC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;CAC7B,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,SAAS,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC;AAErF;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AACvC;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAChC;;;;;GAKG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC;AAChC;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AACjC;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC;AACjC;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,WAAW,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,SAAS,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;AACnF;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;AAC3D;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AACvD;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,cAAc,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,CAAA;CAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -7,5 +7,5 @@ exports.ResourceRequestType = void 0;
|
|
|
7
7
|
var ResourceRequestType;
|
|
8
8
|
(function (ResourceRequestType) {
|
|
9
9
|
ResourceRequestType["IMAGE"] = "image";
|
|
10
|
-
})(ResourceRequestType
|
|
10
|
+
})(ResourceRequestType || (exports.ResourceRequestType = ResourceRequestType = {}));
|
|
11
11
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AA4SA;;GAEG;AACH,IAAkB,mBAEjB;AAFD,WAAkB,mBAAmB;IACnC,sCAAe,CAAA;AACjB,CAAC,EAFiB,mBAAmB,mCAAnB,mBAAmB,QAEpC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hap-nodejs",
|
|
3
|
-
"version": "1.0.0
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "HAP-NodeJS is a Node.js implementation of HomeKit Accessory Server.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -37,13 +37,13 @@
|
|
|
37
37
|
],
|
|
38
38
|
"repository": {
|
|
39
39
|
"type": "git",
|
|
40
|
-
"url": "https://github.com/homebridge/HAP-NodeJS.git"
|
|
40
|
+
"url": "git+https://github.com/homebridge/HAP-NodeJS.git"
|
|
41
41
|
},
|
|
42
42
|
"bugs": {
|
|
43
43
|
"url": "https://github.com/homebridge/HAP-NodeJS/issues"
|
|
44
44
|
},
|
|
45
45
|
"engines": {
|
|
46
|
-
"node": "
|
|
46
|
+
"node": "^18 || ^20"
|
|
47
47
|
},
|
|
48
48
|
"files": [
|
|
49
49
|
"README.md",
|
|
@@ -52,36 +52,37 @@
|
|
|
52
52
|
"@types"
|
|
53
53
|
],
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@homebridge/ciao": "^1.
|
|
56
|
-
"@homebridge/dbus-native": "^0.
|
|
57
|
-
"bonjour-hap": "
|
|
58
|
-
"debug": "^4.3.
|
|
59
|
-
"fast-srp-hap": "
|
|
60
|
-
"futoin-hkdf": "
|
|
61
|
-
"node-persist": "^0.0.
|
|
55
|
+
"@homebridge/ciao": "^1.3.0",
|
|
56
|
+
"@homebridge/dbus-native": "^0.6.0",
|
|
57
|
+
"bonjour-hap": "^3.8.0",
|
|
58
|
+
"debug": "^4.3.5",
|
|
59
|
+
"fast-srp-hap": "^2.0.4",
|
|
60
|
+
"futoin-hkdf": "^1.5.3",
|
|
61
|
+
"node-persist": "^0.0.12",
|
|
62
62
|
"source-map-support": "^0.5.21",
|
|
63
|
-
"tslib": "^2.
|
|
63
|
+
"tslib": "^2.6.3",
|
|
64
64
|
"tweetnacl": "^1.0.3"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
67
|
-
"@types/debug": "^4.1.
|
|
68
|
-
"@types/escape-html": "^1.0.
|
|
69
|
-
"@types/jest": "^29.
|
|
70
|
-
"@types/node": "^14.
|
|
71
|
-
"@
|
|
72
|
-
"@typescript-eslint/
|
|
73
|
-
"
|
|
67
|
+
"@types/debug": "^4.1.12",
|
|
68
|
+
"@types/escape-html": "^1.0.4",
|
|
69
|
+
"@types/jest": "^29.5.12",
|
|
70
|
+
"@types/node": "^20.14.10",
|
|
71
|
+
"@types/plist": "^3.0.5",
|
|
72
|
+
"@typescript-eslint/eslint-plugin": "^7.16.0",
|
|
73
|
+
"@typescript-eslint/parser": "^7.16.0",
|
|
74
|
+
"axios": "^1.7.2",
|
|
75
|
+
"commander": "^12.1.0",
|
|
74
76
|
"escape-html": "^1.0.3",
|
|
77
|
+
"eslint": "^8.57.0",
|
|
75
78
|
"http-parser-js": "^0.5.8",
|
|
76
|
-
"
|
|
77
|
-
"
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"ts-
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
"typescript": "~4.9.3",
|
|
85
|
-
"axios": "^1.2.0"
|
|
79
|
+
"jest": "^29.7.0",
|
|
80
|
+
"rimraf": "^5.0.9",
|
|
81
|
+
"semver": "^7.6.2",
|
|
82
|
+
"simple-plist": "^1.4.0-0",
|
|
83
|
+
"ts-jest": "^29.2.0",
|
|
84
|
+
"ts-node": "^10.9.2",
|
|
85
|
+
"typedoc": "^0.26.3",
|
|
86
|
+
"typescript": "^5.5.3"
|
|
86
87
|
}
|
|
87
88
|
}
|
package/dist/BridgedCore.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BridgedCore.d.ts","sourceRoot":"","sources":["../src/BridgedCore.ts"],"names":[],"mappings":""}
|
package/dist/BridgedCore.js
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var tslib_1 = require("tslib");
|
|
4
|
-
var path_1 = tslib_1.__importDefault(require("path"));
|
|
5
|
-
var node_persist_1 = tslib_1.__importDefault(require("node-persist"));
|
|
6
|
-
var _1 = require("./");
|
|
7
|
-
console.log("HAP-NodeJS v".concat((0, _1.HAPLibraryVersion)(), " starting..."));
|
|
8
|
-
console.warn("DEPRECATION NOTICE: The use of Core and BridgeCore are deprecated and are scheduled to be remove in October 2020. " +
|
|
9
|
-
"For more information and some guidance on how to migrate, have a look at https://github.com/homebridge/HAP-NodeJS/wiki/Deprecation-of-Core-and-BridgeCore");
|
|
10
|
-
// Initialize our storage system
|
|
11
|
-
node_persist_1.default.initSync();
|
|
12
|
-
// Start by creating our Bridge which will host all loaded Accessories
|
|
13
|
-
var bridge = new _1.Bridge("Node Bridge", _1.uuid.generate("Node Bridge"));
|
|
14
|
-
// Listen for bridge identification event
|
|
15
|
-
bridge.on("identify" /* AccessoryEventTypes.IDENTIFY */, function (paired, callback) {
|
|
16
|
-
console.log("Node Bridge identify");
|
|
17
|
-
callback(); // success
|
|
18
|
-
});
|
|
19
|
-
// Load up all accessories in the /accessories folder
|
|
20
|
-
var dir = path_1.default.join(__dirname, "accessories");
|
|
21
|
-
var accessories = _1.AccessoryLoader.loadDirectory(dir);
|
|
22
|
-
// Add them all to the bridge
|
|
23
|
-
accessories.forEach(function (accessory) {
|
|
24
|
-
bridge.addBridgedAccessory(accessory);
|
|
25
|
-
});
|
|
26
|
-
// Publish the Bridge on the local network.
|
|
27
|
-
bridge.publish({
|
|
28
|
-
username: "CC:22:3D:E3:CE:F6",
|
|
29
|
-
port: 51826,
|
|
30
|
-
pincode: "031-45-154",
|
|
31
|
-
category: 2 /* Categories.BRIDGE */,
|
|
32
|
-
});
|
|
33
|
-
var signals = { "SIGINT": 2, "SIGTERM": 15 };
|
|
34
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
35
|
-
Object.keys(signals).forEach(function (signal) {
|
|
36
|
-
process.on(signal, function () {
|
|
37
|
-
bridge.unpublish();
|
|
38
|
-
setTimeout(function () {
|
|
39
|
-
process.exit(128 + signals[signal]);
|
|
40
|
-
}, 1000);
|
|
41
|
-
});
|
|
42
|
-
});
|
|
43
|
-
//# sourceMappingURL=BridgedCore.js.map
|
package/dist/BridgedCore.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BridgedCore.js","sourceRoot":"","sources":["../src/BridgedCore.ts"],"names":[],"mappings":";;;AAAA,sDAAwB;AAExB,sEAAmC;AAEnC,uBAAgI;AAEhI,OAAO,CAAC,GAAG,CAAC,sBAAe,IAAA,oBAAiB,GAAE,iBAAc,CAAC,CAAC;AAE9D,OAAO,CAAC,IAAI,CAAC,oHAAoH;IAC/H,2JAA2J,CAAC,CAAC;AAE/J,gCAAgC;AAChC,sBAAO,CAAC,QAAQ,EAAE,CAAC;AAEnB,sEAAsE;AACtE,IAAM,MAAM,GAAG,IAAI,SAAM,CAAC,aAAa,EAAE,OAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;AAEvE,yCAAyC;AACzC,MAAM,CAAC,EAAE,gDAA+B,UAAC,MAAe,EAAE,QAAsB;IAC9E,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IACpC,QAAQ,EAAE,CAAC,CAAC,UAAU;AACxB,CAAC,CAAC,CAAC;AAEH,qDAAqD;AACrD,IAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAChD,IAAM,WAAW,GAAG,kBAAe,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AAEvD,6BAA6B;AAC7B,WAAW,CAAC,OAAO,CAAC,UAAC,SAAoB;IACvC,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC;AAEH,2CAA2C;AAC3C,MAAM,CAAC,OAAO,CAAC;IACb,QAAQ,EAAE,mBAAmB;IAC7B,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,YAAY;IACrB,QAAQ,2BAAmB;CAC5B,CAAC,CAAC;AAEH,IAAM,OAAO,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAA4B,CAAC;AACzE,8DAA8D;AAC9D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAC,MAAW;IACvC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;QACjB,MAAM,CAAC,SAAS,EAAE,CAAC;QACnB,UAAU,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACtC,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/dist/Core.d.ts
DELETED
package/dist/Core.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Core.d.ts","sourceRoot":"","sources":["../src/Core.ts"],"names":[],"mappings":""}
|
package/dist/Core.js
DELETED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var tslib_1 = require("tslib");
|
|
4
|
-
var path_1 = tslib_1.__importDefault(require("path"));
|
|
5
|
-
var node_persist_1 = tslib_1.__importDefault(require("node-persist"));
|
|
6
|
-
var _1 = require("./");
|
|
7
|
-
console.log("HAP-NodeJS v".concat((0, _1.HAPLibraryVersion)(), " starting..."));
|
|
8
|
-
console.warn("DEPRECATION NOTICE: The use of Core and BridgeCore are deprecated and are scheduled to be remove in October 2020. " +
|
|
9
|
-
"For more information and some guidance on how to migrate, have a look at https://github.com/homebridge/HAP-NodeJS/wiki/Deprecation-of-Core-and-BridgeCore");
|
|
10
|
-
// Initialize our storage system
|
|
11
|
-
node_persist_1.default.initSync();
|
|
12
|
-
// Our Accessories will each have their own HAP server; we will assign ports sequentially
|
|
13
|
-
var targetPort = 51826;
|
|
14
|
-
// Load up all accessories in the /accessories folder
|
|
15
|
-
var dir = path_1.default.join(__dirname, "accessories");
|
|
16
|
-
var accessories = _1.AccessoryLoader.loadDirectory(dir);
|
|
17
|
-
// Publish them all separately (as opposed to BridgedCore which publishes them behind a single Bridge accessory)
|
|
18
|
-
accessories.forEach(function (accessory) {
|
|
19
|
-
// To push Accessories separately, we'll need a few extra properties
|
|
20
|
-
// @ts-expect-error: Core/BridgeCore API
|
|
21
|
-
if (!accessory.username) {
|
|
22
|
-
throw new Error("Username not found on accessory '" + accessory.displayName +
|
|
23
|
-
"'. Core.js requires all accessories to define a unique 'username' property.");
|
|
24
|
-
}
|
|
25
|
-
// @ts-expect-error: Core/BridgeCore API
|
|
26
|
-
if (!accessory.pincode) {
|
|
27
|
-
throw new Error("Pincode not found on accessory '" + accessory.displayName +
|
|
28
|
-
"'. Core.js requires all accessories to define a 'pincode' property.");
|
|
29
|
-
}
|
|
30
|
-
// publish this Accessory on the local network
|
|
31
|
-
accessory.publish({
|
|
32
|
-
port: targetPort++,
|
|
33
|
-
// @ts-expect-error: Core/BridgeCore API
|
|
34
|
-
username: accessory.username,
|
|
35
|
-
// @ts-expect-error: Core/BridgeCore API
|
|
36
|
-
pincode: accessory.pincode,
|
|
37
|
-
category: accessory.category,
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
var signals = { "SIGINT": 2, "SIGTERM": 15 };
|
|
41
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
42
|
-
Object.keys(signals).forEach(function (signal) {
|
|
43
|
-
process.on(signal, function () {
|
|
44
|
-
for (var i = 0; i < accessories.length; i++) {
|
|
45
|
-
accessories[i].unpublish();
|
|
46
|
-
}
|
|
47
|
-
setTimeout(function () {
|
|
48
|
-
process.exit(128 + signals[signal]);
|
|
49
|
-
}, 1000);
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
//# sourceMappingURL=Core.js.map
|
package/dist/Core.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Core.js","sourceRoot":"","sources":["../src/Core.ts"],"names":[],"mappings":";;;AAAA,sDAAwB;AAExB,sEAAmC;AAEnC,uBAAwD;AAExD,OAAO,CAAC,GAAG,CAAC,sBAAe,IAAA,oBAAiB,GAAE,iBAAc,CAAC,CAAC;AAE9D,OAAO,CAAC,IAAI,CAAC,oHAAoH;IAC/H,2JAA2J,CAAC,CAAC;AAE/J,gCAAgC;AAChC,sBAAO,CAAC,QAAQ,EAAE,CAAC;AAEnB,yFAAyF;AACzF,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB,qDAAqD;AACrD,IAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;AAChD,IAAM,WAAW,GAAG,kBAAe,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;AAEvD,gHAAgH;AAChH,WAAW,CAAC,OAAO,CAAC,UAAC,SAAS;IAE5B,oEAAoE;IACpE,wCAAwC;IACxC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;QACvB,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,SAAS,CAAC,WAAW;YAC3D,6EAA6E,CAAC,CAAC;KAChG;IAED,wCAAwC;IACxC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;QACtB,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,SAAS,CAAC,WAAW;YAC1D,qEAAqE,CAAC,CAAC;KACxF;IAED,8CAA8C;IAC9C,SAAS,CAAC,OAAO,CAAC;QAChB,IAAI,EAAE,UAAU,EAAE;QAClB,wCAAwC;QACxC,QAAQ,EAAE,SAAS,CAAC,QAAQ;QAC5B,wCAAwC;QACxC,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,QAAQ,EAAE,SAAS,CAAC,QAAQ;KAC7B,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAM,OAAO,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAA4B,CAAC;AACzE,8DAA8D;AAC9D,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAC,MAAW;IACvC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3C,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;SAC5B;QAED,UAAU,CAAC;YACT,OAAO,CAAC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QACtC,CAAC,EAAE,IAAI,CAAC,CAAC;IACX,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { Accessory } from "./Accessory";
|
|
2
|
-
import { Characteristic } from "./Characteristic";
|
|
3
|
-
import { Service } from "./Service";
|
|
4
|
-
/**
|
|
5
|
-
* @group Utils
|
|
6
|
-
* @deprecated Legacy Accessory Loader
|
|
7
|
-
*/
|
|
8
|
-
export declare function parseCharacteristicJSON(json: any): Characteristic;
|
|
9
|
-
/**
|
|
10
|
-
* @group Utils
|
|
11
|
-
* @deprecated Legacy Accessory Loader
|
|
12
|
-
*/
|
|
13
|
-
export declare function parseServiceJSON(json: any): Service;
|
|
14
|
-
/**
|
|
15
|
-
* Accepts object-literal JSON structures from previous versions of HAP-NodeJS and parses them into
|
|
16
|
-
* newer-style structures of Accessory/Service/Characteristic objects.
|
|
17
|
-
* @group Utils
|
|
18
|
-
* @deprecated Legacy Accessory Loader
|
|
19
|
-
*/
|
|
20
|
-
export declare function parseAccessoryJSON(json: any): Accessory;
|
|
21
|
-
/**
|
|
22
|
-
* Loads all accessories from the given folder. Handles object-literal-style accessories, "accessory factories",
|
|
23
|
-
* and new-API style modules.
|
|
24
|
-
* @group Utils
|
|
25
|
-
* @deprecated Legacy Accessory Loader
|
|
26
|
-
*/
|
|
27
|
-
export declare function loadDirectory(dir: string): Accessory[];
|
|
28
|
-
//# sourceMappingURL=AccessoryLoader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AccessoryLoader.d.ts","sourceRoot":"","sources":["../../src/lib/AccessoryLoader.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EACL,cAAc,EAIf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC;;;GAGG;AAEH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,GAAG,cAAc,CA2CjE;AAED;;;GAGG;AAEH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CA+BnD;AAGD;;;;;GAKG;AAEH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,GAAG,GAAG,SAAS,CAwCvD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,CAoCtD"}
|
|
@@ -1,167 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.loadDirectory = exports.parseAccessoryJSON = exports.parseServiceJSON = exports.parseCharacteristicJSON = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var debug_1 = tslib_1.__importDefault(require("debug"));
|
|
6
|
-
var fs_1 = tslib_1.__importDefault(require("fs"));
|
|
7
|
-
var path_1 = tslib_1.__importDefault(require("path"));
|
|
8
|
-
var Accessory_1 = require("./Accessory");
|
|
9
|
-
var Characteristic_1 = require("./Characteristic");
|
|
10
|
-
var Service_1 = require("./Service");
|
|
11
|
-
var uuid = tslib_1.__importStar(require("./util/uuid"));
|
|
12
|
-
var debug = (0, debug_1.default)("HAP-NodeJS:AccessoryLoader");
|
|
13
|
-
/**
|
|
14
|
-
* @group Utils
|
|
15
|
-
* @deprecated Legacy Accessory Loader
|
|
16
|
-
*/
|
|
17
|
-
// eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types,@typescript-eslint/no-explicit-any
|
|
18
|
-
function parseCharacteristicJSON(json) {
|
|
19
|
-
var characteristicUUID = json.cType;
|
|
20
|
-
var characteristic = new Characteristic_1.Characteristic(json.manfDescription || characteristicUUID, characteristicUUID, {
|
|
21
|
-
format: json.format,
|
|
22
|
-
minValue: json.designedMinValue,
|
|
23
|
-
maxValue: json.designedMaxValue,
|
|
24
|
-
minStep: json.designedMinStep,
|
|
25
|
-
unit: json.unit,
|
|
26
|
-
perms: json.perms, // example: ["pw","pr","ev"]
|
|
27
|
-
});
|
|
28
|
-
// copy simple properties
|
|
29
|
-
characteristic.value = json.initialValue;
|
|
30
|
-
// @ts-expect-error: monkey-patch legacy "locals" property which used to exist.
|
|
31
|
-
characteristic.locals = json.locals;
|
|
32
|
-
var updateFunc = json.onUpdate; // optional function(value)
|
|
33
|
-
var readFunc = json.onRead; // optional function(callback(value))
|
|
34
|
-
var registerFunc = json.onRegister; // optional function
|
|
35
|
-
if (updateFunc) {
|
|
36
|
-
characteristic.on("set" /* CharacteristicEventTypes.SET */, function (value, callback) {
|
|
37
|
-
updateFunc(value);
|
|
38
|
-
callback && callback();
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
if (readFunc) {
|
|
42
|
-
characteristic.on("get" /* CharacteristicEventTypes.GET */, function (callback) {
|
|
43
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
44
|
-
readFunc(function (value) {
|
|
45
|
-
callback(null, value); // old onRead callbacks don't use Error as first param
|
|
46
|
-
});
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
if (registerFunc) {
|
|
50
|
-
registerFunc(characteristic);
|
|
51
|
-
}
|
|
52
|
-
return characteristic;
|
|
53
|
-
}
|
|
54
|
-
exports.parseCharacteristicJSON = parseCharacteristicJSON;
|
|
55
|
-
/**
|
|
56
|
-
* @group Utils
|
|
57
|
-
* @deprecated Legacy Accessory Loader
|
|
58
|
-
*/
|
|
59
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
|
|
60
|
-
function parseServiceJSON(json) {
|
|
61
|
-
var serviceUUID = json.sType;
|
|
62
|
-
// build characteristics first, so we can extract the Name (if present)
|
|
63
|
-
var characteristics = [];
|
|
64
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
65
|
-
json.characteristics.forEach(function (characteristicJSON) {
|
|
66
|
-
var characteristic = parseCharacteristicJSON(characteristicJSON);
|
|
67
|
-
characteristics.push(characteristic);
|
|
68
|
-
});
|
|
69
|
-
var displayName = null;
|
|
70
|
-
// extract the "Name" characteristic to use for 'type' discrimination if necessary
|
|
71
|
-
characteristics.forEach(function (characteristic) {
|
|
72
|
-
if (characteristic.UUID === "00000023-0000-1000-8000-0026BB765291") { // Characteristic.Name.UUID
|
|
73
|
-
displayName = characteristic.value;
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
// Use UUID for "displayName" if necessary, as the JSON structures don't have a value for this
|
|
77
|
-
var service = new Service_1.Service(displayName || serviceUUID, serviceUUID, "".concat(displayName));
|
|
78
|
-
characteristics.forEach(function (characteristic) {
|
|
79
|
-
if (characteristic.UUID !== "00000023-0000-1000-8000-0026BB765291") { // Characteristic.Name.UUID, already present in all Services
|
|
80
|
-
service.addCharacteristic(characteristic);
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
return service;
|
|
84
|
-
}
|
|
85
|
-
exports.parseServiceJSON = parseServiceJSON;
|
|
86
|
-
/**
|
|
87
|
-
* Accepts object-literal JSON structures from previous versions of HAP-NodeJS and parses them into
|
|
88
|
-
* newer-style structures of Accessory/Service/Characteristic objects.
|
|
89
|
-
* @group Utils
|
|
90
|
-
* @deprecated Legacy Accessory Loader
|
|
91
|
-
*/
|
|
92
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any,@typescript-eslint/explicit-module-boundary-types
|
|
93
|
-
function parseAccessoryJSON(json) {
|
|
94
|
-
// parse services first so we can extract the accessory name
|
|
95
|
-
var services = [];
|
|
96
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
97
|
-
json.services.forEach(function (serviceJSON) {
|
|
98
|
-
var service = parseServiceJSON(serviceJSON);
|
|
99
|
-
services.push(service);
|
|
100
|
-
});
|
|
101
|
-
var displayName = json.displayName;
|
|
102
|
-
services.forEach(function (service) {
|
|
103
|
-
if (service.UUID === "0000003E-0000-1000-8000-0026BB765291") { // Service.AccessoryInformation.UUID
|
|
104
|
-
service.characteristics.forEach(function (characteristic) {
|
|
105
|
-
if (characteristic.UUID === "00000023-0000-1000-8000-0026BB765291") { // Characteristic.Name.UUID
|
|
106
|
-
displayName = characteristic.value;
|
|
107
|
-
}
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
var accessory = new Accessory_1.Accessory(displayName, uuid.generate(displayName));
|
|
112
|
-
// create custom properties for "username" and "pincode" for Core.js to find later (if using Core.js)
|
|
113
|
-
// @ts-expect-error: Core/BridgeCore API
|
|
114
|
-
accessory.username = json.username;
|
|
115
|
-
// @ts-expect-error: Core/BridgeCore API
|
|
116
|
-
accessory.pincode = json.pincode;
|
|
117
|
-
// clear out the default services
|
|
118
|
-
accessory.services.length = 0;
|
|
119
|
-
// add services
|
|
120
|
-
services.forEach(function (service) {
|
|
121
|
-
accessory.addService(service);
|
|
122
|
-
});
|
|
123
|
-
return accessory;
|
|
124
|
-
}
|
|
125
|
-
exports.parseAccessoryJSON = parseAccessoryJSON;
|
|
126
|
-
/**
|
|
127
|
-
* Loads all accessories from the given folder. Handles object-literal-style accessories, "accessory factories",
|
|
128
|
-
* and new-API style modules.
|
|
129
|
-
* @group Utils
|
|
130
|
-
* @deprecated Legacy Accessory Loader
|
|
131
|
-
*/
|
|
132
|
-
function loadDirectory(dir) {
|
|
133
|
-
// exported accessory objects loaded from this dir
|
|
134
|
-
var accessories = [];
|
|
135
|
-
fs_1.default.readdirSync(dir).forEach(function (file) {
|
|
136
|
-
var suffix = file.split("_").pop();
|
|
137
|
-
// "Accessories" are modules that export a single accessory.
|
|
138
|
-
if (suffix === "accessory.js" || suffix === "accessory.ts") {
|
|
139
|
-
debug("Parsing accessory: %s", file);
|
|
140
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
141
|
-
var loadedAccessory = require(path_1.default.join(dir, file)).accessory;
|
|
142
|
-
accessories.push(loadedAccessory);
|
|
143
|
-
}
|
|
144
|
-
else if (suffix === "accfactory.js" || suffix === "accfactory.ts") { // "Accessory Factories" are modules that export an array of accessories.
|
|
145
|
-
debug("Parsing accessory factory: %s", file);
|
|
146
|
-
// should return an array of objects { accessory: accessory-json }
|
|
147
|
-
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
148
|
-
var loadedAccessories = require(path_1.default.join(dir, file));
|
|
149
|
-
accessories = accessories.concat(loadedAccessories);
|
|
150
|
-
}
|
|
151
|
-
});
|
|
152
|
-
// now we need to coerce all accessory objects into instances of Accessory (some or all of them may
|
|
153
|
-
// be object-literal JSON-style accessories)
|
|
154
|
-
return accessories.map(function (accessory) {
|
|
155
|
-
if (accessory === null || accessory === undefined) { //check if accessory is not empty
|
|
156
|
-
console.log("Invalid accessory!");
|
|
157
|
-
return false;
|
|
158
|
-
}
|
|
159
|
-
else {
|
|
160
|
-
return (accessory instanceof Accessory_1.Accessory) ? accessory : parseAccessoryJSON(accessory);
|
|
161
|
-
}
|
|
162
|
-
}).filter(function (accessory) {
|
|
163
|
-
return !!accessory;
|
|
164
|
-
});
|
|
165
|
-
}
|
|
166
|
-
exports.loadDirectory = loadDirectory;
|
|
167
|
-
//# sourceMappingURL=AccessoryLoader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AccessoryLoader.js","sourceRoot":"","sources":["../../src/lib/AccessoryLoader.ts"],"names":[],"mappings":";;;;AAAA,wDAAgC;AAChC,kDAAoB;AACpB,sDAAwB;AAExB,yCAAwC;AACxC,mDAK0B;AAC1B,qCAAoC;AACpC,wDAAoC;AAEpC,IAAM,KAAK,GAAG,IAAA,eAAW,EAAC,4BAA4B,CAAC,CAAC;AAExD;;;GAGG;AACH,gHAAgH;AAChH,SAAgB,uBAAuB,CAAC,IAAS;IAC/C,IAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC;IAEtC,IAAM,cAAc,GAAG,IAAI,+BAAc,CAAC,IAAI,CAAC,eAAe,IAAI,kBAAkB,EAAE,kBAAkB,EAAE;QACxG,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,QAAQ,EAAE,IAAI,CAAC,gBAAgB;QAC/B,QAAQ,EAAE,IAAI,CAAC,gBAAgB;QAC/B,OAAO,EAAE,IAAI,CAAC,eAAe;QAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,4BAA4B;KAChD,CAAC,CAAC;IAEH,yBAAyB;IACzB,cAAc,CAAC,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;IAEzC,+EAA+E;IAC/E,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAEpC,IAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,2BAA2B;IAC7D,IAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,qCAAqC;IACnE,IAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,oBAAoB;IAE1D,IAAI,UAAU,EAAE;QACd,cAAc,CAAC,EAAE,2CAA+B,UAAC,KAA0B,EAAE,QAAmC;YAC9G,UAAU,CAAC,KAAK,CAAC,CAAC;YAClB,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,QAAQ,EAAE;QACZ,cAAc,CAAC,EAAE,2CAA+B,UAAC,QAAmC;YAClF,8DAA8D;YAC9D,QAAQ,CAAC,UAAC,KAAU;gBAClB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,sDAAsD;YAC/E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;KACJ;IAED,IAAI,YAAY,EAAE;QAChB,YAAY,CAAC,cAAc,CAAC,CAAC;KAC9B;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AA3CD,0DA2CC;AAED;;;GAGG;AACH,gHAAgH;AAChH,SAAgB,gBAAgB,CAAC,IAAS;IACxC,IAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC;IAE/B,uEAAuE;IACvE,IAAM,eAAe,GAAqB,EAAE,CAAC;IAE7C,8DAA8D;IAC9D,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,UAAC,kBAAuB;QACnD,IAAM,cAAc,GAAG,uBAAuB,CAAC,kBAAkB,CAAC,CAAC;QACnE,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,IAAI,WAAW,GAAkC,IAAI,CAAC;IAEtD,kFAAkF;IAClF,eAAe,CAAC,OAAO,CAAC,UAAC,cAAc;QACrC,IAAI,cAAc,CAAC,IAAI,KAAK,sCAAsC,EAAE,EAAE,2BAA2B;YAC/F,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC;SACpC;IACH,CAAC,CAAC,CAAC;IAEH,8FAA8F;IAC9F,IAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,WAAW,IAAI,WAAW,EAAE,WAAW,EAAE,UAAG,WAAW,CAAE,CAAC,CAAC;IAEvF,eAAe,CAAC,OAAO,CAAC,UAAC,cAAc;QACrC,IAAI,cAAc,CAAC,IAAI,KAAK,sCAAsC,EAAE,EAAE,4DAA4D;YAChI,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;SAC3C;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC;AA/BD,4CA+BC;AAGD;;;;;GAKG;AACH,gHAAgH;AAChH,SAAgB,kBAAkB,CAAC,IAAS;IAE1C,4DAA4D;IAC5D,IAAM,QAAQ,GAAc,EAAE,CAAC;IAE/B,8DAA8D;IAC9D,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAC,WAAgB;QACrC,IAAM,OAAO,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC9C,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IAEnC,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;QACvB,IAAI,OAAO,CAAC,IAAI,KAAK,sCAAsC,EAAE,EAAE,oCAAoC;YACjG,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,UAAC,cAAc;gBAC7C,IAAI,cAAc,CAAC,IAAI,KAAK,sCAAsC,EAAE,EAAC,2BAA2B;oBAC9F,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC;iBACpC;YACH,CAAC,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;IAEH,IAAM,SAAS,GAAG,IAAI,qBAAS,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAEzE,qGAAqG;IACrG,wCAAwC;IACxC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IACnC,wCAAwC;IACxC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAEjC,iCAAiC;IACjC,SAAS,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAE9B,eAAe;IACf,QAAQ,CAAC,OAAO,CAAC,UAAC,OAAO;QACvB,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;IAEH,OAAO,SAAS,CAAC;AACnB,CAAC;AAxCD,gDAwCC;AAED;;;;;GAKG;AACH,SAAgB,aAAa,CAAC,GAAW;IAEvC,kDAAkD;IAClD,IAAI,WAAW,GAAc,EAAE,CAAC;IAEhC,YAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAC,IAAI;QAC/B,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;QAErC,4DAA4D;QAC5D,IAAI,MAAM,KAAK,cAAc,IAAI,MAAM,KAAK,cAAc,EAAE;YAC1D,KAAK,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;YACrC,8DAA8D;YAC9D,IAAM,eAAe,GAAG,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SACnC;aAAM,IAAI,MAAM,KAAK,eAAe,IAAG,MAAM,KAAK,eAAe,EAAE,EAAE,yEAAyE;YAC7I,KAAK,CAAC,+BAA+B,EAAE,IAAI,CAAC,CAAC;YAE7C,kEAAkE;YAClE,8DAA8D;YAC9D,IAAM,iBAAiB,GAAG,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YACxD,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;SACrD;IACH,CAAC,CAAC,CAAC;IAEH,mGAAmG;IACnG,4CAA4C;IAC5C,OAAO,WAAW,CAAC,GAAG,CAAC,UAAC,SAAS;QAC/B,IAAG,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK,SAAS,EAAE,EAAE,iCAAiC;YACnF,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAClC,OAAO,KAAK,CAAC;SACd;aAAM;YACL,OAAO,CAAC,SAAS,YAAY,qBAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;SACrF;IACH,CAAC,CAAC,CAAC,MAAM,CAAC,UAAC,SAA4B;QACrC,OAAO,CAAC,CAAC,SAAS,CAAC;IACrB,CAAC,CAAgB,CAAC;AACpB,CAAC;AApCD,sCAoCC"}
|