Относительно send_file() от discord.py

Я возился с функцией discord.py send_file().

Первоначально я использовал ответ на этот вопрос, чтобы получить общее представление о параметрах, которые мне понадобятся: Как использовать client.send_file discord.py

Однако я планирую использовать своего бота на нескольких серверах, а не на одном, и ответ, данный в вопросе, связанном выше, по существу жестко кодирует конкретный канал для отправки файлов.

Я пытаюсь сделать так, чтобы мой бот получил идентификатор канала, в котором ему была дана команда! Moe, и отправил файл на тот же канал.

@client.command()
async def moe():

    await client.send_file(client.get_server('How do I get the ID of the discord channel that calls this command?')),'moe.gif')

1 ответ

Решение

Предполагая, что вы используете rewrite ветвь (что, IIRC, вы должны быть), это так же просто, как взять ctx параметр функции вашей команды и доступаctx.channel (обратите внимание, что пример документа, кажется, противоречит тому, что он говорит до этого, но на самом деле это просто стенография). Если вы не используете rewrite Я думаю, что это должен быть примерно такой же процесс, но ваш декоратор должен выглядеть так:

@client.command(pass_context=True)
Другие вопросы по тегам