如何发送 cron 消息以发送到特定频道
Posted
技术标签:
【中文标题】如何发送 cron 消息以发送到特定频道【英文标题】:how to send cron message to send to specific channel 【发布时间】:2020-11-16 20:09:35 【问题描述】:我对 javascript 还是很陌生,但我目前正在尝试制作 cron 消息,它确实有效,但现在我试图弄清楚如何将其发送到特定频道
这就是我目前所拥有的
var CronJob = require('cron').CronJob;
var job = new CronJob('1 * * * * *', function ()
message.channel.send('You will see this message every second');
, null, true, 'America/Los_Angeles');
job.start();
我尝试了一些方法,但它要么不起作用,要么导致代码崩溃
【问题讨论】:
这能回答你的问题吗? Discord.js sending a message to a specific channel 它很好,只是一个测试client.channels.cache.get('CHANNEL ID').send('Hello here!')
是最有可能的答案。请点击我发送的第一个链接阅读更多
【参考方案1】:
您可以通过按名称或 ID 查找频道来定义频道。
按 ID 查找:
client.channels.cache.find(c => c.id === "id");
按名称查找:
client.channels.cache.find(c => c.name === "name")
【讨论】:
【参考方案2】:Marino 的回答在技术上是正确的,但不是推荐的。你应该这样做:
<client>.channels.cache.get("ID HERE")
或
<client>.channels.cache.find(c => c.name === "name")
最好使用.get
作为 ID。
此外,如果您每秒发送一条消息,您的机器人可能会受到速率限制。
【讨论】:
以上是关于如何发送 cron 消息以发送到特定频道的主要内容,如果未能解决你的问题,请参考以下文章
在 Discord 中使用 cron 在特定时间向特定频道发送消息