При использовании node-cron для запуска запланированного напоминания для моего бота Discord возникли некоторые проблемы - PullRequest
0 голосов
/ 12 июля 2020

Итак, я пытался создать запланированное напоминание для своего бота Discord, и после долгих попыток вот что у меня получилось.

const Discord = require("discord.js")
const cron = require("node-cron");
const bot = new Discord.Client({disableEveryone: False});

module.exports = bot => { 
    console.log(`${bot.user.username} is online`)
    bot.user.setActivity("SINoALICE", {type: "PLAYING"});

    let reminderChannel = client.channel.find(channel => channel.id === '731870214526074910');
    let colloseumChannel = client.channel.find(channel => channel.id ==='730423361783726111');

    const cronJobs = [
        { "type": "Guerrilla", "param": "* 25 20 * * *" },
        { "type": "Guerrilla", "param": "* 25 22 * * *" },
        { "type": "Guerrilla", "param": "* 25 00 * * *" },
        { "type": "Guerrilla", "param": "* 25 02 * * *" },
        { "type": "Guerrilla", "param": "* 25 04 * * *" },
        { "type": "Guerrilla", "param": "* 25 13 * * *" },
        { "type": "Conquest", "param": "* 25 21 * * *" },
        { "type": "Conquest", "param": "* 25 23 * * *" },
        { "type": "Conquest", "param": "* 25 01 * * *" },
        { "type": "Conquest", "param": "* 25 03 * * *" },
        { "type": "Conquest", "param": "* 25 05 * * *" },
        { "type": "Conquest", "param": "* 50 14 * * *" },
        { "type": "Colloseum", "param": "* 50 22 * * *" }
    ];
 
for(let i = 0; i < cronJobs.length; i++){
  cron.schedule(cronJobs[i].param, cronJobs[i] => {
    let message;
    if(cronJobs[i].type === 'Colloseum'){
        colloseumChannel.send(`@everyone The Colloseum Battle is about to being in 10 minutes. Please ready yourself!`);
     } else {
       reminderChannel.send(`@everyone The next ${croneJobs.[i].type} Event begins in 5 minutes.`);
     }
    console.log("Scheduler running...")
  })
}
}

Однако у меня возникли проблемы журнал проблем и я абсолютно не знаю, что я могу сделать. какой-нибудь совет?

...