4. Bootstrapping
● Each url routes initially to the HTML/JS bootstrap view
● The websocket connection is initialized
● During the handshake, the sessionid cookie is being
reused
● Set transport.user and add the transport to the client
Pool
● Signals are used to notify listening code for events like
connect, disconnect, view_changed, etc.
● The navigation-bar URL is routed through the javascript
application and gets the appropriate content
5. URL Routing
● Mimick Django URL routing serverside
● And clientside...
● XRegexp for named group support
● Usable with HTML5 history API
● Capture link click events
● Client URL tracking and signalling
6.
7. Django-WS
● Django authentication during handshake with session
cookie
● Client transport pool handling
● Event subscription (f.i. client connect,disconnect)
● Websocket URL-routing protocol
● Twisted MultiFile for static resources & management
commands to integrate Twisted in Django
● dws namespace, seperate python modules
● Clientside RequireJS modules
● BSD license
9. Challenges
● Integrate further with Django
○ Use existing conventions where possible
○ Compatibility modus for HTTP-based Django apps
● Cleanup design
● Proper documentation
● Usable reference Websocket CMS
● Community
● SEO