Module: Slack::Endpoint::Im

Included in:
Slack::Endpoint
Defined in:
lib/slack/endpoint/im.rb

Instance Method Summary collapse

Instance Method Details

#im_close(options = {}) ⇒ Object

Close a direct message channel.

Parameters:

  • options (Hash) (defaults to: {}) —

    a customizable set of options

Options Hash (options):

  • :channel (Object) —

    Direct message channel to close.

See Also:



14
15
16
17
# File 'lib/slack/endpoint/im.rb', line 14

def im_close(options={})
  throw ArgumentError.new("Required arguments :channel missing") if options[:channel].nil?
  post("im.close", options)
end

#im_history(options = {}) ⇒ Object

Fetches history of messages and events from direct message channel.

Parameters:

  • options (Hash) (defaults to: {}) —

    a customizable set of options

Options Hash (options):

  • :channel (Object) —

    Direct message channel to fetch history for.

  • :count (Object) —

    Number of messages to return, between 1 and 1000.

  • :inclusive (Object) —

    Include messages with latest or oldest timestamp in results.

  • :latest (Object) —

    End of time range of messages to include in results.

  • :oldest (Object) —

    Start of time range of messages to include in results.

  • :unreads (Object) —

    Include unread_count_display in the output?

See Also:



37
38
39
40
# File 'lib/slack/endpoint/im.rb', line 37

def im_history(options={})
  throw ArgumentError.new("Required arguments :channel missing") if options[:channel].nil?
  post("im.history", options)
end

#im_list(options = {}) ⇒ Object

Lists direct message channels for the calling user.

Parameters:

  • options (Hash) (defaults to: {}) —

    a customizable set of options

Options Hash (options):

  • :cursor (Object) —

    Paginate through collections of data by setting the cursor parameter to a next_cursor attribute returned by a previous request's response_metadata. Default value fetches the first "page" of the collection. See pagination for more detail.

  • :limit (Object) —

    The maximum number of items to return. Fewer than the requested number of items may be returned, even if the end of the users list hasn't been reached.

See Also:



52
53
54
# File 'lib/slack/endpoint/im.rb', line 52

def im_list(options={})
  post("im.list", options)
end

#im_mark(options = {}) ⇒ Object

Sets the read cursor in a direct message channel.

Parameters:

  • options (Hash) (defaults to: {}) —

    a customizable set of options

Options Hash (options):

  • :channel (Object) —

    Direct message channel to set reading cursor in.

  • :ts (Object) —

    Timestamp of the most recently seen message.

See Also:



66
67
68
69
70
# File 'lib/slack/endpoint/im.rb', line 66

def im_mark(options={})
  throw ArgumentError.new("Required arguments :channel missing") if options[:channel].nil?
  throw ArgumentError.new("Required arguments :ts missing") if options[:ts].nil?
  post("im.mark", options)
end

#im_open(options = {}) ⇒ Object

Opens a direct message channel.

Parameters:

  • options (Hash) (defaults to: {}) —

    a customizable set of options

Options Hash (options):

  • :user (Object) —

    User to open a direct message channel with.

  • :include_locale (Object) —

    Set this to true to receive the locale for this im. Defaults to false

  • :return_im (Object) —

    Boolean, indicates you want the full IM channel definition in the response.

See Also:



84
85
86
87
# File 'lib/slack/endpoint/im.rb', line 84

def im_open(options={})
  throw ArgumentError.new("Required arguments :user missing") if options[:user].nil?
  post("im.open", options)
end

#im_replies(options = {}) ⇒ Object

Retrieve a thread of messages posted to a direct message conversation

Parameters:

  • options (Hash) (defaults to: {}) —

    a customizable set of options

Options Hash (options):

  • :channel (Object) —

    Direct message channel to fetch thread from

  • :thread_ts (Object) —

    Unique identifier of a thread's parent message

See Also:



99
100
101
102
103
# File 'lib/slack/endpoint/im.rb', line 99

def im_replies(options={})
  throw ArgumentError.new("Required arguments :channel missing") if options[:channel].nil?
  throw ArgumentError.new("Required arguments :thread_ts missing") if options[:thread_ts].nil?
  post("im.replies", options)
end