@tiktool/live 2.12.1 → 2.12.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +39 -28
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +36 -25
- package/dist/index.mjs.map +1 -1
- package/package.json +81 -78
package/dist/index.mjs
CHANGED
|
@@ -9,9 +9,9 @@ var __commonJS = (cb, mod) => function __require2() {
|
|
|
9
9
|
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
10
10
|
};
|
|
11
11
|
|
|
12
|
-
//
|
|
12
|
+
// node_modules/ms/index.js
|
|
13
13
|
var require_ms = __commonJS({
|
|
14
|
-
"
|
|
14
|
+
"node_modules/ms/index.js"(exports, module) {
|
|
15
15
|
"use strict";
|
|
16
16
|
var s = 1e3;
|
|
17
17
|
var m = s * 60;
|
|
@@ -126,9 +126,9 @@ var require_ms = __commonJS({
|
|
|
126
126
|
}
|
|
127
127
|
});
|
|
128
128
|
|
|
129
|
-
//
|
|
129
|
+
// node_modules/debug/src/common.js
|
|
130
130
|
var require_common = __commonJS({
|
|
131
|
-
"
|
|
131
|
+
"node_modules/debug/src/common.js"(exports, module) {
|
|
132
132
|
"use strict";
|
|
133
133
|
function setup(env) {
|
|
134
134
|
createDebug.debug = createDebug;
|
|
@@ -304,9 +304,9 @@ var require_common = __commonJS({
|
|
|
304
304
|
}
|
|
305
305
|
});
|
|
306
306
|
|
|
307
|
-
//
|
|
307
|
+
// node_modules/debug/src/browser.js
|
|
308
308
|
var require_browser = __commonJS({
|
|
309
|
-
"
|
|
309
|
+
"node_modules/debug/src/browser.js"(exports, module) {
|
|
310
310
|
"use strict";
|
|
311
311
|
exports.formatArgs = formatArgs;
|
|
312
312
|
exports.save = save;
|
|
@@ -475,9 +475,9 @@ var require_browser = __commonJS({
|
|
|
475
475
|
}
|
|
476
476
|
});
|
|
477
477
|
|
|
478
|
-
//
|
|
478
|
+
// ../../node_modules/has-flag/index.js
|
|
479
479
|
var require_has_flag = __commonJS({
|
|
480
|
-
"
|
|
480
|
+
"../../node_modules/has-flag/index.js"(exports, module) {
|
|
481
481
|
"use strict";
|
|
482
482
|
module.exports = (flag, argv = process.argv) => {
|
|
483
483
|
const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--";
|
|
@@ -488,9 +488,9 @@ var require_has_flag = __commonJS({
|
|
|
488
488
|
}
|
|
489
489
|
});
|
|
490
490
|
|
|
491
|
-
//
|
|
491
|
+
// ../../node_modules/supports-color/index.js
|
|
492
492
|
var require_supports_color = __commonJS({
|
|
493
|
-
"
|
|
493
|
+
"../../node_modules/supports-color/index.js"(exports, module) {
|
|
494
494
|
"use strict";
|
|
495
495
|
var os = __require("os");
|
|
496
496
|
var tty = __require("tty");
|
|
@@ -590,9 +590,9 @@ var require_supports_color = __commonJS({
|
|
|
590
590
|
}
|
|
591
591
|
});
|
|
592
592
|
|
|
593
|
-
//
|
|
593
|
+
// node_modules/debug/src/node.js
|
|
594
594
|
var require_node = __commonJS({
|
|
595
|
-
"
|
|
595
|
+
"node_modules/debug/src/node.js"(exports, module) {
|
|
596
596
|
"use strict";
|
|
597
597
|
var tty = __require("tty");
|
|
598
598
|
var util = __require("util");
|
|
@@ -765,9 +765,9 @@ var require_node = __commonJS({
|
|
|
765
765
|
}
|
|
766
766
|
});
|
|
767
767
|
|
|
768
|
-
//
|
|
768
|
+
// node_modules/debug/src/index.js
|
|
769
769
|
var require_src = __commonJS({
|
|
770
|
-
"
|
|
770
|
+
"node_modules/debug/src/index.js"(exports, module) {
|
|
771
771
|
"use strict";
|
|
772
772
|
if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) {
|
|
773
773
|
module.exports = require_browser();
|
|
@@ -777,9 +777,9 @@ var require_src = __commonJS({
|
|
|
777
777
|
}
|
|
778
778
|
});
|
|
779
779
|
|
|
780
|
-
//
|
|
780
|
+
// node_modules/agent-base/dist/helpers.js
|
|
781
781
|
var require_helpers = __commonJS({
|
|
782
|
-
"
|
|
782
|
+
"node_modules/agent-base/dist/helpers.js"(exports) {
|
|
783
783
|
"use strict";
|
|
784
784
|
var __createBinding = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
|
|
785
785
|
if (k2 === void 0) k2 = k;
|
|
@@ -847,9 +847,9 @@ var require_helpers = __commonJS({
|
|
|
847
847
|
}
|
|
848
848
|
});
|
|
849
849
|
|
|
850
|
-
//
|
|
850
|
+
// node_modules/agent-base/dist/index.js
|
|
851
851
|
var require_dist = __commonJS({
|
|
852
|
-
"
|
|
852
|
+
"node_modules/agent-base/dist/index.js"(exports) {
|
|
853
853
|
"use strict";
|
|
854
854
|
var __createBinding = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
|
|
855
855
|
if (k2 === void 0) k2 = k;
|
|
@@ -1003,9 +1003,9 @@ var require_dist = __commonJS({
|
|
|
1003
1003
|
}
|
|
1004
1004
|
});
|
|
1005
1005
|
|
|
1006
|
-
//
|
|
1006
|
+
// node_modules/https-proxy-agent/dist/parse-proxy-response.js
|
|
1007
1007
|
var require_parse_proxy_response = __commonJS({
|
|
1008
|
-
"
|
|
1008
|
+
"node_modules/https-proxy-agent/dist/parse-proxy-response.js"(exports) {
|
|
1009
1009
|
"use strict";
|
|
1010
1010
|
var __importDefault = exports && exports.__importDefault || function(mod) {
|
|
1011
1011
|
return mod && mod.__esModule ? mod : { "default": mod };
|
|
@@ -1099,9 +1099,9 @@ var require_parse_proxy_response = __commonJS({
|
|
|
1099
1099
|
}
|
|
1100
1100
|
});
|
|
1101
1101
|
|
|
1102
|
-
//
|
|
1102
|
+
// node_modules/https-proxy-agent/dist/index.js
|
|
1103
1103
|
var require_dist2 = __commonJS({
|
|
1104
|
-
"
|
|
1104
|
+
"node_modules/https-proxy-agent/dist/index.js"(exports) {
|
|
1105
1105
|
"use strict";
|
|
1106
1106
|
var __createBinding = exports && exports.__createBinding || (Object.create ? (function(o, m, k, k2) {
|
|
1107
1107
|
if (k2 === void 0) k2 = k;
|
|
@@ -2209,6 +2209,7 @@ var TikTokLive = class _TikTokLive extends EventEmitter {
|
|
|
2209
2209
|
}
|
|
2210
2210
|
} else {
|
|
2211
2211
|
console.log(`[TikTokLive] No presets for @${this.uniqueId}. Resolving via sign server (${this.signServerUrl})...`);
|
|
2212
|
+
let confirmedOffline = false;
|
|
2212
2213
|
try {
|
|
2213
2214
|
const roomResp = await fetch(`${this.signServerUrl}/webcast/room_id`, {
|
|
2214
2215
|
method: "POST",
|
|
@@ -2218,7 +2219,10 @@ var TikTokLive = class _TikTokLive extends EventEmitter {
|
|
|
2218
2219
|
console.log(`[TikTokLive] room_id response: ${roomResp.status}`);
|
|
2219
2220
|
if (roomResp.ok) {
|
|
2220
2221
|
const roomData = await roomResp.json();
|
|
2221
|
-
if (roomData.status_code === 0 && roomData.data?.room_id) {
|
|
2222
|
+
if (roomData.status_code === 0 && roomData.data?.room_id && roomData.data.alive === false) {
|
|
2223
|
+
confirmedOffline = true;
|
|
2224
|
+
console.log(`[TikTokLive] @${this.uniqueId} resolved to ended room ${roomData.data.room_id} (alive:false)`);
|
|
2225
|
+
} else if (roomData.status_code === 0 && roomData.data?.room_id) {
|
|
2222
2226
|
roomId = roomData.data.room_id;
|
|
2223
2227
|
console.log(`[TikTokLive] \xE2\u0153\u2026 Got roomId from sign server: ${roomId}`);
|
|
2224
2228
|
} else {
|
|
@@ -2228,6 +2232,7 @@ var TikTokLive = class _TikTokLive extends EventEmitter {
|
|
|
2228
2232
|
} catch (e) {
|
|
2229
2233
|
console.log(`[TikTokLive] \xE2\x9D\u0152 room_id request failed: ${e.message}`);
|
|
2230
2234
|
}
|
|
2235
|
+
if (confirmedOffline) throw new Error(`User @${this.uniqueId} is not currently live`);
|
|
2231
2236
|
if (roomId) {
|
|
2232
2237
|
try {
|
|
2233
2238
|
const credResp = await fetch(`${this.signServerUrl}/webcast/ws_credentials`, {
|
|
@@ -2594,8 +2599,12 @@ var TikTokLive = class _TikTokLive extends EventEmitter {
|
|
|
2594
2599
|
* Resolve unknown host user IDs via the sign server API.
|
|
2595
2600
|
* Caches results and re-emits the battleArmies event with enriched hostUser data.
|
|
2596
2601
|
*/
|
|
2602
|
+
// Set once the sign server refuses host resolution for this key (tier below
|
|
2603
|
+
// Basic answers 403). Before this, every battle frame retried and filled the
|
|
2604
|
+
// customer's API log with 403s they never asked for.
|
|
2605
|
+
_hostResolveUnavailable = false;
|
|
2597
2606
|
async resolveHostUsers(userIds, originalEvt) {
|
|
2598
|
-
const toResolve = userIds.filter((id) => !this._pendingHostResolves.has(id));
|
|
2607
|
+
const toResolve = this._hostResolveUnavailable ? [] : userIds.filter((id) => !this._pendingHostResolves.has(id));
|
|
2599
2608
|
if (toResolve.length === 0) {
|
|
2600
2609
|
this.emit("event", originalEvt);
|
|
2601
2610
|
this.emit(originalEvt.type, originalEvt);
|
|
@@ -2613,7 +2622,9 @@ var TikTokLive = class _TikTokLive extends EventEmitter {
|
|
|
2613
2622
|
body: JSON.stringify({ user_ids: toResolve }),
|
|
2614
2623
|
signal: AbortSignal.timeout(5e3)
|
|
2615
2624
|
});
|
|
2616
|
-
if (res.
|
|
2625
|
+
if (res.status === 401 || res.status === 403) {
|
|
2626
|
+
this._hostResolveUnavailable = true;
|
|
2627
|
+
} else if (res.ok) {
|
|
2617
2628
|
const json = await res.json();
|
|
2618
2629
|
if (json.data) {
|
|
2619
2630
|
for (const [uid, info] of Object.entries(json.data)) {
|