因此,我正在尝试使漫游器在特定时间(小时,分钟,秒),特定频道发送消息。但是,它实际上并没有执行其编程要做的事情。
现在,时间设置为15:25:00,但是它没有在该时间发送消息。
client.on("message", message => {
var day = new Date();
var hr = day.getHours();
var min = day.getMinutes();
var sec = day.getSeconds();
if (hr == 15) {
if (min == 25){
if (sec == 0) {
client.channels.get("704015571531857950").send("Test")
}
}
}
});
答案 0 :(得分:1)
始终查看父函数:)您的条件是否在client.on("message", message => { ... })
中,这意味着您仅检查某人发送消息的时间,仅当某人恰好在15点发送消息时,才允许机器人发送该消息。 :25:00。另外,要将消息发送到特定频道,您的方法已经过时,这是新的解决方案:
client.channels.fetch("704015571531857950").then((channel) => {
channel.send("Test");
});
答案 1 :(得分:0)
setInterval每隔10秒对从源开始来说是不好的,我建议您做一些数学运算并使用setTimeout,尽管setTimeout可能有点过时,但不要认为它太多了。
就像vrecusko所说的那样,您的方法已经过时了,但是使用提取并不是唯一/最好的选择。
client.channels.cache.get("704015571531857950").then(channel => {
channel.send("Message");
});
您能解释一下您在做什么吗?是否有一条命令可以设置发送消息的时间?还是想让机器人每天同时发送一条消息?