Zaqar/specs/websockets
Websockets
Fallback
Implementation
Websockets library
There are several alternatives to use for the implementation of this feature, including:
- Autobahn: Websockets / WAMP on Twisted and asyncio. The server uses twisted which is something the OpenStack community has moved away from already.
- SockJS: Raw websockets. Javascript library. Don't seem to be maintained, the problems related to CORS and the fallback process doesn't work that well.
- SocketIO: Wrapper for WebSocket. Javascript library.
- ws4py: Python package implementing the WebSocket protocol as defined in RFC 6455.
Since that we need raw websockets, we leaved Autobahn and SocketIO aside. And given that SocketIO doesn't have a non Javascript library, we decided to go for ws4py.