lib/slack/realtime/client.rb in slack-api-1.4.0 vs lib/slack/realtime/client.rb in slack-api-1.5.0

- old
+ new

@@ -2,12 +2,13 @@ require 'eventmachine' module Slack module RealTime class Client - def initialize(url) - @url = url + def initialize(rtm_start_response) + @response = rtm_start_response + @url = rtm_start_response["url"] @callbacks ||= {} end def on(type, &block) @callbacks[type] ||= [] @@ -33,9 +34,19 @@ ws.on :close do |event| @callbacks[:close].each { |c| c.call } unless @callbacks[:close].nil? EM.stop end end + end + + def method_missing(method, *args, &block) + return super if @response[method.to_s].nil? + @response[method.to_s] + end + + # Delegate to Slack::Client + def respond_to?(method, include_all=false) + return !@response[method.to_s].nil? || super end end end end