繁体   English   中英

400 错误请求(错误代码:50006):以机器人身份回复用户消息时无法发送空消息

[英]400 Bad Request (error code: 50006): Cannot send an empty message when replying to user message as bot

def run_discord_bot():

intents = discord.Intents.default()
intents.message_content = True
intents.messages = True
client = discord.Client(intents=intents)


@client.event
async def on_ready():
    print(f"{client.user} is now running")

@client.event
async def on_message(message):
    #niet in een oneindige loop komen
    if message.author == client.user:
        return

    #Get data about user
    username = str(message.author).split('#')[0]
    user_message = str(message.content)
    channel = str(message.channel)

    #debug printing
    print(f"{username} said: '{user_message}' ({channel})")

    if user_message == 'hi':
        await message.reply(f'hi {username}')

    if user_message[0] == "?":
        user_message = user_message[1:] #removes the ?
        await send_message(message, user_message, is_private=True)
    else:
        await send_message(message, user_message, is_private=False)

当我运行代码时,它会完成其工作并回复用户,但在终端中我收到此错误消息400 Bad Request (error code: 50006): Cannot send an empty message 它只在响应消息时才这样做,而不是在运行命令时这样做。

只需在需要时使用await message.channel.send()发送文本。

如果它有效,请给它一个赞成票。 泰!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM