bundle.discord.cogs.music.embed

Player embed – message lifecycle and seek-bar updates.

Attributes

Classes

PlayerEmbed

Manages the persistent now-playing message and seek-bar loop for one guild.

Functions

vc_status(→ str)

Return 'Paused' or 'Playing' based on voice client state.

Module Contents

bundle.discord.cogs.music.embed.SEEK_UPDATE_INTERVAL = 5
bundle.discord.cogs.music.embed.vc_status(vc: discord.VoiceProtocol | None) str

Return ‘Paused’ or ‘Playing’ based on voice client state.

class bundle.discord.cogs.music.embed.PlayerEmbed(embeds: bundle.discord.embeds.EmbedFactory, queue: bundle.discord.cogs.music.queue.TrackQueue, player: bundle.discord.cogs.music.player.GuildPlayer, text_channel: discord.TextChannel)

Manages the persistent now-playing message and seek-bar loop for one guild.

text_channel
msg: discord.Message | None = None
view: discord.ui.View | None = None
now_playing(track: bundle.youtube.track.YoutubeTrackData, status: str) discord.Embed
queue_page_count(per_page: int = 15) int
queue_embed(*, page: int = 0, per_page: int = 15) discord.Embed
async refresh(*, status: str) None

Update the persistent message with current track state.

async send_or_update(embed: discord.Embed, view: discord.ui.View | None = None) None

Send a new message or edit the existing one.

disable_view() None

Disable all buttons and stop the view.

async delete() None

Delete the persistent message and clean up the view.

async show_error(description: str) None

Update the persistent message with an error embed.

start_seek_loop(guild: discord.Guild) None
cancel_seek_loop() None