check rcon response

This commit is contained in:
leander committed 2026-10-24 18:07:56 +02:00
1 parent 31e80f409b
commit 6159d0f8a3
1 file changed
+18 -2
+18 -2
View File
@@ -85,7 +85,7 @@ class MCWhitelist(commands.Cog):
# Also unfortunate, we seemingly need to wrap the context manager like this to catch any exceptions
try:
with MCRcon(host="127.0.0.1", password=self.bot.mc_rcon_password, port=25575) as mcr:
mcr.command(f'whitelist add {data["id"]}')
response = mcr.command(f'whitelist add {data["id"]}')
mcr.command("whitelist reload")
except Exception as e:
self.bot.logger.error(f"Failed to use RCON: {e}")
@@ -95,6 +95,14 @@ class MCWhitelist(commands.Cog):
)
)
if not response.startswith(("Added", "Player is already whitelisted")):
self.bot.logger.error(f"Minecraft server rejected whitelisting {data['name']}: {response}")
return await interaction.response.send_message(
embed=embed_templates.error_fatal(
"Minecraftserveren godtok ikke brukeren. Ta kontakt med din lokale teknisk ansvarlige",
)
)
# Add user to db
await self.bot.db.execute(
"""
@@ -142,7 +150,7 @@ class MCWhitelist(commands.Cog):
# Also unfortunate, we seemingly need to wrap the context manager like this to catch any exceptions
try:
with MCRcon(host="127.0.0.1", password=self.bot.mc_rcon_password, port=25575) as mcr:
mcr.command(f"whitelist remove {mc_id}")
response = mcr.command(f"whitelist remove {mc_id}")
mcr.command("whitelist reload")
except Exception as e:
self.bot.logger.error(f"Failed to use RCON: {e}")
@@ -152,6 +160,14 @@ class MCWhitelist(commands.Cog):
)
)
if not response.startswith(("Removed", "Player is not whitelisted")):
self.bot.logger.error(f"Minecraft server rejected removing {mc_id} from the whitelist: {response}")
return await interaction.response.send_message(
embed=embed_templates.error_fatal(
"Minecraftserveren klarte ikke å fjerne brukeren. Ta kontakt med din lokale teknisk ansvarlige",
)
)
# Remove user from db
await self.bot.db.execute(
"""