@rensly

Ошибка discord.py?

написал код по которому если бота упомянут, он ответит(reply) ембедом.
Но проблема в том что работает этот код ТОЛЬКО на меня, и другие участники не получают ответа от бота.

# @tag
@bot.event
async def on_message(message):
    await bot.process_commands( message )
    splited = message.content.split(' ')
    if message.author.bot is False:
        if f'<@!822563111571423254>' in splited[0]:
            try:
                if splited[1] is None:
                    pass
                else:
                    pass
            except:
                    embed = discord.Embed(title = f'Welcome!', timestamp = message.created_at, colour = discord.Colour.from_rgb(199, 182, 219),  description = f'''
        Hi {message.author.display_name}, my name **Osidium**!

        • My prefix - `o+`
        • Write the command 'o+help' to find out all my features.
        • Want to know a little about me? Write `o-about`.
        • Need help on the bot, or found a bug/error? Visit our server: [Join](https://discord.gg/t000)''')
        await message.reply(embed=embed)
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
Скорее всего, другие участники сидят с клиента, который "уважает" правила построения упоминаний.

На скриншоте ниже:
1ое сообщение отправлено с desktop client'а
2ое сообщение отправлено с мобильного android client'а
71kebX6.png

Не пытайтесь проверять на упоминания вручную. API возвращает список пользователей которые были упомянуты вместе с сообщением, проверяйте на наличие бота в этом списке:
@bot.event
async def on_message(message):
    if not message.author.bot and bot.user in message.mentions:
        await message.reply("Im doing things")
    await bot.process_commands(message)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект
18 апр. 2024, в 21:56
2000 руб./за проект