我有一个 Discord 的 selfbot 项目(我知道它违反了 ToS,但这只是一个实验,我不会使用它)
我希望 selfbot 每小时在特定频道中使用 ID (783651779207626752) 发送一条消息,例如“这是一个示例消息”
我应该在代码中添加什么以及在哪里添加内容?
const Discord = require("discord.js")
const client = new Discord.Client()
const { prefix, token } = require("./config.json")
const fs = require("fs")
const { table, getBorderCharacters } = require("table")
const commands = new Discord.Collection();
let commandFiles
function loadCommands() {
console.log("loading commands..")
const startTime = new Date().getTime()
commandFiles = fs.readdirSync("./commands/").filter(file => file.endsWith(".js"));
const failedTable = []
if (commands.size > 0) {
for (command of commands.keyArray()) {
delete require.cache[require.resolve(`./commands/${command}.js`)]
}
commands.clear()
}
for (file of commandFiles) {
let command
try {
command = require(`./commands/${file}`);
let enabled = true;
if (!command.name || !command.description || !command.run) {
enabled = false;
}
if (enabled) {
commands.set(command.name, command);
} else {
failedTable.push([file, "❌"])
}
} catch (e) {
failedTable.push([file, "❌"])
}
}
}
loadCommands()
exports.reloadCommands = loadCommands
client.once("ready", () => {
console.log("logged in as " + client.user.username + "#" + client.user.discriminator)
})
function runCommand(cmd, message, args) {
args.shift()
try {
commands.get(cmd).run(message, args)
} catch(e) {
console.log(e)
}
}
setTimeout(() => {
client.login(token)
}, 1500)
答案 0 :(得分:1)
您可以创建另一个名为 globalFunctions.js 的文件
添加任何您想要作为 IFFE 全局运行的内容
这将确保每个 IFFE 都有自己的代码块
globalFunctions.js
export default globalFunctions(client, channel){
/*
IFFE
*/
(function(){
setInterval(()=>{
channel.send('some message')
}, /*Time you want*/)
})()
// and so on
}
或“如果你想扩展,我推荐这个”
您可以为每个全局函数添加其他文件,然后添加到全局函数文件中
/*Import other functions*/
import periodicMessage from 'PATH'
export default globalFunctions(client, channel){
periodicMessage(client, channel);
}
只需将此函数导入主文件并在服务器运行后运行它
main.js
import globalFunctions from 'PATH'
client.once('ready', () => {
// Your code
globalFunctions(client, channel)
})