dj-embe/cog/music.py

26 lines
837 B
Python
Raw Normal View History

2023-04-27 23:19:18 +00:00
from logging import Logger
2023-05-06 01:16:26 +00:00
from discord import ApplicationContext, Bot, Cog, slash_command
2023-04-27 23:19:18 +00:00
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:
2023-05-06 01:16:26 +00:00
interaction = await context.respond(f"searching {query} ...")
entries = await self.sources.processQuery(interaction, query)
queue.add(entries)
2023-04-27 23:19:18 +00:00
2023-05-06 01:16:26 +00:00
await interaction.edit_original_response(content=entries[0].title.name)