Skip to content

Instantly share code, notes, and snippets.

@dazoakley
Created February 28, 2012 11:36
Show Gist options
  • Save dazoakley/1932053 to your computer and use it in GitHub Desktop.
Save dazoakley/1932053 to your computer and use it in GitHub Desktop.
faye.ru
# I invoke this with: "rackup faye.ru -s thin -E production"
require 'faye'
require 'faye/redis'
require 'faye/websocket'
require 'logger'
Faye::WebSocket.load_adapter('thin')
faye = Faye::RackAdapter.new(
:mount => '/faye',
:timeout => 25,
:engine => {
:type => Faye::Redis,
:host => 'localhost'
}
)
log = Logger.new(STDOUT)
log.level = Logger::DEBUG
faye.bind(:handshake) do |client_id|
log.debug("[handshake] - client: '#{client_id}'")
end
faye.bind(:subscribe) do |client_id,channel|
log.info("[subscribe] - client: '#{client_id}', channel: '#{channel}'")
end
faye.bind(:unsubscribe) do |client_id,channel|
log.info("[unsubscribe] - client: '#{client_id}', channel: '#{channel}'")
end
faye.bind(:publish) do |client_id,channel,data|
log.debug("[publish] - client: '#{client_id}', channel: '#{channel}', data: '#{data.inspect}'")
end
faye.bind(:disconnect) do |client_id|
log.debug("[disconnect] - client: '#{client_id}'")
end
run faye
d.oakley@l4493:~/projects/curi (*)
> rackup faye.ru -s thin -E production curi-155 [b193650] modified
>> Thin web server (v1.3.1 codename Triple Espresso)
>> Maximum connections set to 1024
>> Listening on 0.0.0.0:9292, CTRL+C to stop
/Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/faye-websocket-0.4.1/lib/faye/websocket.rb:119:in `initialize': wrong number of arguments (0 for 1..3) (ArgumentError)
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/faye-websocket-0.4.1/lib/faye/websocket.rb:119:in `open'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/faye-websocket-0.4.1/lib/faye/websocket.rb:119:in `block in initialize'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/eventmachine-0.12.10/lib/eventmachine.rb:996:in `call'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/eventmachine-0.12.10/lib/eventmachine.rb:996:in `block in run_deferred_callbacks'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/eventmachine-0.12.10/lib/eventmachine.rb:996:in `each'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/eventmachine-0.12.10/lib/eventmachine.rb:996:in `run_deferred_callbacks'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run_machine'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/eventmachine-0.12.10/lib/eventmachine.rb:256:in `run'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.3.1/lib/thin/backends/base.rb:61:in `start'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/thin-1.3.1/lib/thin/server.rb:159:in `start'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/rack-1.4.1/lib/rack/handler/thin.rb:13:in `run'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/rack-1.4.1/lib/rack/server.rb:265:in `start'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/rack-1.4.1/lib/rack/server.rb:137:in `start'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/gems/rack-1.4.1/bin/rackup:4:in `<top (required)>'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/bin/rackup:19:in `load'
from /Users/d.oakley/.rvm/gems/ruby-1.9.2-p180/bin/rackup:19:in `<main>'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment