Ramesh-vani/ws-bridge-for-test
0
1import websockets2import asyncio3import sys4import os5 6 7URL = "wss://ramesh-vani-collabtest.hf.space"8headers = {'Authorization': f'Bearer {os.getenv("auth")}'}9 10async def receiver(ws,connection):11 12 try:13 async for msg in connection:14 # msg = await connection.recv()15 print(f"\nServer: {msg}")16 await ws.send(msg)17 except websockets.exceptions.WebSocketException as e:18 print(f"WebSocket exception: {e}")19 # sys.exit(1)20 21async def sender(ws,connection):22 23 try:24 async for msg in ws:25 # msg = await ws.recv()26 await connection.send(msg)27 except websockets.exceptions.WebSocketException as e:28 print(f"WebSocket exception: {e}")29 # sys.exit(1)30 31 32async def chat(websocket, path) -> None:33 try:34 async with websockets.connect(URL,extra_headers=headers) as ws:35 await asyncio.gather(36 receiver(websocket,ws),37 sender(websocket,ws)38 )39 except websockets.exceptions.WebSocketException as e:40 #print(f"WebSocket exception: {e}")41 sys.exit(1)42start_server = websockets.serve(chat,"0.0.0.0", 7860)43 44asyncio.get_event_loop().run_until_complete(start_server)45asyncio.get_event_loop().run_forever()46 47 