pub struct VideoClient<'a> { /* private fields */ }Expand description
Video domain API client.
Implementations§
Source§impl<'a> VideoClient<'a>
impl<'a> VideoClient<'a>
Sourcepub async fn like(&self, params: VideoLikeParams) -> BpiResult<CoinData>
pub async fn like(&self, params: VideoLikeParams) -> BpiResult<CoinData>
Likes or unlikes a video and returns the canonical payload result.
Sourcepub async fn coin(&self, params: VideoCoinParams) -> BpiResult<CoinData>
pub async fn coin(&self, params: VideoCoinParams) -> BpiResult<CoinData>
Gives coins to a video and returns the canonical payload result.
Sourcepub async fn favorite(
&self,
params: VideoFavoriteParams,
) -> BpiResult<FavoriteData>
pub async fn favorite( &self, params: VideoFavoriteParams, ) -> BpiResult<FavoriteData>
Favorites a video to, or removes it from, favorite folders.
Source§impl<'a> VideoClient<'a>
impl<'a> VideoClient<'a>
Sourcepub async fn view(&self, params: VideoViewParams) -> BpiResult<VideoView>
pub async fn view(&self, params: VideoViewParams) -> BpiResult<VideoView>
Fetches web video detail by AV ID or BV ID.
Examples found in repository?
9async fn main() -> BpiResult<()> {
10 let client = client_from_env()?;
11 let video_params = VideoViewParams::from_bvid("BV1xx411c7mD".parse::<Bvid>()?);
12 let bangumi_params = BangumiInfoParams::new(MediaId::new(28_220_978)?);
13
14 if !run_live_example() {
15 println!("module-client quickstart compiled; set BPI_RUN_EXAMPLE=1 to call live APIs");
16 return Ok(());
17 }
18
19 let video = client.video().view(video_params).await?;
20 println!("video: {}", video.title);
21
22 let bangumi = client.bangumi().info(bangumi_params).await?;
23 println!("bangumi: {}", bangumi.media.title);
24
25 if env::var_os("BPI_COOKIE").is_some() {
26 let nav = client.login().nav().await?;
27 println!("logged in: {}", nav.is_login);
28 }
29
30 Ok(())
31}Sourcepub async fn detail(&self, params: VideoDetailParams) -> BpiResult<VideoDetail>
pub async fn detail(&self, params: VideoDetailParams) -> BpiResult<VideoDetail>
Fetches web video detail, including tags and related videos.
Sourcepub async fn page_list(
&self,
params: VideoPageListParams,
) -> BpiResult<Vec<VideoPage>>
pub async fn page_list( &self, params: VideoPageListParams, ) -> BpiResult<Vec<VideoPage>>
Fetches the page/content IDs for a video.
Sourcepub async fn desc(&self, params: VideoDescParams) -> BpiResult<String>
pub async fn desc(&self, params: VideoDescParams) -> BpiResult<String>
Fetches the plain text video description.
Sourcepub async fn play_url(
&self,
params: VideoPlayUrlParams,
) -> BpiResult<PlayUrlResponseData>
pub async fn play_url( &self, params: VideoPlayUrlParams, ) -> BpiResult<PlayUrlResponseData>
Fetches signed web playback URLs by AV ID or BV ID plus page/content ID.
Sourcepub async fn seasons_archives_list(
&self,
params: VideoCollectionSeasonsArchivesParams,
) -> BpiResult<GetSeasonsArchivesData>
pub async fn seasons_archives_list( &self, params: VideoCollectionSeasonsArchivesParams, ) -> BpiResult<GetSeasonsArchivesData>
Fetches the videos in a specific video season.
Sourcepub async fn home_seasons_series(
&self,
params: VideoCollectionHomeSeasonsSeriesParams,
) -> BpiResult<GetSeasonsSeriesData>
pub async fn home_seasons_series( &self, params: VideoCollectionHomeSeasonsSeriesParams, ) -> BpiResult<GetSeasonsSeriesData>
Fetches a user’s home season and series lists.
Sourcepub async fn seasons_series_list(
&self,
params: VideoCollectionSeasonsSeriesParams,
) -> BpiResult<GetSeasonsSeriesData>
pub async fn seasons_series_list( &self, params: VideoCollectionSeasonsSeriesParams, ) -> BpiResult<GetSeasonsSeriesData>
Fetches a user’s season and series list with pagination.
Sourcepub async fn series_info(
&self,
params: VideoCollectionSeriesInfoParams,
) -> BpiResult<GetSeriesData>
pub async fn series_info( &self, params: VideoCollectionSeriesInfoParams, ) -> BpiResult<GetSeriesData>
Fetches metadata for a specific video series.
Sourcepub async fn series_archives(
&self,
params: VideoCollectionSeriesArchivesParams,
) -> BpiResult<GetSeriesArchivesData>
pub async fn series_archives( &self, params: VideoCollectionSeriesArchivesParams, ) -> BpiResult<GetSeriesArchivesData>
Fetches videos in a specific video series.
Sourcepub async fn online_total(
&self,
params: VideoOnlineTotalParams,
) -> BpiResult<OnlineTotalResponseData>
pub async fn online_total( &self, params: VideoOnlineTotalParams, ) -> BpiResult<OnlineTotalResponseData>
Fetches the online viewer counters for a video page.
Sourcepub async fn player_info_v2(
&self,
params: VideoPlayerInfoParams,
) -> BpiResult<PlayerInfoResponseData>
pub async fn player_info_v2( &self, params: VideoPlayerInfoParams, ) -> BpiResult<PlayerInfoResponseData>
Fetches web player metadata for a video page.
Fetches videos related to a video.
Sourcepub async fn homepage_recommendations(
&self,
params: VideoHomepageRecommendationsParams,
) -> BpiResult<RcmdFeedResponseData>
pub async fn homepage_recommendations( &self, params: VideoHomepageRecommendationsParams, ) -> BpiResult<RcmdFeedResponseData>
Fetches homepage video recommendations.
Sourcepub async fn ai_summary(
&self,
params: VideoAiSummaryParams,
) -> BpiResult<AiSummaryResponseData>
pub async fn ai_summary( &self, params: VideoAiSummaryParams, ) -> BpiResult<AiSummaryResponseData>
Fetches the AI summary for a video.
Fetches tags attached to a video.
Sourcepub async fn interactive_video_info(
&self,
params: InteractiveVideoInfoParams,
) -> BpiResult<InteractiveVideoInfoResponseData>
pub async fn interactive_video_info( &self, params: InteractiveVideoInfoParams, ) -> BpiResult<InteractiveVideoInfoResponseData>
Fetches metadata for an interactive video node.
Source§impl<'a> VideoClient<'a>
impl<'a> VideoClient<'a>
Sourcepub async fn create_collection_series(
&self,
params: CollectionCreateAndAddArchivesParams,
) -> BpiResult<CreateSeriesResponseData>
pub async fn create_collection_series( &self, params: CollectionCreateAndAddArchivesParams, ) -> BpiResult<CreateSeriesResponseData>
Creates a video series and optionally adds archives to it.
Sourcepub async fn delete_collection_series(
&self,
params: CollectionDeleteSeriesParams,
) -> BpiResult<Option<Value>>
pub async fn delete_collection_series( &self, params: CollectionDeleteSeriesParams, ) -> BpiResult<Option<Value>>
Deletes a video series.
Sourcepub async fn delete_collection_archives(
&self,
params: CollectionArchivesMutationParams,
) -> BpiResult<Option<Value>>
pub async fn delete_collection_archives( &self, params: CollectionArchivesMutationParams, ) -> BpiResult<Option<Value>>
Deletes archives from a video series.
Sourcepub async fn add_collection_archives(
&self,
params: CollectionArchivesMutationParams,
) -> BpiResult<Option<Value>>
pub async fn add_collection_archives( &self, params: CollectionArchivesMutationParams, ) -> BpiResult<Option<Value>>
Adds archives to a video series.
Sourcepub async fn update_collection_series(
&self,
params: CollectionUpdateSeriesParams,
) -> BpiResult<Option<Value>>
pub async fn update_collection_series( &self, params: CollectionUpdateSeriesParams, ) -> BpiResult<Option<Value>>
Updates a video series.
Source§impl<'a> VideoClient<'a>
impl<'a> VideoClient<'a>
Sourcepub async fn report_watch_progress(
&self,
params: VideoWatchProgressParams,
) -> BpiResult<Option<Value>>
pub async fn report_watch_progress( &self, params: VideoWatchProgressParams, ) -> BpiResult<Option<Value>>
Reports video watch progress and returns the canonical payload result.
Trait Implementations§
Source§impl<'a> Clone for VideoClient<'a>
impl<'a> Clone for VideoClient<'a>
Source§fn clone(&self) -> VideoClient<'a>
fn clone(&self) -> VideoClient<'a>
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more