fix/player-list not responding on failed request
This commit is contained in:
3 files changed
+9
-7
No files matched your search
@@ -31,15 +31,16 @@ module.exports = {
|
|||||||
return interaction.send({ embeds: [warnNitradoNotInitialized], flags: (1 << 6) });
|
return interaction.send({ embeds: [warnNitradoNotInitialized], flags: (1 << 6) });
|
||||||
}
|
}
|
||||||
|
|
||||||
const data = await FetchServerSettings(GuildDB.Nitrado, client, 'commands/player-list.js'); // Fetch server status
|
await interaction.deferReply();
|
||||||
|
|
||||||
|
const data = await FetchServerSettings(GuildDB.Nitrado, client, 'commands/player-list.js'); // Fetch server status
|
||||||
const e = data && data !== 1; // Check if data exists
|
const e = data && data !== 1; // Check if data exists
|
||||||
|
|
||||||
const hostname = e ? data.data.gameserver.settings.config.hostname : 'N/A';
|
const hostname = e ? data.data.gameserver.settings.config.hostname : 'N/A';
|
||||||
const map = Missions[data.data.gameserver.settings.config.mission];
|
const map = e ? Missions[data.data.gameserver.settings.config.mission] : 'N/A';
|
||||||
const status = e ? data.data.gameserver.status : 'N/A';
|
const status = e ? data.data.gameserver.status : 'N/A';
|
||||||
const slots = e ? data.data.gameserver.slots : 'N/A';
|
const slots = e ? data.data.gameserver.slots : 'N/A';
|
||||||
const playersOnline = data.data.gameserver.query.player_current;
|
const playersOnline = e ? data.data.gameserver.query.player_current : 'N/A';
|
||||||
|
|
||||||
const Statuses = {
|
const Statuses = {
|
||||||
"started": {emoji: "🟢", text: "Active"},
|
"started": {emoji: "🟢", text: "Active"},
|
||||||
@@ -47,8 +48,8 @@ module.exports = {
|
|||||||
"restarting": {emoji: "↻", text: "Restarting"},
|
"restarting": {emoji: "↻", text: "Restarting"},
|
||||||
};
|
};
|
||||||
|
|
||||||
const emojiStatus = Statuses[status].emoji || "❓";
|
const emojiStatus = e ? Statuses[status].emoji : "❓";
|
||||||
const textStatus = Statuses[status].text || "Unknown Status";
|
const textStatus = e ? Statuses[status].text : "Unknown Status";
|
||||||
|
|
||||||
let activePlayers = await client.dbo.collection("players").find({"connected": true}).toArray();
|
let activePlayers = await client.dbo.collection("players").find({"connected": true}).toArray();
|
||||||
|
|
||||||
@@ -74,7 +75,7 @@ module.exports = {
|
|||||||
.setTitle(`Players Online:`)
|
.setTitle(`Players Online:`)
|
||||||
.setDescription(des || (nodes ? "No Players Online :(" : ""));
|
.setDescription(des || (nodes ? "No Players Online :(" : ""));
|
||||||
|
|
||||||
return interaction.send({ embeds: [serverEmbed, activePlayersEmbed] });
|
return interaction.editReply({ embeds: [serverEmbed, activePlayersEmbed] });
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "dayzr-bot",
|
"name": "dayzr-bot",
|
||||||
"version": "13.3.21",
|
"version": "13.3.22",
|
||||||
"description": "A General Purpose Discord Bot for DayZ Nitrado Servers.",
|
"description": "A General Purpose Discord Bot for DayZ Nitrado Servers.",
|
||||||
"main": "index.js",
|
"main": "index.js",
|
||||||
"nodemonConfig": {
|
"nodemonConfig": {
|
||||||
|
|||||||
@@ -176,6 +176,7 @@ module.exports = {
|
|||||||
|
|
||||||
if (!res.ok) {
|
if (!res.ok) {
|
||||||
client.error(`Failed to get Nitrado server stats (${nitrado_cred.ServerID}): status: ${res.status}, message: ${res.statusText}: ${fetcher} via FetchServerSettings`);
|
client.error(`Failed to get Nitrado server stats (${nitrado_cred.ServerID}): status: ${res.status}, message: ${res.statusText}: ${fetcher} via FetchServerSettings`);
|
||||||
|
if (res.status == 401) return 1; // return immediately if unauthorized
|
||||||
if (retries === 2) return 1; // Return error status on the second failed status code.
|
if (retries === 2) return 1; // Return error status on the second failed status code.
|
||||||
} else {
|
} else {
|
||||||
const data = await res.json();
|
const data = await res.json();
|
||||||
|
|||||||
Reference in new issue
Block a user