Sha256: 082375edf06e55ad5faff28fb8ab4d23a0eb539aa81e02488719a52cb85d31c6

Contents?: true

Size: 1.21 KB

Versions: 6

Compression:

Stored size: 1.21 KB

Contents

# frozen_string_literal: true
# This file was auto-generated by lib/tasks/web.rake

module Slack
  module Web
    module Api
      module Endpoints
        module Dialog
          #
          # 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 https://api.slack.com/methods/dialog.open
          # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/dialog/dialog.open.json
          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
        end
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
slack-ruby-client-0.17.0 lib/slack/web/api/endpoints/dialog.rb
slack-ruby-client-0.16.0 lib/slack/web/api/endpoints/dialog.rb
slack-ruby-client-0.15.1 lib/slack/web/api/endpoints/dialog.rb
slack-ruby-client-0.15.0 lib/slack/web/api/endpoints/dialog.rb
slack-ruby-client-0.14.6 lib/slack/web/api/endpoints/dialog.rb
slack-ruby-client-0.14.5 lib/slack/web/api/endpoints/dialog.rb