blob: d75d4477eb03448011b5e00a62e6dff0e7c5c31b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
package bilibili
import (
"bilibili-livestream-archiver/common"
"fmt"
)
type roomProfile struct {
UID int `json:"uid"`
RoomID int `json:"room_id"`
ShortID int `json:"short_id"`
Attention int `json:"attention"`
Online int `json:"online"`
IsPortrait bool `json:"is_portrait"`
Description string `json:"description"`
LiveStatus int `json:"live_status"`
AreaID int `json:"area_id"`
ParentAreaID int `json:"parent_area_id"`
ParentAreaName string `json:"parent_area_name"`
OldAreaID int `json:"old_area_id"`
Background string `json:"background"`
Title string `json:"title"`
UserCover string `json:"user_cover"`
Keyframe string `json:"keyframe"`
IsStrictRoom bool `json:"is_strict_room"`
LiveTime string `json:"live_time"`
Tags string `json:"tags"`
IsAnchor int `json:"is_anchor"`
RoomSilentType string `json:"room_silent_type"`
RoomSilentLevel int `json:"room_silent_level"`
RoomSilentSecond int `json:"room_silent_second"`
AreaName string `json:"area_name"`
Pendants string `json:"pendants"`
AreaPendants string `json:"area_pendants"`
HotWords []string `json:"hot_words"`
HotWordsStatus int `json:"hot_words_status"`
Verify string `json:"verify"`
NewPendants struct {
Frame struct {
Name string `json:"name"`
Value string `json:"value"`
Position int `json:"position"`
Desc string `json:"desc"`
Area int `json:"area"`
AreaOld int `json:"area_old"`
BgColor string `json:"bg_color"`
BgPic string `json:"bg_pic"`
UseOldArea bool `json:"use_old_area"`
} `json:"frame"`
Badge struct {
Name string `json:"name"`
Position int `json:"position"`
Value string `json:"value"`
Desc string `json:"desc"`
} `json:"badge"`
MobileFrame struct {
Name string `json:"name"`
Value string `json:"value"`
Position int `json:"position"`
Desc string `json:"desc"`
Area int `json:"area"`
AreaOld int `json:"area_old"`
BgColor string `json:"bg_color"`
BgPic string `json:"bg_pic"`
UseOldArea bool `json:"use_old_area"`
} `json:"mobile_frame"`
MobileBadge interface{} `json:"mobile_badge"`
} `json:"new_pendants"`
UpSession string `json:"up_session"`
PkStatus int `json:"pk_status"`
PkID int `json:"pk_id"`
BattleID int `json:"battle_id"`
AllowChangeAreaTime int `json:"allow_change_area_time"`
AllowUploadCoverTime int `json:"allow_upload_cover_time"`
StudioInfo struct {
Status int `json:"status"`
MasterList []interface{} `json:"master_list"`
} `json:"studio_info"`
}
type RoomProfileResponse = BaseResponse[roomProfile]
func (b Bilibili) GetRoomProfile(roomId common.RoomId) (resp RoomProfileResponse, err error) {
url := fmt.Sprintf("https://api.live.bilibili.com/room/v1/Room/get_info?room_id=%d", roomId)
return callGet[RoomProfileResponse](b, url)
}
|