floating-live 0.11.0 → 0.11.2
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/index.d.ts +2 -4
- package/index.js +2 -4
- package/package.json +1 -1
- package/plugin/acfun/acfunLive.d.ts +2 -2
- package/plugin/acfun/acfunLive.js +8 -8
- package/plugin/bilibili/bilibiliLive.d.ts +2 -2
- package/plugin/bilibili/bilibiliLive.js +13 -11
- package/plugin/bilibili/index.d.ts +1 -1
- package/plugin/chatPrint/chatPrint.d.ts +2 -2
- package/plugin/chatPrint/chatPrint.js +3 -3
- package/plugin/chatPrint/index.d.ts +1 -1
- package/plugin/consoleEvent/index.d.ts +1 -1
- package/plugin/msgSave/index.d.ts +2 -2
- package/plugin/msgSave/index.js +1 -1
- package/plugin/msgSave/msgSave.d.ts +1 -1
- package/plugin/msgSave/msgSave.js +3 -3
- package/src/lib/LiveRoom.js +1 -0
package/index.d.ts
CHANGED
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
export { FloatingLive } from "./src";
|
|
2
|
-
export * from "./src/types
|
|
3
|
-
export * from "./src/
|
|
4
|
-
export * from "./src/types/plugin";
|
|
5
|
-
export * from "./src/types/room";
|
|
2
|
+
export * from "./src/types";
|
|
3
|
+
export * from "./src/enum";
|
|
6
4
|
export * from "./src/lib/LiveRoom";
|
|
7
5
|
export * from "./src/lib/Reglist";
|
package/index.js
CHANGED
|
@@ -17,9 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.FloatingLive = void 0;
|
|
18
18
|
var src_1 = require("./src");
|
|
19
19
|
Object.defineProperty(exports, "FloatingLive", { enumerable: true, get: function () { return src_1.FloatingLive; } });
|
|
20
|
-
__exportStar(require("./src/types
|
|
21
|
-
__exportStar(require("./src/
|
|
22
|
-
__exportStar(require("./src/types/plugin"), exports);
|
|
23
|
-
__exportStar(require("./src/types/room"), exports);
|
|
20
|
+
__exportStar(require("./src/types"), exports);
|
|
21
|
+
__exportStar(require("./src/enum"), exports);
|
|
24
22
|
__exportStar(require("./src/lib/LiveRoom"), exports);
|
|
25
23
|
__exportStar(require("./src/lib/Reglist"), exports);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { MedalInfo, UserInfo } from "
|
|
1
|
+
import { MedalInfo, UserInfo } from "../..";
|
|
2
2
|
import AcClient from "acfun-live-danmaku/client";
|
|
3
|
-
import { LiveRoom, RoomStatsInfo, RoomViewInfo } from "
|
|
3
|
+
import { LiveRoom, RoomStatsInfo, RoomViewInfo } from "../..";
|
|
4
4
|
declare type ZtLiveUserInfo = {
|
|
5
5
|
userIdentity: {
|
|
6
6
|
managerType?: number;
|
|
@@ -4,8 +4,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const acfun_live_danmaku_1 = __importDefault(require("acfun-live-danmaku"));
|
|
7
|
-
const
|
|
8
|
-
const
|
|
7
|
+
const __1 = require("../..");
|
|
8
|
+
const __2 = require("../..");
|
|
9
9
|
// 获取当前时间戳,以替代无法从数据中获取时间戳的情况,精度为1s
|
|
10
10
|
function getDateTimestamp() {
|
|
11
11
|
return Math.floor(Date.now() / 1000) * 1000;
|
|
@@ -18,7 +18,7 @@ function stringToNumber(num) {
|
|
|
18
18
|
return parseFloat(num);
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
|
-
class acfunLive extends
|
|
21
|
+
class acfunLive extends __1.LiveRoom {
|
|
22
22
|
constructor(id, open = false) {
|
|
23
23
|
super();
|
|
24
24
|
/** 平台id */
|
|
@@ -65,7 +65,7 @@ class acfunLive extends LiveRoom_1.LiveRoom {
|
|
|
65
65
|
if (!this.client) {
|
|
66
66
|
this.client = await (0, acfun_live_danmaku_1.default)(this.id) || null;
|
|
67
67
|
if (this.client) {
|
|
68
|
-
this.status =
|
|
68
|
+
this.status = __2.RoomStatus.live;
|
|
69
69
|
this.timestamp = this.client.liveStartTime;
|
|
70
70
|
this.view.title = this.client.caption; // bug
|
|
71
71
|
this.view.cover = `https://tx2.a.kwimgs.com/bs2/ztlc/cover_${this.client.liveId}_raw.jpg`;
|
|
@@ -105,7 +105,7 @@ class acfunLive extends LiveRoom_1.LiveRoom {
|
|
|
105
105
|
let client = this.client;
|
|
106
106
|
client.on("EnterRoomAck", () => {
|
|
107
107
|
console.log("[acfun-live-danmaku] 已连接AcFun直播间");
|
|
108
|
-
this.status =
|
|
108
|
+
this.status = __2.RoomStatus.live;
|
|
109
109
|
});
|
|
110
110
|
client.on("RecentComment", (comments) => {
|
|
111
111
|
//当前弹幕列表
|
|
@@ -153,10 +153,10 @@ class acfunLive extends LiveRoom_1.LiveRoom {
|
|
|
153
153
|
getUser(user) {
|
|
154
154
|
let identity = null;
|
|
155
155
|
if (user.userIdentity?.managerType == 1) {
|
|
156
|
-
identity =
|
|
156
|
+
identity = __2.UserAdmin.admin;
|
|
157
157
|
}
|
|
158
158
|
else if (parseInt(user.userId) == this.anchor.id) {
|
|
159
|
-
identity =
|
|
159
|
+
identity = __2.UserAdmin.anchor;
|
|
160
160
|
}
|
|
161
161
|
return {
|
|
162
162
|
name: user.nickname,
|
|
@@ -220,7 +220,7 @@ class acfunLive extends LiveRoom_1.LiveRoom {
|
|
|
220
220
|
type: "live_end",
|
|
221
221
|
timestamp: getDateTimestamp(),
|
|
222
222
|
info: {
|
|
223
|
-
status:
|
|
223
|
+
status: __2.RoomStatus.off
|
|
224
224
|
}
|
|
225
225
|
};
|
|
226
226
|
this.client = null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { UserInfo } from "
|
|
1
|
+
import { UserInfo } from "../..";
|
|
2
2
|
import { KeepLiveWS } from "bilibili-live-ws";
|
|
3
|
-
import { LiveRoom, RoomStatsInfo, RoomViewInfo } from "
|
|
3
|
+
import { LiveRoom, RoomStatsInfo, RoomViewInfo } from "../..";
|
|
4
4
|
declare class bilibiliLive extends LiveRoom {
|
|
5
5
|
/** 平台id */
|
|
6
6
|
readonly platform: string;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
const
|
|
3
|
+
const __1 = require("../..");
|
|
4
4
|
const bilibili_live_ws_1 = require("bilibili-live-ws");
|
|
5
|
-
const
|
|
5
|
+
const __2 = require("../..");
|
|
6
6
|
// utils
|
|
7
7
|
// 获取当前时间戳,以替代无法从数据中获取时间戳的情况,精度为1s
|
|
8
8
|
function getDateTimestamp() {
|
|
9
9
|
return Math.floor(Date.now() / 1000) * 1000;
|
|
10
10
|
}
|
|
11
|
-
class bilibiliLive extends
|
|
11
|
+
class bilibiliLive extends __2.LiveRoom {
|
|
12
12
|
constructor(id, // 房间id
|
|
13
13
|
open = false, // 生成房间后是否打开
|
|
14
14
|
config) {
|
|
@@ -56,13 +56,15 @@ class bilibiliLive extends LiveRoom_1.LiveRoom {
|
|
|
56
56
|
}) // 获取直播间信息
|
|
57
57
|
.then((response) => response.json())
|
|
58
58
|
.then((res) => {
|
|
59
|
-
const { room_info, anchor_info } = res.data;
|
|
59
|
+
const { room_info, anchor_info, like_info_v3, watched_show } = res.data;
|
|
60
60
|
this.roomid = room_info.room_id;
|
|
61
|
-
this.status = room_info.live_status == 1 ?
|
|
62
|
-
this.timestamp = this.status ==
|
|
61
|
+
this.status = room_info.live_status == 1 ? __1.RoomStatus.live : __1.RoomStatus.off;
|
|
62
|
+
this.timestamp = this.status == __1.RoomStatus.live ? room_info.live_start_time * 1000 : refresh ? Date.now() : this.timestamp;
|
|
63
63
|
this.view.title = room_info.title;
|
|
64
64
|
this.view.area = [room_info.parent_area_name, room_info.area_name];
|
|
65
65
|
this.view.cover = room_info.cover;
|
|
66
|
+
this.stats.watch = watched_show.num;
|
|
67
|
+
this.stats.like = like_info_v3.total_likes;
|
|
66
68
|
this.anchor.id = room_info.uid;
|
|
67
69
|
this.anchor.name = anchor_info.base_info.uname;
|
|
68
70
|
this.anchor.avatar = anchor_info.base_info.face;
|
|
@@ -163,10 +165,10 @@ class bilibiliLive extends LiveRoom_1.LiveRoom {
|
|
|
163
165
|
}
|
|
164
166
|
}
|
|
165
167
|
if (msg.info[2][2]) {
|
|
166
|
-
identity =
|
|
168
|
+
identity = __1.UserAdmin.admin;
|
|
167
169
|
}
|
|
168
170
|
else if (uid == this.anchor.id) {
|
|
169
|
-
identity =
|
|
171
|
+
identity = __1.UserAdmin.anchor;
|
|
170
172
|
}
|
|
171
173
|
let danmaku = {
|
|
172
174
|
platform: "bilibili",
|
|
@@ -181,7 +183,7 @@ class bilibiliLive extends LiveRoom_1.LiveRoom {
|
|
|
181
183
|
name: content,
|
|
182
184
|
id: msg.info[0][13].emoticon_unique,
|
|
183
185
|
url: msg.info[0][13].url,
|
|
184
|
-
size: msg.info[0][13].width == msg.info[0][13].height ?
|
|
186
|
+
size: msg.info[0][13].width == msg.info[0][13].height ? __1.ImageSize.large : __1.ImageSize.small,
|
|
185
187
|
} : undefined,
|
|
186
188
|
emoticon: emoticon,
|
|
187
189
|
user: {
|
|
@@ -372,7 +374,7 @@ class bilibiliLive extends LiveRoom_1.LiveRoom {
|
|
|
372
374
|
name: data.uname
|
|
373
375
|
},
|
|
374
376
|
operator: {
|
|
375
|
-
admin: data.operator == 2 ?
|
|
377
|
+
admin: data.operator == 2 ? __1.UserAdmin.anchor : __1.UserAdmin.admin
|
|
376
378
|
}
|
|
377
379
|
},
|
|
378
380
|
};
|
|
@@ -413,7 +415,7 @@ class bilibiliLive extends LiveRoom_1.LiveRoom {
|
|
|
413
415
|
type: "live_end",
|
|
414
416
|
timestamp: getDateTimestamp(),
|
|
415
417
|
info: {
|
|
416
|
-
status: msg.round ?
|
|
418
|
+
status: msg.round ? __1.RoomStatus.round : __1.RoomStatus.off
|
|
417
419
|
}
|
|
418
420
|
};
|
|
419
421
|
this.emitMsg(off);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FloatingLive } from "../..";
|
|
2
|
-
import { UserInfo } from "
|
|
3
|
-
import { MessageData } from "
|
|
2
|
+
import { UserInfo } from "../..";
|
|
3
|
+
import { MessageData } from "../..";
|
|
4
4
|
export declare class chatPrint {
|
|
5
5
|
/** 主模块 */
|
|
6
6
|
main: FloatingLive;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.chatPrint = void 0;
|
|
4
|
-
const
|
|
4
|
+
const __1 = require("../..");
|
|
5
5
|
class chatPrint {
|
|
6
6
|
constructor(main) {
|
|
7
7
|
this.main = main;
|
|
@@ -15,7 +15,7 @@ class chatPrint {
|
|
|
15
15
|
let name = `${"\x1b[33m"}${user.name}`; // 用户名
|
|
16
16
|
let medal = user.medal ? `${"\x1b[32m"}[${user.medal.name}(${user.medal.level})] ` : ""; // 粉丝牌
|
|
17
17
|
let membership = user.membership ? `${"\x1b[36m"}[${this.getPriviliegeName(message.platform, user.membership)}]` : ""; // 特权粉丝
|
|
18
|
-
let admin = user.admin ? `${"\x1b[95m"}[${{ [
|
|
18
|
+
let admin = user.admin ? `${"\x1b[95m"}[${{ [__1.UserAdmin.admin]: "房管", [__1.UserAdmin.anchor]: "主播" }[user.admin]}]` : ""; // 房管
|
|
19
19
|
return `${medal}${membership}${admin}${name}${"\x1b[0m"}`; //[粉丝牌(等级)] [特权][房管]用户名
|
|
20
20
|
}
|
|
21
21
|
/** 获取特权粉丝名称 */
|
|
@@ -81,7 +81,7 @@ class chatPrint {
|
|
|
81
81
|
}
|
|
82
82
|
case "block": {
|
|
83
83
|
let user = this.getUserInfo(message);
|
|
84
|
-
let operator = message.info.operator.admin ? { [
|
|
84
|
+
let operator = message.info.operator.admin ? { [__1.UserAdmin.admin]: "房管", [__1.UserAdmin.anchor]: "主播" }[message.info.operator.admin] : "管理员";
|
|
85
85
|
console.log(`${user} 已被${operator}禁言`);
|
|
86
86
|
break;
|
|
87
87
|
}
|
package/plugin/msgSave/index.js
CHANGED
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.messageSaveOrigin = exports.messageSave = void 0;
|
|
7
|
-
const msgSave_1 = __importDefault(require("
|
|
7
|
+
const msgSave_1 = __importDefault(require("./msgSave"));
|
|
8
8
|
const messageSave = () => {
|
|
9
9
|
return {
|
|
10
10
|
register: (ctx) => {
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const
|
|
6
|
+
const __1 = require("../..");
|
|
7
7
|
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
8
8
|
const path_1 = __importDefault(require("path"));
|
|
9
9
|
function getTimeStr(timestamp) {
|
|
@@ -14,7 +14,7 @@ function getTimeStr(timestamp) {
|
|
|
14
14
|
* S=直播开始 L=直播中 E=直播结束 O=未开播
|
|
15
15
|
*/
|
|
16
16
|
function getRecordStatus(status, statusChanged) {
|
|
17
|
-
if (status ==
|
|
17
|
+
if (status == __1.RoomStatus.live) {
|
|
18
18
|
/** 已开播 */
|
|
19
19
|
return statusChanged ? "S" : "L";
|
|
20
20
|
}
|
|
@@ -110,7 +110,7 @@ class MsgSave {
|
|
|
110
110
|
}
|
|
111
111
|
/** 创建保存信息,用于记录信息可能不存在的情况 */
|
|
112
112
|
createSaveInfo({ platform, room }) {
|
|
113
|
-
const { status, timestamp } = this.main.room.get(`${platform}:${room}`)?.info || { status:
|
|
113
|
+
const { status, timestamp } = this.main.room.get(`${platform}:${room}`)?.info || { status: __1.RoomStatus.off, timestamp: 0 };
|
|
114
114
|
const saveInfoConfig = {
|
|
115
115
|
platform,
|
|
116
116
|
room, status,
|