Module: SlackBot::GrapeHelpers::Dispatch
- Included in:
- SlackBot::GrapeHelpers
- Defined in:
- lib/slack_bot/grape_helpers/dispatch.rb
Instance Method Summary collapse
- #dispatch_event(handler:, params:, current_user:) ⇒ Object
- #events_callback(params) ⇒ Object
- #resolve_event_user(params) ⇒ Object
- #resolve_user_session(team_id, user_id) ⇒ Object
Instance Method Details
#dispatch_event(handler:, params:, current_user:) ⇒ Object
30 31 32 33 |
# File 'lib/slack_bot/grape_helpers/dispatch.rb', line 30 def dispatch_event(handler:, params:, current_user:) config.event_dispatcher_method.call(handler: handler, params: params, current_user: current_user) false end |
#events_callback(params) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 |
# File 'lib/slack_bot/grape_helpers/dispatch.rb', line 4 def events_callback(params) verify_slack_team! event = params[:event] return false if event.blank? return false if (event) SlackBot::DevConsole.log_input "SlackApi::Events#events_callback: #{params.inspect}" handler = event_handler_for(params) return false if handler.blank? run_event_handler(handler, params) end |
#resolve_event_user(params) ⇒ Object
26 27 28 |
# File 'lib/slack_bot/grape_helpers/dispatch.rb', line 26 def resolve_event_user(params) resolve_user_session(params[:team_id] || params["team_id"], fetch_user_id)&.user end |
#resolve_user_session(team_id, user_id) ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/slack_bot/grape_helpers/dispatch.rb', line 18 def resolve_user_session(team_id, user_id) return if team_id.blank? || user_id.blank? config.user_session_resolver!.call(team_id, user_id) rescue SlackBot::Errors::ConfigurationError nil end |