import json import websocket json_payload = { "jsonrpc": 2, "method": "subscribe", "params": { "subscription_id": 1, "type": "securities", "filter": { "symbol": [ "ETH" ], "expiration": [ "2023/04/28" ], "venue": [ "deribit" ] } }, "id": 1 } json_string = json.dumps(json_payload) ws_url = "ws://localhost:8080" message_count = [0] # Define a callback function to handle received messages def on_message(ws, message): print("Received message: ", message) if(message_count[0]>0): ws.close() message_count[0]+=1 # Define a callback function to handle the WebSocket connection opening def on_open(ws): print("WebSocket connection opened") ws.send(json_string) # Define a callback function to handle the WebSocket connection closing def on_close(ws): print("WebSocket connection closed") # Create a WebSocket connection and send the JSON payload ws = websocket.WebSocketApp(ws_url, on_message=on_message, on_open=on_open, on_close=on_close) # Start the WebSocket connection and listen for incoming messages ws.run_forever() input("press any key to continue")