module Slack::Web::Api::Endpoints::Dialog

Public Instance Methods

dialog_open(options = {}) click to toggle source

Open a dialog with a user

@option options [Object] :dialog

The dialog definition. This must be a JSON-encoded string.

@option options [Object] :trigger_id

Exchange a trigger to post to the user.

@see api.slack.com/methods/dialog.open @see github.com/slack-ruby/slack-api-ref/blob/master/methods/dialog/dialog.open.json

# File lib/slack/web/api/endpoints/dialog.rb, line 17
def dialog_open(options = {})
  throw ArgumentError.new('Required arguments :dialog missing') if options[:dialog].nil?
  throw ArgumentError.new('Required arguments :trigger_id missing') if options[:trigger_id].nil?
  # dialog must be passed as an encoded JSON string
  if options.key?(:dialog)
    dialog = options[:dialog]
    dialog = JSON.dump(dialog) unless dialog.is_a?(String)
    options = options.merge(dialog: dialog)
  end
  post('dialog.open', options)
end