Речь идёт именно о “запоминании” данных, которые будут введены в команду.
@bot.command()
async def explosion_channel(ctx: discord.ApplicationContext, id_channel, id_role):
global channel_id
global role
"""Введите ID канала и ID роли"""
channel_id = int(id_channel)
role = int(id_role)
await ctx.respond('Канал принят!')
await asyncio.sleep(3)
await ctx.delete()
То есть при отправке команды запоминается ID канала, в которое будет отправляться сообщение, и роль, которая будет упоминаться. Проблема заключается в том, что при отправке команды на разных серверах, информация естественно перезаписывается и бот не работает так, как должен. Была попытка сделать проверку через
def check(msg):
return msg.author == ctx.author and msg.channel == ctx.channel
но после ввода команды на втором сервере появляется ошибка отправки.
Не хотелось бы использовать базу данных, потому что планировался простой бот с API для отправки уведомлений с возможностью добавления бота на свой сервер.