Hi Daniel,

Thanks for the encouragement.

I could do with a guide here.  I think there is only a few hours work left to finish off the handshake and basic module stuff.  After that I think the next step needs to be:
- Getting the module to register with core to receive WS frames (which may arrive over TCP or TLS)
- Giving the module/core the ability to "change" the connection the handshake came in on from SIP/HTTP to WS (so that new messages go straight to the handler in the new module)
- In the module adding handling for Close, Ping, and Pong
- To do the handling for Ping the module needs to be able to send WS frames out (over TCP or TLS)
- In the module "printing" received binary and text frames (which will contain SIP requests)

The bits I need help with here the most are the registering the module to receive the WS frames and sending WS frames (over TCP or TLS), and adding the ability for the module/core to "upgrade" the connection from SIP/HTTP to WS after successful handshake.

Regards,

Peter

On Fri, 2012-06-15 at 08:25 +0200, Daniel-Constantin Mierla wrote:
I will be here to guide whenever needed to navigate through the 
transport layers.

At some point it time when someone was looking to sponsor the 
development of web sockets support I was investigating a bit, 
unfortunately the project was postponed. From what I remember, the core 
touches will be:

- sip uri and via parsers enhanced to deal with websocket transport values
- tcp connection structure to keep a flag its websocket in order to 
generate proper values for via/record-route


-- 
Peter Dunkley
Technical Director
Crocodile RCS Ltd