import gradio as gr import asyncio import websockets import threading async def send_wss_request(): uri = "wss://clone3-imagex-clone-advance.hf.space/queue/join" uri2 = "wss://clone3-websoketsend.hf.space/queue/join" while True: try: async with websockets.connect(uri) as websocket: # Receive the response response = await websocket.recv() print(f"Received: {response}") # Send a message message = '{"fn_index":2,"session_hash":"kb46puzhzr"}' await websocket.send(message) print(f"Sent: {message}") # Receive the response response = await websocket.recv() print(f"Received: {response}") # Receive the response response = await websocket.recv() print(f"Received: {response}") message='{"data":["spiderman",1683852825,8,4,true],"event_data":null,"fn_index":2,"session_hash":"kb46puzhzr"}' await websocket.send(message) print(f"Sent: {message}") # Receive the response response = await websocket.recv() print(f"Received: {response}") async with websockets.connect(uri2) as websocket: # Receive the response response = await websocket.recv() print(f"Received: {response}") # Send a message message = '{"fn_index":0,"session_hash":"kb46puzhzr"}' await websocket.send(message) print(f"Sent: {message}") # Receive the response response = await websocket.recv() print(f"Received: {response}") # Receive the response response = await websocket.recv() print(f"Received: {response}") message='{"data":["spider"],"event_data":null,"fn_index":0,"session_hash":"kb46puzhzr"}' await websocket.send(message) print(f"Sent: {message}") # Receive the response response = await websocket.recv() print(f"Received: {response}") except websockets.exceptions.ConnectionClosed: print("Connection closed. Reconnecting in 30 minutes.") # Sleep for 30 minutes before the next iteration await asyncio.sleep(30 * 60) def run_websocket(): # Create a new event loop for the thread loop = asyncio.new_event_loop() asyncio.set_event_loop(loop) loop.run_until_complete(send_wss_request()) # Create a thread for the WebSocket function websocket_thread = threading.Thread(target=run_websocket) websocket_thread.start() def greet(name): return "Hello " + name + "!" demo = gr.Interface( fn=greet, inputs=gr.Textbox(lines=2, placeholder="Name Here..."), outputs="text", ) demo.launch()