Для создания слеш команд (Slash commands) на discord.py вам понадобится сохранить последнюю версию discord.py, которая поддерживает интерфейс API 9.0.0 или более позднюю. Теперь давайте подробнее рассмотрим, как создать слеш команды.
- Установка discord.py:
Сначала установите discord.py с использованием pip:
pip install -U discord.py
- Создание клиента:
Создайте новый файл Python и импортируйте discord.py:
import discord from discord.ext import commands
Затем создайте клиент discord и определите префикс команды. Пример:
bot = commands.Bot(command_prefix='!')
- Создание слеш команды:
Теперь можно создать слеш команду с помощью декоратора @bot.slash_command() и асинхронной функции, которая будет выполняться при вызове команды. Пример:
@bot.slash_command( name="hello", description="Say hello to the bot", guild_ids=[1234567890] # Идентификаторы серверов, на которых будет доступна команда (необязательно) ) async def hello_command(ctx: commands.Context): await ctx.send("Hello!")
name
- имя команды, которое будет видно в списке команд на сервере.
description
- описание команды.
guild_ids
- список идентификаторов серверов, на которых команда будет доступна. Если этот список не указан, команда будет доступна на всех серверах, где присутствует ваш бот.
- Запуск бота:
Для запуска бота вызовите метод bot.run() и передайте токен вашего бота. Пример:
bot.run("YOUR_BOT_TOKEN")
Теперь ваш бот готов к использованию слеш команд! Он будет автоматически регистрировать команды при подключении к серверам (регистрация команд может занять некоторое время).
- Тестирование слеш команд:
Чтобы протестировать свою слеш команду, просто запустите вашего бота и зайдите на один из серверов, указанных в параметре guild_ids команды. Начните вводить слеш ("/") в поле ввода сообщения чата и вы увидите список доступных команд, включая ваши слеш команды.
Теперь вы знаете, как создавать слеш команды на discord.py. Удачи в разработке!