Was mache ich falsch (Einfache Ansager Bot auf Zwietracht)
Haftungsausschluss; ich habe nie wirklich sah kalt über einmal oder zweimal vor heute.
Die Basis Bot, die ich habe ist von hier;
aber ich am Ende mit diesem in der cmd-Eingabeaufforderung, wenn ich versuchen zu verkehren es:
C:\Users\aer\Desktop\discordbotjson>node start
C:\Users\aer\Desktop\discordbotjson\start.js:9
var channel = client.channels.get("name", "general").id;
^
ReferenceError: client is not defined
at Client.<anonymous> (C:\Users\aer\Desktop\discordbotjson\start.js:9:16)
at emitNone (events.js:67:13)
at Client.emit (events.js:166:7)
at WebSocket.websocket.onmessage (C:\Users\aer\Desktop\discordbotjson\node_modules\discord.js\lib\Client\InternalClient.js:1047:13)
at WebSocket.onMessage (C:\Users\aer\Desktop\discordbotjson\node_modules\ws\lib\WebSocket.js:414:14)
at emitTwo (events.js:87:13)
at WebSocket.emit (events.js:172:7)
at Receiver.ontext (C:\Users\aer\Desktop\discordbotjson\node_modules\ws\lib\WebSocket.js:797:10)
at C:\Users\aer\Desktop\discordbotjson\node_modules\ws\lib\Receiver.js:473:18
at Receiver.applyExtensions (C:\Users\aer\Desktop\discordbotjson\node_modules\ws\lib\Receiver.js:360:5)
Dies ist, was die start.json
aussieht:
var Discord = require("discord.js");
var schedule = require('node-schedule');
var AuthDetails = require("./auth.json");
var bot = new Discord.Client();
bot.on('ready', () => {
//change channel name to name of channel or just set to equal the channel ID if you already know it.
var channel = client.channels.get("name", "general").id;
var rule = new schedule.RecurrenceRule(); //Creates new Recurrence Rule
rule.minute = 0; //Must set to 0 or scheduled job will run every minute.
rule.hour = [14, 19, 20]; //Hours are based on your system's time.
var j = schedule.scheduleJob(rule, function() {
bot.channels.get("id", channel).sendMessage("Testing");
})
/* For different announcements:
rule.hour = 8; //Set different time. Use array like above for multiple hours.
var i = schedule.scheduleJob(rule, function() {
bot.channels.get("id", channel).sendMessage("Announcement at 8AM");
})
//Repeat for more announcements
*/
console.log("Bot is ready.");
});
//login
bot.login(AuthDetails.email, AuthDetails.password);
Hilfe würde geschätzt, danke.
- Versuchen Sie, Kunden.- Kanäle.man bot.- Kanäle.erhalten
- Sie haben kein element namens "client". Meinst du "bot", vielleicht?
- Diese
var Discord = require("discord.js");
wahrscheinlich sein sollte:var Discord = require("discord");
Du musst angemeldet sein, um einen Kommentar abzugeben.
Einige code-Beispiele, die Sie vielleicht finden, verwenden Sie
var client = new Discord.Client();
einige andere nutzenvar bot = new Discord.Client();
. Sie bedeuten das gleiche, aber verwenden Sie einen anderen Namen, und da Sie mit der letzteren, müssen Sie ersetzen Sie alle Instanzen der variable nameclient
mitbot
.Ersetzen
var Discord = require("discord.js");
mitvar bot = require("discord.js");
Hoffe, das hilft!
Bot die Instanz von Zwietracht Client ist es normal, dass
client.channels.()
nichts zurückgibt, da client ist nicht überall definiert.Nur client ersetzen, die mit Ihrer Instanz von einem client, der hier "bot"
Dieser code sollte funktionieren;
var channel = bot.channels.find("name", "general");
channel.sendMessage("Hello Owner Just Restarted Me!");