Hi!
Did anybody implement support for WebSocket version 7 or above for WebClient?
For the new protocol we added to the response in WebRequest >> asWebSocket the following:
resp headerAt: 'Sec-WebSocket-Accept' put: ( (SHA1 hashMessage: field, '258EAFA5-E914-47DA-95CA-C5AB0DC85B11') base64Encoded)
But the framing protocol also changed:
Old protocol: http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-06#page-17 New protocol: http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-07#page-17
Thanks: Balázs
Hi Balázs -
Just got back from vacation and saw your message. Reading through the spec there is quite a few changes in this version (some for the better, some possibly for the worse) but I've added experimental support in the latest version of WebClient (at http://www.squeaksource.com/WebClient). Do you know of any browser which supports this version? Since I don't have any at hand the only tests I could run were local and as always when you implement both ends of a protocol it's easy to make the same mistakes on both ends :-) Let me know if it works for you.
Cheers, - Andreas
On 9/19/2011 14:45, Balázs Kósi wrote:
Hi!
Did anybody implement support for WebSocket version 7 or above for WebClient?
For the new protocol we added to the response in WebRequest>> asWebSocket the following:
resp headerAt: 'Sec-WebSocket-Accept' put: ( (SHA1 hashMessage: field, '258EAFA5-E914-47DA-95CA-C5AB0DC85B11') base64Encoded)
But the framing protocol also changed:
Old protocol: http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-06#page-17 New protocol: http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-07#page-17
Thanks: Balázs
On Mon, 26 Sep 2011, Andreas Raab wrote:
Hi Balázs -
Just got back from vacation and saw your message. Reading through the spec there is quite a few changes in this version (some for the better, some possibly for the worse) but I've added experimental support in the latest version of WebClient (at http://www.squeaksource.com/WebClient). Do you know of any browser which supports this version? Since I don't have any at hand
FF6 uses version 7, Chromium 15 uses version 8 (according to the headers - instead of 10 which was advertised), which is pretty much the same as version 7.
the only tests I could run were local and as always when you implement both ends of a protocol it's easy to make the same mistakes on both ends :-) Let me know if it works for you.
It didn't work, but we fixed it, you can find the changes here: http://leves.web.elte.hu/squeak/WebClient-WebSocket-fixes.1.cs . The server side works, but I didn't check the client. Note that the changes are for ar.85. I just checked and saw that you fixed some issues in ar.86, so our cs will have to be merged.
Levente
Cheers,
- Andreas
On 9/19/2011 14:45, Balázs Kósi wrote:
Hi!
Did anybody implement support for WebSocket version 7 or above for WebClient?
For the new protocol we added to the response in WebRequest>> asWebSocket the following:
resp headerAt: 'Sec-WebSocket-Accept' put: ( (SHA1 hashMessage: field, '258EAFA5-E914-47DA-95CA-C5AB0DC85B11') base64Encoded)
But the framing protocol also changed:
Old protocol: http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-06#page-17 New protocol: http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-07#page-17
Thanks: Balázs
On 10/3/2011 23:31, Levente Uzonyi wrote:
FF6 uses version 7, Chromium 15 uses version 8 (according to the headers
- instead of 10 which was advertised), which is pretty much the same as
version 7.
Thanks. I was able to test on Chrome 14 with the WebSockets example; though I couldn't get FF7 to work at all (it reports "WebSockets are not available", i.e., window.WebSocket is undefined although about:config says that network.websocket.enabled is true). If you can find out how to make it work on FF7, I'd appreciate a pointer.
It didn't work, but we fixed it, you can find the changes here: http://leves.web.elte.hu/squeak/WebClient-WebSocket-fixes.1.cs . The server side works, but I didn't check the client. Note that the changes are for ar.85. I just checked and saw that you fixed some issues in ar.86, so our cs will have to be merged.
I merged it into ar.87 which includes some more (rather embarrassing :-) fixes.
Cheers, - Andreas
On Wed, 5 Oct 2011, Andreas Raab wrote:
On 10/3/2011 23:31, Levente Uzonyi wrote:
FF6 uses version 7, Chromium 15 uses version 8 (according to the headers
- instead of 10 which was advertised), which is pretty much the same as
version 7.
Thanks. I was able to test on Chrome 14 with the WebSockets example; though I couldn't get FF7 to work at all (it reports "WebSockets are not available", i.e., window.WebSocket is undefined although about:config says that network.websocket.enabled is true). If you can find out how to make it work on FF7, I'd appreciate a pointer.
We use the following hack in our javascript to make our code work in Firefox:
if (typeof MozWebSocket != 'undefined') { WebSocket = MozWebSocket; }
It didn't work, but we fixed it, you can find the changes here: http://leves.web.elte.hu/squeak/WebClient-WebSocket-fixes.1.cs . The server side works, but I didn't check the client. Note that the changes are for ar.85. I just checked and saw that you fixed some issues in ar.86, so our cs will have to be merged.
I merged it into ar.87 which includes some more (rather embarrassing :-) fixes.
Thanks. I extracted three more changes from our version which may be generally useful: http://leves.web.elte.hu/squeak/WebClient-Core-ul.88.mcz
Levente
Cheers,
- Andreas
On 10/5/2011 23:31, Levente Uzonyi wrote:
It didn't work, but we fixed it, you can find the changes here: http://leves.web.elte.hu/squeak/WebClient-WebSocket-fixes.1.cs . The server side works, but I didn't check the client. Note that the changes are for ar.85. I just checked and saw that you fixed some issues in ar.86, so our cs will have to be merged.
I merged it into ar.87 which includes some more (rather embarrassing :-) fixes.
Thanks. I extracted three more changes from our version which may be generally useful: http://leves.web.elte.hu/squeak/WebClient-Core-ul.88.mcz
Thanks! These are all useful. I copied your version into the repository.
Cheers, - Andreas
squeak-dev@lists.squeakfoundation.org