Hello Pedro,
Rather than writing that in C, you could use Python's websockets library,
so in the meantime you find a solution you can get this done.
I'm sure there is a better way to do it, but you can play around with this
First install websockets:
$ pip3 install websockets
Then:
send = "
import asyncio
import websockets
output : object
async def send():
global output
uri = 'wss://echo.websocket.org'
async with websockets.connect(uri) as websocket:
await websocket.send('Hello World!')
output = await websocket.recv()
asyncio.get_event_loop().run_until_complete(send())
output
"
session = StartExternalSession["Python"]
output = ExternalEvaluate[session, send]
Output should be equal to "Hello World!"