我正在尝试创建消息镜像(获取频道消息并通过Webhook将其发送到另一个频道)。如何发送Webhook消息以复制用户发送的消息(相同的名称,相同的个人资料图片以及相同的消息内容和附件)?
我知道有一个文档(https://discordpy.readthedocs.io/en/latest/api.html#discord.Webhook),但我只是不明白如何获取发送消息的用户的个人资料图片和昵称,然后在Webhook上使用它们
这是我在苦苦挣扎的代码
@client.event
async def on_message(message):
fchannel = client.get_channel(fromchannel)
tchannel = client.get_channel(tochannel)
if message.channel == fchannel:
attach = message.attachments
print ("Found message to forward: "+ message.content)
if attach:
for attachment in attach:
#need code to send the message and image throught the webhook
else:
#need code to send the message throught the webhook
答案 0 :(得分:0)
您可以获取消息作者的display_name
和avatar_url
并将其作为关键字参数传递给Webhook.send
from discord.utils import get
@client.event
async def on_message(message):
fchannel = client.get_channel(fromchannel)
tchannel = client.get_channel(tochannel
webhook_id = 12345
hooks = await tchannel.webhooks()
hook = get(hooks, id=webhook_id)
if message.channel == fchannel:
await hook.send(content=message.content, username=message.author.display_name,
avatar_url=message.author.avatar_url)
这只是发送内容,根据需要,Webhook.send
有几个关键字可用于发送文件和嵌入。