所以我想做的是,我的 discord bot 侦听附件,然后将它们发送到特定频道,我希望它也用 ? 和 ? 做出反应,现在我看到了一些解决方案,但它们需要消息 ID和频道 id,我的频道 id 将保持不变,但每次我发送附件时我的消息 id 都会更改我如何制作它以便它对进入该频道的附件做出反应
我的代码:-
client.on("message", async message => {
message.attachments.forEach((attachment) => {
if (attachment.width && attachment.height) {
if (message.author.bot) return
let yes = attachment
const channel = client.channels.cache.find(channel => channel.name === "llllllounge")
channel.send(yes)
.then(() => attachment.react('?'))
.then(() => attachment.react('?'))
}
});
})
我尝试过 yes.react('?')
但它不起作用并回复 yes.react is not a function
如果有人帮助我,将不胜感激。
答案 0 :(得分:1)
Channel#send
返回一个承诺。这意味着我们可以使用 asynchronous function
来定义使用 await
(在定义之前发送消息)的通道发送方法,并使我们的机器人对新发送的消息做出反应。
client.on("message", message => {
message.attachments.forEach(async (attachment) => {
if (attachment.width && attachment.height) {
if (message.author.bot) return
let yes = attachment
const channel = client.channels.cache.find(channel => channel.name === "llllllounge")
const msg = await channel.send(yes)
await msg.react('?')
msg.react('?')
}
});
})