Class: SlackWebApi::DialogController

Inherits:
BaseController show all
Defined in:
lib/slack_web_api/controllers/dialog_controller.rb

Overview

DialogController

Constant Summary

Constants inherited from BaseController

BaseController::GLOBAL_ERRORS

Instance Attribute Summary

Attributes inherited from BaseController

#config, #http_call_back

Instance Method Summary collapse

Methods inherited from BaseController

#initialize, #new_parameter, #new_request_builder, #new_response_handler, user_agent, user_agent_parameters

Constructor Details

This class inherits a constructor from SlackWebApi::BaseController

Instance Method Details

#dialog_open(token, dialog, trigger_id) ⇒ ApiResponse

Open a dialog with a user scope: none must be a JSON-encoded string. to the user.

Parameters:

  • token (String)

    Required parameter: Authentication token. Requires

  • dialog (String)

    Required parameter: The dialog definition. This

  • trigger_id (String)

    Required parameter: Exchange a trigger to post

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/slack_web_api/controllers/dialog_controller.rb', line 17

def dialog_open(token,
                dialog,
                trigger_id)
  @api_call
    .request(new_request_builder(HttpMethodEnum::GET,
                                 '/dialog.open',
                                 Server::DEFAULT)
               .header_param(new_parameter(token, key: 'token')
                              .is_required(true))
               .query_param(new_parameter(dialog, key: 'dialog')
                             .is_required(true))
               .query_param(new_parameter(trigger_id, key: 'trigger_id')
                             .is_required(true))
               .header_param(new_parameter('application/x-www-form-urlencoded', key: 'Content-Type'))
               .header_param(new_parameter('application/json', key: 'accept'))
               .auth(Single.new('slackAuth')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(DialogOpenSchema.method(:from_hash))
                .is_api_response(true)
                .local_error('default',
                             'Typical error response, before getting to any possible'\
                              ' validation errors.',
                             DialogOpenErrorSchemaException))
    .execute
end