RubyFlow : The Ruby Community Blog

Home   Submit   Sign Up   Log In   leaders   Twitter   RSS Feed  

Cockatoo, a simple chat server using EM and the Long Polling technique

We've just open sourced a simple chat server we wrote a few months ago, Cockatoo. It's using the fantastic EventMachine (yep, we know that node.js is the new kid in town, but well...). Several "push" technique exists, but we focused on Long Polling as it's very easy to setup, be it on the server or the client side. We've also made a little presentation on "Long Polling with EventMachine".


Interesting stuff there.

It's always great to see internal projects getting open-sourced, but I'm a bit confused here by not finding any tests, did you forget to commit them ?jhchabran - October 28, 2010 11:33
Thanks for posting. I spent the weekend looking for a node.js alternative, since Heroku don't support that yet. So after some research I ended up playing with EM, but I'm not sure if it is possible to run an EM-server on Herokus platform. Do you know if that is possible?

Anyhow, thanks for sharing the project.Christian - October 28, 2010 11:45
@Jhchabran unit testing wa definitively not a priority because of several try & error because between the client and the server side. Besides, testing asynchronous stuff is not really easy. Of course we could have modularized a little bit the code so we could test the non async part. We'll certainly do that in a further release. Along with more security ;-)yannski - October 28, 2010 13:04
Is there an example of a live app using it?McRipper - October 28, 2010 16:01
@McRipper here you will need to create an accountyannski - October 28, 2010 16:30
@yannski Thankyou!McRipper - October 28, 2010 17:18
Heroku has (experimentally) supported Node for a while now: - October 29, 2010 19:42
Is it compatible with rails3 ?

ThanksEvi - October 30, 2010 09:53
@Evi there's no relationship with Rails or Sinatra. The daemon part is completely independant. You can use Cockatoo with any webapplication (in Django, Grails, etc). We provide several parts so you can easily build the client part. As we usually use Rails, we provide some haml templates, and a Javascript implementation of the client side protocol.yannski - October 30, 2010 16:24

Post a Comment

Comment abilities for non registered users are currently deactivated, pending time to add a proper CAPTCHA to solve the escalating spam problem. Sorry!