bundle install (first time, to install the dependencies)
May 18, 2010 ยท View on GitHub
h1. Twitter AMQP WebSocket Example
Quick experiment of going from twitter to the browser, with no polling.
It goes something like this:
Twitter Stream -> Filter -> RabbitMQ -> AMQP -> EventMachine -> WebSocket -> HTML5 Browser
Since it uses a fanout exchange on RabbitMQ, it allows to have multiple clients connected to the eventmachine loop and receive the same real-time updates (and hopeful it will scale).
h2. Requirements
- Ruby
- RabbitMQ
- gem install bundler
h2. How To
bundle install (first time, to install the dependencies)
rabbitmq-server # start rabbitmq
ruby twitterfeed.rb twitter_username twitter_password # start the filter
ruby socket.rb # on another shell
Then you can open client/index.html on a HTML5 WebSocket compatible browser (tested with Webkit nightly).
Read the code, and have fun! :)