worldlight
@worldlight
Просто программист

Как создать слеш команду?

Пытался сделать слеш команду бота для дискорда

import discord
from discord.ext import commands
from discord.ext.commands import Bot
from discord.utils import get
from dislash import InteractionClient

intents = discord.Intents.all()
bot = commands.Bot(command_prefix="Angel, ", intents=intents)

inter_client = InteractionClient(bot, test_guilds=[891547952508706866])

# тут еще код но дело не в нем

@inter_client.slash_command(description="Info")
async def info(ctx):
	await ctx.send("Info:")


Ошибка:
Traceback (most recent call last):
  File "C:\Users\VLAD\Desktop\Прочее\Bot\bot.py", line 12, in <module>
    inter_client = InteractionClient(bot, test_guilds=[891547952508706866])
  File "C:\Users\VLAD\AppData\Local\Programs\Python\Python39-32\lib\site-packages\dislash\application_commands\slash_client.py", line 86, in __init__
    self._modify_discord()
  File "C:\Users\VLAD\AppData\Local\Programs\Python\Python39-32\lib\site-packages\dislash\application_commands\slash_client.py", line 182, in _modify_discord
    from ._modifications.new import (
  File "C:\Users\VLAD\AppData\Local\Programs\Python\Python39-32\lib\site-packages\dislash\application_commands\_modifications\new.py", line 1, in <module>
    from discord import (
ImportError: cannot import name 'InvalidArgument' from 'discord' (C:\Users\VLAD\AppData\Local\Programs\Python\Python39-32\lib\site-packages\discord\__init__.py)


Пробовал много всего (Нужные библиотеки установлены, переустанавливал)

P.S: Дайте решение проблемы касательно моего кода (Лучше так) или дайте готовый код для реализации моей идеи
  • Вопрос задан
  • 422 просмотра
Решения вопроса 1
fenrir1121
@fenrir1121 Куратор тега discord.py
Начни с документации
Твоему коду ничто не поможет, discord-py-slash-command уже больше года не поддерживается.
Переходите на discord.py v2.0 или форки (pycord, disnake) у них у всех на гитхабе есть папка example с примерами реализации слеш-команд.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы