Package dev.jacrispys.JavaBot.audio
Class GuildAudioManager
java.lang.Object
dev.jacrispys.JavaBot.audio.GuildAudioManager
- 
Field SummaryFieldsModifier and TypeFieldDescriptionfinal com.sedmelluq.discord.lavaplayer.player.AudioPlayerbooleanstatic intfinal TrackSchedulerboolean
- 
Constructor SummaryConstructorsModifierConstructorDescriptionprotectedGuildAudioManager(net.dv8tion.jda.api.entities.Guild instance) 
- 
Method SummaryModifier and TypeMethodDescriptionvoidannounceNextTrack(net.dv8tion.jda.api.entities.Guild guild, com.sedmelluq.discord.lavaplayer.track.AudioTrack newSong) net.dv8tion.jda.api.utils.messages.MessageDataClears current queue withTrackScheduler.setQueue(BlockingQueue)by creating a blankLinkedBlockingQueue<com.sedmelluq.discord.lavaplayer.track.AudioTrack>net.dv8tion.jda.api.utils.messages.MessageDatadisconnectBot(net.dv8tion.jda.api.entities.Member member) Removes the bot from the VC and clears its audio channelnet.dv8tion.jda.api.utils.messages.MessageCreateDatacreates a DynamicMessageEmbedwith multipleButtonto search pages for the current queuenet.dv8tion.jda.api.entities.MessageEmbeddjEnabledEmbed(net.dv8tion.jda.api.JDA jda) protected voiddjLoaded(com.sedmelluq.discord.lavaplayer.track.AudioTrack track, net.dv8tion.jda.api.entities.channel.concrete.VoiceChannel voiceChannel) net.dv8tion.jda.api.utils.messages.MessageDataenableDJ(net.dv8tion.jda.api.entities.User sender, net.dv8tion.jda.api.entities.Guild guild) net.dv8tion.jda.api.utils.messages.MessageDatafixAudio(net.dv8tion.jda.api.entities.Member sender) Resets region selection for VCnet.dv8tion.jda.api.utils.messages.MessageDatafollowUser(net.dv8tion.jda.api.entities.Member sender) Moves the audio bot to the channel the sender is innet.dv8tion.jda.api.utils.messages.MessageDatagenerateRadio(se.michaelthelin.spotify.model_objects.specification.Recommendations requestData, net.dv8tion.jda.api.entities.channel.concrete.VoiceChannel channel, net.dv8tion.jda.api.entities.Member member) Generates a radio based off of genres and popularitynet.dv8tion.jda.api.utils.messages.MessageDatagenreList(long idLong) com.sedmelluq.discord.lavaplayer.player.AudioPlayerManagerstatic Map<net.dv8tion.jda.api.entities.Guild,GuildAudioManager> longstatic GuildAudioManagergetGuildAudioManager(net.dv8tion.jda.api.entities.Guild guild) @Nullable Map<com.sedmelluq.discord.lavaplayer.track.AudioTrack,net.dv8tion.jda.api.entities.User> booleannet.dv8tion.jda.api.utils.messages.MessageDatanet.dv8tion.jda.api.utils.messages.MessageDataloopSong()net.dv8tion.jda.api.utils.messages.MessageDatamoveSong(int pos1, int pos2) net.dv8tion.jda.api.utils.messages.MessageDataifAudioPlayer.isPaused()does nothing, otherwise pauses player.net.dv8tion.jda.api.entities.MessageEmbedplayListLoaded(String trackUrl, com.sedmelluq.discord.lavaplayer.track.AudioPlaylist playlist, net.dv8tion.jda.api.entities.channel.middleman.AudioChannel voiceChannel, boolean playTop) net.dv8tion.jda.api.utils.messages.MessageDataremoveTrack(int position) net.dv8tion.jda.api.utils.messages.MessageDataifAudioPlayer.isPaused()unpauses the player.net.dv8tion.jda.api.utils.messages.MessageDatanet.dv8tion.jda.api.utils.messages.MessageDatacreatesMessageEmbedwith song progress bar among other information about the playing track.voidsetRequester(com.sedmelluq.discord.lavaplayer.track.AudioTrack track, net.dv8tion.jda.api.entities.User requester) net.dv8tion.jda.api.utils.messages.MessageDatasetVolume(int i) net.dv8tion.jda.api.utils.messages.MessageDataobtains instance of queue withTrackScheduler.getTrackQueue()and randomizes it with collections.voidcopy ofskipTrack(Member request)without a confirmation message.net.dv8tion.jda.api.utils.messages.MessageDataskipTo(int indexNumber) net.dv8tion.jda.api.utils.messages.MessageDataskipTrack(net.dv8tion.jda.api.entities.Member request) Skip's the current track by usingTrackScheduler.nextTrack()voidstageUpdate(boolean stageStarted) voidtoggles whetherAudioPlayer.isPaused()net.dv8tion.jda.api.entities.MessageEmbedtrackLoaded(String trackUrl, com.sedmelluq.discord.lavaplayer.track.AudioTrack track, net.dv8tion.jda.api.entities.channel.middleman.AudioChannel voiceChannel, boolean playTop) net.dv8tion.jda.api.utils.messages.MessageDatatrackLoadFailed(String trackUrl, com.sedmelluq.discord.lavaplayer.tools.FriendlyException exception, boolean editMsg) net.dv8tion.jda.api.utils.messages.MessageDatatrackNotFound(String trackUrl, boolean editMsg) 
- 
Field Details- 
audioPlayerpublic final com.sedmelluq.discord.lavaplayer.player.AudioPlayer audioPlayer
- 
scheduler
- 
queuePagepublic static int queuePage
- 
nowPlayingId
- 
queueLooppublic boolean queueLoop
- 
songLooppublic boolean songLoop
 
- 
- 
Constructor Details- 
GuildAudioManagerprotected GuildAudioManager(net.dv8tion.jda.api.entities.Guild instance) 
 
- 
- 
Method Details- 
getGuildAudioManager- Parameters:
- guild- is the instance to retrieve
- Returns:
- instance of GuildAudioManager
 
- 
getAudioManagerpublic com.sedmelluq.discord.lavaplayer.player.AudioPlayerManager getAudioManager()- Returns:
- instance of AudioManager
 
- 
getAudioManagers
- 
getCurrentGuildpublic long getCurrentGuild()
- 
trackLoadedpublic net.dv8tion.jda.api.entities.MessageEmbed trackLoaded(String trackUrl, com.sedmelluq.discord.lavaplayer.track.AudioTrack track, net.dv8tion.jda.api.entities.channel.middleman.AudioChannel voiceChannel, boolean playTop) - Parameters:
- trackUrl- of the loaded track
- track- instance of loaded track
- voiceChannel- to attach bot to
- playTop- is- Booleanfor whether the loaded track should be placed at the top of the queue
 
- 
playListLoadedpublic net.dv8tion.jda.api.entities.MessageEmbed playListLoaded(String trackUrl, com.sedmelluq.discord.lavaplayer.track.AudioPlaylist playlist, net.dv8tion.jda.api.entities.channel.middleman.AudioChannel voiceChannel, boolean playTop) - Parameters:
- trackUrl- of the loaded track
- playlist- instance of loaded playlist
- voiceChannel- to attach bot to
- playTop- is- Booleanfor whether the loaded track should be placed at the top of the queue
 
- 
djEnabledEmbedpublic net.dv8tion.jda.api.entities.MessageEmbed djEnabledEmbed(net.dv8tion.jda.api.JDA jda) - Parameters:
- jda- to get self instance
 
- 
trackNotFoundpublic net.dv8tion.jda.api.utils.messages.MessageData trackNotFound(String trackUrl, boolean editMsg) - Parameters:
- trackUrl- part of message.
 
- 
trackLoadFailedpublic net.dv8tion.jda.api.utils.messages.MessageData trackLoadFailed(String trackUrl, com.sedmelluq.discord.lavaplayer.tools.FriendlyException exception, boolean editMsg) - Parameters:
- trackUrl- part of message.
- exception- is a non-blocking error.
 
- 
setRequesterpublic void setRequester(com.sedmelluq.discord.lavaplayer.track.AudioTrack track, net.dv8tion.jda.api.entities.User requester) - Parameters:
- track- loaded to player.
- requester- instance of- Userwho requested the track.
 
- 
getRequester@Nullable public @Nullable Map<com.sedmelluq.discord.lavaplayer.track.AudioTrack,net.dv8tion.jda.api.entities.User> getRequester()- Returns:
- A map of audioTracks and Users, should be used to obtain user from a given track.
 
- 
isStageEventpublic boolean isStageEvent()
- 
skipTrackpublic net.dv8tion.jda.api.utils.messages.MessageData skipTrack(net.dv8tion.jda.api.entities.Member request) Skip's the current track by usingTrackScheduler.nextTrack()
- 
stageUpdatepublic void stageUpdate(boolean stageStarted) 
- 
setVolumepublic net.dv8tion.jda.api.utils.messages.MessageData setVolume(int i) - Parameters:
- i- volume # 1-100 for normal audio, 500 max (distortion)
 
- 
displayQueuepublic net.dv8tion.jda.api.utils.messages.MessageCreateData displayQueue()creates a DynamicMessageEmbedwith multipleButtonto search pages for the current queue
- 
announceNextTrackpublic void announceNextTrack(net.dv8tion.jda.api.entities.Guild guild, com.sedmelluq.discord.lavaplayer.track.AudioTrack newSong) - Parameters:
- guild- to send message to.
- newSong- called by- TrackScheduler.onTrackStart(AudioPlayer, AudioTrack)
 
- 
togglePlayerpublic void togglePlayer()toggles whetherAudioPlayer.isPaused()
- 
skipNoMessagepublic void skipNoMessage()copy ofskipTrack(Member request)without a confirmation message.
- 
clearQueuepublic net.dv8tion.jda.api.utils.messages.MessageData clearQueue()Clears current queue withTrackScheduler.setQueue(BlockingQueue)by creating a blankLinkedBlockingQueue<com.sedmelluq.discord.lavaplayer.track.AudioTrack>
- 
pausePlayerpublic net.dv8tion.jda.api.utils.messages.MessageData pausePlayer()ifAudioPlayer.isPaused()does nothing, otherwise pauses player.
- 
resumePlayerpublic net.dv8tion.jda.api.utils.messages.MessageData resumePlayer()ifAudioPlayer.isPaused()unpauses the player.
- 
shufflePlayerpublic net.dv8tion.jda.api.utils.messages.MessageData shufflePlayer()obtains instance of queue withTrackScheduler.getTrackQueue()and randomizes it with collections.
- 
sendTrackInfopublic net.dv8tion.jda.api.utils.messages.MessageData sendTrackInfo()createsMessageEmbedwith song progress bar among other information about the playing track.
- 
removeTrackpublic net.dv8tion.jda.api.utils.messages.MessageData removeTrack(int position) - Parameters:
- position- of track in queue (adjusted for 0 index)
 
- 
seekTrack- Parameters:
- time- using- DateTimeFormatterto later be converted into MS
 
- 
djLoadedprotected void djLoaded(com.sedmelluq.discord.lavaplayer.track.AudioTrack track, net.dv8tion.jda.api.entities.channel.concrete.VoiceChannel voiceChannel) - Parameters:
- track- private icecast server
- voiceChannel- to attach to
 
- 
enableDJpublic net.dv8tion.jda.api.utils.messages.MessageData enableDJ(net.dv8tion.jda.api.entities.User sender, net.dv8tion.jda.api.entities.Guild guild) - Parameters:
- channel- to block/send commands from
- sender- instance of current DJ
- guild- to manage
 
- 
loopQueuepublic net.dv8tion.jda.api.utils.messages.MessageData loopQueue()
- 
loopSongpublic net.dv8tion.jda.api.utils.messages.MessageData loopSong()
- 
moveSongpublic net.dv8tion.jda.api.utils.messages.MessageData moveSong(int pos1, int pos2) - Parameters:
- pos1- is first track position to move.
- pos2- is second track position to move swaps positions of invalid input: '&'
 
- 
skipTopublic net.dv8tion.jda.api.utils.messages.MessageData skipTo(int indexNumber) - Parameters:
- indexNumber- to skip track queue to (adjusted for 0 index)
 
- 
followUserpublic net.dv8tion.jda.api.utils.messages.MessageData followUser(net.dv8tion.jda.api.entities.Member sender) Moves the audio bot to the channel the sender is in- Parameters:
- sender- user to move to
- Returns:
- message to confirm action
 
- 
fixAudiopublic net.dv8tion.jda.api.utils.messages.MessageData fixAudio(net.dv8tion.jda.api.entities.Member sender) Resets region selection for VC- Parameters:
- sender- user to send confirmation to
- Returns:
- message to confirm action
 
- 
disconnectBotpublic net.dv8tion.jda.api.utils.messages.MessageData disconnectBot(net.dv8tion.jda.api.entities.Member member) Removes the bot from the VC and clears its audio channel- Parameters:
- member- to send confirmation to
- Returns:
- message to confirm action
 
- 
generateRadiopublic net.dv8tion.jda.api.utils.messages.MessageData generateRadio(se.michaelthelin.spotify.model_objects.specification.Recommendations requestData, net.dv8tion.jda.api.entities.channel.concrete.VoiceChannel channel, net.dv8tion.jda.api.entities.Member member) Generates a radio based off of genres and popularity- Parameters:
- requestData- data from- GenerateGenrePlaylist.generatePlaylistFromGenre(String, int)to add songs to the queue
- channel- voice channel to send audio to
- member- user that requested the radio
- Returns:
- message to confirm action
 
- 
genreListpublic net.dv8tion.jda.api.utils.messages.MessageData genreList(long idLong) - Parameters:
- idLong- id of user to identify buttons with
- Returns:
- embed that has paginated list of all genres to generate radio from
 
 
-