javascript - 按时间自动删除指定频道的消息?不和谐.js
问题描述
我在需要的时候进行了自动频道清洁(Monday 15:00)
但是我的程序不能正常工作。当频道中出现消息时,倒计时开始。
我需要在channel.id中没有新消息的情况下清除频道
代码
const schedule = require("node-schedule");
client.on("message", async (message) => {
if (client.channels.cache.get("829042005236645900")) {
const job = schedule.scheduleJob('30 * * * * *', function () {
console.log('Delete');
message.channel.bulkDelete(20)
});
}
});
解决方案
看起来您正在事件处理程序中创建计划,这可能是导致问题的原因。这是一个替代方案:
const schedule = require("node-schedule");
const channel = client.channels.cache.get("829042005236645900");
const job = schedule.scheduleJob('30 * * * * *', function () {
console.log('Delete');
channel.bulkDelete(20);
});
但是,您似乎也想让事件每 30 秒触发一次?node-schedule
有一个称为Recurrence Rule Scheduling的系统:
const schedule = require("node-schedule");
const channel = client.channels.cache.get("829042005236645900");
const job = new schedule.scheduleJob({ second: new schedule.Range(0, 59, 30) },
function () {
console.log('Delete');
channel.bulkDelete(20);
});
推荐阅读
- flutter - 错误:没有为类“Utf8”定义吸气剂“addressOf”
- python - 用 python 绘制一个包含 X、Y、半径、强度的矩阵
- python - 如何尽可能高效地将元组列表转换为 pandas DataFrame?
- spring-boot - com.mongodb.MongoSocketOpenException:异常打开套接字。将fladdoodle从2.03更新到3.0.0版本后
- django-views - 如何在 django 中进行批量删除?
- database - 有没有办法在 Typerom 实体中的不同连接之间创建关系?
- javascript - AngularJs Gregorian dateTimePicker 显示日期问题
- shopify - 多标签过滤器没有在没有应用程序的情况下使用自定义代码在 shopify 中获取产品信息
- html - 如何正确地将 css 规则应用于嵌套元素
- db2 - 单击 IBM Cloud Db2 上的管理按钮后网页没有响应