@floating-live/bilibili 0.16.10 → 0.16.12

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.
Files changed (2) hide show
  1. package/package.json +2 -2
  2. package/parser.js +69 -66
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@floating-live/bilibili",
3
- "version": "0.16.10",
3
+ "version": "0.16.12",
4
4
  "type": "module",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -33,5 +33,5 @@
33
33
  "peerDependencies": {
34
34
  "floating-live": "^0.16.0"
35
35
  },
36
- "gitHead": "c2dcbdd0c47265e4228676614ca1dd0d22339e55"
36
+ "gitHead": "95b42627af12d289ffb57bd1bf17d60df89ddea4"
37
37
  }
package/parser.js CHANGED
@@ -69,6 +69,7 @@ const parsingFunction = {
69
69
  user: {
70
70
  name: uname,
71
71
  id: uid,
72
+ avatar: info[0][15].user.base.face,
72
73
  medal: medal,
73
74
  membership: guard_level,
74
75
  type: identity,
@@ -78,48 +79,48 @@ const parsingFunction = {
78
79
  danmaku.id ?? (danmaku.id = generateId(danmaku));
79
80
  return danmaku;
80
81
  },
81
- /** @deprecated */
82
- INTERACT_WORD: (msg, room) => {
83
- const { data, msg_id, send_time } = msg;
84
- let type;
85
- switch (data.msg_type) {
86
- case 1:
87
- type = "entry"; // 进入直播间
88
- break;
89
- case 2:
90
- type = "follow"; // 关注直播间
91
- break;
92
- case 3:
93
- type = "share"; // 分享直播间
94
- break;
95
- default:
96
- return;
97
- }
98
- let interact = {
99
- platform: "bilibili",
100
- roomId: room?.id || 0,
101
- userId: data.uid,
102
- type: type,
103
- id: msg_id,
104
- timestamp: send_time || Math.floor(data.trigger_time / 1000000),
105
- info: {
106
- user: {
107
- name: data.uname,
108
- id: data.uid,
109
- medal: data.fans_medal?.medal_level
110
- ? {
111
- level: data.fans_medal.medal_level,
112
- name: data.fans_medal.medal_name,
113
- id: data.fans_medal.target_id,
114
- membership: data.fans_medal.guard_level,
115
- }
116
- : null,
117
- },
118
- },
119
- };
120
- interact.id ?? (interact.id = generateId(interact));
121
- return interact;
122
- },
82
+ // /** @deprecated */
83
+ // INTERACT_WORD: (msg: MessageData.INTERACT_WORD, room) => {
84
+ // const { data, msg_id, send_time } = msg;
85
+ // let type: "entry" | "follow" | "share";
86
+ // switch (data.msg_type) {
87
+ // case 1:
88
+ // type = "entry"; // 进入直播间
89
+ // break;
90
+ // case 2:
91
+ // type = "follow"; // 关注直播间
92
+ // break;
93
+ // case 3:
94
+ // type = "share"; // 分享直播间
95
+ // break;
96
+ // default:
97
+ // return;
98
+ // }
99
+ // let interact: LiveMessage.Interact = {
100
+ // platform: "bilibili",
101
+ // roomId: room?.id || 0,
102
+ // userId: data.uid,
103
+ // type: type,
104
+ // id: msg_id!,
105
+ // timestamp: send_time || Math.floor(data.trigger_time / 1000000),
106
+ // info: {
107
+ // user: {
108
+ // name: data.uname,
109
+ // id: data.uid,
110
+ // medal: data.fans_medal?.medal_level
111
+ // ? {
112
+ // level: data.fans_medal.medal_level,
113
+ // name: data.fans_medal.medal_name,
114
+ // id: data.fans_medal.target_id,
115
+ // membership: data.fans_medal.guard_level,
116
+ // }
117
+ // : null,
118
+ // },
119
+ // },
120
+ // };
121
+ // interact.id ??= generateId(interact);
122
+ // return interact;
123
+ // },
123
124
  INTERACT_WORD_V2: (msg, room) => {
124
125
  const { decoded, msg_id, send_time } = msg;
125
126
  const data = decoded;
@@ -148,6 +149,7 @@ const parsingFunction = {
148
149
  user: {
149
150
  name: data.uname,
150
151
  id: Number(data.uid),
152
+ avatar: data.uinfo.base.face,
151
153
  medal: data.fansMedal?.medalLevel
152
154
  ? {
153
155
  level: Number(data.fansMedal.medalLevel),
@@ -175,6 +177,7 @@ const parsingFunction = {
175
177
  user: {
176
178
  name: data.uname,
177
179
  id: data.uid,
180
+ avatar: data.uinfo.base.face,
178
181
  medal: data.fans_medal?.medal_level
179
182
  ? {
180
183
  level: data.fans_medal.medal_level,
@@ -266,6 +269,7 @@ const parsingFunction = {
266
269
  gift.id ?? (gift.id = generateId(gift));
267
270
  return gift;
268
271
  },
272
+ // /** @deprecated */
269
273
  // GUARD_BUY: (msg: MessageData.GUARD_BUY, room) => {
270
274
  // const { data, msg_id, send_time } = msg;
271
275
  // let gift: LiveMessage.Membership = {
@@ -483,33 +487,32 @@ const parsingFunction = {
483
487
  change.id ?? (change.id = generateId(change));
484
488
  return change;
485
489
  },
486
- ANCHOR_LOT_START: (msg, room) => {
487
- const { data, msg_id, send_time } = msg;
488
- let m = {
489
- platform: "bilibili",
490
- roomId: room?.id || 0,
491
- userId: 0,
492
- type: "lottery",
493
- timestamp: send_time || data.current_time * 1000,
494
- id: msg_id,
495
- info: {
496
- id: data.id,
497
- award: {
498
- name: data.award_name,
499
- num: data.award_num,
500
- image: data.award_image,
501
- id: -1,
502
- value: 0,
503
- currency: "",
504
- },
505
- },
506
- };
507
- return m;
508
- },
490
+ // ANCHOR_LOT_START: (msg: MessageData.ANCHOR_LOT_START, room) => {
491
+ // const { data, msg_id, send_time } = msg;
492
+ // let m: LiveMessage.Lottery = {
493
+ // platform: "bilibili",
494
+ // roomId: room?.id || 0,
495
+ // userId: 0,
496
+ // type: "lottery",
497
+ // timestamp: send_time || data.current_time * 1000,
498
+ // id: msg_id!,
499
+ // info: {
500
+ // id: data.id,
501
+ // award: {
502
+ // name: data.award_name,
503
+ // num: data.award_num,
504
+ // image: data.award_image,
505
+ // id: -1,
506
+ // value: 0,
507
+ // currency: "",
508
+ // },
509
+ // },
510
+ // };
511
+ // return m;
512
+ // },
509
513
  };
510
514
  /** 转换bilibili直播弹幕为floating通用格式 */
511
515
  export function parseMessage(data, room) {
512
- console.log(data.cmd);
513
516
  return parsingFunction[data.cmd]?.(data, room);
514
517
  }
515
518
  /** 转换bilibili直播间信息为floating通用格式 */