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":"Wi-FiRouter_accessory.js","sourceRoot":"","sources":["../../src/accessories/Wi-FiRouter_accessory.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Wi-FiRouter_accessory.js","sourceRoot":"","sources":["../../src/accessories/Wi-FiRouter_accessory.ts"],"names":[],"mappings":";;;AAAA,0BAA6F;AAE7F,MAAM,IAAI,GAAG,QAAI,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC;AACpD,QAAA,SAAS,GAAG,IAAI,aAAS,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;AAE7D,wCAAwC;AACxC,iBAAS,CAAC,QAAQ,GAAG,mBAAmB,CAAC;AACzC,wCAAwC;AACxC,iBAAS,CAAC,OAAO,GAAG,YAAY,CAAC;AACjC,iBAAS,CAAC,QAAQ,6BAAoB,CAAC;AAEvC,iBAAS,CAAC,EAAE,gDAA+B,CAAC,MAAe,EAAE,QAAsB,EAAE,EAAE;IACrF,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,iBAAS,CAAC,WAAW,CAAC,CAAC;IACxD,QAAQ,EAAE,CAAC;AACb,CAAC,CAAC,CAAC;AAEH,iBAAS,CAAC,UAAU,CAAC,WAAO,CAAC,UAAU,CAAC,CAAC"}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.accessory = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
const __1 = require("..");
|
|
5
|
+
const UUID = __1.uuid.generate("hap-nodejs:accessories:wifi-satellite");
|
|
6
6
|
exports.accessory = new __1.Accessory("Wi-Fi Satellite", UUID);
|
|
7
7
|
// @ts-expect-error: Core/BridgeCore API
|
|
8
8
|
exports.accessory.username = "FA:3C:ED:5A:1A:A2";
|
|
9
9
|
// @ts-expect-error: Core/BridgeCore API
|
|
10
10
|
exports.accessory.pincode = "031-45-154";
|
|
11
11
|
exports.accessory.category = 33 /* Categories.ROUTER */;
|
|
12
|
-
exports.accessory.on("identify" /* AccessoryEventTypes.IDENTIFY */,
|
|
12
|
+
exports.accessory.on("identify" /* AccessoryEventTypes.IDENTIFY */, (paired, callback) => {
|
|
13
13
|
console.log("Identify the '%s'", exports.accessory.displayName);
|
|
14
14
|
callback();
|
|
15
15
|
});
|
|
16
|
-
|
|
16
|
+
const satellite = exports.accessory.addService(__1.Service.WiFiSatellite);
|
|
17
17
|
satellite.getCharacteristic(__1.Characteristic.WiFiSatelliteStatus)
|
|
18
18
|
.updateValue(__1.Characteristic.WiFiSatelliteStatus.CONNECTED);
|
|
19
19
|
//# sourceMappingURL=Wi-FiSatellite_accessory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Wi-FiSatellite_accessory.js","sourceRoot":"","sources":["../../src/accessories/Wi-FiSatellite_accessory.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Wi-FiSatellite_accessory.js","sourceRoot":"","sources":["../../src/accessories/Wi-FiSatellite_accessory.ts"],"names":[],"mappings":";;;AAAA,0BAA6G;AAE7G,MAAM,IAAI,GAAG,QAAI,CAAC,QAAQ,CAAC,uCAAuC,CAAC,CAAC;AACvD,QAAA,SAAS,GAAG,IAAI,aAAS,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;AAEhE,wCAAwC;AACxC,iBAAS,CAAC,QAAQ,GAAG,mBAAmB,CAAC;AACzC,wCAAwC;AACxC,iBAAS,CAAC,OAAO,GAAG,YAAY,CAAC;AACjC,iBAAS,CAAC,QAAQ,6BAAoB,CAAC;AAEvC,iBAAS,CAAC,EAAE,gDAA+B,CAAC,MAAe,EAAE,QAAsB,EAAE,EAAE;IACrF,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,iBAAS,CAAC,WAAW,CAAC,CAAC;IACxD,QAAQ,EAAE,CAAC;AACb,CAAC,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,iBAAS,CAAC,UAAU,CAAC,WAAO,CAAC,aAAa,CAAC,CAAC;AAE9D,SAAS,CAAC,iBAAiB,CAAC,kBAAc,CAAC,mBAAmB,CAAE;KAC7D,WAAW,CAAC,kBAAc,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.GStreamerAudioProducer = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const assert_1 = tslib_1.__importDefault(require("assert"));
|
|
6
|
+
const child_process_1 = require("child_process");
|
|
7
|
+
const debug_1 = tslib_1.__importDefault(require("debug"));
|
|
8
|
+
const debug = (0, debug_1.default)("HAP-NodeJS:Remote:GStreamer");
|
|
9
9
|
var AudioType;
|
|
10
10
|
(function (AudioType) {
|
|
11
11
|
AudioType[AudioType["GENERIC"] = 2049] = "GENERIC";
|
|
@@ -35,40 +35,31 @@ var BitrateType;
|
|
|
35
35
|
* gstreamer1.0-plugins-good, gstreamer1.0-plugins- ugly, gstreamer1.0-plugins-bad, gstreamer1.0-alsa
|
|
36
36
|
*
|
|
37
37
|
*/
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
38
|
+
class GStreamerAudioProducer {
|
|
39
|
+
options = {
|
|
40
|
+
alsaSrc: "plughw:1",
|
|
41
|
+
};
|
|
42
|
+
frameHandler;
|
|
43
|
+
errorHandler;
|
|
44
|
+
process;
|
|
45
|
+
running = false;
|
|
46
|
+
constructor(frameHandler, errorHandler, options) {
|
|
45
47
|
this.frameHandler = frameHandler;
|
|
46
48
|
this.errorHandler = errorHandler;
|
|
47
49
|
if (options) {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
// @ts-expect-error: type mismatch
|
|
52
|
-
GStreamerAudioProducer.options[key] = value;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
56
|
-
finally {
|
|
57
|
-
try {
|
|
58
|
-
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
59
|
-
}
|
|
60
|
-
finally { if (e_1) throw e_1.error; }
|
|
50
|
+
for (const [key, value] of Object.entries(options)) {
|
|
51
|
+
// @ts-expect-error: type mismatch
|
|
52
|
+
GStreamerAudioProducer.options[key] = value;
|
|
61
53
|
}
|
|
62
54
|
}
|
|
63
55
|
}
|
|
64
|
-
|
|
65
|
-
var _this = this;
|
|
56
|
+
startAudioProduction(selectedAudioConfiguration) {
|
|
66
57
|
if (this.running) {
|
|
67
58
|
throw new Error("Gstreamer already running");
|
|
68
59
|
}
|
|
69
|
-
|
|
60
|
+
const codecParameters = selectedAudioConfiguration.parameters;
|
|
70
61
|
(0, assert_1.default)(selectedAudioConfiguration.codecType === 3 /* AudioCodecTypes.OPUS */);
|
|
71
|
-
|
|
62
|
+
let bitrateType = 1 /* BitrateType.VARIABLE */;
|
|
72
63
|
switch (codecParameters.bitrate) {
|
|
73
64
|
case 1 /* AudioBitrate.CONSTANT */:
|
|
74
65
|
bitrateType = 0 /* BitrateType.CONSTANT */;
|
|
@@ -77,7 +68,7 @@ var GStreamerAudioProducer = /** @class */ (function () {
|
|
|
77
68
|
bitrateType = 1 /* BitrateType.VARIABLE */;
|
|
78
69
|
break;
|
|
79
70
|
}
|
|
80
|
-
|
|
71
|
+
let bandwidth = 1104 /* Bandwidth.SUPER_WIDE_BAND */;
|
|
81
72
|
switch (codecParameters.samplerate) {
|
|
82
73
|
case 0 /* AudioSamplerate.KHZ_8 */:
|
|
83
74
|
bandwidth = 1101 /* Bandwidth.NARROW_BAND */;
|
|
@@ -89,10 +80,10 @@ var GStreamerAudioProducer = /** @class */ (function () {
|
|
|
89
80
|
bandwidth = 1104 /* Bandwidth.SUPER_WIDE_BAND */;
|
|
90
81
|
break;
|
|
91
82
|
}
|
|
92
|
-
|
|
83
|
+
const packetTime = codecParameters.rtpTime;
|
|
93
84
|
debug("Launching gstreamer...");
|
|
94
85
|
this.running = true;
|
|
95
|
-
|
|
86
|
+
const args = "-q " +
|
|
96
87
|
"alsasrc device=" + this.options.alsaSrc + " ! " +
|
|
97
88
|
"capsfilter caps=audio/x-raw,format=S16LE,rate=24000 ! " +
|
|
98
89
|
// "level post-messages=true interval=" + packetTime + "000000 ! " + // used to capture rms
|
|
@@ -104,52 +95,51 @@ var GStreamerAudioProducer = /** @class */ (function () {
|
|
|
104
95
|
"frame-size=" + packetTime + " ! " +
|
|
105
96
|
"fdsink fd=1";
|
|
106
97
|
this.process = (0, child_process_1.spawn)("gst-launch-1.0", args.split(" "), { env: process.env });
|
|
107
|
-
this.process.on("error",
|
|
108
|
-
if (
|
|
98
|
+
this.process.on("error", error => {
|
|
99
|
+
if (this.running) {
|
|
109
100
|
debug("Failed to spawn gstreamer process: " + error.message);
|
|
110
|
-
|
|
101
|
+
this.errorHandler(3 /* HDSProtocolSpecificErrorReason.CANCELLED */);
|
|
111
102
|
}
|
|
112
103
|
else {
|
|
113
104
|
debug("Failed to kill gstreamer process: " + error.message);
|
|
114
105
|
}
|
|
115
106
|
});
|
|
116
|
-
this.process.stdout
|
|
117
|
-
if (!
|
|
107
|
+
this.process.stdout?.on("data", (data) => {
|
|
108
|
+
if (!this.running) { // received data after it was closed
|
|
118
109
|
return;
|
|
119
110
|
}
|
|
120
111
|
/*
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
112
|
+
This listener seems to get called with only one opus frame most of the time.
|
|
113
|
+
Though it happens regularly that another or many more frames get appended.
|
|
114
|
+
This causes some problems as opus frames don't contain their data length in the "header".
|
|
115
|
+
Opus relies on the container format to specify the length of the frame.
|
|
116
|
+
Although sometimes multiple opus frames are squashed together the decoder seems to be able
|
|
117
|
+
to handle that as it just creates a not very noticeable distortion.
|
|
118
|
+
If we would want to make this perfect we would need to write a nodejs c++ submodule or something
|
|
119
|
+
to interface directly with gstreamer api.
|
|
120
|
+
*/
|
|
121
|
+
this.frameHandler({
|
|
131
122
|
data: data,
|
|
132
123
|
rms: 0.25, // only way currently to extract rms from gstreamer is by interfacing with the api directly (nodejs c++ submodule could be a solution)
|
|
133
124
|
});
|
|
134
125
|
});
|
|
135
|
-
this.process.stderr
|
|
126
|
+
this.process.stderr?.on("data", data => {
|
|
136
127
|
debug("GStreamer process reports the following error: " + String(data));
|
|
137
128
|
});
|
|
138
|
-
this.process.on("exit",
|
|
129
|
+
this.process.on("exit", (code, signal) => {
|
|
139
130
|
if (signal !== "SIGTERM") { // if we receive SIGTERM, process exited gracefully (we stopped it)
|
|
140
131
|
debug("GStreamer process unexpectedly exited with code %d (signal: %s)", code, signal);
|
|
141
|
-
|
|
132
|
+
this.errorHandler(5 /* HDSProtocolSpecificErrorReason.UNEXPECTED_FAILURE */);
|
|
142
133
|
}
|
|
143
134
|
});
|
|
144
|
-
}
|
|
145
|
-
|
|
135
|
+
}
|
|
136
|
+
stopAudioProduction() {
|
|
146
137
|
if (this.running) {
|
|
147
138
|
this.process.kill("SIGTERM");
|
|
148
139
|
this.running = false;
|
|
149
140
|
}
|
|
150
141
|
this.process = undefined;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
}());
|
|
142
|
+
}
|
|
143
|
+
}
|
|
154
144
|
exports.GStreamerAudioProducer = GStreamerAudioProducer;
|
|
155
145
|
//# sourceMappingURL=gstreamer-audioProducer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gstreamer-audioProducer.js","sourceRoot":"","sources":["../../src/accessories/gstreamer-audioProducer.ts"],"names":[],"mappings":";;;;AAAA,
|
|
1
|
+
{"version":3,"file":"gstreamer-audioProducer.js","sourceRoot":"","sources":["../../src/accessories/gstreamer-audioProducer.ts"],"names":[],"mappings":";;;;AAAA,4DAA4B;AAC5B,iDAAoD;AACpD,0DAAgC;AAYhC,MAAM,KAAK,GAAG,IAAA,eAAW,EAAC,6BAA6B,CAAC,CAAC;AAEzD,IAAW,SAGV;AAHD,WAAW,SAAS;IAChB,kDAAc,CAAA;IACd,8CAAY,CAAA;AAChB,CAAC,EAHU,SAAS,KAAT,SAAS,QAGnB;AAED,IAAW,SAOV;AAPD,WAAW,SAAS;IAChB,0DAAkB,CAAA;IAClB,0DAAkB,CAAA;IAClB,sDAAgB,CAAA;IAChB,kEAAsB,CAAA;IACtB,sDAAgB,CAAA;IAChB,6CAAY,CAAA;AAChB,CAAC,EAPU,SAAS,KAAT,SAAS,QAOnB;AAED,IAAW,WAGV;AAHD,WAAW,WAAW;IAClB,qDAAY,CAAA;IACZ,qDAAY,CAAA;AAChB,CAAC,EAHU,WAAW,KAAX,WAAW,QAGrB;AAMD;;;;;;;;;GASG;AACH,MAAa,sBAAsB;IAEhB,OAAO,GAAqB;QAC3C,OAAO,EAAE,UAAU;KACpB,CAAC;IAEe,YAAY,CAAe;IAC3B,YAAY,CAAe;IAEpC,OAAO,CAAgB;IACvB,OAAO,GAAG,KAAK,CAAC;IAExB,YAAY,YAA0B,EAAE,YAA0B,EAAE,OAAmC;QACrG,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QAEjC,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,MAAM,CAAE,GAAG,EAAE,KAAK,CAAE,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACrD,kCAAkC;gBAClC,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;IAED,oBAAoB,CAAC,0BAAmD;QACtE,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,eAAe,GAAG,0BAA0B,CAAC,UAAU,CAAC;QAC9D,IAAA,gBAAM,EAAC,0BAA0B,CAAC,SAAS,iCAAyB,CAAC,CAAC;QAEtE,IAAI,WAAW,+BAAuB,CAAC;QACvC,QAAQ,eAAe,CAAC,OAAO,EAAE,CAAC;YAClC;gBACE,WAAW,+BAAuB,CAAC;gBACnC,MAAM;YACR;gBACE,WAAW,+BAAuB,CAAC;gBACnC,MAAM;QACR,CAAC;QAED,IAAI,SAAS,uCAA4B,CAAC;QAC1C,QAAQ,eAAe,CAAC,UAAU,EAAE,CAAC;YACrC;gBACE,SAAS,mCAAwB,CAAC;gBAClC,MAAM;YACR;gBACE,SAAS,iCAAsB,CAAC;gBAChC,MAAM;YACR;gBACE,SAAS,uCAA4B,CAAC;gBACtC,MAAM;QACR,CAAC;QAED,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC;QAE3C,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,MAAM,IAAI,GAAG,KAAK;YACV,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,KAAK;YAChD,wDAAwD;YACxD,2FAA2F;YAC3F,UAAU;YACN,eAAe,GAAG,WAAW,GAAG,GAAG;YACnC,gBAAgB;YAChB,aAAa,6BAAkB,GAAG,GAAG;YACrC,YAAY,GAAG,SAAS,GAAG,GAAG;YAC9B,aAAa,GAAG,UAAU,GAAG,KAAK;YACtC,aAAa,CAAC;QAEtB,IAAI,CAAC,OAAO,GAAG,IAAA,qBAAK,EAAC,gBAAgB,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC9E,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;YAC/B,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,KAAK,CAAC,qCAAqC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC7D,IAAI,CAAC,YAAY,kDAA0C,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,oCAAoC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE;YAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,oCAAoC;gBACvD,OAAO;YACT,CAAC;YAED;;;;;;;;;qBASS;YAET,IAAI,CAAC,YAAY,CAAC;gBAChB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,IAAI,EAAE,sIAAsI;aAClJ,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE;YACrC,KAAK,CAAC,iDAAiD,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACvC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC,CAAC,mEAAmE;gBAC7F,KAAK,CAAC,iEAAiE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBACvF,IAAI,CAAC,YAAY,2DAAmD,CAAC;YACvE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,mBAAmB;QACjB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,IAAI,CAAC,OAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAC7B,CAAC;QAED,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;IAC3B,CAAC;CAEF;AA1HD,wDA0HC"}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.MANUFACTURER_CTYPE = exports.LOGS_CTYPE = exports.LOCK_MECHANISM_LAST_KNOWN_ACTION_CTYPE = exports.LOCK_MANAGEMENT_CONTROL_POINT_CTYPE = exports.LOCK_MANAGEMENT_AUTO_SECURE_TIMEOUT_CTYPE = exports.IDENTIFY_CTYPE = exports.HUE_CTYPE = exports.HEATING_THRESHOLD_CTYPE = exports.CURRENT_TEMPERATURE_CTYPE = exports.CURRENT_RELATIVE_HUMIDITY_CTYPE = exports.CURRENT_LOCK_MECHANISM_STATE_CTYPE = exports.CURRENT_DOOR_STATE_CTYPE = exports.CONTACT_SENSOR_STATE_CTYPE = exports.COOLING_THRESHOLD_CTYPE = exports.BATTERY_LEVEL_CTYPE = exports.BRIGHTNESS_CTYPE = exports.AUDIO_FEEDBACK_CTYPE = exports.ADMIN_ONLY_ACCESS_CTYPE = exports.ALARM_TARGET_STATE_CTYPE = exports.ALARM_CURRENT_STATE_CTYPE = exports.TEMPERATURE_SENSOR_STYPE = exports.HUMIDITY_SENSOR_STYPE = exports.MOTION_SENSOR_STYPE = exports.CONTACT_SENSOR_STYPE = exports.OCCUPANCY_SENSOR_STYPE = exports.WINDOW_COVERING_STYPE = exports.ALARM_STYPE = exports.LOCK_MANAGEMENT_STYPE = exports.LOCK_MECHANISM_STYPE = exports.OUTLET_STYPE = exports.FAN_STYPE = exports.ACCESSORY_INFORMATION_STYPE = exports.GARAGE_DOOR_OPENER_STYPE = exports.THERMOSTAT_STYPE = exports.SWITCH_STYPE = exports.LIGHTBULB_STYPE = exports.PROGRAMMABLE_SWITCH_TCTYPE = exports.WINDOW_COVERING_TCTYPE = exports.WINDOW_TCTYPE = exports.DOOR_TCTYPE = exports.ALARM_SYSTEM_TCTYPE = exports.SENSOR_TCTYPE = exports.THERMOSTAT_TCTYPE = exports.SWITCH_TCTYPE = exports.OUTLET_TCTYPE = exports.DOOR_LOCK_TCTYPE = exports.LIGHTBULB_TCTYPE = exports.GARAGE_DOOR_OPENER_TCTYPE = exports.FAN_TCTYPE = exports.OTHER_TCTYPE = void 0;
|
|
5
5
|
exports.TARGETHEATINGCOOLING_CTYPE = exports.CURRENTHEATINGCOOLING_CTYPE = exports.WINDOW_COVERING_OPERATION_STATE_CTYPE = exports.WINDOW_COVERING_CURRENT_POSITION_CTYPE = exports.WINDOW_COVERING_TARGET_POSITION_CTYPE = exports.VERSION_CTYPE = exports.TEMPERATURE_UNITS_CTYPE = exports.TARGET_TEMPERATURE_CTYPE = exports.TARGET_RELATIVE_HUMIDITY_CTYPE = exports.TARGET_LOCK_MECHANISM_STATE_CTYPE = exports.TARGET_DOORSTATE_CTYPE = exports.STATUS_FAULT_CTYPE = exports.STATUS_LOW_BATTERY_CTYPE = exports.FIRMWARE_REVISION_CTYPE = exports.SERIAL_NUMBER_CTYPE = exports.SATURATION_CTYPE = exports.ROTATION_SPEED_CTYPE = exports.ROTATION_DIRECTION_CTYPE = exports.PROGRAMMABLE_SWITCH_OUTPUT_STATE_CTYPE = exports.PROGRAMMABLE_SWITCH_SWITCH_EVENT_CTYPE = exports.POWER_STATE_CTYPE = exports.OCCUPANCY_DETECTED_CTYPE = exports.OUTLET_IN_USE_CTYPE = exports.OBSTRUCTION_DETECTED_CTYPE = exports.NAME_CTYPE = exports.MOTION_DETECTED_CTYPE = exports.MODEL_CTYPE = void 0;
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
const stPre = "000000";
|
|
7
|
+
const stPost = "-0000-1000-8000-0026BB765291";
|
|
8
8
|
//HomeKitTransportCategoryTypes
|
|
9
9
|
exports.OTHER_TCTYPE = 1;
|
|
10
10
|
exports.FAN_TCTYPE = 3;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/accessories/types.ts"],"names":[],"mappings":";AAAA,sBAAsB;;;;AAEtB,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/accessories/types.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,5 @@
|
|
|
1
1
|
import "source-map-support/register";
|
|
2
2
|
import "./lib/definitions";
|
|
3
|
-
/**
|
|
4
|
-
* @group Utils
|
|
5
|
-
*/
|
|
6
|
-
export * as AccessoryLoader from "./lib/AccessoryLoader";
|
|
7
3
|
/**
|
|
8
4
|
* @group Utils
|
|
9
5
|
*/
|
|
@@ -13,7 +9,6 @@ export * from "./lib/Accessory";
|
|
|
13
9
|
export * from "./lib/Bridge";
|
|
14
10
|
export * from "./lib/Service";
|
|
15
11
|
export * from "./lib/Characteristic";
|
|
16
|
-
export * from "./lib/AccessoryLoader";
|
|
17
12
|
export * from "./lib/camera";
|
|
18
13
|
export * from "./lib/tv/AccessControlManagement";
|
|
19
14
|
export * from "./lib/HAPServer";
|
|
@@ -39,15 +34,6 @@ export * as LegacyTypes from "./accessories/types";
|
|
|
39
34
|
* @group Utils
|
|
40
35
|
*/
|
|
41
36
|
export declare function HAPLibraryVersion(): string;
|
|
42
|
-
/**
|
|
43
|
-
*
|
|
44
|
-
* @param {string} storagePath
|
|
45
|
-
* @deprecated the need to manually initialize the internal storage was removed. If you want to set a custom
|
|
46
|
-
* storage path location, please use {@link HAPStorage.setCustomStoragePath} directly.
|
|
47
|
-
*
|
|
48
|
-
* @group Utils
|
|
49
|
-
*/
|
|
50
|
-
export declare function init(storagePath?: string): void;
|
|
51
37
|
import * as Services from "./lib/definitions/ServiceDefinitions";
|
|
52
38
|
import * as Characteristics from "./lib/definitions/CharacteristicDefinitions";
|
|
53
39
|
/**
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,6BAA6B,CAAC;AACrC,OAAO,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,6BAA6B,CAAC;AACrC,OAAO,mBAAmB,CAAC;AAG3B;;GAEG;AACH,OAAO,KAAK,IAAI,MAAM,iBAAiB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,kCAAkC,CAAC;AACjD,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,2BAA2B,CAAC;AAE1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AAEvC,cAAc,SAAS,CAAC;AACxB;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,qBAAqB,CAAC;AAInD;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAI1C;AAOD,OAAO,KAAK,QAAQ,MAAM,sCAAsC,CAAC;AACjE,OAAO,KAAK,eAAe,MAAM,6CAA6C,CAAC;AAE/E;;;;;;GAMG;AACH,MAAM,CAAC,OAAO,WAAW,YAAY,CAAC;IACpC,OAAO,EACL,QAAQ,EACR,eAAe,GAChB,CAAC;CACH"}
|
package/dist/index.js
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
|
|
3
|
+
exports.LegacyTypes = exports.uuid = void 0;
|
|
4
|
+
exports.HAPLibraryVersion = HAPLibraryVersion;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
5
6
|
require("source-map-support/register"); // registering node-source-map-support for typescript stack traces
|
|
6
7
|
require("./lib/definitions"); // must be loaded before Characteristic and Service class
|
|
7
|
-
|
|
8
|
-
var HAPStorage_1 = require("./lib/model/HAPStorage");
|
|
9
|
-
/**
|
|
10
|
-
* @group Utils
|
|
11
|
-
*/
|
|
12
|
-
exports.AccessoryLoader = tslib_1.__importStar(require("./lib/AccessoryLoader"));
|
|
8
|
+
const debug_1 = tslib_1.__importDefault(require("debug"));
|
|
13
9
|
/**
|
|
14
10
|
* @group Utils
|
|
15
11
|
*/
|
|
@@ -19,7 +15,6 @@ tslib_1.__exportStar(require("./lib/Accessory"), exports);
|
|
|
19
15
|
tslib_1.__exportStar(require("./lib/Bridge"), exports);
|
|
20
16
|
tslib_1.__exportStar(require("./lib/Service"), exports);
|
|
21
17
|
tslib_1.__exportStar(require("./lib/Characteristic"), exports);
|
|
22
|
-
tslib_1.__exportStar(require("./lib/AccessoryLoader"), exports);
|
|
23
18
|
tslib_1.__exportStar(require("./lib/camera"), exports);
|
|
24
19
|
tslib_1.__exportStar(require("./lib/tv/AccessControlManagement"), exports);
|
|
25
20
|
tslib_1.__exportStar(require("./lib/HAPServer"), exports);
|
|
@@ -38,7 +33,7 @@ tslib_1.__exportStar(require("./types"), exports);
|
|
|
38
33
|
* @group Utils
|
|
39
34
|
*/
|
|
40
35
|
exports.LegacyTypes = tslib_1.__importStar(require("./accessories/types"));
|
|
41
|
-
|
|
36
|
+
const debug = (0, debug_1.default)("HAP-NodeJS:Advertiser");
|
|
42
37
|
/**
|
|
43
38
|
* This method can be used to retrieve the current running library version of the HAP-NodeJS framework.
|
|
44
39
|
* @returns The SemVer version string.
|
|
@@ -47,31 +42,11 @@ var debug = (0, debug_1.default)("HAP-NodeJS:Advertiser");
|
|
|
47
42
|
*/
|
|
48
43
|
function HAPLibraryVersion() {
|
|
49
44
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
50
|
-
|
|
45
|
+
const packageJson = require("../package.json");
|
|
51
46
|
return packageJson.version;
|
|
52
47
|
}
|
|
53
|
-
exports.HAPLibraryVersion = HAPLibraryVersion;
|
|
54
48
|
function printInit() {
|
|
55
49
|
debug("Initializing HAP-NodeJS v%s ...", HAPLibraryVersion());
|
|
56
50
|
}
|
|
57
51
|
printInit();
|
|
58
|
-
/**
|
|
59
|
-
*
|
|
60
|
-
* @param {string} storagePath
|
|
61
|
-
* @deprecated the need to manually initialize the internal storage was removed. If you want to set a custom
|
|
62
|
-
* storage path location, please use {@link HAPStorage.setCustomStoragePath} directly.
|
|
63
|
-
*
|
|
64
|
-
* @group Utils
|
|
65
|
-
*/
|
|
66
|
-
function init(storagePath) {
|
|
67
|
-
console.log("DEPRECATED: The need to manually initialize HAP (by calling the init method) was removed. " +
|
|
68
|
-
"If you want to set a custom storage path location, please ust HAPStorage.setCustomStoragePath directly. " +
|
|
69
|
-
"This method will be removed in the next major update!");
|
|
70
|
-
if (storagePath) {
|
|
71
|
-
HAPStorage_1.HAPStorage.setCustomStoragePath(storagePath);
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
exports.init = init;
|
|
75
|
-
var Services = tslib_1.__importStar(require("./lib/definitions/ServiceDefinitions"));
|
|
76
|
-
var Characteristics = tslib_1.__importStar(require("./lib/definitions/CharacteristicDefinitions"));
|
|
77
52
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AA0CA,8CAIC;;AA9CD,uCAAqC,CAAC,kEAAkE;AACxG,6BAA2B,CAAC,yDAAyD;AACrF,0DAAgC;AAEhC;;GAEG;AACH,gEAAwC;AACxC,iEAAuC;AACvC,0DAAgC;AAChC,uDAA6B;AAC7B,wDAA8B;AAC9B,+DAAqC;AACrC,uDAA6B;AAC7B,2EAAiD;AACjD,0DAAgC;AAChC,2DAAiC;AACjC,2DAAiC;AACjC,oEAA0C;AAE1C,2DAAiC;AACjC,0DAAgC;AAChC,yDAA+B;AAC/B,oEAA0C;AAC1C,iEAAuC;AACvC,0DAAgC;AAChC,iEAAuC;AAEvC,kDAAwB;AACxB;;GAEG;AACH,2EAAmD;AAEnD,MAAM,KAAK,GAAG,IAAA,eAAW,EAAC,uBAAuB,CAAC,CAAC;AAEnD;;;;;GAKG;AACH,SAAgB,iBAAiB;IAC/B,8DAA8D;IAC9D,MAAM,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/C,OAAO,WAAW,CAAC,OAAO,CAAC;AAC7B,CAAC;AAED,SAAS,SAAS;IAChB,KAAK,CAAC,iCAAiC,EAAE,iBAAiB,EAAE,CAAC,CAAC;AAChE,CAAC;AACD,SAAS,EAAE,CAAC"}
|
package/dist/internal-types.d.ts
CHANGED
|
@@ -22,7 +22,7 @@ export declare function consideredTrue(input: string | null): boolean;
|
|
|
22
22
|
*/
|
|
23
23
|
export declare const enum TLVValues {
|
|
24
24
|
REQUEST_TYPE = 0,
|
|
25
|
-
METHOD = 0
|
|
25
|
+
METHOD = 0,// (match the terminology of the spec sheet but keep backwards compatibility with entry above)
|
|
26
26
|
USERNAME = 1,
|
|
27
27
|
IDENTIFIER = 1,
|
|
28
28
|
SALT = 2,
|
|
@@ -33,10 +33,10 @@ export declare const enum TLVValues {
|
|
|
33
33
|
STATE = 6,
|
|
34
34
|
ERROR_CODE = 7,
|
|
35
35
|
RETRY_DELAY = 8,
|
|
36
|
-
CERTIFICATE = 9
|
|
36
|
+
CERTIFICATE = 9,// x.509 certificate
|
|
37
37
|
PROOF = 10,
|
|
38
|
-
SIGNATURE = 10
|
|
39
|
-
PERMISSIONS = 11,
|
|
38
|
+
SIGNATURE = 10,// apple authentication coprocessor
|
|
39
|
+
PERMISSIONS = 11,// None (0x00): regular user, 0x01: Admin (able to add/remove/list pairings)
|
|
40
40
|
FRAGMENT_DATA = 12,
|
|
41
41
|
FRAGMENT_LAST = 13,
|
|
42
42
|
SEPARATOR = 255
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal-types.d.ts","sourceRoot":"","sources":["../src/internal-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,+BAA+B,EAAE,CAAC;CACpD;AAED;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAM5D;AAED;;GAEG;AACH,0BAAkB,SAAS;IAEzB,YAAY,IAAO;
|
|
1
|
+
{"version":3,"file":"internal-types.d.ts","sourceRoot":"","sources":["../src/internal-types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,+BAA+B,EAAE,CAAC;CACpD;AAED;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAM5D;AAED;;GAEG;AACH,0BAAkB,SAAS;IAEzB,YAAY,IAAO;IAEnB,MAAM,IAAO,CAAE,8FAA8F;IAC7G,QAAQ,IAAO;IAEf,UAAU,IAAO;IACjB,IAAI,IAAO;IACX,UAAU,IAAO;IACjB,cAAc,IAAO;IACrB,cAAc,IAAO;IACrB,YAAY,IAAO;IAEnB,KAAK,IAAO;IACZ,UAAU,IAAO;IACjB,WAAW,IAAO;IAClB,WAAW,IAAO,CAAE,oBAAoB;IACxC,KAAK,KAAO;IAEZ,SAAS,KAAO,CAAG,mCAAmC;IACtD,WAAW,KAAO,CAAE,4EAA4E;IAChG,aAAa,KAAO;IACpB,aAAa,KAAO;IACpB,SAAS,MAAQ;CAClB;AAED;;GAEG;AACH,0BAAkB,WAAW;IAE3B,UAAU,IAAO;IACjB,oBAAoB,IAAO;IAC3B,WAAW,IAAO;IAClB,WAAW,IAAO;IAClB,cAAc,IAAO;IACrB,aAAa,IAAO;CACrB;AAED;;;;GAIG;AACH,0BAAkB,aAAa;IAC7B,EAAE,IAAO;IACT,EAAE,IAAO;IACT,EAAE,IAAO;IACT,EAAE,IAAO;IACT,EAAE,IAAO;IACT,EAAE,IAAO;CACV;AAED;;GAEG;AACH,0BAAkB,YAAY;IAC5B,YAAY,6BAA6B;IACzC,QAAQ,yBAAyB;IACjC,UAAU,eAAe;CAC1B"}
|
package/dist/internal-types.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.HAPMimeTypes = exports.PairingStates = exports.PairMethods = exports.TLVValues =
|
|
3
|
+
exports.HAPMimeTypes = exports.PairingStates = exports.PairMethods = exports.TLVValues = void 0;
|
|
4
|
+
exports.consideredTrue = consideredTrue;
|
|
4
5
|
/**
|
|
5
6
|
* @group Utils
|
|
6
7
|
*/
|
|
@@ -10,7 +11,6 @@ function consideredTrue(input) {
|
|
|
10
11
|
}
|
|
11
12
|
return input === "true" || input === "1";
|
|
12
13
|
}
|
|
13
|
-
exports.consideredTrue = consideredTrue;
|
|
14
14
|
/**
|
|
15
15
|
* @group HAP Accessory Server
|
|
16
16
|
*/
|
|
@@ -18,25 +18,29 @@ var TLVValues;
|
|
|
18
18
|
(function (TLVValues) {
|
|
19
19
|
// noinspection JSUnusedGlobalSymbols
|
|
20
20
|
TLVValues[TLVValues["REQUEST_TYPE"] = 0] = "REQUEST_TYPE";
|
|
21
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
21
22
|
TLVValues[TLVValues["METHOD"] = 0] = "METHOD";
|
|
22
23
|
TLVValues[TLVValues["USERNAME"] = 1] = "USERNAME";
|
|
24
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
23
25
|
TLVValues[TLVValues["IDENTIFIER"] = 1] = "IDENTIFIER";
|
|
24
26
|
TLVValues[TLVValues["SALT"] = 2] = "SALT";
|
|
25
27
|
TLVValues[TLVValues["PUBLIC_KEY"] = 3] = "PUBLIC_KEY";
|
|
26
28
|
TLVValues[TLVValues["PASSWORD_PROOF"] = 4] = "PASSWORD_PROOF";
|
|
27
29
|
TLVValues[TLVValues["ENCRYPTED_DATA"] = 5] = "ENCRYPTED_DATA";
|
|
28
30
|
TLVValues[TLVValues["SEQUENCE_NUM"] = 6] = "SEQUENCE_NUM";
|
|
31
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
29
32
|
TLVValues[TLVValues["STATE"] = 6] = "STATE";
|
|
30
33
|
TLVValues[TLVValues["ERROR_CODE"] = 7] = "ERROR_CODE";
|
|
31
34
|
TLVValues[TLVValues["RETRY_DELAY"] = 8] = "RETRY_DELAY";
|
|
32
35
|
TLVValues[TLVValues["CERTIFICATE"] = 9] = "CERTIFICATE";
|
|
33
36
|
TLVValues[TLVValues["PROOF"] = 10] = "PROOF";
|
|
37
|
+
// eslint-disable-next-line @typescript-eslint/no-duplicate-enum-values
|
|
34
38
|
TLVValues[TLVValues["SIGNATURE"] = 10] = "SIGNATURE";
|
|
35
39
|
TLVValues[TLVValues["PERMISSIONS"] = 11] = "PERMISSIONS";
|
|
36
40
|
TLVValues[TLVValues["FRAGMENT_DATA"] = 12] = "FRAGMENT_DATA";
|
|
37
41
|
TLVValues[TLVValues["FRAGMENT_LAST"] = 13] = "FRAGMENT_LAST";
|
|
38
42
|
TLVValues[TLVValues["SEPARATOR"] = 255] = "SEPARATOR"; // Zero-length TLV that separates different TLVs in a list.
|
|
39
|
-
})(TLVValues
|
|
43
|
+
})(TLVValues || (exports.TLVValues = TLVValues = {}));
|
|
40
44
|
/**
|
|
41
45
|
* @group HAP Accessory Server
|
|
42
46
|
*/
|
|
@@ -49,7 +53,7 @@ var PairMethods;
|
|
|
49
53
|
PairMethods[PairMethods["ADD_PAIRING"] = 3] = "ADD_PAIRING";
|
|
50
54
|
PairMethods[PairMethods["REMOVE_PAIRING"] = 4] = "REMOVE_PAIRING";
|
|
51
55
|
PairMethods[PairMethods["LIST_PAIRINGS"] = 5] = "LIST_PAIRINGS";
|
|
52
|
-
})(PairMethods
|
|
56
|
+
})(PairMethods || (exports.PairMethods = PairMethods = {}));
|
|
53
57
|
/**
|
|
54
58
|
* Pairing states (pair-setup or pair-verify). Encoded in {@link TLVValues.SEQUENCE_NUM}.
|
|
55
59
|
*
|
|
@@ -63,7 +67,7 @@ var PairingStates;
|
|
|
63
67
|
PairingStates[PairingStates["M4"] = 4] = "M4";
|
|
64
68
|
PairingStates[PairingStates["M5"] = 5] = "M5";
|
|
65
69
|
PairingStates[PairingStates["M6"] = 6] = "M6";
|
|
66
|
-
})(PairingStates
|
|
70
|
+
})(PairingStates || (exports.PairingStates = PairingStates = {}));
|
|
67
71
|
/**
|
|
68
72
|
* @group HAP Accessory Server
|
|
69
73
|
*/
|
|
@@ -72,5 +76,5 @@ var HAPMimeTypes;
|
|
|
72
76
|
HAPMimeTypes["PAIRING_TLV8"] = "application/pairing+tlv8";
|
|
73
77
|
HAPMimeTypes["HAP_JSON"] = "application/hap+json";
|
|
74
78
|
HAPMimeTypes["IMAGE_JPEG"] = "image/jpeg";
|
|
75
|
-
})(HAPMimeTypes
|
|
79
|
+
})(HAPMimeTypes || (exports.HAPMimeTypes = HAPMimeTypes = {}));
|
|
76
80
|
//# sourceMappingURL=internal-types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal-types.js","sourceRoot":"","sources":["../src/internal-types.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"internal-types.js","sourceRoot":"","sources":["../src/internal-types.ts"],"names":[],"mappings":";;;AAqBA,wCAMC;AATD;;GAEG;AACH,SAAgB,cAAc,CAAC,KAAoB;IACjD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,IAAkB,SAyBjB;AAzBD,WAAkB,SAAS;IACzB,qCAAqC;IACrC,yDAAmB,CAAA;IACnB,uEAAuE;IACvE,6CAAa,CAAA;IACb,iDAAe,CAAA;IACf,uEAAuE;IACvE,qDAAiB,CAAA;IACjB,yCAAW,CAAA;IACX,qDAAiB,CAAA;IACjB,6DAAqB,CAAA;IACrB,6DAAqB,CAAA;IACrB,yDAAmB,CAAA;IACnB,uEAAuE;IACvE,2CAAY,CAAA;IACZ,qDAAiB,CAAA;IACjB,uDAAkB,CAAA;IAClB,uDAAkB,CAAA;IAClB,4CAAY,CAAA;IACZ,uEAAuE;IACvE,oDAAgB,CAAA;IAChB,wDAAkB,CAAA;IAClB,4DAAoB,CAAA;IACpB,4DAAoB,CAAA;IACpB,qDAAiB,CAAA,CAAC,2DAA2D;AAC/E,CAAC,EAzBiB,SAAS,yBAAT,SAAS,QAyB1B;AAED;;GAEG;AACH,IAAkB,WAQjB;AARD,WAAkB,WAAW;IAC3B,qCAAqC;IACrC,yDAAiB,CAAA;IACjB,6EAA2B,CAAA;IAC3B,2DAAkB,CAAA;IAClB,2DAAkB,CAAA;IAClB,iEAAqB,CAAA;IACrB,+DAAoB,CAAA;AACtB,CAAC,EARiB,WAAW,2BAAX,WAAW,QAQ5B;AAED;;;;GAIG;AACH,IAAkB,aAOjB;AAPD,WAAkB,aAAa;IAC7B,6CAAS,CAAA;IACT,6CAAS,CAAA;IACT,6CAAS,CAAA;IACT,6CAAS,CAAA;IACT,6CAAS,CAAA;IACT,6CAAS,CAAA;AACX,CAAC,EAPiB,aAAa,6BAAb,aAAa,QAO9B;AAED;;GAEG;AACH,IAAkB,YAIjB;AAJD,WAAkB,YAAY;IAC5B,yDAAyC,CAAA;IACzC,iDAAiC,CAAA;IACjC,yCAAyB,CAAA;AAC3B,CAAC,EAJiB,YAAY,4BAAZ,YAAY,QAI7B"}
|