module Slack::RealTime::Config
def concurrency
def concurrency (val = @concurrency).respond_to?(:call) ? val.call : val end
def detect_concurrency
def detect_concurrency %i[Async Eventmachine Celluloid].each do |concurrency| begin return Slack::RealTime::Concurrency.const_get(concurrency) rescue LoadError, NameError false # could not be loaded, missing dependencies end end raise( NoConcurrencyError, 'Missing concurrency. Add async-websocket, faye-websocket ' \ 'or celluloid-io to your Gemfile.' ) end
def reset
def reset self.websocket_ping = 30 self.websocket_proxy = nil self.token = nil self.concurrency = method(:detect_concurrency) self.start_method = nil self.start_options = { request: { timeout: 180 } } self.store_class = Slack::RealTime::Store self.logger = nil end