Compare commits

...

2 commits

Author SHA1 Message Date
2017cbb226
cleanup(pterodactyl): making some changes to establish_websocket_connection
Some checks failed
Actions / Lint Code (Ruff & Pylint) (pull_request) Failing after 19s
Actions / Build Documentation (MkDocs) (pull_request) Successful in 22s
2024-02-28 13:00:11 -05:00
caa03a63e6
fix(pterodactyl): set origin header through websockets.connect and not through extra_headers 2024-02-28 12:54:34 -05:00

View file

@ -34,14 +34,17 @@ class Pterodactyl(commands.Cog):
api_key = await self.config.api_key()
server_id = await self.config.server_id()
extra_headers = {
"origin": base_url
}
try:
client = PterodactylClient(base_url, api_key, debug=True).client
self.client = client
websocket_credentials = client.servers.get_websocket(server_id)
self.logger.debug("Websocket connection details retrieved:\nSocket: %s\nToken: %s", websocket_credentials['data']['socket'], websocket_credentials['data']['token'])
self.logger.debug("""Websocket connection details retrieved:
Socket: %s
Token: %s...""",
websocket_credentials['data']['socket'],
websocket_credentials['data']['token'][:20]
)
#NOTE - The token is truncated to prevent it from being logged in its entirety, for security reasons
except exceptions.ClientConfigError as e:
self.logger.error('Failed to initialize Pterodactyl client: %s', e)
return
@ -49,7 +52,7 @@ class Pterodactyl(commands.Cog):
self.logger.error('Failed to retrieve Pterodactyl websocket: %s', e)
return
async for websocket in websockets.connect(websocket_credentials['data']['socket'], extra_headers=extra_headers):
async for websocket in websockets.connect(websocket_credentials['data']['socket'], origin=base_url):
try:
self.logger.debug("WebSocket connection established")
@ -57,7 +60,6 @@ class Pterodactyl(commands.Cog):
await websocket.send(auth_message)
self.logger.debug("Authentication message sent")
self.client = client
self.websocket = websocket
while True: