0
1
mirror of https://github.com/radio95-rnt/RadioPlayer.git synced 2026-02-26 21:53:54 +01:00

server file

This commit is contained in:
2025-12-13 18:29:49 +01:00
parent be31ac3d6e
commit beecee30f8

View File

@@ -3,7 +3,7 @@ import json
import threading, uuid, time import threading, uuid, time
import asyncio import asyncio
import websockets import websockets
from websockets import ServerConnection from websockets import ServerConnection, Request, Response, Headers
from . import Track, PlayerModule, Path from . import Track, PlayerModule, Path
@@ -114,9 +114,17 @@ def websocket_server_process(shared_data: dict, imc_q: multiprocessing.Queue, ws
await ws_handler(websocket, shared_data, imc_q, ws_q) await ws_handler(websocket, shared_data, imc_q, ws_q)
finally: finally:
clients.discard(websocket) clients.discard(websocket)
async def process_request(websocket: ServerConnection, request: Request):
if request.path == "/web.html" and (file := Path(__file__, "..", "web.html").resolve()).exists():
data = file.read_bytes()
return Response(
200,
"OK",
Headers([("Content-Type", "text/html"), ("Content-Length", f"{len(data)}")]),
data
)
# start server # start server
server = await websockets.serve(handler_wrapper, "0.0.0.0", 3001) server = await websockets.serve(handler_wrapper, "0.0.0.0", 3001, server_header="RadioPlayer ws plugin", process_request=process_request)
broadcaster = asyncio.create_task(broadcast_worker(ws_q, clients)) broadcaster = asyncio.create_task(broadcast_worker(ws_q, clients))
await server.wait_closed() await server.wait_closed()
ws_q.put(None) ws_q.put(None)