Javascript 定义特定频道的键入开始时出现问题
我正在尝试让我的discord bot仅在用户开始在定义的频道而不是其他文本频道中键入时发送此消息。我没有收到任何错误,机器人只是不发送消息。我做错了什么?Javascript 定义特定频道的键入开始时出现问题,javascript,node.js,discord,discord.js,bots,Javascript,Node.js,Discord,Discord.js,Bots,我正在尝试让我的discord bot仅在用户开始在定义的频道而不是其他文本频道中键入时发送此消息。我没有收到任何错误,机器人只是不发送消息。我做错了什么?typingStart是否可以定义为特定频道 const Join2_channel = "972135774921247676" bot.on("typingStart", (message , channel) => { if (channel.id === Join2_channe
typingStart
是否可以定义为特定频道
const Join2_channel = "972135774921247676"
bot.on("typingStart", (message , channel) => {
if (channel.id === Join2_channel) {
message.send('Type !join');
}
});
事件具有两个参数channel
(用户开始键入的频道)和user
(开始键入的频道),按此顺序排列
在当前代码中,您正在检查user.id
是否为9721357747921247676
,因为这是一个频道的雪花,它将不匹配。您需要更新回调函数:
bot.on(“键入开始”(频道,用户)=>{
if(channel.id==Join2\u channel){
channel.send('Type!join');
}
});
当然可以!我应该在哪里设置一个超时功能,在发送消息后暂停bot,这样他就不会每隔7秒发送一次垃圾邮件?你的意思是这样来延迟消息吗if(channel.id==Join2_channel){setTimeout(()=>channel.send('Type!join'),7000);}
。或者您可能想要使用?谢谢您的回复!是的,debounce听起来正是我想要的。我将如何将它应用到我正在尝试做的事情中。再次感谢!