Discord бот, взаимодействия API
только начал кодить, очень заинтересовала эта тема со «взаимодействиями» в чате серверов.
не понимаю как сделать упоминание при отправке ботом сообщения.
также очень хотел бы узнать, как добавлять собственный архив gif (на сайте GIPHY), откуда и можно брать подобное.
Прикреплю скриншот действия, которое хотел бы понять. Всем заранее спасибо.
Ответы (1 шт):
Давайте зайдем в документацию по библиотеке discord-py, в раздел discord.User.
В списке Attributes видим атрибут mention (упоминание), который можем применить к объекту пользователя.
Чтобы получить объект пользователя, сразу зададим тип объекта аргумента при создании функции:
@bot.command()
async def mention(ctx, user: discord.User):
# действия при вызове команды
Таким образом, при получении аргумента user, он сразу же будет преобразован из типа str к типу discord.User.
Далее, можем упомянуть его в сообщении через атрибут:
await ctx.send(f'{ctx.author.mention} упомянул пользователя {user.mention}')
Полный код:
import discord
from discord.ext import commands
bot = commands.Bot(command_prefix='!', intents = discord.Intents.all())
@bot.command()
async def mention(ctx, user: discord.User):
await ctx.send(f'{ctx.author.mention} упомянул пользователя {user.mention}')
bot.run('TOKEN')
Не забудьте указать ваш токен в конце!
