来自discord.py库的message.embeds看不到来自SD.C监控机器人的嵌入

问题描述 投票:0回答:1

我正在尝试制作带有简单碰撞计数器和排行榜的不和谐机器人。当服务器被碰撞时 - 与服务器监控建立连接的机器人会在聊天中发送嵌入内容,表明服务器被碰撞。我用它来让不和谐的用户撞到服务器并为他计算不同的东西。

Disboard、DSMonitoring、服务器监控一切正常,如果我愿意,我还可以获取其他机器人的嵌入内容。但是 message.embeds 看不到 SD.C 监控的嵌入,我不明白为什么。

这是为 SD.C 监控提供 message.embeds 的内容,尽管我可以在我的测试不和谐服务器上看到嵌入存在: []

以下是为任何其他带有嵌入的消息提供 message.embeds 的示例: []

这是代码的一部分,似乎包含与此问题相关的所有内容:

your text

from typing import Final
import os
import json
from dotenv import load_dotenv
from discord import Intents, Client, Message
from responses import get_response
from dataStoring import StoreDataInJson
from commands import bot
load_dotenv()
TOKEN: Final[str] = os.getenv("DISCORD_TOKEN")

intents: Intents = Intents.default()
intents.message_content = True
client: Client = Client(intents=intents)

@client.event
async def on_ready() -> None:
    print(f'{client.user} is now running')

@client.event
async def on_message(message: Message) -> None:
    if message.author == client.user:
        return

    username: str = str(message.author)
    user_message: str = message.content
    channel: str = str(message.channel)

    print(f'[{channel}] {username}:       <{message.embeds}> ')


def main() -> None:
    client.run(token=TOKEN)
    bot.run(token=TOKEN)

if __name__ == '__main__':
    main()
python discord discord.py monitoring
1个回答
0
投票

机器人似乎推迟了响应并发送了后续信息。当它延迟时,会调用

on_message
。这就是为什么它没有嵌入。发送后续消息后,将调用
on_message_edit

@client.event
async def on_message_edit(before,after):
    if before.embeds != after.embeds:
        # your code here
© www.soinside.com 2019 - 2024. All rights reserved.