So I've done some research on developing a chat app with web2py. First, I 
took a look of: 
http://code.google.com/p/web2py/source/browse/gluon/contrib/comet_messaging.py, 
and then a related tutorial using it: http://vimeo.com/38972256 (not in 
english, so I might have missed a thing or two). What I can conclude from 
them is that we can make a chat application *using websockets*. However, 
since websockets is not supported by all the browsers except for Chrome (at 
least not by default for latest versions of other major browsers, and 
certainly not by their older versions), this solution has limited practical 
use.

Thanks to questions previously asked in the group, I found this: 
http://greg.thehellings.com/2011/05/web2py-websockets-and-socket-io-part-iii-socket-io/,
 
which attempts to use Tornadio (https://github.com/MrJoes/tornadio) with 
Socket.io to circumvent the problem above, so that if websockets is not 
available some other fall-back option is used instead. However, this method 
stops working for new versions (0.7+) of Socket.io, even with the newer 
Tornadio2 (https://github.com/MrJoes/tornadio2). In fact, the author of the 
original blog post above eventually decided to abandon Socket.io approach 
altogether after an effort to make things work: 
https://github.com/mrjoes/tornadio2/issues/17.

So, does this mean that we are running out options for implementing a 
practical chat application (which is probably one of the most typical 
example applications made with different web frameworks these days) using 
web2py? Apart from these websockets and its remedy Socket.io, is there any 
other protocol/library we can use with web2py to make this happens? Would 
love to hear your suggestions!   

Reply via email to