Module: Slack::Web::Api::Endpoints::Channels

Included in:
Slack::Web::Api::Endpoints
Defined in:
lib/slack/web/api/endpoints/channels.rb

Instance Method Summary collapse

Instance Method Details

#channels_archive(options = {}) ⇒ Object

This method archives a channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to archive.

See Also:



15
16
17
18
19
# File 'lib/slack/web/api/endpoints/channels.rb', line 15

def channels_archive(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.archive', options)
end

#channels_create(options = {}) ⇒ Object

This method is used to create a channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :name (Object)

    Name of channel to create.

  • :validate (Object)

    Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.

See Also:



30
31
32
33
# File 'lib/slack/web/api/endpoints/channels.rb', line 30

def channels_create(options = {})
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
  post('channels.create', options)
end

#channels_history(options = {}) ⇒ Object

This method returns a portion of message events from the specified channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to fetch history for.

  • :latest (timestamp)

    End of time range of messages to include in results.

  • :oldest (timestamp)

    Start of time range of messages to include in results.

  • :inclusive (Object)

    Include messages with latest or oldest timestamp in results.

  • :unreads (Object)

    Include unread_count_display in the output?.

See Also:



50
51
52
53
54
# File 'lib/slack/web/api/endpoints/channels.rb', line 50

def channels_history(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.history', options)
end

#channels_info(options = {}) ⇒ Object

This method returns information about a team channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to get info on.

See Also:



63
64
65
66
67
# File 'lib/slack/web/api/endpoints/channels.rb', line 63

def channels_info(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.info', options)
end

#channels_invite(options = {}) ⇒ Object

This method is used to invite a user to a channel. The calling user must be a member of the channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to invite user to.

  • :user (user)

    User to invite to channel.

See Also:



78
79
80
81
82
83
84
# File 'lib/slack/web/api/endpoints/channels.rb', line 78

def channels_invite(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
  post('channels.invite', options)
end

#channels_join(options = {}) ⇒ Object

This method is used to join a channel. If the channel does not exist, it is created.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :name (Object)

    Name of channel to join.

  • :validate (Object)

    Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.

See Also:



96
97
98
99
# File 'lib/slack/web/api/endpoints/channels.rb', line 96

def channels_join(options = {})
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
  post('channels.join', options)
end

#channels_kick(options = {}) ⇒ Object

This method allows a user to remove another member from a team channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to remove user from.

  • :user (user)

    User to remove from channel.

See Also:



110
111
112
113
114
115
116
# File 'lib/slack/web/api/endpoints/channels.rb', line 110

def channels_kick(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
  post('channels.kick', options)
end

#channels_leave(options = {}) ⇒ Object

This method is used to leave a channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to leave.

See Also:



125
126
127
128
129
# File 'lib/slack/web/api/endpoints/channels.rb', line 125

def channels_leave(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.leave', options)
end

#channels_list(options = {}) ⇒ Object

This method returns a list of all channels in the team. This includes channels the caller is in, channels they are not currently in, and archived channels but does not include private channels. The number of (non-deactivated) members in each channel is also returned.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :exclude_archived (Object)

    Don’t return archived channels.

See Also:



138
139
140
# File 'lib/slack/web/api/endpoints/channels.rb', line 138

def channels_list(options = {})
  post('channels.list', options)
end

#channels_mark(options = {}) ⇒ Object

This method moves the read cursor in a channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to set reading cursor in.

  • :ts (timestamp)

    Timestamp of the most recently seen message.

See Also:



151
152
153
154
155
156
# File 'lib/slack/web/api/endpoints/channels.rb', line 151

def channels_mark(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :ts missing') if options[:ts].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.mark', options)
end

#channels_rename(options = {}) ⇒ Object

This method renames a team channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to rename.

  • :name (Object)

    New name for channel.

  • :validate (Object)

    Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.

See Also:



169
170
171
172
173
174
# File 'lib/slack/web/api/endpoints/channels.rb', line 169

def channels_rename(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.rename', options)
end

#channels_replies(options = {}) ⇒ Object

This method returns an entire thread (a message plus all the messages in reply to it).

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to fetch thread from.

  • :thread_ts (Object)

    Unique identifier of a thread’s parent message.

See Also:



185
186
187
188
189
190
# File 'lib/slack/web/api/endpoints/channels.rb', line 185

def channels_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?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.replies', options)
end

#channels_setPurpose(options = {}) ⇒ Object

This method is used to change the purpose of a channel. The calling user must be a member of the channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to set the purpose of.

  • :purpose (Object)

    The new purpose.

See Also:



201
202
203
204
205
206
# File 'lib/slack/web/api/endpoints/channels.rb', line 201

def channels_setPurpose(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :purpose missing') if options[:purpose].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.setPurpose', options)
end

#channels_setTopic(options = {}) ⇒ Object

This method is used to change the topic of a channel. The calling user must be a member of the channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to set the topic of.

  • :topic (Object)

    The new topic.

See Also:



217
218
219
220
221
222
# File 'lib/slack/web/api/endpoints/channels.rb', line 217

def channels_setTopic(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  throw ArgumentError.new('Required arguments :topic missing') if options[:topic].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.setTopic', options)
end

#channels_unarchive(options = {}) ⇒ Object

This method unarchives a channel. The calling user is added to the channel.

Parameters:

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

    a customizable set of options

Options Hash (options):

  • :channel (channel)

    Channel to unarchive.

See Also:



231
232
233
234
235
# File 'lib/slack/web/api/endpoints/channels.rb', line 231

def channels_unarchive(options = {})
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
  options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
  post('channels.unarchive', options)
end