Package dev.lavalink.youtube.clients
Class WebEmbedded
java.lang.Object
dev.lavalink.youtube.clients.skeleton.NonMusicClient
dev.lavalink.youtube.clients.skeleton.StreamingNonMusicClient
dev.lavalink.youtube.clients.Web
dev.lavalink.youtube.clients.WebEmbedded
- All Implemented Interfaces:
Client
-
Nested Class Summary
Nested classes/interfaces inherited from interface dev.lavalink.youtube.clients.skeleton.Client
Client.PlayabilityStatus -
Field Summary
FieldsFields inherited from class dev.lavalink.youtube.clients.Web
CONFIG_REGEX, lastConfigUpdate, options, poTokenFields inherited from class dev.lavalink.youtube.clients.skeleton.StreamingNonMusicClient
DEFAULT_SIGNATURE_KEYFields inherited from class dev.lavalink.youtube.clients.skeleton.NonMusicClient
MOBILE_PLAYER_PARAMS, playlistPageCount, WEB_PLAYER_PARAMSFields inherited from interface dev.lavalink.youtube.clients.skeleton.Client
API_BASE_URL, BROWSE_URL, MUSIC_API_BASE_URL, MUSIC_SEARCH_PARAMS, MUSIC_SEARCH_URL, NEXT_URL, OAUTH_CLIENT_ATTRIBUTE, PLAYER_URL, SEARCH_PARAMS, SEARCH_URL, WATCH_URL -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancanHandleRequest(@NotNull String identifier) Returns a boolean determining whether this client can be used to handle requests for the given identifier.@NotNull ClientConfiggetBaseClientConfig(@NotNull com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface httpInterface) Retrieves a base client config payload to be used for requests.@NotNull Stringbooleancom.sedmelluq.discord.lavaplayer.track.AudioItemloadMix(@NotNull YoutubeAudioSourceManager source, @NotNull com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface httpInterface, @NotNull String mixId, @Nullable String selectedVideoId) Loads a mix playlist.com.sedmelluq.discord.lavaplayer.track.AudioItemloadPlaylist(@NotNull YoutubeAudioSourceManager source, @NotNull com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface httpInterface, @NotNull String playlistId, @Nullable String selectedVideoId) Loads a playlist.com.sedmelluq.discord.lavaplayer.track.AudioItemloadSearch(@NotNull YoutubeAudioSourceManager source, @NotNull com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface httpInterface, @NotNull String searchQuery) Loads search results for a query.static voidsetPoTokenAndVisitorData(String poToken, String visitorData) @NotNull URItransformPlaybackUri(@NotNull URI originalUri, @NotNull URI resolvedPlaybackUri) Transforms a given playback URL as necessary.Methods inherited from class dev.lavalink.youtube.clients.Web
extractMixPlaylistData, extractPlaylistContinuationToken, extractPlaylistContinuationVideos, extractPlaylistName, extractPlaylistVideoList, extractSearchResults, fetchClientConfig, getOptions, getPlayerParamsMethods inherited from class dev.lavalink.youtube.clients.skeleton.StreamingNonMusicClient
extractFormat, loadFormatsMethods inherited from class dev.lavalink.youtube.clients.skeleton.NonMusicClient
extractAudioTrack, extractPlaylistError, extractPlaylistTracks, loadJsonResponse, loadMixResult, loadPlaylistResult, loadSearchMusic, loadSearchResults, loadTrackInfoFromInnertube, loadTrackInfoFromInnertube, loadVideo, setPlaylistPageCountMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface dev.lavalink.youtube.clients.skeleton.Client
buildAudioTrack, findSelectedTrack, getPlayabilityStatus, getUnplayableReason, requirePlayerScript, supportsFormatLoading, supportsOAuth
-
Field Details
-
BASE_CONFIG
-
-
Constructor Details
-
WebEmbedded
public WebEmbedded() -
WebEmbedded
-
-
Method Details
-
setPoTokenAndVisitorData
-
isEmbedded
public boolean isEmbedded() -
transformPlaybackUri
@NotNull public @NotNull URI transformPlaybackUri(@NotNull @NotNull URI originalUri, @NotNull @NotNull URI resolvedPlaybackUri) Description copied from interface:ClientTransforms a given playback URL as necessary. For example, you can add query parameters or resolve any challenge parameters that might be needed.- Specified by:
transformPlaybackUriin interfaceClient- Overrides:
transformPlaybackUriin classWeb- Parameters:
originalUri- The original stream URI. This will be completely unmodified, and is provided as it has been received from YouTube.resolvedPlaybackUri- The playback URI. This will have already been transformed by the SignatureCipherManager.- Returns:
- The new playback URI.
-
getBaseClientConfig
@NotNull public @NotNull ClientConfig getBaseClientConfig(@NotNull @NotNull com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface httpInterface) Description copied from class:NonMusicClientRetrieves a base client config payload to be used for requests.- Overrides:
getBaseClientConfigin classWeb- Parameters:
httpInterface- The HTTP interface to use for fetching a config, if applicable.- Returns:
- A client configuration.
-
getIdentifier
- Specified by:
getIdentifierin interfaceClient- Overrides:
getIdentifierin classWeb- Returns:
- The unique identifier for this client.
-
canHandleRequest
Description copied from interface:ClientReturns a boolean determining whether this client can be used to handle requests for the given identifier.- Specified by:
canHandleRequestin interfaceClient- Overrides:
canHandleRequestin classNonMusicClient- Parameters:
identifier- The resource identifier. Could be an arbitrary string or a URL.- Returns:
- True, if this client can handle the request.
-
loadSearch
public com.sedmelluq.discord.lavaplayer.track.AudioItem loadSearch(@NotNull @NotNull YoutubeAudioSourceManager source, @NotNull @NotNull com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface httpInterface, @NotNull @NotNull String searchQuery) Description copied from interface:ClientLoads search results for a query.- Specified by:
loadSearchin interfaceClient- Overrides:
loadSearchin classNonMusicClient- Parameters:
source- The source manager responsible for this client.httpInterface- The interface to use for requests.searchQuery- The search query.- Returns:
- An AudioItem.
-
loadPlaylist
public com.sedmelluq.discord.lavaplayer.track.AudioItem loadPlaylist(@NotNull @NotNull YoutubeAudioSourceManager source, @NotNull @NotNull com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface httpInterface, @NotNull @NotNull String playlistId, @Nullable @Nullable String selectedVideoId) Description copied from interface:ClientLoads a playlist.- Specified by:
loadPlaylistin interfaceClient- Overrides:
loadPlaylistin classNonMusicClient- Parameters:
source- The source manager responsible for this client.httpInterface- The interface to use for requests.playlistId- The ID of the playlist.- Returns:
- An AudioItem.
-
loadMix
public com.sedmelluq.discord.lavaplayer.track.AudioItem loadMix(@NotNull @NotNull YoutubeAudioSourceManager source, @NotNull @NotNull com.sedmelluq.discord.lavaplayer.tools.io.HttpInterface httpInterface, @NotNull @NotNull String mixId, @Nullable @Nullable String selectedVideoId) Description copied from interface:ClientLoads a mix playlist.- Specified by:
loadMixin interfaceClient- Overrides:
loadMixin classNonMusicClient- Parameters:
source- The source manager responsible for this client.httpInterface- The interface to use for requests.mixId- The ID of the mix.- Returns:
- An AudioItem.
-