diff --git a/grpc_api/bilibili/app/playerunite/pugvanymodel.proto/pugvanymodel.proto b/grpc_api/bilibili/app/playerunite/pugvanymodel.proto/pugvanymodel.proto new file mode 100644 index 0000000..b534627 --- /dev/null +++ b/grpc_api/bilibili/app/playerunite/pugvanymodel.proto/pugvanymodel.proto @@ -0,0 +1,51 @@ +syntax = "proto3"; + +package bilibili.app.playerunite.pugvanymodel; + +// +enum EpisodeStatus { + EPISODE_STATUS_UNSPECIFIED = 0; + EPISODE_STATUS_TRY_WATCH_WHOLE = 1; + EPISODE_STATUS_NOT_TRY_WATCH = 2; + EPISODE_STATUS_TRY_WATCH_5_MINUTES = 3; +} + +// +message PlayerMask { + // + string title = 1; + // + string prefix = 2; + // + string suffix = 3; +} + +// +message PUGVAnyModel { + // + int64 season_id = 1; + // + int64 episode_id = 2; + // + EpisodeStatus status = 3; + // + RiskControl risk_control = 4; + // + PlayerMask player_mask = 5; +} + +// +message RiskControl { + // + bool need_send_sms = 1; + // + string title = 2; + // + string risk_message = 3; + // + string action_desc = 4; + // + string send_sms_url = 5; + // + string buvid = 6; +} diff --git a/grpc_api/bilibili/app/playerunite/v1/playerunite.proto b/grpc_api/bilibili/app/playerunite/v1/playerunite.proto index 983b005..5e9a6ef 100644 --- a/grpc_api/bilibili/app/playerunite/v1/playerunite.proto +++ b/grpc_api/bilibili/app/playerunite/v1/playerunite.proto @@ -12,20 +12,6 @@ service Player { rpc PlayViewUnite (PlayViewUniteReq) returns (PlayViewUniteReply); } -// -message PlayViewUniteReq { - // 请求资源VOD信息 - bilibili.playershared.VideoVod vod = 1; - // - string spmid = 2; - // - string from_spmid = 3; - // 补充信息, 如ep_id等 - map extra_content = 4; - // - string bvid = 5; -} - // message PlayViewUniteReply { // 音视频流信息 @@ -46,4 +32,26 @@ message PlayViewUniteReply { bilibili.playershared.History history = 8; // bilibili.playershared.ViewInfo view_info = 9; + // + bilibili.playershared.FragmentVideo fragment_video = 10; +} + +// +message PlayViewUniteReq { + // 请求资源VOD信息 + bilibili.playershared.VideoVod vod = 1; + // + string spmid = 2; + // + string from_spmid = 3; + // 补充信息, 如ep_id等 + map extra_content = 4; + // + string bvid = 5; + // + string ad_extra = 6; + // + bilibili.playershared.Fragment fragment = 7; + // + string from_scene = 8; } diff --git a/grpc_api/bilibili/app/search/v2/search.proto b/grpc_api/bilibili/app/search/v2/search.proto index f2da14b..7789b01 100644 --- a/grpc_api/bilibili/app/search/v2/search.proto +++ b/grpc_api/bilibili/app/search/v2/search.proto @@ -12,6 +12,8 @@ service Search { // rpc GetChatResult (GetChatResultReq) returns (bilibili.broadcast.message.main.ChatResult); // + rpc QueryRecAfterClick (QueryRecAfterClickReq) returns (QueryRecAfterClickReply); + // rpc SearchEgg (SearchEggReq) returns (SearchEggReply); // rpc SubmitChatTask (SubmitChatTaskReq) returns (SubmitChatTaskReply); @@ -62,6 +64,66 @@ message GetChatResultReq { string track_id = 4; } +// +message QueryRecAfterClickItem { + // + string show_name = 1; + // + string recommend_reason = 2; + // + int32 icon_type = 3; + // + string url = 4; + // + string icon = 5; + // + string icon_night = 6; +} + +// +message QueryRecAfterClickReply { + // + int32 code = 1; + // + QueryRecAfterClickResult query_rec_result = 2; +} + +// +message QueryRecAfterClickReq { + // + string param = 1; + // + int32 pos = 2; + // + string track_id = 3; + // + string qv_id = 4; + // + string keyword = 5; + // + string click_url = 6; + // + string from_source = 7; +} + +// +message QueryRecAfterClickResult { + // + repeated QueryRecAfterClickItem query_rec_list = 1; + // + string related_title = 2; + // + string param = 3; + // + string goto = 4; + // + string linktype = 5; + // + int32 position = 6; + // + string trackid = 7; +} + // message SearchEggInfo { // diff --git a/grpc_api/bilibili/app/viewunite/pugvanymodel.proto b/grpc_api/bilibili/app/viewunite/pugvanymodel.proto new file mode 100644 index 0000000..6ce87ca --- /dev/null +++ b/grpc_api/bilibili/app/viewunite/pugvanymodel.proto @@ -0,0 +1,430 @@ +syntax = "proto3"; + +package bilibili.app.viewunite.pugvanymodel; + +// +message AbTest { +} + +// +message CatalogueInfo { + // + repeated SeasonCatalogue catalogues = 1; + // + CatalogueLiveInfo catalogue_live_info = 2; + // + string catalogue_update_text = 3; +} + +// +message CatalogueLiveInfo { + // + int64 episode_id = 1; + // + string title = 2; + // + string subtitle = 3; + // + string button_text = 4; + // + LiveStatus status = 5; +} + +// +message CourseCoach { + // + string detail_url = 1; + // + string directory_url = 2; +} + +// +message Courseware { + // + int64 file_id = 1; + // + string file_name = 2; + // + string file_type = 3; + // + int64 file_size = 4; + // + string desc = 5; + // + string file_url = 6; +} + +// +message CoursewareInfo { + // + repeated Courseware coursewares = 1; +} + +// +message DanmakuControl { + // + bool disabled = 1; + // + ExtraContent extra_content = 2; +} + +message Episode { + // + EpisodeType type = 1; + // + oneof { + // + VideoEpisode video_episode = 2; + // + LiveEpisode live_episode = 3; + } +} + +// +message EpisodeHistory { + // + bool last_play = 1; + // + string last_play_text = 2; + // + int64 max_progress = 3; + // + string full_watched_text = 4; +} + +// +message EpisodeLabel { + // + string type_label = 1; +} + +// +message EpisodeSelectionLabel { + // + string type_label = 1; +} + +// +enum EpisodeStatus { + EPISODE_STATUS_UNSPECIFIED = 0; + EPISODE_STATUS_TRY_WATCH_WHOLE = 1; + EPISODE_STATUS_NOT_TRY_WATCH = 2; + EPISODE_STATUS_TRY_WATCH_5_MINUTES = 3; +} + +// +enum EpisodeType { + EPISODE_TYPE_UNSPECIFIED = 0; + EPISODE_TYPE_VIDEO = 1; + EPISODE_TYPE_LIVE = 2; +} + +// +message ExtraContent { + // + string disabled_reason = 1; +} + +// +message LiveEpisode { + // + int64 episode_id = 1; + // + LiveStatus status = 2; + // + bool jump = 3; + // + int64 live_teacher_mid = 4; + // + bool show_subscription_prebook_button = 5; + // + bool be_subscription_prebook = 6; + // + int64 index = 7; + // + string title = 8; + // + string play_way_subtitle = 9; + // + string subtitle = 10; + // + bool show_lock_icon = 11; + // + EpisodeLabel episode_label = 12; + // + EpisodeSelectionLabel selection_label = 13; +} + +// +message LiveInfo { + // + int64 episode_id = 1; + // + LiveStatus status = 2; + // + bool jump = 3; + // + int64 live_teacher_mid = 4; + // + bool show_subscription_prebook_button = 5; + // + bool be_subscription_prebook = 6; +} + +// +enum LiveStatus { + LIVE_STATUS_UNSPECIFIED = 0; + LIVE_STATUS_PREPARE = 1; + LIVE_STATUS_LIVE = 2; + LIVE_STATUS_PLAYBACK_GENERATING = 3; +} + +// +message OperationArea { + // + repeated OperationAreaButton buttons = 1; +} + +// +message OperationAreaButton { + // + OperationAreaButtonType type = 1; + // + string text = 2; + // + bool disabled = 3; + // + string link = 4; +} + +// +enum OperationAreaButtonType { + OPERATION_AREA_BUTTON_TYPE_UNSPECIFIED = 0; + OPERATION_AREA_BUTTON_TYPE_FAVORITE = 1; + OPERATION_AREA_BUTTON_TYPE_CONSULT = 2; + OPERATION_AREA_BUTTON_TYPE_SHARE = 3; + OPERATION_AREA_BUTTON_TYPE_PURCHASE = 4; +} + +// +message SeasonCatalogue { + // + string title = 1; + // + int64 index = 2; + // + int64 start_ep_index = 3; + // + int64 end_ep_index = 4; +} + +// +message SeasonCoupon { + // + string token = 1; + // + string title = 2; + // + string start_time = 3; + // + string expire_time = 4; + // + double amount = 5; + // + string show_amount = 6; + // + SeasonCouponStatus status = 7; + // + SeasonCouponType coupon_type = 8; + // + string short_title = 9; + // + string expire_minute = 10; + // + string use_scope = 11; + // + string discount_amount = 12; + // + int64 receive_expire_time = 13; + // + int64 use_expire_time = 14; + // + string scene_mark = 15; + // + string scene_background_img = 16; + // + string scene_benefit_img = 17; + // + bool scene_countdown = 18; +} + +// +enum SeasonCouponStatus { + SEASON_COUPON_STATUS_UNSPECIFIED = 0; + SEASON_COUPON_STATUS_RECEIVED = 1; + SEASON_COUPON_STATUS_NOT_RECEIVED = 2; + SEASON_COUPON_STATUS_INVALID = 3; +} + +// +enum SeasonCouponType { + SEASON_COUPON_TYPE_UNSPECIFIED = 0; + SEASON_COUPON_TYPE_DISCOUNT = 1; + SEASON_COUPON_TYPE_DECREASE = 2; +} + +// +message SeasonCustom { + // + WaterMark water_mark = 1; + // + DanmakuControl danmaku_control = 2; +} + +// +message SeasonOverview { + // + int64 season_id = 1; + // + bool support_cash = 2; + // + SeasonStatus status = 3; + // + SeasonType type = 4; + // + string cover = 5; + // + string title = 6; +} + +// +message SeasonPayment { + // + string price_unit = 1; + // + string discount_price = 2; + // + string discount_price_desc = 3; + // + string original_price = 4; + // + string original_price_desc = 5; +} + +// +message SeasonSection { + // + int64 section_id = 1; + // + string title = 2; + // + SeasonSectionType type = 3; + // + repeated Courseware coursewares = 4; + // + repeated Episode episodes = 5; +} + +// +enum SeasonSectionType { + SEASON_SECTION_TYPE_UNSPECIFIED = 0; + SEASON_SECTION_TYPE_DEFAULT = 1; + SEASON_SECTION_TYPE_CUSTOM = 2; +} + +// +enum SeasonStatus { + SEASON_STATUS_UNSPECIFIED = 0; + SEASON_STATUS_OFFLINE = 1; +} + +// +enum SeasonType { + SEASON_TYPE_UNSPECIFIED = 0; + SEASON_TYPE_INSTALLMENT = 1; + SEASON_TYPE_FREE = 2; + SEASON_TYPE_SUBSCRIPTION = 3; +} + +// +message SectionInfo { + // + repeated SeasonSection sections = 1; +} + +// +message VideoEpisode { + // + repeated Courseware coursewares = 1; + // + int64 index = 2; + // + EpisodeStatus status = 3; + // + int64 aid = 4; + // + int64 cid = 5; + // + string title = 6; + // + string play_way_subtitle = 7; + // + string subtitle = 8; + // + int64 duration = 9; + // + bool can_switch = 10; + // + bool can_play = 11; + // + bool show_lock_icon = 12; + // + EpisodeLabel episode_label = 13; + // + EpisodeSelectionLabel selection_label = 14; + // + EpisodeHistory history = 15; + // + VideoPlayWay play_way = 16; + // + int64 episode_id = 17; +} + +// +enum VideoPlayWay { + VIDEO_PLAY_WAY_UNSPECIFIED = 0; + VIDEO_PLAY_WAY_VOD = 1; + VIDEO_PLAY_WAY_LIVE_PLAYBACK = 2; +} + +// +message ViewPugvAny { + // + SeasonOverview season_overview = 1; + // + SeasonPayment season_payment = 2; + // + SeasonCoupon season_coupon = 3; + // + CatalogueInfo catalogue_info = 4; + // + SeasonCustom season_custom = 5; + // + CoursewareInfo courseware_info = 6; + // + CourseCoach course_coach = 7; + // + SectionInfo section_info = 8; + // + AbTest ab_test = 9; + // + OperationArea operation_area = 10; +} + +// +message WaterMark { + // + bool show_watermark = 1; + // + int64 watermark_interval = 2; +} diff --git a/grpc_api/bilibili/app/viewunite/v1/viewunite.proto b/grpc_api/bilibili/app/viewunite/v1/viewunite.proto index 577f205..0a01820 100644 --- a/grpc_api/bilibili/app/viewunite/v1/viewunite.proto +++ b/grpc_api/bilibili/app/viewunite/v1/viewunite.proto @@ -71,6 +71,8 @@ message ArcRefreshReply { Online online = 4; // LikeConfig like_config = 5; + // + SimpleOwner owner = 6; } // @@ -79,6 +81,8 @@ message ArcRefreshReq { int64 aid = 1; // string bvid = 2; + // + UnionType type = 3; } // @@ -87,6 +91,18 @@ message AttentionCard { repeated ShowTime show_time = 1; } +// +message BgPlayNotice { + // + bool allow_show = 1; + // + string text = 2; + // + string btn_text_1 = 3; + // + string btn_text_2 = 4; +} + // message BizFollowVideoParam { // @@ -216,6 +232,8 @@ message Config { PlayerIcon player_icon = 2; // StoryEntrance story_entrance = 3; + // + BgPlayNotice bg_play_notice = 4; } // 视频播放时弹出的卡片 @@ -242,6 +260,8 @@ message ContractCard { int32 is_play_display = 10; // int32 is_interact_display = 11; + // + bool play_display_switch = 12; } // 视频播放时弹出的卡片的文字说明信息 @@ -285,6 +305,26 @@ message ECodeConfig { string redirect_url = 1; } +// +message FragmentArc { + // + int64 aid = 1; + // + int64 cid = 2; +} + +// +message FragmentParam { + // + repeated FragmentArc fragment_arcs = 1; +} + +// +message FragmentRes { + // + map video_shot = 1; +} + // message IconData { // @@ -361,6 +401,8 @@ enum MaterialBizType { ACTIVITY_ICON = 6; // NEW_BGM = 7; + // + GENERAL_TYPE = 8; } // 素材来源 @@ -568,6 +610,16 @@ message ReqUser { Button elec_plus_btn = 7; // ChargingPlus charging_plus = 8; + // + ReqUserExtra extra = 9; + // + int32 paid = 10; +} + +// +message ReqUserExtra { + // + bool user_flag_new = 1; } // @@ -598,6 +650,12 @@ message SimpleArc { int32 copyright = 1; } +// +message SimpleOwner { + // + int32 attention_relation = 1; +} + // message SimpleReqUser { // @@ -674,6 +732,8 @@ enum UnionType { UGC = 0; // OGV = 1; + // + PUGV = 2; } // UP主信息(可是Upper这个... 程序员英文不过关吧? ) @@ -832,4 +892,6 @@ message ViewReq { string biz_extra = 12; // string ad_extra = 13; + // + string from_scene = 14; } diff --git a/grpc_api/bilibili/metadata/fawkes/fawkes.proto b/grpc_api/bilibili/metadata/fawkes/fawkes.proto index 0ac5cf8..0855314 100644 --- a/grpc_api/bilibili/metadata/fawkes/fawkes.proto +++ b/grpc_api/bilibili/metadata/fawkes/fawkes.proto @@ -8,6 +8,8 @@ message FawkesReply { string config = 1; // 客户端在fawkes系统中对应的已发布最新的ff版本号 string ff = 2; + // + string dd = 3; } // diff --git a/grpc_api/bilibili/metadata/restriction/restriction.proto b/grpc_api/bilibili/metadata/restriction/restriction.proto index 67dca6a..9d4e16f 100644 --- a/grpc_api/bilibili/metadata/restriction/restriction.proto +++ b/grpc_api/bilibili/metadata/restriction/restriction.proto @@ -7,6 +7,7 @@ enum ModeType { NORMAL = 0; // 正常模式 TEENAGERS = 1; // 青少年模式 LESSONS = 2; // 课堂模式 + BASIC = 3; // } // 限制条件 @@ -21,4 +22,6 @@ message Restriction { bool review = 4; // 客户端是否选择关闭个性化推荐 bool disable_rcmd = 5; + // + bool basic_mode = 6; } diff --git a/grpc_api/bilibili/playershared/playershared.proto b/grpc_api/bilibili/playershared/playershared.proto index 25823ef..0f246f6 100644 --- a/grpc_api/bilibili/playershared/playershared.proto +++ b/grpc_api/bilibili/playershared/playershared.proto @@ -2,6 +2,8 @@ syntax = "proto3"; package bilibili.playershared; +import "google/protobuf/any.proto"; + // ArcConf消息 message ArcConf { // 是否支持 @@ -48,6 +50,26 @@ message BadgeInfo { string img = 6; } +// +message Banner { + // + string jump_link = 1; + // + string image_link = 2; + // + string half_image_link = 3; + // + Report report = 4; +} + +// +message BenefitInfo { + // + string title = 1; + // + string icon = 2; +} + // enum BizType { // @@ -109,6 +131,8 @@ enum ButtonAction { BP = 13; // PRE_SELL = 14; + // + LOGIN = 15; } // @@ -286,7 +310,7 @@ message DeviceConf { // message Dialog { // - int32 style_type = 1; + GuideStyle style_type = 1; // BackgroundInfo background_info = 2; // @@ -310,7 +334,9 @@ message Dialog { // ExtData ext_data = 12; // - int32 limit_action_type = 13; + LimitActionType limit_action_type = 13; + // + int32 is_hide_more_btn = 14; } @@ -350,6 +376,7 @@ enum DrmTechType { BILI_DRM = 3; } +// enum Effects { // EFFECTS_UNKNOWN = 0; @@ -359,6 +386,22 @@ enum Effects { HALF_ALPHA = 2; } +// +message EpInlineVideo { + // + int64 material_no = 1; + // + int64 aid = 2; + // + int64 cid = 3; +} + +// +message EpInlineVideoInfo { + // + repeated EpInlineVideo ep_inline_video = 1; +} + // 事件 message Event { // 震动 @@ -390,6 +433,69 @@ message ExtraContent { int64 disable_code = 2; } +// +message Fragment { + // + repeated FragmentInfo infos = 1; +} + +// +message FragmentInfo { + // + int32 index = 1; + // + FragmentPosition fragment_position = 2; + // + FragmentType fragment_type = 3; + // + int64 aid = 4; + // + int64 cid = 5; + // + int64 start_time = 6; + // + google.protobuf.Any report = 7; +} + +// +enum FragmentPosition { + INVALID = 0; + PRE = 1; + MIDDLE = 2; + POST = 3; +} + +// +enum FragmentType { + UNKNOWN = 0; + AD_FRAGMENT = 1; + OGV_FRAGMENT = 2; +} + +// +message FragmentVideo { + // + repeated FragmentVideoInfo videos = 1; +} + +// +message FragmentVideoInfo { + // + FragmentInfo fragment_info = 1; + // + VodInfo vod_info = 2; + // + PlayArcConf play_arc_conf = 3; + // + Dimension dimension = 4; + // + int64 timelength = 5; + // + BizType video_type = 6; + // + bool playable_status = 7; +} + // message GradientColor { // @@ -503,6 +609,10 @@ message PlayArc { int64 duration = 8; // bool is_preview = 9; + // + int64 watch_time_length = 10; + // + int64 duration_ms = 11; } // 播放页信息-响应: PlayArcConf @@ -562,8 +672,30 @@ message PromptBar { string full_screen_ip_icon = 8; // GradientColor full_screen_bg_gradient_color = 9; + // + PromptBarType prompt_bar_type = 10; + // + PromptBarStyle prompt_bar_style = 11; + // + repeated BenefitInfo benefit_infos = 12; + // + int64 end_time = 13; } +// +enum PromptBarStyle { + PROMPT_BAR_STYLE_UNKNOWN = 0; + TEXT = 1; + CURING_BENEFITS = 2; + CARD_OPENING_GIFT = 3; + COUNTDOWN = 4; +} + +// +enum PromptBarType { + PROMPT_BAR_TYPE_UNKNOWN = 0; + OPEN_PROMPT_BAR = 1; +} // 播放页信息-响应: 高画质试看信息 message QnTrialInfo { @@ -751,6 +883,8 @@ enum ToastType { OGV_VIDEO_START_TOAST = 4; // CHARGING_TOAST = 5; + // + VIP_SKIP_FRAGMENT_TOAST = 6; } //