Errors when loading models – Websocket issues

Since a few weeks, some users got problems when loading their projects or when creating new ones. The bad news is that you believe you completely get stuck. The good news is that there’s a temporary workaround and we are changing our communication protocol to reinforce connection stability.

Some proxies blocks websockets GenMyModel use websockets to communicate between the client and the server. Standardized by W3C in 2011, they are now implemented in most of the web browsers. They allow a full-duplex communication between the browser and the server over TCP. The point is that the server can send content to the browser without being sollicited by the client. The issue comes from intermediate proxy servers which mediate HTTP connections and block the server-to-browser communication.  Initially, the server asks if the browser supports websockets and the latter usually answers 

yes. The communication gets established in one way, the websocket is instantitated on server side, but the content sent by the server is blocked by proxies. They act as a one-way barrier despite the support of websockets for both browsers and servers.

Workaround If you are connected behind a proxy, you can overcome the issue by disabling the websockets in your browser. When the server detects that the websockets are unavailable, it uses the intermediate communication protocol relying on standard HTTP connections.

To disable websockets: – In  Firefox : type “about:config” in the url and set “network.websocket.enabled” to false – In Chrome: launch Chrome using**** “chrome.exe –disable-web-sockets”  or “google-chrome –disable-web-sockets” depending on your OS.**** The development team is replacing the websockets by long-polling connections. Long-polling communication uses HTTP request and response model and do not suffer from too many proxy server issues. The new protocol should be achieved in January. Please open tickets if you have any problem, we help you out. For further read about websockets and proxies, I recommend How HTML5 Web Sockets Interact With Proxy Servers.   Tom

Tweet about this on TwitterShare on FacebookShare on Google+Share on LinkedIn

About the author

Tom Team

GenMyModel co-founder - @tomlegrd