import discord import aiohttp class Extension: def __init__(self, core): @core.tree.command(name = "rcon", description = "Вызвать команду на сервере") @discord.app_commands.describe(server="Нужным сервер в формате srv1", command="Команда исполнения") async def rcon_command( interaction: discord.Interaction, server: str, command: str ): steam64 = await core.GetSteam64OfDiscord(interaction.user) if not server in core.stats.get("servers", {}).keys(): return await interaction.response.send_message(f"Сервер с таким индификатором не существует, введи существующий из предложенных:\n{' '.join(core.stats.get('servers', {}).keys())}", ephemeral=False) async with aiohttp.ClientSession(cookies={"secretkey":core.secret_key, "steam64":steam64}) as session: async with session.post(f"{core.backend_url}/api/admin/rcon?srv={server}&command={command}", ssl=False) as response: return await interaction.response.send_message(f'{await response.text()}', ephemeral=False)