def use_reaction(opts = {})

      raise RuntimeError, 'Already using Reaction.' if Reaction.client

      opts = use_reaction_defaults opts

      EM.next_tick {
        faye = Faye::Client.new(opts[:at] + '/bayeux')
        signer = Reaction::Client::Signer.new opts[:key]
        faye.add_extension signer
        Reaction.client = Reaction::Client.new faye, opts[:key]
      }

    end
def use_reaction(opts = {})

      raise RuntimeError, 'Already using Reaction.' if Reaction.client

      opts = use_reaction_defaults opts

      EM.next_tick {
        faye = Faye::Client.new(opts[:at] + '/bayeux')
        signer = Reaction::Client::Signer.new opts[:key]
        faye.add_extension signer
        Reaction.client = Reaction::Client.new faye, opts[:key]
      }

    end
Uses an external reaction server.

 @example Using an external reaction server at +localhost:9292/reaction+.
   use_reaction :at => 'http://localhost:9292/reaction'

 @option opts [String] :at     URL of external reaction server.
 @option opts [String] :key    secret token, used for signing messages
                               published from app server; defaults to
                               +Rails.application.config.secret_token+
 @raise [RuntimeError] if the reaction client has already been initialized.
 @return [Reaction::Client] client