dj-embe/cog/music.py
2023-05-06 03:25:01 +02:00

26 lines
837 B
Python

from logging import Logger
from discord import ApplicationContext, Bot, Cog, slash_command
from service import QueueManager
from usecase import Sources
class Music(Cog):
def __init__(
self, bot: Bot, logger: Logger, queueManager: QueueManager, sources: Sources
):
self.bot = bot
self.logger = logger
self.queueManager = queueManager
self.sources = sources
@slash_command(name="play")
async def play(self, context: ApplicationContext, query: str):
async with self.queueManager(context.guild_id) as queue:
interaction = await context.respond(f"searching {query} ...")
entries = await self.sources.processQuery(interaction, query)
queue.add(entries)
await interaction.edit_original_response(content=entries[0].title.name)