Serververbindungsabfrage (DiscordBot) - Druckversion +- Javascript-forum (https://javascript-forum.de) +-- Forum: Entwicklung (https://javascript-forum.de/forumdisplay.php?fid=4) +--- Forum: Javascript (https://javascript-forum.de/forumdisplay.php?fid=6) +--- Thema: Serververbindungsabfrage (DiscordBot) (/showthread.php?tid=15) |
Serververbindungsabfrage (DiscordBot) - wickedsmith23 - 15.07.2021 Hallo allerseits. Ich bin an ein Problem geraten, wo ich nicht mehr weiter weiß.. Ich möchte einen Discord-Bot Programmieren, der den Status eines FiveM Server abfragt und ausgibt.. Dies Passiert durch eine IF Abfrage, die ausgeführt werden soll, wenn der Server Offline ist und somit einen Error ausgibt. Das Problem an der Sache ist nur, dass das Programm an der Stelle aufhört, an der es eigentlich in die IF Abfrage gehen soll, da das Programm einen Error zurück bekommt wird das Programm leider beendet. Hier der Code: console.log("Bot ist Online...") const Discord = require('discord.js') const fs = require('fs') const config = JSON.parse(fs.readFileSync('config.json', 'utf8')) //Von Index const bot = new Discord.Client() // Defines the client / the discord bot const fivereborn = require('fivereborn-query'); // Defines the npm library we use to get data from our fivem server const { TIMEOUT } = require('dns') const { exit } = require('process') //Ende von Index const client = new Discord.Client() client.on('ready' , () => { console.log("Der Bot ist eingeloggt als: " + client.user.tag + "!") console.log("Der Bot ist auf " + client.guilds.cache.size + " Servern!") }) client.on('message' , (message) =>{ if(!message.member.user.bot && message.guild){ if(message.content == '/status'){ fivereborn.query(config.SERVER_IP,config.SERVER_PORT, (err, data) => { if(err) { // Checks for errors message.channel.send("1 Nachricht!") } else { message.channel.send(err) message.channel.send("2 Nachricht!") } }) } } }) client.login(config.TOKEN) RE: Serververbindungsabfrage (DiscordBot) - admin - 16.07.2021 Hast du mal versucht, anstatt if ein try catch zu nutzen ? Das ist ja eigentlich dafür da um errors abzufangen Zb so Code: try{ // alles ok RE: Serververbindungsabfrage (DiscordBot) - wickedsmith23 - 16.07.2021 Ja habe ich bereits. Diese Variante habe ich nun auch einmal ausprobiert, geklappt hat es dennoch nicht. RE: Serververbindungsabfrage (DiscordBot) - wickedsmith23 - 16.07.2021 Das Problem hierbei ist, dass das try gar nicht ausgeführt wird, da der Error in " fivereborn.query(config.SERVER_IP,config.SERVER_PORT, (err, data) => {" entsteht. RE: Serververbindungsabfrage (DiscordBot) - wickedsmith23 - 16.07.2021 Oh warte, ich habe das Programm gerade Debuggt und mir ist aufgefallen, dass er schon ab "client.on('message' , (message) =>{" aufhört oder einen Error ausgibt Hier nochmal der Code, der eigentlich Funktionieren sollte.: try{ client.on('message' , (message) =>{ console.log("Test") if(!message.member.user.bot && message.guild){ if(message.content == '/status'){ fivereborn.query(config.SERVER_IP,config.SERVER_PORT, (err, data) => { message.channel.send("1 Nachricht! Server Muss Offline sein!") message.channel.send(embed) console.log(message.member.user.tag + 'Server ist Offline') }) } } }) }catch(err){ console.log("Test") message.channel.send("2 Nachricht! Server muss Online sein!") message.channel.send(embed) console.log(message.member.user.tag + 'Server ist Online!') } |