Discord Py on_message bot=False 被阻止了?

时间:2021-06-13 20:39:19

标签: python python-3.x discord discord.py

我一直在尝试测试为什么 on_message() with bot=False 没有在我的测试服务器中接收其他消息。这适用于机器人,但不适用于自我。

@discord.events
async def on_message(message):
    if message.content == "whisk":
        print(f"{message.author}: Hello")

    await Discord.process_commands(message)

这应该在控制台中打印whisk,它在bot和self上执行,但是当它在self上运行并且另一个用户说“whisk”时,它不会打印任何内容。在机器人上它会打印。

2 个答案:

答案 0 :(得分:2)

这个问题很可能是因为 1.7 版本已经删除了所有自机器人方法。

如果您想要 Selfbot,您要么使用过时、不受支持且未维护的库,要么直接与 API 交互。在任何情况下,您都违反了 ToS,并且您不会在任何官方渠道上获得任何支持。

根本不允许使用自我机器人。即使只是连接到 API 甚至没有接收或发送一条消息也会破坏 ToS。

您只能使用 OAuth2 协议代表用户帐户发出请求。

答案 1 :(得分:-2)

试试:

import discord
import os
@client.event
async def on_message(message):
    if message.author == client.user:
        return
    if message.content.startswith('whisk'):
        await message.channel.send('hello')

看看有没有用