hap-nodejs 1.0.0-alpha.23 → 1.0.0-alpha.24
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/dist/BridgedCore.d.ts +2 -0
- package/dist/BridgedCore.d.ts.map +1 -0
- package/dist/BridgedCore.js +42 -0
- package/dist/BridgedCore.js.map +1 -0
- package/dist/Core.d.ts +2 -0
- package/dist/Core.d.ts.map +1 -0
- package/dist/Core.js +49 -0
- package/dist/Core.js.map +1 -0
- 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 +292 -373
- 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 +26 -26
- 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 +36 -47
- 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.js +5 -5
- package/dist/index.js.map +1 -1
- package/dist/lib/Accessory.js +779 -1087
- package/dist/lib/Accessory.js.map +1 -1
- package/dist/lib/AccessoryLoader.js +40 -40
- package/dist/lib/AccessoryLoader.js.map +1 -1
- package/dist/lib/Advertiser.js +392 -524
- 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.js +1393 -497
- package/dist/lib/Characteristic.js.map +1 -1
- package/dist/lib/HAPServer.js +215 -265
- package/dist/lib/HAPServer.js.map +1 -1
- package/dist/lib/Service.js +486 -322
- package/dist/lib/Service.js.map +1 -1
- package/dist/lib/camera/Camera.js +14 -14
- package/dist/lib/camera/Camera.js.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.js +284 -257
- package/dist/lib/camera/RTPStreamManagement.js.map +1 -1
- package/dist/lib/camera/RecordingManagement.js +318 -381
- package/dist/lib/camera/RecordingManagement.js.map +1 -1
- package/dist/lib/camera/index.js +1 -1
- package/dist/lib/controller/AdaptiveLightingController.js +198 -209
- package/dist/lib/controller/AdaptiveLightingController.js.map +1 -1
- package/dist/lib/controller/CameraController.js +190 -249
- package/dist/lib/controller/CameraController.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.js +343 -401
- package/dist/lib/controller/RemoteController.js.map +1 -1
- package/dist/lib/controller/index.js +1 -1
- package/dist/lib/datastream/DataStreamManagement.js +56 -57
- package/dist/lib/datastream/DataStreamManagement.js.map +1 -1
- package/dist/lib/datastream/DataStreamParser.js +259 -304
- package/dist/lib/datastream/DataStreamParser.js.map +1 -1
- package/dist/lib/datastream/DataStreamServer.d.ts.map +1 -1
- package/dist/lib/datastream/DataStreamServer.js +252 -269
- package/dist/lib/datastream/DataStreamServer.js.map +1 -1
- package/dist/lib/datastream/index.js +1 -1
- package/dist/lib/definitions/CharacteristicDefinitions.js +1984 -2708
- package/dist/lib/definitions/CharacteristicDefinitions.js.map +1 -1
- package/dist/lib/definitions/ServiceDefinitions.js +818 -1035
- 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.js +29 -29
- package/dist/lib/definitions/generator-configuration.js.map +1 -1
- package/dist/lib/definitions/index.js +1 -1
- package/dist/lib/model/AccessoryInfo.js +101 -136
- 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.js +40 -44
- package/dist/lib/tv/AccessControlManagement.js.map +1 -1
- package/dist/lib/util/checkName.d.ts +2 -1
- package/dist/lib/util/checkName.d.ts.map +1 -1
- package/dist/lib/util/checkName.js +5 -10
- package/dist/lib/util/checkName.js.map +1 -1
- package/dist/lib/util/clone.js +5 -27
- 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.js +290 -387
- package/dist/lib/util/eventedhttp.js.map +1 -1
- package/dist/lib/util/hapCrypto.js +31 -32
- 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.js +32 -53
- package/dist/lib/util/net-utils.js.map +1 -1
- package/dist/lib/util/once.js +3 -8
- package/dist/lib/util/once.js.map +1 -1
- package/dist/lib/util/promise-utils.js +8 -13
- package/dist/lib/util/promise-utils.js.map +1 -1
- package/dist/lib/util/request-util.js +2 -3
- package/dist/lib/util/request-util.js.map +1 -1
- package/dist/lib/util/time.js +5 -5
- package/dist/lib/util/time.js.map +1 -1
- package/dist/lib/util/tlv.js +57 -75
- package/dist/lib/util/tlv.js.map +1 -1
- package/dist/lib/util/uuid.js +15 -19
- package/dist/lib/util/uuid.js.map +1 -1
- package/package.json +2 -2
package/dist/lib/util/tlv.js
CHANGED
|
@@ -15,25 +15,20 @@ exports.writeUInt16 = writeUInt16;
|
|
|
15
15
|
exports.readUInt16 = readUInt16;
|
|
16
16
|
exports.readVariableUIntLE = readVariableUIntLE;
|
|
17
17
|
exports.writeVariableUIntLE = writeVariableUIntLE;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
const tslib_1 = require("tslib");
|
|
19
|
+
const assert_1 = tslib_1.__importDefault(require("assert"));
|
|
20
|
+
const hapCrypto = tslib_1.__importStar(require("../util/hapCrypto"));
|
|
21
21
|
/**
|
|
22
22
|
* Type Length Value encoding/decoding, used by HAP as a wire format.
|
|
23
23
|
* https://en.wikipedia.org/wiki/Type-length-value
|
|
24
24
|
*/
|
|
25
|
-
|
|
25
|
+
const EMPTY_TLV_TYPE = 0x00; // and empty tlv with id 0 is usually used as delimiter for tlv lists
|
|
26
26
|
/**
|
|
27
27
|
* @group TLV8
|
|
28
28
|
*/
|
|
29
29
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
30
|
-
function encode(type, data) {
|
|
31
|
-
|
|
32
|
-
var args = [];
|
|
33
|
-
for (var _i = 2; _i < arguments.length; _i++) {
|
|
34
|
-
args[_i - 2] = arguments[_i];
|
|
35
|
-
}
|
|
36
|
-
var encodedTLVBuffers = [];
|
|
30
|
+
function encode(type, data, ...args) {
|
|
31
|
+
const encodedTLVBuffers = [];
|
|
37
32
|
// coerce data to Buffer if needed
|
|
38
33
|
if (typeof data === "number") {
|
|
39
34
|
data = Buffer.from([data]);
|
|
@@ -42,23 +37,13 @@ function encode(type, data) {
|
|
|
42
37
|
data = Buffer.from(data);
|
|
43
38
|
}
|
|
44
39
|
if (Array.isArray(data)) {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
if (!first) {
|
|
50
|
-
encodedTLVBuffers.push(Buffer.from([EMPTY_TLV_TYPE, 0])); // push delimiter
|
|
51
|
-
}
|
|
52
|
-
first = false;
|
|
53
|
-
encodedTLVBuffers.push(encode(type, entry));
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
57
|
-
finally {
|
|
58
|
-
try {
|
|
59
|
-
if (data_1_1 && !data_1_1.done && (_a = data_1.return)) _a.call(data_1);
|
|
40
|
+
let first = true;
|
|
41
|
+
for (const entry of data) {
|
|
42
|
+
if (!first) {
|
|
43
|
+
encodedTLVBuffers.push(Buffer.from([EMPTY_TLV_TYPE, 0])); // push delimiter
|
|
60
44
|
}
|
|
61
|
-
|
|
45
|
+
first = false;
|
|
46
|
+
encodedTLVBuffers.push(encode(type, entry));
|
|
62
47
|
}
|
|
63
48
|
if (first) { // we have a zero length array!
|
|
64
49
|
encodedTLVBuffers.push(Buffer.from([type, 0]));
|
|
@@ -68,8 +53,8 @@ function encode(type, data) {
|
|
|
68
53
|
encodedTLVBuffers.push(Buffer.concat([Buffer.from([type, data.length]), data]));
|
|
69
54
|
}
|
|
70
55
|
else { // otherwise it doesn't fit into one tlv entry, thus we push multiple
|
|
71
|
-
|
|
72
|
-
|
|
56
|
+
let leftBytes = data.length;
|
|
57
|
+
let currentIndex = 0;
|
|
73
58
|
for (; leftBytes > 0;) {
|
|
74
59
|
if (leftBytes >= 255) {
|
|
75
60
|
encodedTLVBuffers.push(Buffer.concat([Buffer.from([type, 0xFF]), data.slice(currentIndex, currentIndex + 255)]));
|
|
@@ -85,8 +70,8 @@ function encode(type, data) {
|
|
|
85
70
|
// do we have more arguments to encode?
|
|
86
71
|
if (args.length >= 2) {
|
|
87
72
|
// chop off the first two arguments which we already processed, and process the rest recursively
|
|
88
|
-
|
|
89
|
-
|
|
73
|
+
const [nextType, nextData, ...nextArgs] = args;
|
|
74
|
+
const remainingTLVBuffer = encode(nextType, nextData, ...nextArgs);
|
|
90
75
|
// append the remaining encoded arguments directly to the buffer
|
|
91
76
|
encodedTLVBuffers.push(remainingTLVBuffer);
|
|
92
77
|
}
|
|
@@ -105,15 +90,15 @@ function encode(type, data) {
|
|
|
105
90
|
*/
|
|
106
91
|
function decode(buffer) {
|
|
107
92
|
(0, assert_1.default)(buffer instanceof Buffer, "Illegal argument. tlv.decode() expects Buffer type!");
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
93
|
+
const objects = {};
|
|
94
|
+
let leftLength = buffer.length;
|
|
95
|
+
let currentIndex = 0;
|
|
111
96
|
for (; leftLength > 0;) {
|
|
112
|
-
|
|
113
|
-
|
|
97
|
+
const type = buffer[currentIndex];
|
|
98
|
+
const length = buffer[currentIndex + 1];
|
|
114
99
|
currentIndex += 2;
|
|
115
100
|
leftLength -= 2;
|
|
116
|
-
|
|
101
|
+
const data = buffer.slice(currentIndex, currentIndex + length);
|
|
117
102
|
if (objects[type]) {
|
|
118
103
|
objects[type] = Buffer.concat([objects[type], data]);
|
|
119
104
|
}
|
|
@@ -135,24 +120,24 @@ function decode(buffer) {
|
|
|
135
120
|
* @group TLV8
|
|
136
121
|
*/
|
|
137
122
|
function decodeWithLists(buffer) {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
123
|
+
const result = {};
|
|
124
|
+
let leftBytes = buffer.length;
|
|
125
|
+
let readIndex = 0;
|
|
126
|
+
let lastType = -1;
|
|
127
|
+
let lastLength = -1;
|
|
128
|
+
let lastItemWasDelimiter = false;
|
|
144
129
|
for (; leftBytes > 0;) {
|
|
145
|
-
|
|
146
|
-
|
|
130
|
+
const type = buffer.readUInt8(readIndex++);
|
|
131
|
+
const length = buffer.readUInt8(readIndex++);
|
|
147
132
|
leftBytes -= 2;
|
|
148
|
-
|
|
133
|
+
const data = buffer.slice(readIndex, readIndex + length);
|
|
149
134
|
readIndex += length;
|
|
150
135
|
leftBytes -= length;
|
|
151
136
|
if (type === 0 && length === 0) {
|
|
152
137
|
lastItemWasDelimiter = true;
|
|
153
138
|
continue;
|
|
154
139
|
}
|
|
155
|
-
|
|
140
|
+
const existing = result[type];
|
|
156
141
|
if (existing) { // there is already an item with the same type
|
|
157
142
|
if (lastItemWasDelimiter && lastType === type) { // list of tlv types
|
|
158
143
|
if (Array.isArray(existing)) {
|
|
@@ -165,7 +150,7 @@ function decodeWithLists(buffer) {
|
|
|
165
150
|
else if (lastType === type && lastLength === 255) { // tlv data got split into multiple entries as length exceeded 255
|
|
166
151
|
if (Array.isArray(existing)) {
|
|
167
152
|
// append to the last data blob in the array
|
|
168
|
-
|
|
153
|
+
const last = existing[existing.length - 1];
|
|
169
154
|
existing[existing.length - 1] = Buffer.concat([last, data]);
|
|
170
155
|
}
|
|
171
156
|
else {
|
|
@@ -173,7 +158,8 @@ function decodeWithLists(buffer) {
|
|
|
173
158
|
}
|
|
174
159
|
}
|
|
175
160
|
else {
|
|
176
|
-
throw new Error(
|
|
161
|
+
throw new Error(`Found duplicated tlv entry with type ${type} and length ${length} `
|
|
162
|
+
+ `(lastItemWasDelimiter: ${lastItemWasDelimiter}, lastType: ${lastType}, lastLength: ${lastLength})`);
|
|
177
163
|
}
|
|
178
164
|
}
|
|
179
165
|
else {
|
|
@@ -200,14 +186,14 @@ function decodeWithLists(buffer) {
|
|
|
200
186
|
* @group TLV8
|
|
201
187
|
*/
|
|
202
188
|
function decodeList(data, entryStartId) {
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
189
|
+
const objectsList = [];
|
|
190
|
+
let leftLength = data.length;
|
|
191
|
+
let currentIndex = 0;
|
|
192
|
+
let objects = undefined;
|
|
207
193
|
for (; leftLength > 0;) {
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
194
|
+
const type = data[currentIndex]; // T
|
|
195
|
+
const length = data[currentIndex + 1]; // L
|
|
196
|
+
const value = data.slice(currentIndex + 2, currentIndex + 2 + length); // V
|
|
211
197
|
if (type === entryStartId) { // we got the start of a new entry
|
|
212
198
|
if (objects !== undefined) { // save the previous entry
|
|
213
199
|
objectsList.push(objects);
|
|
@@ -237,11 +223,11 @@ function decodeList(data, entryStartId) {
|
|
|
237
223
|
* @group TLV8
|
|
238
224
|
*/
|
|
239
225
|
function writeUInt64(value) {
|
|
240
|
-
|
|
226
|
+
const float64 = new Float64Array(1);
|
|
241
227
|
float64[0] = value;
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
for (
|
|
228
|
+
const buffer = Buffer.alloc(float64.buffer.byteLength);
|
|
229
|
+
const view = new Uint8Array(float64.buffer);
|
|
230
|
+
for (let i = 0; i < buffer.length; i++) {
|
|
245
231
|
buffer[i] = view[i];
|
|
246
232
|
}
|
|
247
233
|
return buffer;
|
|
@@ -253,15 +239,14 @@ function writeUInt64(value) {
|
|
|
253
239
|
* @group TLV8
|
|
254
240
|
*/
|
|
255
241
|
function readUInt64(buffer) {
|
|
256
|
-
|
|
242
|
+
const float64 = new Float64Array(buffer);
|
|
257
243
|
return float64[0];
|
|
258
244
|
}
|
|
259
245
|
/**
|
|
260
246
|
* @group TLV8
|
|
261
247
|
*/
|
|
262
|
-
function readUInt64LE(buffer, offset) {
|
|
263
|
-
|
|
264
|
-
var low = buffer.readUInt32LE(offset);
|
|
248
|
+
function readUInt64LE(buffer, offset = 0) {
|
|
249
|
+
const low = buffer.readUInt32LE(offset);
|
|
265
250
|
// javascript doesn't allow to shift by 32(?), therefore we multiply here
|
|
266
251
|
return buffer.readUInt32LE(offset + 4) * 0x100000000 + low;
|
|
267
252
|
}
|
|
@@ -270,8 +255,7 @@ function readUInt64LE(buffer, offset) {
|
|
|
270
255
|
* @deprecated The method was named wrongfully and actually reads an UInt64 in **little endian** format.
|
|
271
256
|
* @group TLV8
|
|
272
257
|
*/
|
|
273
|
-
function readUInt64BE(buffer, offset) {
|
|
274
|
-
if (offset === void 0) { offset = 0; }
|
|
258
|
+
function readUInt64BE(buffer, offset = 0) {
|
|
275
259
|
return readUInt64LE(buffer, offset);
|
|
276
260
|
}
|
|
277
261
|
/**
|
|
@@ -279,7 +263,7 @@ function readUInt64BE(buffer, offset) {
|
|
|
279
263
|
* @group TLV8
|
|
280
264
|
*/
|
|
281
265
|
function writeUInt32(value) {
|
|
282
|
-
|
|
266
|
+
const buffer = Buffer.alloc(4);
|
|
283
267
|
buffer.writeUInt32LE(value, 0);
|
|
284
268
|
return buffer;
|
|
285
269
|
}
|
|
@@ -294,7 +278,7 @@ function readUInt32(buffer) {
|
|
|
294
278
|
* @group TLV8
|
|
295
279
|
*/
|
|
296
280
|
function writeFloat32LE(value) {
|
|
297
|
-
|
|
281
|
+
const buffer = Buffer.alloc(4);
|
|
298
282
|
buffer.writeFloatLE(value, 0);
|
|
299
283
|
return buffer;
|
|
300
284
|
}
|
|
@@ -303,7 +287,7 @@ function writeFloat32LE(value) {
|
|
|
303
287
|
* @group TLV8
|
|
304
288
|
*/
|
|
305
289
|
function writeUInt16(value) {
|
|
306
|
-
|
|
290
|
+
const buffer = Buffer.alloc(2);
|
|
307
291
|
buffer.writeUInt16LE(value, 0);
|
|
308
292
|
return buffer;
|
|
309
293
|
}
|
|
@@ -314,8 +298,7 @@ function writeUInt16(value) {
|
|
|
314
298
|
function readUInt16(buffer) {
|
|
315
299
|
return buffer.readUInt16LE(0);
|
|
316
300
|
}
|
|
317
|
-
function readVariableUIntLE(buffer, offset) {
|
|
318
|
-
if (offset === void 0) { offset = 0; }
|
|
301
|
+
function readVariableUIntLE(buffer, offset = 0) {
|
|
319
302
|
(0, assert_1.default)(offset === 0, "Can't define a offset different than 0!");
|
|
320
303
|
switch (buffer.length) {
|
|
321
304
|
case 1:
|
|
@@ -330,12 +313,11 @@ function readVariableUIntLE(buffer, offset) {
|
|
|
330
313
|
throw new Error("Can't read uint LE with length " + buffer.length);
|
|
331
314
|
}
|
|
332
315
|
}
|
|
333
|
-
function writeVariableUIntLE(number, offset) {
|
|
334
|
-
if (offset === void 0) { offset = 0; }
|
|
316
|
+
function writeVariableUIntLE(number, offset = 0) {
|
|
335
317
|
(0, assert_1.default)(number >= 0, "Can't encode a negative integer as unsigned integer");
|
|
336
318
|
(0, assert_1.default)(offset === 0, "Can't define a offset different than 0!");
|
|
337
319
|
if (number <= 255) {
|
|
338
|
-
|
|
320
|
+
const buffer = Buffer.alloc(1);
|
|
339
321
|
buffer.writeUInt8(number, offset);
|
|
340
322
|
return buffer;
|
|
341
323
|
}
|
|
@@ -346,7 +328,7 @@ function writeVariableUIntLE(number, offset) {
|
|
|
346
328
|
return writeUInt32(number);
|
|
347
329
|
}
|
|
348
330
|
else {
|
|
349
|
-
|
|
331
|
+
const buffer = Buffer.alloc(8);
|
|
350
332
|
hapCrypto.writeUInt64LE(number, buffer, offset);
|
|
351
333
|
return buffer;
|
|
352
334
|
}
|
package/dist/lib/util/tlv.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tlv.js","sourceRoot":"","sources":["../../../src/lib/util/tlv.ts"],"names":[],"mappings":";;AAmBA,wBAsDC;AAaD,wBA0BC;AAWD,0CAsDC;AAgBD,gCAwCC;AAOD,kCAWC;AAQD,gCAGC;AAKD,oCAIC;AAOD,oCAEC;AAMD,kCAMC;AAMD,gCAEC;AAKD,wCAIC;AAMD,kCAMC;AAMD,gCAEC;AAcD,gDAeC;AAiBD,kDAiBC;;AAxYD,
|
|
1
|
+
{"version":3,"file":"tlv.js","sourceRoot":"","sources":["../../../src/lib/util/tlv.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/util/uuid.js
CHANGED
|
@@ -7,16 +7,16 @@ exports.unparse = unparse;
|
|
|
7
7
|
exports.write = write;
|
|
8
8
|
exports.toShortForm = toShortForm;
|
|
9
9
|
exports.toLongForm = toLongForm;
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
const tslib_1 = require("tslib");
|
|
11
|
+
const crypto_1 = tslib_1.__importDefault(require("crypto"));
|
|
12
12
|
exports.BASE_UUID = "-0000-1000-8000-0026BB765291";
|
|
13
13
|
// http://stackoverflow.com/a/25951500/66673
|
|
14
14
|
function generate(data) {
|
|
15
|
-
|
|
15
|
+
const sha1sum = crypto_1.default.createHash("sha1");
|
|
16
16
|
sha1sum.update(data);
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
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) => {
|
|
20
20
|
i += 1;
|
|
21
21
|
switch (c) {
|
|
22
22
|
case "y":
|
|
@@ -27,12 +27,11 @@ function generate(data) {
|
|
|
27
27
|
}
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
|
-
|
|
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;
|
|
31
31
|
function isValid(UUID) {
|
|
32
32
|
return VALID_UUID_REGEX.test(UUID);
|
|
33
33
|
}
|
|
34
|
-
function unparse(buf, offset) {
|
|
35
|
-
if (offset === void 0) { offset = 0; }
|
|
34
|
+
function unparse(buf, offset = 0) {
|
|
36
35
|
if (typeof buf === "string" && isValid(buf)) {
|
|
37
36
|
/*
|
|
38
37
|
This check was added to fix backwards compatibility with the old style CameraSource API.
|
|
@@ -47,16 +46,15 @@ function unparse(buf, offset) {
|
|
|
47
46
|
*/
|
|
48
47
|
return buf;
|
|
49
48
|
}
|
|
50
|
-
|
|
49
|
+
let i = offset;
|
|
51
50
|
return buf.toString("hex", i, (i += 4)) + "-" +
|
|
52
51
|
buf.toString("hex", i, (i += 2)) + "-" +
|
|
53
52
|
buf.toString("hex", i, (i += 2)) + "-" +
|
|
54
53
|
buf.toString("hex", i, (i += 2)) + "-" +
|
|
55
54
|
buf.toString("hex", i, i + 6);
|
|
56
55
|
}
|
|
57
|
-
function write(uuid, buf, offset) {
|
|
58
|
-
|
|
59
|
-
var buffer = Buffer.from(uuid.replace(/-/g, ""), "hex");
|
|
56
|
+
function write(uuid, buf, offset = 0) {
|
|
57
|
+
const buffer = Buffer.from(uuid.replace(/-/g, ""), "hex");
|
|
60
58
|
if (buf) {
|
|
61
59
|
buffer.copy(buf, offset);
|
|
62
60
|
return buf;
|
|
@@ -65,9 +63,8 @@ function write(uuid, buf, offset) {
|
|
|
65
63
|
return buffer;
|
|
66
64
|
}
|
|
67
65
|
}
|
|
68
|
-
|
|
69
|
-
function toShortForm(uuid, base) {
|
|
70
|
-
if (base === void 0) { base = exports.BASE_UUID; }
|
|
66
|
+
const SHORT_FORM_REGEX = /^0*([0-9a-f]{1,8})-([0-9a-f]{4}-){3}[0-9a-f]{12}$/i;
|
|
67
|
+
function toShortForm(uuid, base = exports.BASE_UUID) {
|
|
71
68
|
if (!isValid(uuid)) {
|
|
72
69
|
throw new TypeError("uuid was not a valid UUID or short form UUID");
|
|
73
70
|
}
|
|
@@ -79,9 +76,8 @@ function toShortForm(uuid, base) {
|
|
|
79
76
|
}
|
|
80
77
|
return uuid.replace(SHORT_FORM_REGEX, "$1").toUpperCase();
|
|
81
78
|
}
|
|
82
|
-
|
|
83
|
-
function toLongForm(uuid, base) {
|
|
84
|
-
if (base === void 0) { base = exports.BASE_UUID; }
|
|
79
|
+
const VALID_SHORT_REGEX = /^[0-9a-f]{1,8}$/i;
|
|
80
|
+
function toLongForm(uuid, base = exports.BASE_UUID) {
|
|
85
81
|
if (isValid(uuid)) {
|
|
86
82
|
return uuid.toUpperCase();
|
|
87
83
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../../src/lib/util/uuid.ts"],"names":[],"mappings":";;;AAQA,4BAeC;AAID,0BAEC;AAyBD,0BAuBC;AAID,sBASC;AAID,kCAYC;AAID,gCAYC;;AA1HD,
|
|
1
|
+
{"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../../src/lib/util/uuid.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hap-nodejs",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.24",
|
|
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",
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"dependencies": {
|
|
55
55
|
"@homebridge/ciao": "^2.0.0-alpha.6",
|
|
56
56
|
"@homebridge/dbus-native": "^0.6.0",
|
|
57
|
-
"bonjour-hap": "^3.
|
|
57
|
+
"bonjour-hap": "^3.8.0",
|
|
58
58
|
"debug": "^4.3.5",
|
|
59
59
|
"fast-srp-hap": "^2.0.4",
|
|
60
60
|
"futoin-hkdf": "^1.5.3",
|