修改【readme】 添加【安卓端登录】appsec 添加大量【proto结构文件】
This commit is contained in:
243
grpc_api/bilibili/app/archive/v1.proto
Normal file
243
grpc_api/bilibili/app/archive/v1.proto
Normal file
@@ -0,0 +1,243 @@
|
||||
//稿件信息v1模块
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.archive.v1;
|
||||
|
||||
//稿件基本信息
|
||||
message Arc{
|
||||
//稿件avid
|
||||
int64 aid = 1;
|
||||
|
||||
//稿件分P数
|
||||
int64 videos = 2;
|
||||
|
||||
//分区tid
|
||||
int32 typeId = 3;
|
||||
|
||||
//二级分区名
|
||||
string typeName = 4;
|
||||
|
||||
//稿件版权
|
||||
//1:原创 2:转载
|
||||
int32 copyright = 5;
|
||||
|
||||
//稿件封面url
|
||||
string pic = 6;
|
||||
|
||||
//稿件标题
|
||||
string title = 7;
|
||||
|
||||
//稿件发布时间
|
||||
int64 pubdate = 8;
|
||||
|
||||
//用户投稿时间
|
||||
int64 ctime = 9;
|
||||
|
||||
//稿件简介
|
||||
string desc = 10;
|
||||
|
||||
//稿件状态
|
||||
int32 state = 11;
|
||||
|
||||
//访问属性
|
||||
//0:全部可见 10000:登录可见
|
||||
int32 access = 12;
|
||||
|
||||
//属性位配置
|
||||
int32 attribute = 13;
|
||||
|
||||
//空
|
||||
string tag = 14;
|
||||
|
||||
//空
|
||||
repeated string tags = 15;
|
||||
|
||||
//稿件总时长
|
||||
int64 duration = 16;
|
||||
|
||||
//参与的活动id
|
||||
int64 missionId = 17;
|
||||
|
||||
//绑定的商单id
|
||||
int64 orderId = 18;
|
||||
|
||||
//pgc稿件强制重定向url
|
||||
string redirectUrl = 19;
|
||||
|
||||
//???
|
||||
int64 forward = 20;
|
||||
|
||||
//控制标志
|
||||
Rights rights = 21;
|
||||
|
||||
//UP主信息
|
||||
Author author = 22;
|
||||
|
||||
//状态数
|
||||
Stat stat = 23;
|
||||
|
||||
//???
|
||||
string reportResult = 24;
|
||||
|
||||
//投稿时发送的动态内容
|
||||
string dynamic = 25;
|
||||
|
||||
//稿件1P cid
|
||||
int64 firstCid = 26;
|
||||
|
||||
//稿件1P 分辨率
|
||||
Dimension dimension = 27;
|
||||
|
||||
//合作组成员列表
|
||||
repeated StaffInfo staffInfo = 28;
|
||||
|
||||
//ugc合集id
|
||||
int64 seasonId = 29;
|
||||
|
||||
//新版属性位配置
|
||||
int64 attributeV2 = 30;
|
||||
}
|
||||
|
||||
//作者信息
|
||||
message Author{
|
||||
//UID
|
||||
int64 mid = 1;
|
||||
|
||||
//昵称
|
||||
string name = 2;
|
||||
|
||||
//头像url
|
||||
string face = 3;
|
||||
}
|
||||
|
||||
//分辨率信息
|
||||
message Dimension{
|
||||
//宽度
|
||||
int64 width = 1;
|
||||
|
||||
//高度
|
||||
int64 height = 2;
|
||||
|
||||
//方向
|
||||
//0:横屏 1:竖屏
|
||||
int64 rotate = 3;
|
||||
}
|
||||
|
||||
//分P视频
|
||||
message Page{
|
||||
//视频cid
|
||||
int64 cid = 1;
|
||||
|
||||
//分P序号
|
||||
int32 page = 2;
|
||||
|
||||
//源类型
|
||||
//vupload:B站 qq:腾讯 hunan:芒果
|
||||
string from = 3;
|
||||
|
||||
//分P标题
|
||||
string part = 4;
|
||||
|
||||
//分P时长
|
||||
int64 duration = 5;
|
||||
|
||||
//外链vid
|
||||
string vid = 6;
|
||||
|
||||
//分P简介
|
||||
string desc = 7;
|
||||
|
||||
//外链url
|
||||
string webLink = 8;
|
||||
|
||||
//分P分辨率
|
||||
Dimension dimension = 9;
|
||||
}
|
||||
|
||||
//稿件控制标志
|
||||
message Rights{
|
||||
//老版是否付费
|
||||
int32 bp = 1;
|
||||
|
||||
//允许充电
|
||||
int32 elec = 2;
|
||||
|
||||
//允许下载
|
||||
int32 download = 3;
|
||||
|
||||
//是否电影
|
||||
int32 movie = 4;
|
||||
|
||||
//pgc稿件需要付费
|
||||
int32 pay = 5;
|
||||
|
||||
//是否高码率
|
||||
int32 hd5 = 6;
|
||||
|
||||
//是否显示禁止转载标志
|
||||
int32 noReprint = 7;
|
||||
|
||||
//是否允许自动播放
|
||||
int32 autoplay = 8;
|
||||
|
||||
//ugc稿件需要付费
|
||||
int32 ugcPay = 9;
|
||||
|
||||
//是否合作视频
|
||||
int32 isCooperation = 10;
|
||||
|
||||
//是否ugc付费预览
|
||||
int32 ugcPayPreview = 11;
|
||||
|
||||
//是否禁止后台播放
|
||||
int32 noBackground = 12;
|
||||
}
|
||||
|
||||
//合作成员信息
|
||||
message StaffInfo{
|
||||
//成员UID
|
||||
int64 mid = 1;
|
||||
|
||||
//成员角色
|
||||
string title = 2;
|
||||
|
||||
//属性位
|
||||
int64 attribute = 3;
|
||||
}
|
||||
|
||||
//状态数
|
||||
message Stat{
|
||||
//稿件avid
|
||||
int64 aid = 1;
|
||||
|
||||
//播放数
|
||||
int32 view = 2;
|
||||
|
||||
//弹幕数
|
||||
int32 danmaku = 3;
|
||||
|
||||
//评论数
|
||||
int32 reply = 4;
|
||||
|
||||
//收藏数
|
||||
int32 fav = 5;
|
||||
|
||||
//投币数
|
||||
int32 coin = 6;
|
||||
|
||||
//分享数
|
||||
int32 share = 7;
|
||||
|
||||
//当前排名
|
||||
int32 nowRank = 8;
|
||||
|
||||
//历史最高排名
|
||||
int32 hisRank = 9;
|
||||
|
||||
//点赞数
|
||||
int32 like = 10;
|
||||
|
||||
//点踩数
|
||||
//前端恒为0
|
||||
int32 dislike = 11;
|
||||
}
|
||||
@@ -1,102 +0,0 @@
|
||||
//稿件信息v1模块
|
||||
syntax = "proto3";
|
||||
package bilibili.app.archive.v1;
|
||||
|
||||
//用户信息
|
||||
message Author{
|
||||
int64 mid = 1;//UID
|
||||
string name = 2;//昵称
|
||||
string face = 3;//头像url
|
||||
}
|
||||
|
||||
//分辨率信息
|
||||
message Dimension{
|
||||
int64 width = 1;//宽
|
||||
int64 height = 2;//高
|
||||
int64 rotate = 3;//旋转
|
||||
}
|
||||
|
||||
//分P视频
|
||||
message Page{
|
||||
int64 cid = 1;//cid
|
||||
int32 page = 2;//分P
|
||||
string from = 3;//源类型
|
||||
string part = 4;
|
||||
int64 duration = 5;
|
||||
string vid = 6;
|
||||
string desc = 7;
|
||||
string webLink = 8;
|
||||
Dimension dimension = 9;//分辨率
|
||||
}
|
||||
|
||||
//允许配置
|
||||
message Rights{
|
||||
int32 bp = 1;
|
||||
int32 elec = 2;
|
||||
int32 download = 3;
|
||||
int32 movie = 4;
|
||||
int32 pay = 5;
|
||||
int32 hd5 = 6;
|
||||
int32 noReprint = 7;
|
||||
int32 autoplay = 8;
|
||||
int32 ugcPay = 9;
|
||||
int32 isCooperation = 10;
|
||||
int32 ugcPayPreview = 11;
|
||||
int32 noBackground = 12;
|
||||
}
|
||||
|
||||
//合作成员
|
||||
message StaffInfo{
|
||||
int64 mid = 1;//UID
|
||||
string title = 2;//成员备注
|
||||
int64 attribute = 3;//
|
||||
}
|
||||
|
||||
//状态数
|
||||
message Stat{
|
||||
int64 aid = 1;//avid
|
||||
int32 view = 2;//播放
|
||||
int32 danmaku = 3;//弹幕
|
||||
int32 reply = 4;//评论
|
||||
int32 fav = 5;//收藏
|
||||
int32 coin = 6;//投币
|
||||
int32 share = 7;//分享
|
||||
int32 nowRank = 8;//当前排名
|
||||
int32 hisRank = 9;//历史最好排名
|
||||
int32 like = 10;//点赞
|
||||
int32 dislike = 11;//点踩
|
||||
}
|
||||
|
||||
//稿件基本信息
|
||||
message Arc{
|
||||
int64 aid = 1; //稿件avid
|
||||
int64 videos = 2; //稿件分P数
|
||||
int32 typeId = 3; //分区tid
|
||||
string typeName = 4; //子分区名
|
||||
int32 copyright = 5; //稿件类型
|
||||
string pic = 6; //稿件封面url
|
||||
string title = 7; //稿件标题
|
||||
int64 pubdate = 8;
|
||||
int64 ctime = 9;
|
||||
string desc = 10; //简介
|
||||
int32 state = 11; //稿件状态
|
||||
int32 access = 12;
|
||||
int32 attribute = 13; //属性位配置
|
||||
string tag = 14;
|
||||
repeated string tags = 15;
|
||||
int64 duration = 16; //总时长
|
||||
int64 missionId = 17; //参与的活动id
|
||||
int64 orderId = 18;
|
||||
string redirectUrl = 19; //重定向url
|
||||
int64 forward = 20;
|
||||
Rights rights = 21;
|
||||
Author author = 22; //UP主信息
|
||||
Stat stat = 23; //状态数
|
||||
string reportResult = 24;
|
||||
string dynamic = 25; //动态内容
|
||||
int64 firstCid = 26; //1P cid
|
||||
Dimension dimension = 27; //1P 分辨率
|
||||
repeated StaffInfo staffInfo = 28; //合作组成员列表
|
||||
int64 seasonId = 29;
|
||||
int64 attributeV2 = 30;
|
||||
}
|
||||
955
grpc_api/bilibili/app/card/v1.proto
Normal file
955
grpc_api/bilibili/app/card/v1.proto
Normal file
@@ -0,0 +1,955 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.card.v1;
|
||||
|
||||
message AdInfo {
|
||||
//
|
||||
int64 creativeId = 1;
|
||||
|
||||
//
|
||||
int32 creativeType = 2;
|
||||
|
||||
//
|
||||
int32 cardType = 3;
|
||||
|
||||
//
|
||||
CreativeContent creativeContent = 4;
|
||||
|
||||
//
|
||||
string adCb = 5;
|
||||
|
||||
//
|
||||
int64 resource = 6;
|
||||
|
||||
//
|
||||
int32 source = 7;
|
||||
|
||||
//
|
||||
string requestId = 8;
|
||||
|
||||
//
|
||||
bool isAd = 9;
|
||||
|
||||
//
|
||||
int64 cmMark = 10;
|
||||
|
||||
//
|
||||
int32 index = 11;
|
||||
|
||||
//
|
||||
bool isAdLoc = 12;
|
||||
|
||||
//
|
||||
int32 cardIndex = 13;
|
||||
|
||||
//
|
||||
string clientIp = 14;
|
||||
|
||||
//
|
||||
bytes extra = 15;
|
||||
|
||||
//
|
||||
int32 creativeStyle = 16;
|
||||
}
|
||||
|
||||
//
|
||||
message Args {
|
||||
//
|
||||
int32 type = 1;
|
||||
|
||||
//
|
||||
int64 upId = 2;
|
||||
|
||||
//
|
||||
string upName = 3;
|
||||
|
||||
//
|
||||
int32 rid = 4;
|
||||
|
||||
//
|
||||
string rname = 5;
|
||||
|
||||
//
|
||||
int64 tid = 6;
|
||||
|
||||
//
|
||||
string tname = 7;
|
||||
|
||||
//
|
||||
string trackId = 8;
|
||||
|
||||
//
|
||||
string state = 9;
|
||||
|
||||
//
|
||||
int32 convergeType = 10;
|
||||
|
||||
//
|
||||
int64 aid = 11;
|
||||
}
|
||||
|
||||
//
|
||||
message Avatar {
|
||||
//
|
||||
string cover = 1;
|
||||
|
||||
//
|
||||
string text = 2;
|
||||
|
||||
//
|
||||
string uri = 3;
|
||||
|
||||
//
|
||||
int32 type = 4;
|
||||
|
||||
//
|
||||
string event = 5;
|
||||
|
||||
//
|
||||
string eventV2 = 6;
|
||||
|
||||
//
|
||||
int32 defalutCover = 7;
|
||||
}
|
||||
|
||||
//
|
||||
message Base {
|
||||
//
|
||||
string cardType = 1;
|
||||
|
||||
//
|
||||
string cardGoto = 2;
|
||||
|
||||
//
|
||||
string goto = 3;
|
||||
|
||||
//
|
||||
string param = 4;
|
||||
|
||||
//
|
||||
string cover = 5;
|
||||
|
||||
//
|
||||
string title = 6;
|
||||
|
||||
//
|
||||
string uri = 7;
|
||||
|
||||
//
|
||||
ThreePoint threePoint = 8;
|
||||
|
||||
//
|
||||
Args args = 9;
|
||||
|
||||
//
|
||||
PlayerArgs playerArgs = 10;
|
||||
|
||||
//
|
||||
int64 idx = 11;
|
||||
|
||||
//
|
||||
AdInfo adInfo = 12;
|
||||
|
||||
//
|
||||
Mask mask = 13;
|
||||
|
||||
//
|
||||
string fromType = 14;
|
||||
|
||||
//
|
||||
repeated ThreePointV2 threePointV2 = 15;
|
||||
|
||||
//
|
||||
repeated ThreePointV3 threePointV3 = 16;
|
||||
|
||||
//
|
||||
Button descButton = 17;
|
||||
|
||||
//
|
||||
ThreePointV4 threePointV4 = 18;
|
||||
}
|
||||
|
||||
//
|
||||
message Bubble {
|
||||
//
|
||||
string bubbleContent = 1;
|
||||
|
||||
//
|
||||
int32 version = 2;
|
||||
|
||||
//
|
||||
int64 stime = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message Button {
|
||||
//
|
||||
string text = 1;
|
||||
|
||||
//
|
||||
string param = 2;
|
||||
|
||||
//
|
||||
string uri = 3;
|
||||
|
||||
//
|
||||
string event = 4;
|
||||
|
||||
//
|
||||
int32 selected = 5;
|
||||
|
||||
//
|
||||
int32 type = 6;
|
||||
|
||||
//
|
||||
string eventV2 = 7;
|
||||
|
||||
//
|
||||
Relation relation = 8;
|
||||
}
|
||||
|
||||
//
|
||||
message Card {
|
||||
oneof itemCase {
|
||||
//
|
||||
SmallCoverV5 smallCoverV5 = 1;
|
||||
|
||||
//
|
||||
LargeCoverV1 largeCoverV1 = 2;
|
||||
|
||||
//
|
||||
ThreeItemAllV2 threeItemAllV2 = 3;
|
||||
|
||||
//
|
||||
ThreeItemV1 threeItemV1 = 4;
|
||||
|
||||
//
|
||||
HotTopic hotTopic = 5;
|
||||
|
||||
//
|
||||
DynamicHot dynamicHot = 6;
|
||||
|
||||
//
|
||||
MiddleCoverV3 middleCoverV3 = 7;
|
||||
|
||||
//
|
||||
LargeCoverV4 largeCoverV4 = 8;
|
||||
|
||||
//
|
||||
PopularTopEntrance popularTopEntrance = 9;
|
||||
|
||||
//
|
||||
RcmdOneItem rcmdOneItem = 10;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
message CreativeContent {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string description = 2;
|
||||
|
||||
//
|
||||
int64 videoId = 3;
|
||||
|
||||
//
|
||||
string username = 4;
|
||||
|
||||
//
|
||||
string imageUrl = 5;
|
||||
|
||||
//
|
||||
string imageMd5 = 6;
|
||||
|
||||
//
|
||||
string logUrl = 7;
|
||||
|
||||
//
|
||||
string logMd5 = 8;
|
||||
|
||||
//
|
||||
string url = 9;
|
||||
|
||||
//
|
||||
string clickUrl = 10;
|
||||
|
||||
//
|
||||
string showUrl = 11;
|
||||
}
|
||||
|
||||
//
|
||||
message DislikeReason {
|
||||
//
|
||||
int64 id = 1;
|
||||
|
||||
//
|
||||
string name = 2;
|
||||
}
|
||||
|
||||
//
|
||||
message DynamicHot {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
string topLeftTitle = 2;
|
||||
|
||||
//
|
||||
string desc1 = 3;
|
||||
|
||||
//
|
||||
string desc2 = 4;
|
||||
|
||||
//
|
||||
string moreUri = 5;
|
||||
|
||||
//
|
||||
string moreText = 6;
|
||||
|
||||
//
|
||||
repeated string covers = 7;
|
||||
|
||||
//
|
||||
string coverRightText = 8;
|
||||
|
||||
//
|
||||
ReasonStyle topRcmdReasonStyle = 9;
|
||||
}
|
||||
|
||||
//
|
||||
message EntranceItem {
|
||||
//
|
||||
string goto = 1;
|
||||
|
||||
//
|
||||
string icon = 2;
|
||||
|
||||
//
|
||||
string title = 3;
|
||||
|
||||
//
|
||||
string moduleId = 4;
|
||||
|
||||
//
|
||||
string uri = 5;
|
||||
|
||||
//
|
||||
int64 entranceId = 6;
|
||||
|
||||
//
|
||||
Bubble bubble = 7;
|
||||
|
||||
//
|
||||
int32 entranceType = 8;
|
||||
}
|
||||
|
||||
//
|
||||
message HotTopic {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
string desc = 2;
|
||||
|
||||
//
|
||||
repeated HotTopicItem items = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message HotTopicItem {
|
||||
//
|
||||
string cover = 1;
|
||||
|
||||
//
|
||||
string uri = 2;
|
||||
|
||||
//
|
||||
string param = 3;
|
||||
|
||||
//
|
||||
string name = 4;
|
||||
}
|
||||
|
||||
//
|
||||
message HotwordEntrance {
|
||||
//
|
||||
int64 hotwordId = 1;
|
||||
|
||||
//
|
||||
string hotText = 2;
|
||||
|
||||
//
|
||||
string h5Url = 3;
|
||||
|
||||
//
|
||||
string icon = 4;
|
||||
}
|
||||
|
||||
//
|
||||
message LargeCoverV1 {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
string coverGif = 2;
|
||||
|
||||
//
|
||||
Avatar avatar = 3;
|
||||
|
||||
//
|
||||
string coverLeftText1 = 4;
|
||||
|
||||
//
|
||||
string coverLeftText2 = 5;
|
||||
|
||||
//
|
||||
string coverLeftText3 = 6;
|
||||
|
||||
//
|
||||
string coverBadge = 7;
|
||||
|
||||
//
|
||||
string topRcmdReason = 8;
|
||||
|
||||
//
|
||||
string bottomRcmdReason = 9;
|
||||
|
||||
//
|
||||
string desc = 10;
|
||||
|
||||
//
|
||||
int32 officialIcon = 11;
|
||||
|
||||
//
|
||||
int32 canPlay = 12;
|
||||
|
||||
//
|
||||
ReasonStyle topRcmdReasonStyle = 13;
|
||||
|
||||
//
|
||||
ReasonStyle bottomRcmdReasonStyle = 14;
|
||||
|
||||
//
|
||||
ReasonStyle rcmdReasonStyleV2 = 15;
|
||||
|
||||
//
|
||||
ReasonStyle leftCoverBadgeStyle = 16;
|
||||
|
||||
//
|
||||
ReasonStyle rightCoverBadgeStyle = 17;
|
||||
|
||||
//
|
||||
string coverBadge2 = 18;
|
||||
|
||||
//
|
||||
LikeButton likeButton = 19;
|
||||
|
||||
//
|
||||
int32 titleSingleLine = 20;
|
||||
|
||||
//
|
||||
string coverRightText = 21;
|
||||
}
|
||||
|
||||
//
|
||||
message LargeCoverV4 {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
string coverLeftText1 = 2;
|
||||
|
||||
//
|
||||
string coverLeftText2 = 3;
|
||||
|
||||
//
|
||||
string coverLeftText3 = 4;
|
||||
|
||||
//
|
||||
string coverBadge = 5;
|
||||
|
||||
//
|
||||
int32 canPlay = 6;
|
||||
|
||||
//
|
||||
Up up = 7;
|
||||
|
||||
//
|
||||
string shortLink = 8;
|
||||
|
||||
//
|
||||
string shareSubtitle = 9;
|
||||
|
||||
//
|
||||
string playNumber = 10;
|
||||
|
||||
//
|
||||
string bvid = 11;
|
||||
|
||||
//
|
||||
string subParam = 12;
|
||||
}
|
||||
|
||||
//
|
||||
message LikeButton {
|
||||
//
|
||||
int64 aid = 1;
|
||||
|
||||
//
|
||||
int32 count = 2;
|
||||
|
||||
//
|
||||
bool showCount = 3;
|
||||
|
||||
//
|
||||
string event = 4;
|
||||
|
||||
//
|
||||
int32 selected = 5;
|
||||
|
||||
//
|
||||
string eventV2 = 6;
|
||||
}
|
||||
|
||||
//
|
||||
message Mask {
|
||||
//
|
||||
Avatar avatar = 1;
|
||||
|
||||
//
|
||||
Button button = 2;
|
||||
}
|
||||
|
||||
//
|
||||
message MiddleCoverV3 {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
string desc1 = 2;
|
||||
|
||||
//
|
||||
string desc2 = 3;
|
||||
|
||||
//
|
||||
ReasonStyle coverBadgeStyle = 4;
|
||||
}
|
||||
|
||||
//
|
||||
message PlayerArgs {
|
||||
//
|
||||
int32 isLive = 1;
|
||||
|
||||
//
|
||||
int64 aid = 2;
|
||||
|
||||
//
|
||||
int64 cid = 3;
|
||||
|
||||
//
|
||||
int32 subType = 4;
|
||||
|
||||
//
|
||||
int64 roomId = 5;
|
||||
|
||||
//
|
||||
int64 epId = 7;
|
||||
|
||||
//
|
||||
int32 isPreview = 8;
|
||||
|
||||
//
|
||||
string type = 9;
|
||||
|
||||
//
|
||||
int64 duration = 10;
|
||||
|
||||
//
|
||||
int64 seasonId = 11;
|
||||
}
|
||||
|
||||
//
|
||||
message PopularTopEntrance {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
repeated EntranceItem items = 2;
|
||||
}
|
||||
|
||||
//
|
||||
message RcmdOneItem {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
ReasonStyle topRcmdReasonStyle = 2;
|
||||
|
||||
//
|
||||
SmallCoverRcmdItem item = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message ReasonStyle {
|
||||
//
|
||||
string text = 1;
|
||||
|
||||
//
|
||||
string textColor = 2;
|
||||
|
||||
//
|
||||
string bgColor = 3;
|
||||
|
||||
//
|
||||
string borderColor = 4;
|
||||
|
||||
//
|
||||
string iconUrl = 5;
|
||||
|
||||
//
|
||||
string textColorNight = 6;
|
||||
|
||||
//
|
||||
string bgColorNight = 7;
|
||||
|
||||
//
|
||||
string borderColorNight = 8;
|
||||
|
||||
//
|
||||
string iconNightUrl = 9;
|
||||
|
||||
//
|
||||
int32 bgStyle = 10;
|
||||
|
||||
//
|
||||
string uri = 11;
|
||||
|
||||
//
|
||||
string iconBgUrl = 12;
|
||||
|
||||
//
|
||||
string event = 13;
|
||||
|
||||
//
|
||||
string eventV2 = 14;
|
||||
|
||||
//
|
||||
int32 rightIconType = 15;
|
||||
|
||||
//
|
||||
string leftIconType = 16;
|
||||
}
|
||||
|
||||
//
|
||||
message Relation {
|
||||
//
|
||||
int32 status = 1;
|
||||
|
||||
//
|
||||
int32 isFollow = 2;
|
||||
|
||||
//
|
||||
int32 isFollowed = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message SharePlane {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string shareSubtitle = 2;
|
||||
|
||||
//
|
||||
string desc = 3;
|
||||
|
||||
//
|
||||
string cover = 4;
|
||||
|
||||
//
|
||||
int64 aid = 5;
|
||||
|
||||
//
|
||||
string bvid = 6;
|
||||
|
||||
//
|
||||
map<string,bool> shareTo = 7;
|
||||
|
||||
//
|
||||
string author = 8;
|
||||
|
||||
//
|
||||
int64 authorId = 9;
|
||||
|
||||
//
|
||||
string shortLink = 10;
|
||||
|
||||
//
|
||||
string playNumber = 11;
|
||||
}
|
||||
|
||||
//
|
||||
message SmallCoverRcmdItem {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string cover = 2;
|
||||
|
||||
//
|
||||
string uri = 3;
|
||||
|
||||
//
|
||||
string param = 4;
|
||||
|
||||
//
|
||||
string goto = 5;
|
||||
|
||||
//
|
||||
string coverRightText1 = 6;
|
||||
|
||||
//
|
||||
string rightDesc1 = 7;
|
||||
|
||||
//
|
||||
string rightDesc2 = 8;
|
||||
|
||||
//
|
||||
string coverGif = 9;
|
||||
|
||||
//
|
||||
int32 rightIcon1 = 10;
|
||||
|
||||
//
|
||||
int32 rightIcon2 = 11;
|
||||
}
|
||||
|
||||
//
|
||||
message SmallCoverV5 {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
string coverGif = 2;
|
||||
|
||||
//
|
||||
Up up = 3;
|
||||
|
||||
//
|
||||
string coverRightText1 = 4;
|
||||
|
||||
//
|
||||
string rightDesc1 = 5;
|
||||
|
||||
//
|
||||
string rightDesc2 = 6;
|
||||
|
||||
//
|
||||
ReasonStyle rcmdReasonStyle = 7;
|
||||
|
||||
//
|
||||
HotwordEntrance hotwordEntrance = 8;
|
||||
|
||||
//
|
||||
ReasonStyle cornerMarkStyle = 9;
|
||||
|
||||
//
|
||||
int32 rightIcon1 = 10;
|
||||
|
||||
//
|
||||
int32 rightIcon2 = 11;
|
||||
|
||||
//
|
||||
ReasonStyle leftCornerMarkStyle = 12;
|
||||
}
|
||||
|
||||
//
|
||||
message ThreeItemAllV2 {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
ReasonStyle topRcmdReasonStyle = 2;
|
||||
|
||||
//
|
||||
repeated TwoItemHV1Item item = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message ThreeItemV1 {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
int32 titleIcon = 2;
|
||||
|
||||
//
|
||||
string moreUri = 3;
|
||||
|
||||
//
|
||||
string moreText = 4;
|
||||
|
||||
//
|
||||
repeated ThreeItemV1Item items = 5;
|
||||
}
|
||||
|
||||
//
|
||||
message ThreeItemV1Item {
|
||||
//
|
||||
Base base = 1;
|
||||
|
||||
//
|
||||
string coverLeftText = 2;
|
||||
|
||||
//
|
||||
int32 coverLeftIcon = 3;
|
||||
|
||||
//
|
||||
string desc1 = 4;
|
||||
|
||||
//
|
||||
string desc2 = 5;
|
||||
|
||||
//
|
||||
string badge = 6;
|
||||
}
|
||||
|
||||
//
|
||||
message ThreePoint {
|
||||
//
|
||||
repeated DislikeReason dislikeReasons = 1;
|
||||
|
||||
//
|
||||
repeated DislikeReason feedbacks = 2;
|
||||
|
||||
//
|
||||
int32 watchLater = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message ThreePointV2 {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string subtitle = 2;
|
||||
|
||||
//
|
||||
repeated DislikeReason reasons = 3;
|
||||
|
||||
//
|
||||
string type = 4;
|
||||
|
||||
//
|
||||
int64 id = 5;
|
||||
}
|
||||
|
||||
//
|
||||
message ThreePointV3 {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string selectedTitle = 2;
|
||||
|
||||
//
|
||||
string subtitle = 3;
|
||||
|
||||
//
|
||||
repeated DislikeReason reasons = 4;
|
||||
|
||||
//
|
||||
string type = 5;
|
||||
|
||||
//
|
||||
int64 id = 6;
|
||||
|
||||
//
|
||||
int32 selected = 7;
|
||||
|
||||
//
|
||||
string icon = 8;
|
||||
|
||||
//
|
||||
string selectedIcon = 9;
|
||||
|
||||
//
|
||||
string url = 10;
|
||||
|
||||
//
|
||||
int32 defaultId = 11;
|
||||
}
|
||||
|
||||
//
|
||||
message ThreePointV4 {
|
||||
//
|
||||
SharePlane sharePlane = 1;
|
||||
|
||||
//
|
||||
WatchLater watchLater = 2;
|
||||
}
|
||||
|
||||
//
|
||||
message TwoItemHV1Item {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string cover = 2;
|
||||
|
||||
//
|
||||
string uri = 3;
|
||||
|
||||
//
|
||||
string param = 4;
|
||||
|
||||
//
|
||||
Args args = 5;
|
||||
|
||||
//
|
||||
string goto = 6;
|
||||
|
||||
//
|
||||
string coverLeftText1 = 7;
|
||||
|
||||
//
|
||||
int32 coverLeftIcon1 = 8;
|
||||
|
||||
//
|
||||
string coverRightText = 9;
|
||||
}
|
||||
|
||||
//
|
||||
message Up {
|
||||
//
|
||||
int64 id = 1;
|
||||
|
||||
//
|
||||
string name = 2;
|
||||
|
||||
//
|
||||
string desc = 3;
|
||||
|
||||
//
|
||||
Avatar avatar = 4;
|
||||
|
||||
//
|
||||
int32 officialIcon = 5;
|
||||
|
||||
//
|
||||
Button descButton = 6;
|
||||
|
||||
//
|
||||
string cooperation = 8;
|
||||
}
|
||||
|
||||
//
|
||||
message WatchLater {
|
||||
//
|
||||
int64 aid = 1;
|
||||
|
||||
//
|
||||
string bvid = 2;
|
||||
}
|
||||
594
grpc_api/bilibili/app/interfaces/v1.proto
Normal file
594
grpc_api/bilibili/app/interfaces/v1.proto
Normal file
@@ -0,0 +1,594 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.interfaces.v1;
|
||||
|
||||
import "bilibili/app/playurl/v1.proto";
|
||||
|
||||
//历史记录接口
|
||||
service History {
|
||||
//搜索历史记录
|
||||
//https://app.bilibili.com/bilibili.app.interface.v1.History/Search
|
||||
rpc search (SearchReq) returns (SearchReply);
|
||||
|
||||
//?
|
||||
//https://app.bilibili.com/bilibili.app.interface.v1.History/LatestHistory
|
||||
rpc latestHistory (LatestHistoryReq) returns (LatestHistoryReply);
|
||||
|
||||
//获取历史记录业务类型
|
||||
//https://app.bilibili.com/bilibili.app.interface.v1.History/HistoryTab
|
||||
rpc historyTab (HistoryTabReq) returns (HistoryTabReply);
|
||||
|
||||
//删除历史记录
|
||||
//https://app.bilibili.com/bilibili.app.interface.v1.History/Delete
|
||||
rpc delete (DeleteReq) returns (NoReply);
|
||||
|
||||
//获取历史记录列表v2接口
|
||||
//https://app.bilibili.com/bilibili.app.interface.v1.History/CursorV2
|
||||
rpc cursorV2 (CursorV2Req) returns (CursorV2Reply);
|
||||
|
||||
//获取历史记录列表v1接口
|
||||
//https://app.bilibili.com/bilibili.app.interface.v1.History/Cursor
|
||||
rpc cursor (CursorReq) returns (CursorReply);
|
||||
|
||||
//清空历史记录
|
||||
//https://app.bilibili.com/bilibili.app.interface.v1.History/Clear
|
||||
rpc clear (ClearReq) returns (NoReply);
|
||||
}
|
||||
|
||||
//搜索接口
|
||||
service Search {
|
||||
//获取搜索建议
|
||||
//https://app.bilibili.com/bilibili.app.interface.v1.Search/Suggest3
|
||||
rpc suggest3 (SuggestionResult3Req) returns (SuggestionResult3Reply);
|
||||
}
|
||||
|
||||
//搜索历史记录-请求
|
||||
message SearchReq {
|
||||
//关键词
|
||||
string keyword = 1;
|
||||
|
||||
//页码
|
||||
int64 pn = 2;
|
||||
|
||||
//业务选择
|
||||
string business = 3;
|
||||
}
|
||||
|
||||
//搜索历史记录-回复
|
||||
message SearchReply {
|
||||
//历史记录条目列表
|
||||
repeated CursorItem items = 1;
|
||||
|
||||
//是否未拉取完
|
||||
bool hasMore = 2;
|
||||
|
||||
//页面信息
|
||||
Page page = 3;
|
||||
}
|
||||
|
||||
//?-请求
|
||||
message LatestHistoryReq {
|
||||
//业务选择
|
||||
string business = 1;
|
||||
|
||||
//视频预加载配置
|
||||
PlayerPreloadParams playerPreload = 2;
|
||||
}
|
||||
|
||||
//?-回复
|
||||
message LatestHistoryReply {
|
||||
//历史记录条目
|
||||
CursorItem items = 1;
|
||||
|
||||
//
|
||||
string scene = 2;
|
||||
}
|
||||
|
||||
//获取历史记录业务类型-请求
|
||||
message HistoryTabReq {
|
||||
//
|
||||
string business = 1;
|
||||
|
||||
//
|
||||
HistorySource source = 2;
|
||||
|
||||
//
|
||||
string keyword = 3;
|
||||
}
|
||||
|
||||
//获取历史记录业务类型-回复
|
||||
message HistoryTabReply {
|
||||
//
|
||||
repeated CursorTab tab = 1;
|
||||
}
|
||||
|
||||
//删除历史记录-请求
|
||||
message DeleteReq {
|
||||
//历史记录信息
|
||||
HisInfo hisInfo = 1;
|
||||
}
|
||||
|
||||
//获取历史记录列表v2接口-请求
|
||||
message CursorV2Req {
|
||||
//游标信息
|
||||
Cursor cursor = 1;
|
||||
|
||||
//业务选择
|
||||
string business = 2;
|
||||
|
||||
//视频预加载配置
|
||||
PlayerPreloadParams playerPreload = 3;
|
||||
|
||||
//
|
||||
bilibili.app.playurl.v1.PlayerArgs playerArgs = 4;
|
||||
}
|
||||
|
||||
//获取历史记录列表v2接口-回复
|
||||
message CursorV2Reply {
|
||||
//历史记录条目列表
|
||||
repeated CursorItem items = 1;
|
||||
|
||||
//游标信息
|
||||
Cursor cursor = 2;
|
||||
|
||||
//是否未拉取完
|
||||
bool hasMore = 3;
|
||||
}
|
||||
|
||||
//获取历史记录列表v1接口-请求
|
||||
message CursorReq {
|
||||
//游标信息
|
||||
Cursor cursor = 1;
|
||||
|
||||
//业务选择
|
||||
string business = 2;
|
||||
|
||||
//视频预加载配置
|
||||
PlayerPreloadParams playerPreload = 3;
|
||||
}
|
||||
|
||||
//获取历史记录列表v1接口-回复
|
||||
message CursorReply {
|
||||
//历史记录条目列表
|
||||
repeated CursorItem items = 1;
|
||||
|
||||
//业务类型表
|
||||
repeated CursorTab tab = 2;
|
||||
|
||||
//游标信息
|
||||
Cursor cursor = 3;
|
||||
|
||||
//是否未拉取完
|
||||
bool hasMore = 4;
|
||||
}
|
||||
|
||||
//清空历史记录-请求
|
||||
message ClearReq {
|
||||
//业务选择
|
||||
string business = 1;
|
||||
}
|
||||
|
||||
//空回复
|
||||
message NoReply {
|
||||
|
||||
}
|
||||
|
||||
//获取搜索建议-请求
|
||||
message SuggestionResult3Req {
|
||||
//关键字
|
||||
string keyword = 1;
|
||||
|
||||
//是否语法高亮
|
||||
int32 highlight = 2;
|
||||
|
||||
//是否青少年模式
|
||||
int32 teenagersMode = 3;
|
||||
}
|
||||
|
||||
//获取搜索建议-回复
|
||||
message SuggestionResult3Reply {
|
||||
//搜索追踪id
|
||||
string trackid = 1;
|
||||
|
||||
//搜索建议条目列表
|
||||
repeated ResultItem list = 2;
|
||||
|
||||
//
|
||||
string expStr = 3;
|
||||
}
|
||||
|
||||
//专栏条目类型
|
||||
message CardArticle {
|
||||
//封面uel
|
||||
repeated string covers = 1;
|
||||
|
||||
//作者昵称
|
||||
string name = 2;
|
||||
|
||||
//作者UID
|
||||
int64 mid = 3;
|
||||
|
||||
//
|
||||
bool displayAttention = 4;
|
||||
|
||||
//标志名
|
||||
string badge = 5;
|
||||
|
||||
//
|
||||
Relation relation = 6;
|
||||
}
|
||||
|
||||
//课程条目类型
|
||||
message CardCheese {
|
||||
//封面url
|
||||
string cover = 1;
|
||||
|
||||
//观看进度
|
||||
int64 progress = 2;
|
||||
|
||||
//总计时长
|
||||
int64 duration = 3;
|
||||
|
||||
//单集标题
|
||||
string subtitle = 4;
|
||||
}
|
||||
|
||||
//直播条目类型
|
||||
message CardLive {
|
||||
//封面url
|
||||
string cover = 1;
|
||||
|
||||
//主播昵称
|
||||
string name = 2;
|
||||
|
||||
//主播UID
|
||||
int64 mid = 3;
|
||||
|
||||
//直播分区名
|
||||
string tag = 4;
|
||||
|
||||
//
|
||||
int32 ststus = 5;
|
||||
|
||||
//
|
||||
bool displayAttention = 6;
|
||||
|
||||
//
|
||||
Relation relation = 7;
|
||||
}
|
||||
|
||||
//pgc稿件条目类型
|
||||
message CardOGV {
|
||||
//封面url
|
||||
string cover = 1;
|
||||
|
||||
//观看进度
|
||||
int64 progress = 2;
|
||||
|
||||
//总计时长
|
||||
int64 duration = 3;
|
||||
|
||||
//单集标题
|
||||
string subtitle = 4;
|
||||
}
|
||||
|
||||
//ugc稿件条目类型
|
||||
message CardUGC {
|
||||
//封面url
|
||||
string cover = 1;
|
||||
|
||||
//观看进度
|
||||
int64 progress = 2;
|
||||
|
||||
//视频长度
|
||||
int64 duration = 3;
|
||||
|
||||
//UP主昵称
|
||||
string name = 4;
|
||||
|
||||
//UP主UID
|
||||
int64 mid = 5;
|
||||
|
||||
//
|
||||
bool displayAttention = 6;
|
||||
|
||||
//观看视频cid
|
||||
int64 cid = 7;
|
||||
|
||||
//观看视频分P
|
||||
int32 page = 8;
|
||||
|
||||
//
|
||||
string subtitle = 9;
|
||||
|
||||
//
|
||||
Relation relation = 10;
|
||||
|
||||
//稿件bvid
|
||||
string bvid = 11;
|
||||
|
||||
//总分P数
|
||||
int64 videos = 12;
|
||||
|
||||
//短链接
|
||||
string shortLink = 13;
|
||||
|
||||
//副标题文案
|
||||
string shareSubtitle = 14;
|
||||
|
||||
//播放数
|
||||
int64 view = 15;
|
||||
}
|
||||
|
||||
//游标信息
|
||||
message Cursor {
|
||||
//起始时间戳
|
||||
int64 max = 1;
|
||||
|
||||
//
|
||||
int32 maxTp = 2;
|
||||
}
|
||||
|
||||
//历史记录条目
|
||||
message CursorItem {
|
||||
//主体数据
|
||||
oneof cardItemCase {
|
||||
//ugc稿件
|
||||
CardUGC cardUGC = 1;
|
||||
|
||||
//pgc稿件
|
||||
CardOGV cardOGV = 2;
|
||||
|
||||
//专栏
|
||||
CardArticle cardArticle = 3;
|
||||
|
||||
//直播
|
||||
CardLive cardLive = 4;
|
||||
|
||||
//课程
|
||||
CardCheese cardCheese = 5;
|
||||
}
|
||||
|
||||
//标题
|
||||
string title = 6;
|
||||
|
||||
//目标uri/url
|
||||
string uri = 7;
|
||||
|
||||
//观看时间
|
||||
int64 viewAt = 8;
|
||||
|
||||
//历史记录id
|
||||
int64 kid = 9;
|
||||
|
||||
//对象id
|
||||
int64 oid = 10;
|
||||
|
||||
//业务类型
|
||||
string business = 11;
|
||||
|
||||
//业务类型代码
|
||||
int32 tp = 12;
|
||||
|
||||
//设备标识
|
||||
DeviceType dt = 13;
|
||||
|
||||
//
|
||||
bool hasShare = 14;
|
||||
}
|
||||
|
||||
//业务分类表
|
||||
message CursorTab {
|
||||
//业务名
|
||||
string business = 1;
|
||||
|
||||
//名称
|
||||
string name = 2;
|
||||
|
||||
//路由uri
|
||||
string router = 3;
|
||||
|
||||
//
|
||||
bool focus = 4;
|
||||
}
|
||||
|
||||
//设备标识代码
|
||||
enum DT {
|
||||
//未知
|
||||
Unknown_VALUE = 0;
|
||||
|
||||
//手机端
|
||||
Phone_VALUE = 1;
|
||||
|
||||
//ipad端
|
||||
Pad_VALUE = 2;
|
||||
|
||||
//web端
|
||||
PC_VALUE = 3;
|
||||
}
|
||||
|
||||
//设备标识
|
||||
message DeviceType {
|
||||
//设备标识代码
|
||||
DT type = 1;
|
||||
|
||||
//图标url
|
||||
string icon = 2;
|
||||
}
|
||||
|
||||
//历史记录信息
|
||||
message HisInfo {
|
||||
//业务选择
|
||||
string business = 1;
|
||||
|
||||
//历史记录id
|
||||
int64 kid = 2;
|
||||
}
|
||||
|
||||
//
|
||||
enum HistorySource {
|
||||
//
|
||||
history_VALUE = 0;
|
||||
|
||||
//
|
||||
shopping_VALUE = 1;
|
||||
}
|
||||
|
||||
//
|
||||
message OfficialVerify {
|
||||
//
|
||||
int32 type = 1;
|
||||
|
||||
//
|
||||
string desc = 2;
|
||||
}
|
||||
|
||||
//页面信息
|
||||
message Page {
|
||||
//当前页码
|
||||
int64 pn = 1;
|
||||
|
||||
//总计条目数
|
||||
int64 total = 2;
|
||||
}
|
||||
|
||||
//视频预加载配置
|
||||
message PlayerPreloadParams {
|
||||
//清晰度
|
||||
int64 qn = 1;
|
||||
|
||||
//
|
||||
int64 fnver = 2;
|
||||
|
||||
//流类型
|
||||
int64 fnval = 3;
|
||||
|
||||
//强制域名
|
||||
int64 forceHost = 4;
|
||||
|
||||
//是否4K
|
||||
int64 fourk = 5;
|
||||
}
|
||||
|
||||
//
|
||||
message ReasonStyle {
|
||||
//
|
||||
string text = 1;
|
||||
|
||||
//
|
||||
string textColor = 2;
|
||||
|
||||
//
|
||||
string textColorNight = 3;
|
||||
|
||||
//
|
||||
string bgColor = 4;
|
||||
|
||||
//
|
||||
string bgColorNight = 5;
|
||||
|
||||
//
|
||||
string borderColor = 6;
|
||||
|
||||
//
|
||||
string borderColorNight = 7;
|
||||
|
||||
//
|
||||
int32 bgStyle = 8;
|
||||
}
|
||||
|
||||
//
|
||||
message Relation {
|
||||
//
|
||||
int32 status = 1;
|
||||
|
||||
//
|
||||
int32 isFollow = 2;
|
||||
|
||||
//
|
||||
int32 isFollowed = 3;
|
||||
}
|
||||
|
||||
//搜索建议条目
|
||||
message ResultItem {
|
||||
//来源
|
||||
string from = 1;
|
||||
|
||||
//显示结果(语法高亮)
|
||||
string title = 2;
|
||||
|
||||
//结果
|
||||
string keyword = 3;
|
||||
|
||||
//序号
|
||||
int32 position = 4;
|
||||
|
||||
//
|
||||
string cover = 5;
|
||||
|
||||
//
|
||||
double coverSize = 6;
|
||||
|
||||
//
|
||||
string sugType = 7;
|
||||
|
||||
//
|
||||
int32 termType = 8;
|
||||
|
||||
//
|
||||
string goto = 9;
|
||||
|
||||
//
|
||||
string uri = 10;
|
||||
|
||||
//
|
||||
OfficialVerify officialVerify = 11;
|
||||
|
||||
//
|
||||
string param = 12;
|
||||
|
||||
//
|
||||
int64 mid = 13;
|
||||
|
||||
//
|
||||
int32 fans = 14;
|
||||
|
||||
//
|
||||
int32 level = 15;
|
||||
|
||||
//
|
||||
int32 archives = 16;
|
||||
|
||||
//
|
||||
int64 ptime = 17;
|
||||
|
||||
//
|
||||
string seasonTypeName = 18;
|
||||
|
||||
//
|
||||
string area = 19;
|
||||
|
||||
//
|
||||
string style = 20;
|
||||
|
||||
//
|
||||
string label = 21;
|
||||
|
||||
//
|
||||
double rating = 22;
|
||||
|
||||
//
|
||||
int32 vote = 23;
|
||||
|
||||
//
|
||||
repeated ReasonStyle badges = 24;
|
||||
|
||||
//
|
||||
string styles = 25;
|
||||
|
||||
//
|
||||
int64 moduleId = 26;
|
||||
|
||||
//
|
||||
string liveLink = 27;
|
||||
}
|
||||
844
grpc_api/bilibili/app/playurl/v1.proto
Normal file
844
grpc_api/bilibili/app/playurl/v1.proto
Normal file
@@ -0,0 +1,844 @@
|
||||
//APP端视频播放v1接口
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.playurl.v1;
|
||||
|
||||
//
|
||||
service PlayURL {
|
||||
//获取播放界面配置
|
||||
//https://app.bilibili.com/bilibili.app.playurl.v1.PlayURL/PlayConf
|
||||
rpc playConf (PlayConfReq) returns (PlayConfReply);
|
||||
|
||||
//
|
||||
//
|
||||
rpc playConfEdit (PlayConfEditReq) returns (PlayConfEditReply);
|
||||
|
||||
//视频url
|
||||
//
|
||||
rpc playURL (PlayURLReq) returns (PlayURLReply);
|
||||
|
||||
//视频播放业务数据
|
||||
//https://app.bilibili.com/bilibili.app.playurl.v1.PlayURL/PlayView
|
||||
rpc playView (PlayViewReq) returns (PlayViewReply);
|
||||
|
||||
//
|
||||
//
|
||||
rpc project (ProjectReq) returns (ProjectReply);
|
||||
}
|
||||
|
||||
//获取播放界面配置-请求
|
||||
message PlayConfReq {
|
||||
|
||||
}
|
||||
|
||||
//获取播放界面配置-回复
|
||||
message PlayConfReply {
|
||||
//播放控件用户自定义配置
|
||||
PlayAbilityConf playConf = 1;
|
||||
}
|
||||
|
||||
//-请求
|
||||
message PlayConfEditReq {
|
||||
//
|
||||
repeated PlayConfState playConf = 1;
|
||||
}
|
||||
|
||||
//-回复
|
||||
message PlayConfEditReply {
|
||||
|
||||
}
|
||||
|
||||
//视频url-请求
|
||||
message PlayURLReq {
|
||||
//稿件avid
|
||||
int64 aid = 1;
|
||||
|
||||
//视频cid
|
||||
int64 cid = 2;
|
||||
|
||||
//清晰度
|
||||
int64 qn = 3;
|
||||
|
||||
//流类型
|
||||
int32 fnver = 4;
|
||||
|
||||
//
|
||||
int32 fnval = 5;
|
||||
|
||||
//下载模式
|
||||
//0:播放 1:flv下载 2:dash下载
|
||||
uint32 download = 6;
|
||||
|
||||
//流url强制是用域名
|
||||
//0:允许使用ip 1:使用http 2:使用https
|
||||
int32 forceHost = 7;
|
||||
|
||||
//允许4K
|
||||
bool fourk = 8;
|
||||
|
||||
//
|
||||
string spmid = 9;
|
||||
|
||||
//
|
||||
string fromSpmid = 10;
|
||||
}
|
||||
|
||||
//视频url-回复
|
||||
message PlayURLReply {
|
||||
//
|
||||
uint32 quality = 1;
|
||||
|
||||
//
|
||||
string format = 2;
|
||||
|
||||
//
|
||||
uint64 timelength = 3;
|
||||
|
||||
//
|
||||
uint32 videoCodecid = 4;
|
||||
|
||||
//
|
||||
uint32 fnver = 5;
|
||||
|
||||
//
|
||||
uint32 fnval = 6;
|
||||
|
||||
//
|
||||
bool videoProject = 7;
|
||||
|
||||
//
|
||||
repeated ResponseUrl durl = 8;
|
||||
|
||||
//
|
||||
ResponseDash dash = 9;
|
||||
|
||||
//
|
||||
int32 noRexcode = 10;
|
||||
|
||||
//
|
||||
UpgradeLimit upgradeLimit = 11;
|
||||
|
||||
//
|
||||
repeated FormatDescription supportFormats = 12;
|
||||
|
||||
//
|
||||
VideoType type = 13;
|
||||
}
|
||||
|
||||
//-请求
|
||||
message PlayViewReq {
|
||||
//稿件avid
|
||||
int64 aid = 1;
|
||||
|
||||
//视频cid
|
||||
int64 cid = 2;
|
||||
|
||||
//清晰度
|
||||
int64 qn = 3;
|
||||
|
||||
//流类型
|
||||
int32 fnver = 4;
|
||||
|
||||
//
|
||||
int32 fnval = 5;
|
||||
|
||||
//下载模式
|
||||
//0:播放 1:flv下载 2:dash下载
|
||||
uint32 download = 6;
|
||||
|
||||
//流url强制是用域名
|
||||
//0:允许使用ip 1:使用http 2:使用https
|
||||
int32 forceHost = 7;
|
||||
|
||||
//允许4K
|
||||
bool fourk = 8;
|
||||
|
||||
//
|
||||
string spmid = 9;
|
||||
|
||||
//
|
||||
string fromSpmid = 10;
|
||||
|
||||
//
|
||||
int32 teenagersMode = 11;
|
||||
|
||||
//
|
||||
CodeType preferCodecType = 12;
|
||||
}
|
||||
|
||||
//-回复
|
||||
message PlayViewReply {
|
||||
//视频流信息
|
||||
VideoInfo info = 1;
|
||||
|
||||
//播放控件用户自定义配置
|
||||
PlayAbilityConf PlayConf = 2;
|
||||
|
||||
//互动视频升级提示
|
||||
UpgradeLimit upgradeLimit = 3;
|
||||
|
||||
//
|
||||
Chronos chronos = 4;
|
||||
|
||||
//播放控件稿件配置
|
||||
PlayArcConf playArc = 5;
|
||||
|
||||
//事件
|
||||
Event event = 6;
|
||||
}
|
||||
|
||||
//-请求
|
||||
message ProjectReq {
|
||||
//稿件avid
|
||||
int64 aid = 1;
|
||||
|
||||
//视频cid
|
||||
int64 cid = 2;
|
||||
|
||||
//清晰度
|
||||
int64 qn = 3;
|
||||
|
||||
//流类型
|
||||
int32 fnver = 4;
|
||||
|
||||
//
|
||||
int32 fnval = 5;
|
||||
|
||||
//下载模式
|
||||
//0:播放 1:flv下载 2:dash下载
|
||||
uint32 download = 6;
|
||||
|
||||
//流url强制是用域名
|
||||
//0:允许使用ip 1:使用http 2:使用https
|
||||
int32 forceHost = 7;
|
||||
|
||||
//允许4K
|
||||
bool fourk = 8;
|
||||
|
||||
//
|
||||
string spmid = 9;
|
||||
|
||||
//
|
||||
string fromSpmid = 10;
|
||||
|
||||
//
|
||||
int32 protocol = 11;
|
||||
|
||||
//
|
||||
int32 deviceType = 12;
|
||||
}
|
||||
|
||||
//-回复
|
||||
message ProjectReply {
|
||||
//
|
||||
PlayURLReply project = 1;
|
||||
}
|
||||
|
||||
//配置项
|
||||
message ArcConf {
|
||||
//是否开启
|
||||
bool isSupport=1;
|
||||
}
|
||||
|
||||
//
|
||||
message Chronos {
|
||||
//
|
||||
string md5=1;
|
||||
|
||||
//
|
||||
string file=2;
|
||||
}
|
||||
|
||||
//
|
||||
message CloudConf {
|
||||
//
|
||||
bool show = 1;
|
||||
|
||||
//
|
||||
ConfType confType = 2;
|
||||
|
||||
//
|
||||
FieldValue fieldValue = 3;
|
||||
}
|
||||
|
||||
//
|
||||
enum CodeType {
|
||||
//
|
||||
NOCODE_VALUE = 0;
|
||||
|
||||
//
|
||||
CODE264_VALUE = 1;
|
||||
|
||||
//
|
||||
CODE265_VALUE = 2;
|
||||
}
|
||||
|
||||
//
|
||||
enum ConfType {
|
||||
//
|
||||
NoType_VALUE = 0;
|
||||
|
||||
//
|
||||
FLIPCONF_VALUE = 1;
|
||||
|
||||
//
|
||||
CASTCONF_VALUE = 2;
|
||||
|
||||
//
|
||||
FEEDBACK_VALUE = 3;
|
||||
|
||||
//
|
||||
SUBTITLE_VALUE = 4;
|
||||
|
||||
//
|
||||
PLAYBACKRATE_VALUE = 5;
|
||||
|
||||
//
|
||||
TIMEUP_VALUE = 6;
|
||||
|
||||
//
|
||||
PLAYBACKMODE_VALUE = 7;
|
||||
|
||||
//
|
||||
SCALEMODE_VALUE = 8;
|
||||
|
||||
//
|
||||
BACKGROUNDPLAY_VALUE = 9;
|
||||
|
||||
//
|
||||
LIKE_VALUE = 10;
|
||||
|
||||
//
|
||||
DISLIKE_VALUE = 11;
|
||||
|
||||
//
|
||||
COIN_VALUE = 12;
|
||||
|
||||
//
|
||||
ELEC_VALUE = 13;
|
||||
|
||||
//
|
||||
SHARE_VALUE = 14;
|
||||
|
||||
//
|
||||
SCREENSHOT_VALUE = 15;
|
||||
|
||||
//
|
||||
LOCKSCREEN_VALUE = 16;
|
||||
|
||||
//
|
||||
RECOMMEND_VALUE = 17;
|
||||
|
||||
//
|
||||
PLAYBACKSPEED_VALUE = 18;
|
||||
|
||||
//
|
||||
DEFINITION_VALUE = 19;
|
||||
|
||||
//
|
||||
SELECTIONS_VALUE = 20;
|
||||
|
||||
//
|
||||
NEXT_VALUE = 21;
|
||||
|
||||
//
|
||||
EDITDM_VALUE = 22;
|
||||
|
||||
//
|
||||
SMALLWINDOW_VALUE = 23;
|
||||
|
||||
//
|
||||
SHAKE_VALUE = 24;
|
||||
|
||||
//
|
||||
OUTERDM_VALUE = 25;
|
||||
|
||||
//
|
||||
INNERDM_VALUE = 26;
|
||||
|
||||
//
|
||||
PANORAMA_VALUE = 27;
|
||||
|
||||
//
|
||||
DOLBY_VALUE = 28;
|
||||
}
|
||||
|
||||
//
|
||||
message DashItem {
|
||||
//
|
||||
uint32 id=1;
|
||||
|
||||
//主线流
|
||||
string baseUrl=2;
|
||||
|
||||
//备用流
|
||||
repeated string backupUrl=3;
|
||||
|
||||
//带宽
|
||||
uint32 bandwidth=4;
|
||||
|
||||
//
|
||||
uint32 codecid=5;
|
||||
|
||||
//md5
|
||||
string md5=6;
|
||||
|
||||
//大小
|
||||
uint64 size=7;
|
||||
}
|
||||
|
||||
//dash视频流
|
||||
message DashVideo{
|
||||
//主线流
|
||||
string baseUrl=1;
|
||||
|
||||
//备用流
|
||||
repeated string backupUrl=2;
|
||||
|
||||
//带宽
|
||||
uint32 bandwidth=3;
|
||||
|
||||
//
|
||||
uint32 codecid=4;
|
||||
|
||||
//md5
|
||||
string md5=5;
|
||||
|
||||
//大小
|
||||
uint64 size=6;
|
||||
|
||||
//
|
||||
uint32 audioId=7;
|
||||
|
||||
//是否非全二压
|
||||
bool noRexcode=8;
|
||||
}
|
||||
|
||||
//杜比音频信息
|
||||
message DolbyItem{
|
||||
//
|
||||
int32 type=1;
|
||||
|
||||
//音频流
|
||||
DashItem audio=2;
|
||||
}
|
||||
|
||||
//事件
|
||||
message Event{
|
||||
//震动
|
||||
Shake shake=1;
|
||||
}
|
||||
|
||||
//
|
||||
message FieldValue {
|
||||
//
|
||||
oneof valueCase {
|
||||
//
|
||||
bool value = 1;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
message FormatDescription {
|
||||
//
|
||||
int32 quality = 1;
|
||||
|
||||
//
|
||||
string format = 2;
|
||||
|
||||
//
|
||||
string description = 3;
|
||||
|
||||
//
|
||||
string newDescription = 4;
|
||||
|
||||
//
|
||||
string displayDesc = 5;
|
||||
|
||||
//
|
||||
string superscript = 6;
|
||||
}
|
||||
|
||||
//播放控件用户自定义配置
|
||||
message PlayAbilityConf{
|
||||
//
|
||||
bool backgroundPlayDisable=1;
|
||||
|
||||
//
|
||||
bool flipDisable=2;
|
||||
|
||||
//
|
||||
bool castDisable=3;
|
||||
|
||||
//
|
||||
bool feedbackDisable=4;
|
||||
|
||||
//
|
||||
bool subtitleDisable=5;
|
||||
|
||||
//
|
||||
bool playbackRateDisable=6;
|
||||
|
||||
//
|
||||
bool timeUpDisable=7;
|
||||
|
||||
//
|
||||
bool playbackModeDisable=8;
|
||||
|
||||
//
|
||||
bool scaleModeDisable=9;
|
||||
|
||||
//
|
||||
bool likeDisable=10;
|
||||
|
||||
//
|
||||
bool dislikeDisable=11;
|
||||
|
||||
//
|
||||
bool coinDisable=12;
|
||||
|
||||
//
|
||||
bool elecDisable=13;
|
||||
|
||||
//
|
||||
bool shareDisable=14;
|
||||
|
||||
//
|
||||
bool screenShotDisable=15;
|
||||
|
||||
//
|
||||
bool lockScreenDisable=16;
|
||||
|
||||
//
|
||||
bool recommendDisable=17;
|
||||
|
||||
//
|
||||
bool playbackSpeedDisable=18;
|
||||
|
||||
//
|
||||
bool definitionDisable=19;
|
||||
|
||||
//
|
||||
bool selectionsDisable=20;
|
||||
|
||||
//
|
||||
bool nextDisable=21;
|
||||
|
||||
//
|
||||
bool editDmDisable=22;
|
||||
|
||||
//
|
||||
bool smallWindowDisable=23;
|
||||
|
||||
//
|
||||
bool shakeDisable=24;
|
||||
|
||||
//
|
||||
bool outerDmDisable=25;
|
||||
|
||||
//
|
||||
bool innerDmDisable=26;
|
||||
|
||||
//
|
||||
bool freyaEnterDisable=27;
|
||||
|
||||
//
|
||||
bool dolbyDisable=28;
|
||||
}
|
||||
|
||||
//播放控件稿件配置
|
||||
message PlayArcConf{
|
||||
//后台播放
|
||||
ArcConf backgroundPlayConf=1;
|
||||
|
||||
//镜像反转
|
||||
ArcConf flipConf=2;
|
||||
|
||||
//投屏
|
||||
ArcConf castConf=3;
|
||||
|
||||
//反馈
|
||||
ArcConf feedbackConf=4;
|
||||
|
||||
//字幕
|
||||
ArcConf subtitleConf=5;
|
||||
|
||||
//播放速度
|
||||
ArcConf playbackRateConf=6;
|
||||
|
||||
//定时停止
|
||||
ArcConf timeUpConf=7;
|
||||
|
||||
//播放方式
|
||||
ArcConf playbackModeConf=8;
|
||||
|
||||
//画面尺寸
|
||||
ArcConf scaleModeConf=9;
|
||||
|
||||
//赞
|
||||
ArcConf likeConf=10;
|
||||
|
||||
//踩
|
||||
ArcConf dislikeConf=11;
|
||||
|
||||
//投币
|
||||
ArcConf coinConf=12;
|
||||
|
||||
//充电
|
||||
ArcConf elecConf=13;
|
||||
|
||||
//分享
|
||||
ArcConf shareConf=14;
|
||||
|
||||
//截图
|
||||
ArcConf screenShotConf=15;
|
||||
|
||||
//锁定
|
||||
ArcConf lockScreenConf=16;
|
||||
|
||||
//相关推荐
|
||||
ArcConf recommendConf=17;
|
||||
|
||||
//播放速度
|
||||
ArcConf playbackSpeedConf=18;
|
||||
|
||||
//清晰度
|
||||
ArcConf definitionConf=19;
|
||||
|
||||
//选集
|
||||
ArcConf selectionsConf=20;
|
||||
|
||||
//下一集
|
||||
ArcConf nextConf=21;
|
||||
|
||||
//编辑弹幕
|
||||
ArcConf editDmConf=22;
|
||||
|
||||
//小窗
|
||||
ArcConf smallWindowConf=23;
|
||||
|
||||
//震动
|
||||
ArcConf shakeConf=24;
|
||||
|
||||
//
|
||||
ArcConf outerDmConf=25;
|
||||
|
||||
//
|
||||
ArcConf innerDmConf=26;
|
||||
|
||||
//
|
||||
ArcConf freyaEnterConf=27;
|
||||
|
||||
//
|
||||
ArcConf dolbyConf=28;
|
||||
}
|
||||
|
||||
//
|
||||
message PlayConfState {
|
||||
//
|
||||
ConfType confType = 1;
|
||||
|
||||
//
|
||||
bool show = 2;
|
||||
|
||||
//
|
||||
FieldValue fieldValue = 3;
|
||||
}
|
||||
|
||||
//
|
||||
enum PlayErr {
|
||||
//
|
||||
NoErr_VALUE = 0;
|
||||
|
||||
//
|
||||
WithMultiDeviceLoginErr_VALUE = 1;
|
||||
}
|
||||
|
||||
//
|
||||
message PlayerArgs {
|
||||
//
|
||||
int64 qn = 1;
|
||||
|
||||
//
|
||||
int64 fnver = 2;
|
||||
|
||||
//
|
||||
int64 fnval = 3;
|
||||
|
||||
//
|
||||
int64 forceHost = 4;
|
||||
}
|
||||
|
||||
//
|
||||
message ResponseDash {
|
||||
//
|
||||
repeated DashItem video = 1;
|
||||
|
||||
//
|
||||
repeated DashItem audio = 2;
|
||||
}
|
||||
|
||||
//分段流条目
|
||||
message ResponseUrl{
|
||||
//分段序号
|
||||
uint32 order = 1;
|
||||
|
||||
//分段时长
|
||||
uint64 length = 2;
|
||||
|
||||
//分段大小
|
||||
uint64 size = 3;
|
||||
|
||||
//主线流
|
||||
string url = 4;
|
||||
|
||||
//备用流
|
||||
repeated string backupUrl = 5;
|
||||
|
||||
//md5
|
||||
string md5 = 6;
|
||||
}
|
||||
|
||||
//分段视频流
|
||||
message SegmentVideo{
|
||||
//分段视频流列表
|
||||
repeated ResponseUrl segment=1;
|
||||
}
|
||||
|
||||
//震动
|
||||
message Shake{
|
||||
//
|
||||
string file=1;
|
||||
}
|
||||
|
||||
//视频流信息
|
||||
message Stream{
|
||||
//元数据
|
||||
StreamInfo info=1;
|
||||
|
||||
//
|
||||
oneof contentCase {
|
||||
//dash流
|
||||
DashVideo dashvideo=2;
|
||||
|
||||
//分段流
|
||||
SegmentVideo segmentvideo=3;
|
||||
}
|
||||
}
|
||||
|
||||
//流媒体元数据
|
||||
message StreamInfo{
|
||||
//清晰度 qn
|
||||
uint32 quality=1;
|
||||
|
||||
//格式
|
||||
string format=2;
|
||||
|
||||
//格式描述
|
||||
string description=3;
|
||||
|
||||
//错误码
|
||||
uint32 errCode=4;
|
||||
|
||||
//不满足条件信息
|
||||
Limit limit=5;
|
||||
|
||||
//是否需要vip
|
||||
bool needVip=6;
|
||||
|
||||
//是否需要登录
|
||||
bool needLogin=7;
|
||||
|
||||
//是否完整
|
||||
bool intact=8;
|
||||
|
||||
//是否非全二压
|
||||
bool noRexcode=9;
|
||||
|
||||
//
|
||||
int64 attribute=10;
|
||||
|
||||
//新版格式描述
|
||||
string newDescription=11;
|
||||
|
||||
//格式文字
|
||||
string displayDesc=12;
|
||||
|
||||
//新版格式描述备注
|
||||
string superscript=13;
|
||||
}
|
||||
|
||||
//不满足条件信息
|
||||
message Limit{
|
||||
//
|
||||
string title=1;
|
||||
|
||||
//
|
||||
string uri=2;
|
||||
|
||||
//
|
||||
string msg=3;
|
||||
}
|
||||
|
||||
//
|
||||
message UpgradeButton {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string link = 2;
|
||||
}
|
||||
|
||||
//互动视频升级提示
|
||||
message UpgradeLimit{
|
||||
//错误码
|
||||
int32 code =1;
|
||||
|
||||
//错误信息
|
||||
string message =2;
|
||||
|
||||
//图片url
|
||||
string image =3;
|
||||
|
||||
//按钮信息
|
||||
UpgradeButton button=4;
|
||||
}
|
||||
|
||||
//视频url信息
|
||||
message VideoInfo{
|
||||
//视频清晰度
|
||||
uint32 quality=1;
|
||||
|
||||
//视频格式
|
||||
string format=2;
|
||||
|
||||
//视频时长
|
||||
uint64 timelength=3;
|
||||
|
||||
//
|
||||
uint32 videoCodecid=4;
|
||||
|
||||
//视频流
|
||||
repeated Stream streamList=5;
|
||||
|
||||
//伴音流
|
||||
repeated DashItem audio=6;
|
||||
|
||||
//杜比伴音流
|
||||
DolbyItem dolby=7;
|
||||
}
|
||||
|
||||
//
|
||||
enum VideoType {
|
||||
//
|
||||
Unknown_VALUE = 0;
|
||||
|
||||
//
|
||||
FLV_VALUE = 1;
|
||||
|
||||
//
|
||||
DASH_VALUE = 2;
|
||||
|
||||
//
|
||||
MP4_VALUE = 3;
|
||||
}
|
||||
@@ -1,213 +0,0 @@
|
||||
//APP端视频播放v1接口
|
||||
syntax = "proto3";
|
||||
package bilibili.app.playurl.v1;
|
||||
|
||||
message VideoInfo{
|
||||
message stream{
|
||||
message streamInfo{
|
||||
message Limit{
|
||||
string title=1;
|
||||
string uri=2;
|
||||
string msg=3;
|
||||
}
|
||||
uint32 quality=1;//清晰度
|
||||
string format=2;//格式
|
||||
string description=3;//格式描述
|
||||
uint32 errCode=4;
|
||||
Limit limit=5;
|
||||
bool needVip=6;//需要vip
|
||||
bool needLogin=7;//需要登录
|
||||
bool intact=8;
|
||||
bool noRexcode=9;
|
||||
int64 attribute=10;
|
||||
string newDescription=11;//新版格式描述
|
||||
string displayDesc=12;//格式文字
|
||||
string superscript=13;//新版格式描述备注
|
||||
}
|
||||
message DashVideo{
|
||||
string baseUrl=1;//主线流
|
||||
repeated string backupUrl=2;//备用流
|
||||
uint32 bandwidth=3;//带宽
|
||||
uint32 codecid=4;
|
||||
string md5=5;//md5
|
||||
uint64 size=6;//大小
|
||||
uint32 audioId=7;
|
||||
bool noRexcode=8;
|
||||
}
|
||||
message SegmentVideo{
|
||||
message ResponseUrl{
|
||||
uint32 order=1;
|
||||
uint64 length=2;
|
||||
uint64 size=3;
|
||||
string url=4;
|
||||
repeated string backupUrl=5;
|
||||
string md5=6;
|
||||
}
|
||||
repeated ResponseUrl segment=1;
|
||||
}
|
||||
streamInfo info=1;//元数据
|
||||
DashVideo dashvideo=2;//dash流
|
||||
SegmentVideo segmentvideo=3;//flv流
|
||||
}
|
||||
message DashAudio{
|
||||
uint32 id=1;
|
||||
string baseUrl=2;//主线流
|
||||
repeated string backupUrl=3;//备用流
|
||||
uint32 bandwidth=4;//带宽
|
||||
uint32 codecid=5;//
|
||||
string md5=6;//md5
|
||||
uint64 size=7;//大小
|
||||
}
|
||||
message DolbyItem{
|
||||
int32 type=1;
|
||||
DashAudio audio=2;
|
||||
}
|
||||
uint32 quality=1;//视频清晰度
|
||||
string format=2;//视频格式
|
||||
uint64 timelength=3;//视频时长
|
||||
uint32 videoCodecid=4;//
|
||||
repeated stream streamList=5;//视频流
|
||||
repeated DashAudio audio=6;//伴音流
|
||||
DolbyItem dolby=7;//杜比伴音流
|
||||
}
|
||||
|
||||
message PlayAbilityConf{
|
||||
bool backgroundPlayDisable=1;
|
||||
bool flipDisable=2;
|
||||
bool castDisable=3;
|
||||
bool feedbackDisable=4;
|
||||
bool subtitleDisable=5;
|
||||
bool playbackRateDisable=6;
|
||||
bool timeUpDisable=7;
|
||||
bool playbackModeDisable=8;
|
||||
bool scaleModeDisable=9;
|
||||
bool likeDisable=10;
|
||||
bool dislikeDisable=11;
|
||||
bool coinDisable=12;
|
||||
bool elecDisable=13;
|
||||
bool shareDisable=14;
|
||||
bool screenShotDisable=15;
|
||||
bool lockScreenDisable=16;
|
||||
bool recommendDisable=17;
|
||||
bool playbackSpeedDisable=18;
|
||||
bool definitionDisable=19;
|
||||
bool selectionsDisable=20;
|
||||
bool nextDisable=21;
|
||||
bool editDmDisable=22;
|
||||
bool smallWindowDisable=23;
|
||||
bool shakeDisable=24;
|
||||
bool outerDmDisable=25;
|
||||
bool innerDmDisable=26;
|
||||
bool freyaEnterDisable=27;
|
||||
bool dolbyDisable=28;
|
||||
}
|
||||
|
||||
message UpgradeLimit{
|
||||
message Report{
|
||||
string showEventId=1;
|
||||
string clickEventId=2;
|
||||
string extends=3;
|
||||
}
|
||||
message ButtonInfo{
|
||||
message BadgeInfo{
|
||||
string text=1;
|
||||
string bgColor=2;
|
||||
string bgColorNight=3;
|
||||
}
|
||||
string text=1;
|
||||
string textColor=2;
|
||||
string textColorNight=3;
|
||||
string bgColor=4;
|
||||
string bgColorNight=5;
|
||||
string link=6;
|
||||
string actionType=7;
|
||||
BadgeInfo badgeInfo=8;
|
||||
Report report=9;
|
||||
}
|
||||
int32 code =1;
|
||||
string message =2;
|
||||
string image =3;
|
||||
ButtonInfo button=4;
|
||||
}
|
||||
|
||||
message Chronos{
|
||||
string md5=1;
|
||||
string file=2;
|
||||
}
|
||||
|
||||
message PlayArcConf{
|
||||
message ArcConf{
|
||||
bool isSupport=1;
|
||||
}
|
||||
ArcConf backgroundPlayConf=1;
|
||||
ArcConf flipConf=2;
|
||||
ArcConf castConf=3;
|
||||
ArcConf feedbackConf=4;
|
||||
ArcConf subtitleConf=5;
|
||||
ArcConf playbackRateConf=6;
|
||||
ArcConf timeUpConf=7;
|
||||
ArcConf playbackModeConf=8;
|
||||
ArcConf scaleModeConf=9;
|
||||
ArcConf likeConf=10;
|
||||
ArcConf dislikeConf=11;
|
||||
ArcConf coinConf=12;
|
||||
ArcConf elecConf=13;
|
||||
ArcConf shareConf=14;
|
||||
ArcConf screenShotConf=15;
|
||||
ArcConf lockScreenConf=16;
|
||||
ArcConf recommendConf=17;
|
||||
ArcConf playbackSpeedConf=18;
|
||||
ArcConf definitionConf=19;
|
||||
ArcConf selectionsConf=20;
|
||||
ArcConf nextConf=21;
|
||||
ArcConf editDmConf=22;
|
||||
ArcConf smallWindowConf=23;
|
||||
ArcConf shakeConf=24;
|
||||
ArcConf outerDmConf=25;
|
||||
ArcConf innerDmConf=26;
|
||||
ArcConf freyaEnterConf=27;
|
||||
ArcConf dolbyConf=28;
|
||||
}
|
||||
|
||||
message Event{
|
||||
message Shake{
|
||||
string file=1;
|
||||
}
|
||||
Shake shake=1;
|
||||
}
|
||||
|
||||
//获取视频url
|
||||
//https://app.bilibili.com/bilibili.app.playurl.v1.PlayURL/PlayView
|
||||
//请求
|
||||
message PlayURLReq{
|
||||
int64 aid = 1; //avid
|
||||
int64 cid = 2; //cid
|
||||
int64 qn = 3; //清晰度
|
||||
int32 fnver = 4; //流类型
|
||||
int32 fnval = 5;
|
||||
uint32 download = 6; //下载配置 0:播放 1:flv下载 2:dash下载
|
||||
int32 forceHost = 7;
|
||||
bool fourk = 8; //是否4K
|
||||
string spmid = 9;
|
||||
string fromSpmid = 10;
|
||||
}
|
||||
//回复
|
||||
message PlayViewReply{
|
||||
VideoInfo info = 1; //视频信息
|
||||
PlayAbilityConf PlayConf = 2; //播放界面配置
|
||||
UpgradeLimit upgradeLimit = 3;
|
||||
Chronos chronos = 4;
|
||||
PlayArcConf playArc = 5;
|
||||
Event event = 6;
|
||||
}
|
||||
|
||||
//获取播放界面配置
|
||||
//https://app.bilibili.com/bilibili.app.playurl.v1.PlayURL/PlayConf
|
||||
//请求
|
||||
message PlayConfReq{
|
||||
|
||||
}
|
||||
//回复
|
||||
message PlayConfReply{
|
||||
PlayAbilityConf playConf = 1;
|
||||
}
|
||||
27
grpc_api/bilibili/app/show/gateway/v1.proto
Normal file
27
grpc_api/bilibili/app/show/gateway/v1.proto
Normal file
@@ -0,0 +1,27 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.show.gateway.v1;
|
||||
|
||||
import "bilibili/broadcast/message/main.proto";
|
||||
|
||||
//
|
||||
service AppShow {
|
||||
//
|
||||
//
|
||||
rpc getActProgress (GetActProgressReq) returns (GetActProgressReply);
|
||||
}
|
||||
|
||||
//-请求
|
||||
message GetActProgressReq {
|
||||
//
|
||||
int64 pageID = 1;
|
||||
|
||||
//
|
||||
int64 mid = 2;
|
||||
}
|
||||
|
||||
//-回复
|
||||
message GetActProgressReply {
|
||||
//
|
||||
bilibili.broadcast.message.main.NativePageEvent event = 1;
|
||||
}
|
||||
139
grpc_api/bilibili/app/show/popular/v1.proto
Normal file
139
grpc_api/bilibili/app/show/popular/v1.proto
Normal file
@@ -0,0 +1,139 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.show.popular.v1;
|
||||
|
||||
import "bilibili/app/playurl/v1.proto";
|
||||
import "bilibili/app/card/v1.proto";
|
||||
|
||||
//
|
||||
service Popular {
|
||||
//
|
||||
//
|
||||
rpc index (PopularResultReq) returns (PopularReply);
|
||||
}
|
||||
|
||||
//-请求
|
||||
message PopularResultReq {
|
||||
//
|
||||
int64 idx = 1;
|
||||
|
||||
//
|
||||
int32 loginEvent = 2;
|
||||
|
||||
//
|
||||
int32 qn = 3;
|
||||
|
||||
//
|
||||
int32 fnver = 4;
|
||||
|
||||
//
|
||||
int32 fnval = 5;
|
||||
|
||||
//
|
||||
int32 forceHost = 6;
|
||||
|
||||
//
|
||||
int32 fourk = 7;
|
||||
|
||||
//
|
||||
sfixed32 spmid = 8;
|
||||
|
||||
//
|
||||
sfixed32 lastParam = 9;
|
||||
|
||||
//
|
||||
sfixed32 ver = 10;
|
||||
|
||||
//
|
||||
int64 entranceId = 11;
|
||||
|
||||
//
|
||||
sfixed32 locationIds = 12;
|
||||
|
||||
//
|
||||
int32 sourceId = 13;
|
||||
|
||||
//
|
||||
int32 flush = 14;
|
||||
|
||||
//
|
||||
bilibili.app.playurl.v1.PlayerArgs playerArgs = 15;
|
||||
}
|
||||
|
||||
//-回复
|
||||
message PopularReply {
|
||||
//
|
||||
repeated bilibili.app.card.v1.Card items = 1;
|
||||
|
||||
//
|
||||
Config config = 2;
|
||||
|
||||
//
|
||||
string ver = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message Bubble {
|
||||
//
|
||||
string bubbleContent = 1;
|
||||
|
||||
//
|
||||
int32 version = 2;
|
||||
|
||||
//
|
||||
int64 stime = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message Config {
|
||||
//
|
||||
string itemTitle = 1;
|
||||
|
||||
//
|
||||
string bottomText = 2;
|
||||
|
||||
//
|
||||
string bottomTextCover = 3;
|
||||
|
||||
//
|
||||
string bottomTextUrl = 4;
|
||||
|
||||
//
|
||||
repeated EntranceShow topItems = 5;
|
||||
|
||||
//
|
||||
string headImage = 6;
|
||||
|
||||
//
|
||||
repeated EntranceShow pageItems = 7;
|
||||
|
||||
//
|
||||
int32 hit = 8;
|
||||
}
|
||||
|
||||
//
|
||||
message EntranceShow {
|
||||
//
|
||||
string icon = 1;
|
||||
|
||||
//
|
||||
string title = 2;
|
||||
|
||||
//
|
||||
string moduleId = 3;
|
||||
|
||||
//
|
||||
string uri = 4;
|
||||
|
||||
//
|
||||
Bubble bubble = 5;
|
||||
|
||||
//
|
||||
int64 entranceId = 6;
|
||||
|
||||
//
|
||||
string topPhoto = 7;
|
||||
|
||||
//
|
||||
int32 entranceType = 8;
|
||||
}
|
||||
146
grpc_api/bilibili/app/show/rank/v1.proto
Normal file
146
grpc_api/bilibili/app/show/rank/v1.proto
Normal file
@@ -0,0 +1,146 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.show.rank.v1;
|
||||
|
||||
//
|
||||
service Rank {
|
||||
//
|
||||
//
|
||||
rpc rankAll (RankAllResultReq) returns (RankListReply);
|
||||
|
||||
//
|
||||
//
|
||||
rpc rankRegion (RankRegionResultReq) returns (RankListReply);
|
||||
}
|
||||
|
||||
//-请求
|
||||
message RankAllResultReq {
|
||||
//
|
||||
string order = 1;
|
||||
|
||||
//
|
||||
int32 pn = 2;
|
||||
|
||||
//
|
||||
int32 ps = 3;
|
||||
}
|
||||
|
||||
//-请求
|
||||
message RankRegionResultReq {
|
||||
//
|
||||
int32 rid = 1;
|
||||
|
||||
//
|
||||
int32 pn = 2;
|
||||
|
||||
//
|
||||
int32 ps = 3;
|
||||
}
|
||||
|
||||
//-回复
|
||||
message RankListReply {
|
||||
//
|
||||
repeated Item items = 1;
|
||||
}
|
||||
|
||||
//
|
||||
message Item {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string cover = 2;
|
||||
|
||||
//
|
||||
string param = 3;
|
||||
|
||||
//
|
||||
string uri = 4;
|
||||
|
||||
//
|
||||
string redirectUrl = 5;
|
||||
|
||||
//
|
||||
string goto = 6;
|
||||
|
||||
//
|
||||
int32 play = 7;
|
||||
|
||||
//
|
||||
int32 danmaku = 8;
|
||||
|
||||
//
|
||||
int64 mid = 9;
|
||||
|
||||
//
|
||||
string name = 10;
|
||||
|
||||
//
|
||||
string face = 11;
|
||||
|
||||
//
|
||||
int32 reply = 12;
|
||||
|
||||
//
|
||||
int32 favourite = 13;
|
||||
|
||||
//
|
||||
int64 pubDate = 14;
|
||||
|
||||
//
|
||||
int32 rid = 15;
|
||||
|
||||
//
|
||||
string rname = 16;
|
||||
|
||||
//
|
||||
int64 duration = 17;
|
||||
|
||||
//
|
||||
int32 like = 18;
|
||||
|
||||
//
|
||||
int64 cid = 19;
|
||||
|
||||
//
|
||||
int64 pts = 20;
|
||||
|
||||
//
|
||||
string cooperation = 21;
|
||||
|
||||
//
|
||||
int32 attribute = 22;
|
||||
|
||||
//
|
||||
int64 follower = 23;
|
||||
|
||||
//
|
||||
OfficialVerify officialVerify = 24;
|
||||
|
||||
//
|
||||
repeated Item children = 25;
|
||||
|
||||
//
|
||||
Relation relation = 26;
|
||||
}
|
||||
|
||||
//
|
||||
message OfficialVerify {
|
||||
//
|
||||
int32 type = 1;
|
||||
|
||||
//
|
||||
string desc = 2;
|
||||
}
|
||||
|
||||
//
|
||||
message Relation {
|
||||
//
|
||||
int32 status = 1;
|
||||
|
||||
//
|
||||
int32 isFollow = 2;
|
||||
|
||||
//
|
||||
int32 isFollowed = 3;
|
||||
}
|
||||
67
grpc_api/bilibili/app/show/region/v1.proto
Normal file
67
grpc_api/bilibili/app/show/region/v1.proto
Normal file
@@ -0,0 +1,67 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.show.region.v1;
|
||||
|
||||
//
|
||||
service Region {
|
||||
//
|
||||
//
|
||||
rpc region (RegionReq) returns (RegionReply);
|
||||
}
|
||||
|
||||
//
|
||||
message RegionReq {
|
||||
//
|
||||
string lang = 1;
|
||||
}
|
||||
|
||||
//
|
||||
message RegionReply {
|
||||
//
|
||||
repeated RegionInfo regions = 1;
|
||||
}
|
||||
|
||||
//
|
||||
message RegionConfig {
|
||||
//
|
||||
string scenesName = 1;
|
||||
|
||||
//
|
||||
string scenesType = 2;
|
||||
}
|
||||
|
||||
//
|
||||
message RegionInfo {
|
||||
//
|
||||
int32 tid = 1;
|
||||
|
||||
//
|
||||
int32 reid = 2;
|
||||
|
||||
//
|
||||
string name = 3;
|
||||
|
||||
//
|
||||
string logo = 4;
|
||||
|
||||
//
|
||||
string goto = 5;
|
||||
|
||||
//
|
||||
string param = 6;
|
||||
|
||||
//
|
||||
string uri = 7;
|
||||
|
||||
//
|
||||
int32 type = 8;
|
||||
|
||||
//
|
||||
int32 isBangumi = 9;
|
||||
|
||||
//
|
||||
repeated RegionInfo children = 10;
|
||||
|
||||
//
|
||||
repeated RegionConfig config = 11;
|
||||
}
|
||||
139
grpc_api/bilibili/app/space/v1.proto
Normal file
139
grpc_api/bilibili/app/space/v1.proto
Normal file
@@ -0,0 +1,139 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.space.v1;
|
||||
|
||||
//
|
||||
service Space {
|
||||
//
|
||||
//
|
||||
rpc archive (ArchiveReq) returns (ArchiveReply);
|
||||
}
|
||||
|
||||
//-请求
|
||||
message ArchiveReq {
|
||||
//
|
||||
int64 vmid = 1;
|
||||
|
||||
//
|
||||
int32 pn = 2;
|
||||
|
||||
//
|
||||
int32 ps = 3;
|
||||
|
||||
//
|
||||
string order = 4;
|
||||
}
|
||||
|
||||
//-回复
|
||||
message ArchiveReply {
|
||||
//
|
||||
repeated BiliSpaceVideo item = 1;
|
||||
|
||||
//
|
||||
int32 count = 2;
|
||||
|
||||
//
|
||||
EpisodicButton episodicButton = 3;
|
||||
|
||||
//
|
||||
repeated OrderConfig order = 4;
|
||||
}
|
||||
|
||||
//
|
||||
message Badge {
|
||||
//
|
||||
string text = 1;
|
||||
|
||||
//
|
||||
string textColor = 2;
|
||||
|
||||
//
|
||||
string textColorNight = 3;
|
||||
|
||||
//
|
||||
string bgColor = 4;
|
||||
|
||||
//
|
||||
string bgColorNight = 5;
|
||||
|
||||
//
|
||||
string borderColor = 6;
|
||||
|
||||
//
|
||||
string borderColorNight = 7;
|
||||
|
||||
//
|
||||
int32 bgStyle = 8;
|
||||
}
|
||||
|
||||
//
|
||||
message BiliSpaceVideo {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string tname = 2;
|
||||
|
||||
//
|
||||
int64 duration = 3;
|
||||
|
||||
//
|
||||
string cover = 4;
|
||||
|
||||
//
|
||||
string uri = 5;
|
||||
|
||||
//
|
||||
string param = 6;
|
||||
|
||||
//
|
||||
string danmaku = 7;
|
||||
|
||||
//
|
||||
int32 play = 8;
|
||||
|
||||
//
|
||||
int64 ctime = 9;
|
||||
|
||||
//
|
||||
bool state = 10;
|
||||
|
||||
//
|
||||
bool isPopular = 11;
|
||||
|
||||
//
|
||||
repeated Badge badges = 12;
|
||||
|
||||
//
|
||||
string coverRight = 13;
|
||||
|
||||
//
|
||||
string bvid = 14;
|
||||
|
||||
//
|
||||
bool isSteins = 15;
|
||||
|
||||
//
|
||||
bool isUgcpay = 16;
|
||||
|
||||
//
|
||||
bool isCooperation = 17;
|
||||
}
|
||||
|
||||
//
|
||||
message EpisodicButton {
|
||||
//
|
||||
string text = 1;
|
||||
|
||||
//
|
||||
string uri = 2;
|
||||
}
|
||||
|
||||
//
|
||||
message OrderConfig {
|
||||
//
|
||||
string title = 1;
|
||||
|
||||
//
|
||||
string value = 2;
|
||||
}
|
||||
180
grpc_api/bilibili/app/splash/v1.proto
Normal file
180
grpc_api/bilibili/app/splash/v1.proto
Normal file
@@ -0,0 +1,180 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.splash.v1;
|
||||
|
||||
import "google/protobuf/any.proto";
|
||||
|
||||
//
|
||||
service Splash {
|
||||
//
|
||||
//
|
||||
rpc list (SplashReq) returns (SplashReply);
|
||||
}
|
||||
|
||||
//-请求
|
||||
message SplashReq {
|
||||
//
|
||||
int32 width = 1;
|
||||
|
||||
//
|
||||
int32 height = 2;
|
||||
|
||||
//
|
||||
string birth = 3;
|
||||
|
||||
//
|
||||
string adExtra = 4;
|
||||
|
||||
//
|
||||
string network = 5;
|
||||
}
|
||||
|
||||
//-回复
|
||||
message SplashReply {
|
||||
//
|
||||
int32 maxTime = 1;
|
||||
|
||||
//
|
||||
int32 minInterval = 2;
|
||||
|
||||
//
|
||||
int32 pullInterval = 3;
|
||||
|
||||
//
|
||||
repeated SplashItem list = 4;
|
||||
|
||||
//
|
||||
repeated ShowStrategy show = 5;
|
||||
}
|
||||
|
||||
//
|
||||
message ShowStrategy {
|
||||
//
|
||||
int32 id = 1;
|
||||
|
||||
//
|
||||
int64 stime = 2;
|
||||
|
||||
//
|
||||
int64 etime = 3;
|
||||
}
|
||||
|
||||
//
|
||||
message SplashItem {
|
||||
//
|
||||
int32 id = 1;
|
||||
|
||||
//
|
||||
int32 type = 2;
|
||||
|
||||
//
|
||||
int32 cardType = 3;
|
||||
|
||||
//
|
||||
int32 duration = 4;
|
||||
|
||||
//
|
||||
int64 beginTime = 5;
|
||||
|
||||
//
|
||||
int64 endTime = 6;
|
||||
|
||||
//
|
||||
string thumb = 7;
|
||||
|
||||
//
|
||||
string hash = 8;
|
||||
|
||||
//
|
||||
string logoUrl = 9;
|
||||
|
||||
//
|
||||
string logoHash = 10;
|
||||
|
||||
//
|
||||
string videoUrl = 11;
|
||||
|
||||
//
|
||||
string videoHash = 12;
|
||||
|
||||
//
|
||||
int32 videoWidth = 13;
|
||||
|
||||
//
|
||||
int32 videoHeight = 14;
|
||||
|
||||
//
|
||||
string schema = 15;
|
||||
|
||||
//
|
||||
string schemaTitle = 16;
|
||||
|
||||
//
|
||||
string schemaPackageName = 17;
|
||||
|
||||
//
|
||||
repeated string schemaCallupWhiteList = 18;
|
||||
|
||||
//
|
||||
int32 skip = 19;
|
||||
|
||||
//
|
||||
string uri = 20;
|
||||
|
||||
//
|
||||
string uriTitle = 21;
|
||||
|
||||
//
|
||||
int32 source = 22;
|
||||
|
||||
//
|
||||
int32 cmMark = 23;
|
||||
|
||||
//
|
||||
string adCb = 24;
|
||||
|
||||
//
|
||||
int64 resourceId = 25;
|
||||
|
||||
//
|
||||
string requestId = 26;
|
||||
|
||||
//
|
||||
string clientIp = 27;
|
||||
|
||||
//
|
||||
bool isAd = 28;
|
||||
|
||||
//
|
||||
bool isAdLoc = 29;
|
||||
|
||||
//
|
||||
google.protobuf.Any extra = 30;
|
||||
|
||||
//
|
||||
int64 cardIndex = 31;
|
||||
|
||||
//
|
||||
int64 serverType = 32;
|
||||
|
||||
//
|
||||
int64 index = 33;
|
||||
|
||||
//
|
||||
string clickUrl = 34;
|
||||
|
||||
//
|
||||
string showUrl = 35;
|
||||
|
||||
//
|
||||
int32 timeTarget = 36;
|
||||
|
||||
//
|
||||
int32 encryption = 37;
|
||||
|
||||
//
|
||||
bool enablePreDownload = 38;
|
||||
|
||||
//
|
||||
bool enableBackgroundDownload = 39;
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
42
grpc_api/bilibili/app/wall/v1.proto
Normal file
42
grpc_api/bilibili/app/wall/v1.proto
Normal file
@@ -0,0 +1,42 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package bilibili.app.wall.v1;
|
||||
|
||||
//
|
||||
service Wall {
|
||||
//
|
||||
//
|
||||
rpc ruleInfo (RuleRequest) returns (RulesReply);
|
||||
}
|
||||
|
||||
//-请求
|
||||
message RuleRequest {
|
||||
|
||||
}
|
||||
|
||||
//-回复
|
||||
message RulesReply {
|
||||
//
|
||||
map<string,RulesInfo> rulesInfo = 1;
|
||||
}
|
||||
|
||||
//
|
||||
message RuleInfo {
|
||||
//
|
||||
bool tf = 1;
|
||||
|
||||
//
|
||||
string m = 2;
|
||||
|
||||
//
|
||||
string a = 3;
|
||||
|
||||
//
|
||||
string p = 4;
|
||||
}
|
||||
|
||||
//
|
||||
message RulesInfo {
|
||||
//
|
||||
repeated RuleInfo rulesInfo = 1;
|
||||
}
|
||||
Reference in New Issue
Block a user