Hi Floh, Thank's for sharing your experience - great input. I'll share my experience with libwebsockets when I have something to share.. Br Thomas
Den onsdag den 18. januar 2017 kl. 17.23.40 UTC+1 skrev Floh: > > PS: I should mention that we tried different WebSocket wrapper solutions > (e.g. websockify's node and python versions running in a separate process), > and we ran into various compatibility problems between the different > client-side WebSocket implementations and the server side, mostly some > websocket "subprotocol" details that hadn't been implemented, so that the > WebSocket handshake between browser and server was denied by the browser > because the server didn't properly react to the subprotocol request. > > The Gorilla package worked with all client types and that's what we used > in the end. > > Am Mittwoch, 18. Januar 2017 17:20:40 UTC+1 schrieb Floh: >> >> Yes here :) We have recently built a little proof-of-concept >> client/server prototype where natively compiled clients connect through a >> TCP socket, and emscripten clients connect through WebSocket, both compiled >> from the same C++ source. >> >> The game server was written in golang, and we used >> https://github.com/gorilla/websocket as websocket proxy layer in the >> game server process, the game server opened one normal TCP port with >> Golang's native TCP support, and a separate WebSocket port next to it, >> managed by Gorilla. >> >> On the client side I wrote a minimal client socket wrapper which uses >> non-blocking sockets across all platforms (emscripten's socket wrapper is >> generally non-blocking). >> >> Unfortunately the whole project is closed source, but here's a gist with >> the (very quick'n'dirty) NetClient implementation which has all the >> interesting client-side stuff in it: >> >> https://gist.github.com/floooh/b4d25d0e11ef2be91dd19cb974bcc7a6 >> >> We created 3 client types, one written in Unity exported to asm.js, one >> with Oryol (https://github.com/floooh/oryol), and one in Typescript with >> babylon.js (http://babylonjs.com/). >> >> The Unity client was about 4.9 MByte (theoretically we could have get >> this down to around 3.5 MB because the Unity physics code slipped in >> because of a stabbing test against the ground), the Oryol client around 410 >> KBytes, and the Typescript client around 310 KBytes (mostly the minimized >> babylon.js blob), all sizes are compressed sizes. >> >> Fun project all in all :) >> >> Cheers, >> -Floh. >> >> Am Mittwoch, 18. Januar 2017 15:48:22 UTC+1 schrieb Thomas Arnbjerg: >>> >>> Has anyone succeded in connecting an Emscripten socket client against a >>> libWebsocket based server? >>> >> -- You received this message because you are subscribed to the Google Groups "emscripten-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
