3030class Olympus (Extension ):
3131 _server_ports : dict [int , str ] = dict ()
3232 _client_ports : dict [int , str ] = dict ()
33+ _ws_ports : dict [int , str ] = dict ()
3334
3435 CONFIG_DICT = {
3536 "backend_port" : {
@@ -161,7 +162,8 @@ async def prepare_olympus_json(self) -> bool:
161162 self .log .warning (
162163 f" => { self .server .name } : No write permission on olympus.json, skipping { self .name } ." )
163164 return False
164- server_port = self .config .get (self .backend_tag , {}).get ('port' , 3001 )
165+ # Port checks
166+ server_port = self .config .get (self .backend_tag , {}).get ('port' , 4512 )
165167 if type (self )._server_ports .get (server_port , self .server .name ) != self .server .name :
166168 self .log .error (f" => { self .server .name } : { self .name } server.port { server_port } already in use by "
167169 f"server { type (self )._server_ports [server_port ]} !" )
@@ -173,6 +175,12 @@ async def prepare_olympus_json(self) -> bool:
173175 f"server { type (self )._client_ports [client_port ]} !" )
174176 return False
175177 type(self )._client_ports [client_port ] = self .server .name
178+ ws_port = self .config .get ('audio' , {}).get ('WSPort' , 4000 )
179+ if type (self )._ws_ports .get (client_port , self .server .name ) != self .server .name :
180+ self .log .error (f" => { self .server .name } : { self .name } audio.WSPort { ws_port } already in use by "
181+ f"server { type (self )._ws_ports [ws_port ]} !" )
182+ return False
183+ type(self )._ws_ports [ws_port ] = self .server .name
176184
177185 self .locals = self .load_config ()
178186 default_address = '*' if self .version == '1.0.3.0' else 'localhost'
0 commit comments