slack-ruby-client 0.14.3 → 0.15.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (326) hide show
  1. checksums.yaml +4 -4
  2. data/.github/FUNDING.yml +1 -0
  3. data/.rubocop.yml +23 -7
  4. data/.rubocop_todo.yml +115 -44
  5. data/.travis.yml +0 -1
  6. data/CHANGELOG.md +38 -2
  7. data/CONTRIBUTING.md +24 -6
  8. data/Dangerfile +2 -1
  9. data/Gemfile +2 -2
  10. data/README.md +90 -29
  11. data/Rakefile +1 -0
  12. data/UPGRADING.md +6 -0
  13. data/bin/commands.rb +23 -0
  14. data/bin/commands/admin_apps.rb +27 -0
  15. data/bin/commands/admin_apps_approved.rb +17 -0
  16. data/bin/commands/admin_apps_requests.rb +16 -0
  17. data/bin/commands/admin_apps_restricted.rb +17 -0
  18. data/bin/commands/admin_conversations.rb +17 -0
  19. data/bin/commands/admin_conversations_restrictAccess.rb +37 -0
  20. data/bin/commands/admin_conversations_whitelist.rb +37 -0
  21. data/bin/commands/admin_emoji.rb +54 -0
  22. data/bin/commands/admin_inviteRequests.rb +36 -0
  23. data/bin/commands/admin_inviteRequests_approved.rb +16 -0
  24. data/bin/commands/admin_inviteRequests_denied.rb +16 -0
  25. data/bin/commands/admin_teams.rb +27 -0
  26. data/bin/commands/admin_teams_admins.rb +16 -0
  27. data/bin/commands/admin_teams_owners.rb +16 -0
  28. data/bin/commands/admin_teams_settings.rb +64 -0
  29. data/bin/commands/admin_usergroups.rb +48 -0
  30. data/bin/commands/admin_users.rb +97 -0
  31. data/bin/commands/admin_users_session.rb +3 -2
  32. data/bin/commands/api.rb +3 -2
  33. data/bin/commands/apps.rb +3 -2
  34. data/bin/commands/apps_permissions.rb +5 -4
  35. data/bin/commands/apps_permissions_resources.rb +3 -2
  36. data/bin/commands/apps_permissions_scopes.rb +3 -2
  37. data/bin/commands/apps_permissions_users.rb +5 -4
  38. data/bin/commands/auth.rb +5 -4
  39. data/bin/commands/bots.rb +3 -2
  40. data/bin/commands/calls.rb +52 -0
  41. data/bin/commands/calls_participants.rb +25 -0
  42. data/bin/commands/channels.rb +31 -30
  43. data/bin/commands/chat.rb +32 -31
  44. data/bin/commands/chat_scheduledMessages.rb +3 -2
  45. data/bin/commands/conversations.rb +36 -36
  46. data/bin/commands/dialog.rb +3 -2
  47. data/bin/commands/dnd.rb +9 -8
  48. data/bin/commands/emoji.rb +3 -2
  49. data/bin/commands/files.rb +14 -12
  50. data/bin/commands/files_comments.rb +3 -2
  51. data/bin/commands/files_remote.rb +78 -0
  52. data/bin/commands/groups.rb +33 -32
  53. data/bin/commands/im.rb +13 -12
  54. data/bin/commands/migration.rb +3 -2
  55. data/bin/commands/mpim.rb +11 -10
  56. data/bin/commands/oauth.rb +6 -5
  57. data/bin/commands/oauth_v2.rb +17 -0
  58. data/bin/commands/pins.rb +7 -8
  59. data/bin/commands/reactions.rb +10 -11
  60. data/bin/commands/reminders.rb +11 -10
  61. data/bin/commands/rtm.rb +5 -4
  62. data/bin/commands/search.rb +7 -6
  63. data/bin/commands/stars.rb +7 -6
  64. data/bin/commands/team.rb +9 -8
  65. data/bin/commands/team_profile.rb +3 -2
  66. data/bin/commands/usergroups.rb +11 -10
  67. data/bin/commands/usergroups_users.rb +5 -4
  68. data/bin/commands/users.rb +21 -20
  69. data/bin/commands/users_admin.rb +1 -0
  70. data/bin/commands/users_prefs.rb +1 -0
  71. data/bin/commands/users_profile.rb +5 -4
  72. data/bin/commands/views.rb +48 -0
  73. data/bin/slack +1 -2
  74. data/examples/hi_real_time/Gemfile +1 -0
  75. data/examples/hi_real_time/hi.rb +7 -3
  76. data/examples/hi_real_time_and_web/Gemfile +1 -0
  77. data/examples/hi_real_time_and_web/hi.rb +7 -3
  78. data/examples/hi_real_time_async_async/Gemfile +1 -0
  79. data/examples/hi_real_time_async_async/hi.rb +6 -2
  80. data/examples/hi_real_time_async_celluloid/Gemfile +1 -0
  81. data/examples/hi_real_time_async_celluloid/hi.rb +7 -3
  82. data/examples/hi_real_time_async_eventmachine/Gemfile +1 -0
  83. data/examples/hi_real_time_async_eventmachine/hi.rb +7 -3
  84. data/examples/hi_web/Gemfile +1 -0
  85. data/examples/hi_web/hi.rb +1 -0
  86. data/examples/new_ticket/Gemfile +1 -0
  87. data/examples/new_ticket/new_ticket.rb +1 -0
  88. data/lib/slack-ruby-client.rb +4 -4
  89. data/lib/slack.rb +1 -0
  90. data/lib/slack/config.rb +1 -0
  91. data/lib/slack/events/config.rb +1 -0
  92. data/lib/slack/events/request.rb +3 -1
  93. data/lib/slack/logger.rb +6 -5
  94. data/lib/slack/messages/formatting.rb +1 -0
  95. data/lib/slack/messages/message.rb +1 -4
  96. data/lib/slack/real_time/api/message.rb +3 -1
  97. data/lib/slack/real_time/api/message_id.rb +1 -0
  98. data/lib/slack/real_time/api/ping.rb +5 -2
  99. data/lib/slack/real_time/api/typing.rb +3 -1
  100. data/lib/slack/real_time/client.rb +26 -13
  101. data/lib/slack/real_time/concurrency.rb +1 -0
  102. data/lib/slack/real_time/concurrency/async.rb +13 -7
  103. data/lib/slack/real_time/concurrency/celluloid.rb +10 -4
  104. data/lib/slack/real_time/concurrency/eventmachine.rb +9 -6
  105. data/lib/slack/real_time/config.rb +6 -1
  106. data/lib/slack/real_time/models.rb +1 -0
  107. data/lib/slack/real_time/models/base.rb +1 -4
  108. data/lib/slack/real_time/models/bot.rb +1 -0
  109. data/lib/slack/real_time/models/channel.rb +1 -0
  110. data/lib/slack/real_time/models/group.rb +1 -0
  111. data/lib/slack/real_time/models/im.rb +1 -0
  112. data/lib/slack/real_time/models/team.rb +1 -0
  113. data/lib/slack/real_time/models/user.rb +1 -0
  114. data/lib/slack/real_time/socket.rb +16 -13
  115. data/lib/slack/real_time/stores.rb +1 -0
  116. data/lib/slack/real_time/stores/base.rb +4 -1
  117. data/lib/slack/real_time/stores/starter.rb +1 -0
  118. data/lib/slack/real_time/stores/store.rb +16 -25
  119. data/lib/slack/version.rb +2 -1
  120. data/lib/slack/web/api/endpoints.rb +46 -0
  121. data/lib/slack/web/api/endpoints/admin_apps.rb +42 -0
  122. data/lib/slack/web/api/endpoints/admin_apps_approved.rb +35 -0
  123. data/lib/slack/web/api/endpoints/admin_apps_requests.rb +33 -0
  124. data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +35 -0
  125. data/lib/slack/web/api/endpoints/admin_conversations.rb +30 -0
  126. data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +61 -0
  127. data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +64 -0
  128. data/lib/slack/web/api/endpoints/admin_emoji.rb +88 -0
  129. data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +61 -0
  130. data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +33 -0
  131. data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +33 -0
  132. data/lib/slack/web/api/endpoints/admin_teams.rb +50 -0
  133. data/lib/slack/web/api/endpoints/admin_teams_admins.rb +34 -0
  134. data/lib/slack/web/api/endpoints/admin_teams_owners.rb +34 -0
  135. data/lib/slack/web/api/endpoints/admin_teams_settings.rb +99 -0
  136. data/lib/slack/web/api/endpoints/admin_usergroups.rb +77 -0
  137. data/lib/slack/web/api/endpoints/admin_users.rb +163 -0
  138. data/lib/slack/web/api/endpoints/admin_users_session.rb +2 -1
  139. data/lib/slack/web/api/endpoints/api.rb +2 -1
  140. data/lib/slack/web/api/endpoints/apps.rb +2 -1
  141. data/lib/slack/web/api/endpoints/apps_permissions.rb +3 -2
  142. data/lib/slack/web/api/endpoints/apps_permissions_resources.rb +2 -1
  143. data/lib/slack/web/api/endpoints/apps_permissions_scopes.rb +2 -1
  144. data/lib/slack/web/api/endpoints/apps_permissions_users.rb +3 -2
  145. data/lib/slack/web/api/endpoints/auth.rb +3 -2
  146. data/lib/slack/web/api/endpoints/bots.rb +2 -1
  147. data/lib/slack/web/api/endpoints/calls.rb +83 -0
  148. data/lib/slack/web/api/endpoints/calls_participants.rb +42 -0
  149. data/lib/slack/web/api/endpoints/channels.rb +44 -29
  150. data/lib/slack/web/api/endpoints/chat.rb +30 -29
  151. data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +3 -2
  152. data/lib/slack/web/api/endpoints/conversations.rb +34 -35
  153. data/lib/slack/web/api/endpoints/dialog.rb +2 -1
  154. data/lib/slack/web/api/endpoints/dnd.rb +5 -4
  155. data/lib/slack/web/api/endpoints/emoji.rb +2 -1
  156. data/lib/slack/web/api/endpoints/files.rb +11 -8
  157. data/lib/slack/web/api/endpoints/files_comments.rb +2 -1
  158. data/lib/slack/web/api/endpoints/files_remote.rb +127 -0
  159. data/lib/slack/web/api/endpoints/groups.rb +33 -22
  160. data/lib/slack/web/api/endpoints/im.rb +17 -12
  161. data/lib/slack/web/api/endpoints/migration.rb +2 -1
  162. data/lib/slack/web/api/endpoints/mpim.rb +16 -11
  163. data/lib/slack/web/api/endpoints/oauth.rb +4 -6
  164. data/lib/slack/web/api/endpoints/oauth_v2.rb +30 -0
  165. data/lib/slack/web/api/endpoints/pins.rb +8 -12
  166. data/lib/slack/web/api/endpoints/reactions.rb +12 -15
  167. data/lib/slack/web/api/endpoints/reminders.rb +6 -5
  168. data/lib/slack/web/api/endpoints/rtm.rb +3 -2
  169. data/lib/slack/web/api/endpoints/search.rb +4 -3
  170. data/lib/slack/web/api/endpoints/stars.rb +6 -7
  171. data/lib/slack/web/api/endpoints/team.rb +5 -5
  172. data/lib/slack/web/api/endpoints/team_profile.rb +2 -1
  173. data/lib/slack/web/api/endpoints/usergroups.rb +6 -5
  174. data/lib/slack/web/api/endpoints/usergroups_users.rb +3 -2
  175. data/lib/slack/web/api/endpoints/users.rb +11 -16
  176. data/lib/slack/web/api/endpoints/users_admin.rb +1 -0
  177. data/lib/slack/web/api/endpoints/users_prefs.rb +1 -0
  178. data/lib/slack/web/api/endpoints/users_profile.rb +3 -2
  179. data/lib/slack/web/api/endpoints/views.rb +97 -0
  180. data/lib/slack/web/api/error.rb +1 -0
  181. data/lib/slack/web/api/errors.rb +656 -0
  182. data/lib/slack/web/api/errors/slack_error.rb +14 -1
  183. data/lib/slack/web/api/errors/too_many_requests_error.rb +1 -0
  184. data/lib/slack/web/api/mixins.rb +2 -0
  185. data/lib/slack/web/api/mixins/channels.id.rb +2 -3
  186. data/lib/slack/web/api/mixins/conversations.id.rb +25 -0
  187. data/lib/slack/web/api/mixins/groups.id.rb +2 -3
  188. data/lib/slack/web/api/mixins/ids.id.rb +3 -2
  189. data/lib/slack/web/api/mixins/users.id.rb +2 -3
  190. data/lib/slack/web/api/mixins/users.search.rb +1 -0
  191. data/lib/slack/web/api/patches/{chat.6.block-kit-support.patch → chat.1.patch} +29 -26
  192. data/lib/slack/web/api/patches/views.1.view-json.patch +40 -0
  193. data/lib/slack/web/api/patches/views.1.views-published.patch +16 -0
  194. data/lib/slack/web/api/templates/command.erb +1 -0
  195. data/lib/slack/web/api/templates/commands.erb +1 -0
  196. data/lib/slack/web/api/templates/endpoints.erb +1 -0
  197. data/lib/slack/web/api/templates/errors.erb +20 -0
  198. data/lib/slack/web/api/templates/method.erb +5 -1
  199. data/lib/slack/web/api/templates/method_spec.erb +1 -0
  200. data/lib/slack/web/client.rb +2 -1
  201. data/lib/slack/web/config.rb +3 -0
  202. data/lib/slack/web/faraday/connection.rb +24 -20
  203. data/lib/slack/web/faraday/request.rb +1 -0
  204. data/lib/slack/web/faraday/response/raise_error.rb +10 -6
  205. data/lib/slack/web/pagination/cursor.rb +3 -2
  206. data/lib/slack_ruby_client.rb +1 -0
  207. data/lib/tasks/git.rake +1 -0
  208. data/lib/tasks/real_time.rake +13 -5
  209. data/lib/tasks/update.rake +1 -0
  210. data/lib/tasks/web.rake +27 -7
  211. data/screenshots/create-app.png +0 -0
  212. data/slack-ruby-client.gemspec +6 -3
  213. data/spec/fixtures/slack/web/channels_info.yml +108 -15
  214. data/spec/fixtures/slack/web/conversations_setTopic.yml +69 -0
  215. data/spec/fixtures/slack/web/conversations_setTopic_one_page.yml +142 -0
  216. data/spec/fixtures/slack/web/conversations_setTopic_paginated.yml +208 -0
  217. data/spec/fixtures/slack/web/views_open_error.yml +76 -0
  218. data/spec/integration/integration_spec.rb +26 -23
  219. data/spec/slack/config_spec.rb +2 -0
  220. data/spec/slack/events/config_spec.rb +8 -4
  221. data/spec/slack/events/request_spec.rb +67 -37
  222. data/spec/slack/messages/formatting_spec.rb +25 -13
  223. data/spec/slack/real_time/api/message_spec.rb +6 -1
  224. data/spec/slack/real_time/api/ping_spec.rb +2 -0
  225. data/spec/slack/real_time/api/typing_spec.rb +5 -1
  226. data/spec/slack/real_time/client_spec.rb +174 -36
  227. data/spec/slack/real_time/concurrency/celluloid_spec.rb +11 -6
  228. data/spec/slack/real_time/concurrency/eventmachine_spec.rb +9 -1
  229. data/spec/slack/real_time/concurrency/it_behaves_like_a_realtime_socket.rb +2 -0
  230. data/spec/slack/real_time/event_handlers/bot_spec.rb +2 -1
  231. data/spec/slack/real_time/event_handlers/channel_spec.rb +9 -6
  232. data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +2 -1
  233. data/spec/slack/real_time/event_handlers/group_spec.rb +5 -4
  234. data/spec/slack/real_time/event_handlers/im_spec.rb +4 -3
  235. data/spec/slack/real_time/event_handlers/team_spec.rb +3 -1
  236. data/spec/slack/real_time/event_handlers/user_spec.rb +1 -0
  237. data/spec/slack/real_time/rtm_connect_spec.rb +1 -0
  238. data/spec/slack/real_time/rtm_start_spec.rb +1 -0
  239. data/spec/slack/real_time/store_spec.rb +2 -1
  240. data/spec/slack/slack_spec.rb +37 -5
  241. data/spec/slack/version_spec.rb +2 -1
  242. data/spec/slack/web/api/endpoints/admin_apps_approved_spec.rb +8 -0
  243. data/spec/slack/web/api/endpoints/admin_apps_requests_spec.rb +8 -0
  244. data/spec/slack/web/api/endpoints/admin_apps_restricted_spec.rb +8 -0
  245. data/spec/slack/web/api/endpoints/admin_apps_spec.rb +8 -0
  246. data/spec/slack/web/api/endpoints/admin_conversations_restrictAccess_spec.rb +32 -0
  247. data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +13 -0
  248. data/spec/slack/web/api/endpoints/admin_conversations_whitelist_spec.rb +32 -0
  249. data/spec/slack/web/api/endpoints/admin_emoji_spec.rb +37 -0
  250. data/spec/slack/web/api/endpoints/admin_inviteRequests_approved_spec.rb +8 -0
  251. data/spec/slack/web/api/endpoints/admin_inviteRequests_denied_spec.rb +8 -0
  252. data/spec/slack/web/api/endpoints/admin_inviteRequests_spec.rb +18 -0
  253. data/spec/slack/web/api/endpoints/admin_teams_admins_spec.rb +13 -0
  254. data/spec/slack/web/api/endpoints/admin_teams_owners_spec.rb +13 -0
  255. data/spec/slack/web/api/endpoints/admin_teams_settings_spec.rb +53 -0
  256. data/spec/slack/web/api/endpoints/admin_teams_spec.rb +16 -0
  257. data/spec/slack/web/api/endpoints/admin_usergroups_spec.rb +37 -0
  258. data/spec/slack/web/api/endpoints/admin_users_session_spec.rb +1 -0
  259. data/spec/slack/web/api/endpoints/admin_users_spec.rb +75 -0
  260. data/spec/slack/web/api/endpoints/api_spec.rb +1 -0
  261. data/spec/slack/web/api/endpoints/apps_permissions_resources_spec.rb +1 -0
  262. data/spec/slack/web/api/endpoints/apps_permissions_scopes_spec.rb +1 -0
  263. data/spec/slack/web/api/endpoints/apps_permissions_spec.rb +3 -2
  264. data/spec/slack/web/api/endpoints/apps_permissions_users_spec.rb +4 -3
  265. data/spec/slack/web/api/endpoints/apps_spec.rb +1 -0
  266. data/spec/slack/web/api/endpoints/bots_spec.rb +1 -0
  267. data/spec/slack/web/api/endpoints/calls_participants_spec.rb +24 -0
  268. data/spec/slack/web/api/endpoints/calls_spec.rb +31 -0
  269. data/spec/slack/web/api/endpoints/chat_scheduledMessages_spec.rb +1 -0
  270. data/spec/slack/web/api/endpoints/conversations_spec.rb +2 -1
  271. data/spec/slack/web/api/endpoints/custom_specs/auth_spec.rb +5 -1
  272. data/spec/slack/web/api/endpoints/custom_specs/channels_spec.rb +5 -3
  273. data/spec/slack/web/api/endpoints/custom_specs/chat_spec.rb +80 -25
  274. data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +12 -4
  275. data/spec/slack/web/api/endpoints/custom_specs/groups_spec.rb +2 -0
  276. data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +6 -1
  277. data/spec/slack/web/api/endpoints/custom_specs/views_spec.rb +95 -0
  278. data/spec/slack/web/api/endpoints/dnd_spec.rb +1 -0
  279. data/spec/slack/web/api/endpoints/emoji_spec.rb +1 -0
  280. data/spec/slack/web/api/endpoints/files_comments_spec.rb +1 -0
  281. data/spec/slack/web/api/endpoints/files_remote_spec.rb +24 -0
  282. data/spec/slack/web/api/endpoints/files_spec.rb +1 -0
  283. data/spec/slack/web/api/endpoints/im_spec.rb +1 -0
  284. data/spec/slack/web/api/endpoints/migration_spec.rb +1 -0
  285. data/spec/slack/web/api/endpoints/mpim_spec.rb +1 -0
  286. data/spec/slack/web/api/endpoints/oauth_spec.rb +1 -11
  287. data/spec/slack/web/api/endpoints/oauth_v2_spec.rb +13 -0
  288. data/spec/slack/web/api/endpoints/pins_spec.rb +5 -1
  289. data/spec/slack/web/api/endpoints/reactions_spec.rb +8 -1
  290. data/spec/slack/web/api/endpoints/reminders_spec.rb +1 -0
  291. data/spec/slack/web/api/endpoints/rtm_spec.rb +1 -0
  292. data/spec/slack/web/api/endpoints/search_spec.rb +1 -0
  293. data/spec/slack/web/api/endpoints/stars_spec.rb +1 -0
  294. data/spec/slack/web/api/endpoints/team_profile_spec.rb +1 -0
  295. data/spec/slack/web/api/endpoints/team_spec.rb +1 -0
  296. data/spec/slack/web/api/endpoints/usergroups_spec.rb +1 -0
  297. data/spec/slack/web/api/endpoints/usergroups_users_spec.rb +1 -0
  298. data/spec/slack/web/api/endpoints/users_admin_spec.rb +1 -0
  299. data/spec/slack/web/api/endpoints/users_prefs_spec.rb +1 -0
  300. data/spec/slack/web/api/endpoints/users_profile_spec.rb +1 -0
  301. data/spec/slack/web/api/endpoints/views_spec.rb +29 -0
  302. data/spec/slack/web/api/error_spec.rb +4 -2
  303. data/spec/slack/web/api/errors/service_unavailable_spec.rb +8 -5
  304. data/spec/slack/web/api/errors/slack_error_spec.rb +26 -2
  305. data/spec/slack/web/api/mixins/channels_spec.rb +17 -7
  306. data/spec/slack/web/api/mixins/conversations_list_spec.rb +21 -0
  307. data/spec/slack/web/api/mixins/conversations_spec.rb +43 -0
  308. data/spec/slack/web/api/mixins/groups_spec.rb +17 -7
  309. data/spec/slack/web/api/mixins/users_spec.rb +17 -8
  310. data/spec/slack/web/api/pagination/cursor_spec.rb +40 -10
  311. data/spec/slack/web/client_spec.rb +115 -18
  312. data/spec/slack/web/faraday/response/raise_error_spec.rb +41 -7
  313. data/spec/spec_helper.rb +2 -1
  314. data/spec/support/queue_with_timeout.rb +1 -0
  315. data/spec/support/real_time/concurrency/mock.rb +1 -0
  316. data/spec/support/real_time/connected_client.rb +9 -3
  317. data/spec/support/real_time/event.rb +1 -0
  318. data/spec/support/token.rb +1 -0
  319. data/spec/support/vcr.rb +5 -0
  320. metadata +160 -29
  321. data/lib/slack/web/api/patches/chat.1.text-attachments-required.patch +0 -13
  322. data/lib/slack/web/api/patches/chat.2.attachments-json.patch +0 -17
  323. data/lib/slack/web/api/patches/chat.3.update-attachments-support.patch +0 -21
  324. data/lib/slack/web/api/patches/chat.4.postEphemeral-attachments-support.patch +0 -17
  325. data/lib/slack/web/api/patches/chat.5.postEphemeral-text-or-attachments.patch +0 -15
  326. data/screenshots/register-bot.png +0 -0
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # This file was auto-generated by lib/tasks/web.rake
2
3
 
3
4
  module Slack
@@ -6,7 +7,7 @@ module Slack
6
7
  module Endpoints
7
8
  module Dialog
8
9
  #
9
- # Open a dialog with a user by exchanging a trigger_id received from another interaction. See the dialogs documentation to learn how to obtain triggers define form elements.
10
+ # Open a dialog with a user
10
11
  #
11
12
  # @option options [Object] :dialog
12
13
  # The dialog definition. This must be a JSON-encoded string.
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # This file was auto-generated by lib/tasks/web.rake
2
3
 
3
4
  module Slack
@@ -6,7 +7,7 @@ module Slack
6
7
  module Endpoints
7
8
  module Dnd
8
9
  #
9
- # Ends the user's currently scheduled Do Not Disturb session immediately.
10
+ # Ends the current user's Do Not Disturb session immediately.
10
11
  #
11
12
  # @see https://api.slack.com/methods/dnd.endDnd
12
13
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/dnd/dnd.endDnd.json
@@ -24,7 +25,7 @@ module Slack
24
25
  end
25
26
 
26
27
  #
27
- # Provides information about a user's current Do Not Disturb settings.
28
+ # Retrieves a user's current Do Not Disturb status.
28
29
  #
29
30
  # @option options [user] :user
30
31
  # User to fetch status for (defaults to current user).
@@ -36,7 +37,7 @@ module Slack
36
37
  end
37
38
 
38
39
  #
39
- # Adjusts the snooze duration for a user's Do Not Disturb settings. If a snooze session is not already active for the user, invoking this method will begin one for the specified duration.
40
+ # Turns on Do Not Disturb mode for the current user, or changes its duration.
40
41
  #
41
42
  # @option options [Object] :num_minutes
42
43
  # Number of minutes, from now, to snooze until.
@@ -48,7 +49,7 @@ module Slack
48
49
  end
49
50
 
50
51
  #
51
- # Provides information about the current Do Not Disturb settings for a list of users in a Slack team.
52
+ # Retrieves the Do Not Disturb status for up to 50 users on a team.
52
53
  #
53
54
  # @option options [Object] :users
54
55
  # Comma-separated list of users to fetch Do Not Disturb status for.
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # This file was auto-generated by lib/tasks/web.rake
2
3
 
3
4
  module Slack
@@ -6,7 +7,7 @@ module Slack
6
7
  module Endpoints
7
8
  module Emoji
8
9
  #
9
- # This method lists the custom emoji for a team.
10
+ # Lists custom emoji for a team.
10
11
  #
11
12
  # @see https://api.slack.com/methods/emoji.list
12
13
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/emoji/emoji.list.json
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # This file was auto-generated by lib/tasks/web.rake
2
3
 
3
4
  module Slack
@@ -6,7 +7,7 @@ module Slack
6
7
  module Endpoints
7
8
  module Files
8
9
  #
9
- # A new file commenting experience arrived on July 23, 2018. Learn more about what's new and the migration path for apps already working with files and file comments.
10
+ # Deletes a file.
10
11
  #
11
12
  # @option options [file] :file
12
13
  # ID of file to delete.
@@ -35,7 +36,7 @@ module Slack
35
36
  end
36
37
 
37
38
  #
38
- # A new file commenting experience arrived on July 23, 2018. Learn more about what's new and the migration path for apps already working with files and file comments.
39
+ # Gets information about a team file.
39
40
  #
40
41
  # @option options [file] :file
41
42
  # Specify a file by providing its ID.
@@ -57,10 +58,12 @@ module Slack
57
58
  end
58
59
 
59
60
  #
60
- # A new file commenting experience arrived on July 23, 2018. Learn more about what's new and the migration path for apps already working with files and file comments.
61
+ # Lists & filters team files.
61
62
  #
62
63
  # @option options [channel] :channel
63
64
  # Filter files appearing in a specific channel, indicated by its ID.
65
+ # @option options [Object] :show_files_hidden_by_limit
66
+ # Show truncated file info for files hidden due to being too old, and the team who owns the file being over the file limit.
64
67
  # @option options [Object] :ts_from
65
68
  # Filter files created after this timestamp (inclusive).
66
69
  # @option options [Object] :ts_to
@@ -72,13 +75,13 @@ module Slack
72
75
  # @see https://api.slack.com/methods/files.list
73
76
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/files/files.list.json
74
77
  def files_list(options = {})
75
- options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
78
+ options = options.merge(channel: conversations_id(options)['channel']['id']) if options[:channel]
76
79
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
77
80
  post('files.list', options)
78
81
  end
79
82
 
80
83
  #
81
- # A new file commenting experience arrived on July 23, 2018. Learn more about what's new and the migration path for apps already working with files and file comments.
84
+ # Revokes public/external sharing access for a file
82
85
  #
83
86
  # @option options [file] :file
84
87
  # File to revoke.
@@ -100,13 +103,13 @@ module Slack
100
103
  def files_share(options = {})
101
104
  throw ArgumentError.new('Required arguments :file missing') if options[:file].nil?
102
105
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
103
- options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
106
+ options = options.merge(channel: conversations_id(options)['channel']['id']) if options[:channel]
104
107
  logger.warn('The files.share method is undocumented.')
105
108
  post('files.share', options)
106
109
  end
107
110
 
108
111
  #
109
- # A new file commenting experience arrived on July 23, 2018. Learn more about what's new and the migration path for apps already working with files and file comments.
112
+ # Enables a file for public/external sharing.
110
113
  #
111
114
  # @option options [file] :file
112
115
  # File to share.
@@ -118,7 +121,7 @@ module Slack
118
121
  end
119
122
 
120
123
  #
121
- # A new file commenting experience arrived on July 23, 2018. Learn more about what's new and the migration path for apps already working with files and file comments.
124
+ # Uploads or creates a file.
122
125
  #
123
126
  # @option options [Object] :channels
124
127
  # Comma-separated list of channel names or IDs where the file will be shared.
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # This file was auto-generated by lib/tasks/web.rake
2
3
 
3
4
  module Slack
@@ -6,7 +7,7 @@ module Slack
6
7
  module Endpoints
7
8
  module FilesComments
8
9
  #
9
- # A new file commenting experience arrived on July 23, 2018. Learn more about what's new and the migration path for apps already working with files and file comments.
10
+ # Deletes an existing comment on a file.
10
11
  #
11
12
  # @option options [file] :file
12
13
  # File to delete a comment from.
@@ -0,0 +1,127 @@
1
+ # frozen_string_literal: true
2
+ # This file was auto-generated by lib/tasks/web.rake
3
+
4
+ module Slack
5
+ module Web
6
+ module Api
7
+ module Endpoints
8
+ module FilesRemote
9
+ #
10
+ # Adds a file from a remote service
11
+ #
12
+ # @option options [Object] :external_id
13
+ # Creator defined GUID for the file.
14
+ # @option options [Object] :external_url
15
+ # URL of the remote file.
16
+ # @option options [Object] :title
17
+ # Title of the file being shared.
18
+ # @option options [Object] :filetype
19
+ # type of file.
20
+ # @option options [Object] :indexable_file_contents
21
+ # A text file (txt, pdf, doc, etc.) containing textual search terms that are used to improve discovery of the remote file.
22
+ # @option options [Object] :preview_image
23
+ # Preview of the document via multipart/form-data.
24
+ # @see https://api.slack.com/methods/files.remote.add
25
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/files.remote/files.remote.add.json
26
+ def files_remote_add(options = {})
27
+ throw ArgumentError.new('Required arguments :external_id missing') if options[:external_id].nil?
28
+ throw ArgumentError.new('Required arguments :external_url missing') if options[:external_url].nil?
29
+ throw ArgumentError.new('Required arguments :title missing') if options[:title].nil?
30
+ post('files.remote.add', options)
31
+ end
32
+
33
+ #
34
+ # Retrieve information about a remote file added to Slack
35
+ #
36
+ # @option options [Object] :external_id
37
+ # Creator defined GUID for the file.
38
+ # @option options [file] :file
39
+ # Specify a file by providing its ID.
40
+ # @see https://api.slack.com/methods/files.remote.info
41
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/files.remote/files.remote.info.json
42
+ def files_remote_info(options = {})
43
+ post('files.remote.info', options)
44
+ end
45
+
46
+ #
47
+ # Retrieve information about a remote file added to Slack
48
+ #
49
+ # @option options [channel] :channel
50
+ # Filter files appearing in a specific channel, indicated by its ID.
51
+ # @option options [Object] :cursor
52
+ # 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.
53
+ # @option options [Object] :limit
54
+ # The maximum number of items to return.
55
+ # @option options [Object] :ts_from
56
+ # Filter files created after this timestamp (inclusive).
57
+ # @option options [Object] :ts_to
58
+ # Filter files created before this timestamp (inclusive).
59
+ # @see https://api.slack.com/methods/files.remote.list
60
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/files.remote/files.remote.list.json
61
+ def files_remote_list(options = {})
62
+ options = options.merge(channel: conversations_id(options)['channel']['id']) if options[:channel]
63
+ if block_given?
64
+ Pagination::Cursor.new(self, :files_remote_list, options).each do |page|
65
+ yield page
66
+ end
67
+ else
68
+ post('files.remote.list', options)
69
+ end
70
+ end
71
+
72
+ #
73
+ # Remove a remote file.
74
+ #
75
+ # @option options [Object] :external_id
76
+ # Creator defined GUID for the file.
77
+ # @option options [file] :file
78
+ # Specify a file by providing its ID.
79
+ # @see https://api.slack.com/methods/files.remote.remove
80
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/files.remote/files.remote.remove.json
81
+ def files_remote_remove(options = {})
82
+ post('files.remote.remove', options)
83
+ end
84
+
85
+ #
86
+ # Share a remote file into a channel.
87
+ #
88
+ # @option options [Object] :channels
89
+ # Comma-separated list of channel IDs where the file will be shared.
90
+ # @option options [Object] :external_id
91
+ # Creator defined GUID for the file.
92
+ # @option options [file] :file
93
+ # Specify a file by providing its ID.
94
+ # @see https://api.slack.com/methods/files.remote.share
95
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/files.remote/files.remote.share.json
96
+ def files_remote_share(options = {})
97
+ throw ArgumentError.new('Required arguments :channels missing') if options[:channels].nil?
98
+ post('files.remote.share', options)
99
+ end
100
+
101
+ #
102
+ # Updates an existing remote file.
103
+ #
104
+ # @option options [Object] :external_id
105
+ # Creator defined GUID for the file.
106
+ # @option options [Object] :external_url
107
+ # URL of the remote file.
108
+ # @option options [file] :file
109
+ # Specify a file by providing its ID.
110
+ # @option options [Object] :filetype
111
+ # type of file.
112
+ # @option options [Object] :indexable_file_contents
113
+ # File containing contents that can be used to improve searchability for the remote file.
114
+ # @option options [Object] :preview_image
115
+ # Preview of the document via multipart/form-data.
116
+ # @option options [Object] :title
117
+ # Title of the file being shared.
118
+ # @see https://api.slack.com/methods/files.remote.update
119
+ # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/files.remote/files.remote.update.json
120
+ def files_remote_update(options = {})
121
+ post('files.remote.update', options)
122
+ end
123
+ end
124
+ end
125
+ end
126
+ end
127
+ end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  # This file was auto-generated by lib/tasks/web.rake
2
3
 
3
4
  module Slack
@@ -6,7 +7,7 @@ module Slack
6
7
  module Endpoints
7
8
  module Groups
8
9
  #
9
- # This method archives a private channel.
10
+ # Archives a private channel.
10
11
  #
11
12
  # @option options [group] :channel
12
13
  # Private channel to archive.
@@ -15,11 +16,12 @@ module Slack
15
16
  def groups_archive(options = {})
16
17
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
17
18
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
19
+ logger.warn('groups.archive: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.archive.')
18
20
  post('groups.archive', options)
19
21
  end
20
22
 
21
23
  #
22
- # This method creates a private channel.
24
+ # Creates a private channel.
23
25
  #
24
26
  # @option options [Object] :name
25
27
  # Name of private channel to create.
@@ -29,15 +31,12 @@ module Slack
29
31
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.create.json
30
32
  def groups_create(options = {})
31
33
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
34
+ logger.warn('groups.create: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.create.')
32
35
  post('groups.create', options)
33
36
  end
34
37
 
35
38
  #
36
- # This method takes an existing private channel and performs the following steps:
37
- # - Renames the existing private channel (from "example" to "example-archived").
38
- # - Archives the existing private channel.
39
- # - Creates a new private channel with the name of the existing private channel.
40
- # - Adds all members of the existing private channel to the new private channel.
39
+ # Clones and archives a private channel.
41
40
  #
42
41
  # @option options [group] :channel
43
42
  # Private channel to clone and archive.
@@ -46,13 +45,12 @@ module Slack
46
45
  def groups_createChild(options = {})
47
46
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
48
47
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
48
+ logger.warn('groups.createChild: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: .')
49
49
  post('groups.createChild', options)
50
50
  end
51
51
 
52
52
  #
53
- # This method returns a portion of messages/events from the specified private channel.
54
- # To read the entire history for a private channel, call the method with no latest or
55
- # oldest arguments, and then continue paging using the instructions below.
53
+ # Fetches history of messages and events from a private channel.
56
54
  #
57
55
  # @option options [group] :channel
58
56
  # Private channel to fetch history for.
@@ -69,11 +67,12 @@ module Slack
69
67
  def groups_history(options = {})
70
68
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
71
69
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
70
+ logger.warn('groups.history: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.history.')
72
71
  post('groups.history', options)
73
72
  end
74
73
 
75
74
  #
76
- # Don't use this method. Use conversations.info instead.
75
+ # Gets information about a private channel.
77
76
  #
78
77
  # @option options [group] :channel
79
78
  # Private channel to get info on.
@@ -84,11 +83,12 @@ module Slack
84
83
  def groups_info(options = {})
85
84
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
86
85
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
86
+ logger.warn('groups.info: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.info.')
87
87
  post('groups.info', options)
88
88
  end
89
89
 
90
90
  #
91
- # This method is used to invite a user to a private channel. The calling user must be a member of the private channel.
91
+ # Invites a user to a private channel.
92
92
  #
93
93
  # @option options [group] :channel
94
94
  # Private channel to invite user to.
@@ -101,11 +101,12 @@ module Slack
101
101
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
102
102
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
103
103
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
104
+ logger.warn('groups.invite: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.invite.')
104
105
  post('groups.invite', options)
105
106
  end
106
107
 
107
108
  #
108
- # This method allows a user to remove another member from a private channel.
109
+ # Removes a user from a private channel.
109
110
  #
110
111
  # @option options [group] :channel
111
112
  # Private channel to remove user from.
@@ -118,11 +119,12 @@ module Slack
118
119
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
119
120
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
120
121
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
122
+ logger.warn('groups.kick: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.kick.')
121
123
  post('groups.kick', options)
122
124
  end
123
125
 
124
126
  #
125
- # This method is used to leave a private channel.
127
+ # Leaves a private channel.
126
128
  #
127
129
  # @option options [group] :channel
128
130
  # Private channel to leave.
@@ -131,11 +133,12 @@ module Slack
131
133
  def groups_leave(options = {})
132
134
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
133
135
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
136
+ logger.warn('groups.leave: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.leave.')
134
137
  post('groups.leave', options)
135
138
  end
136
139
 
137
140
  #
138
- # Don't use this method. Use conversations.list instead.
141
+ # Lists private channels that the calling user has access to.
139
142
  #
140
143
  # @option options [Object] :cursor
141
144
  # Parameter for pagination. Set cursor equal to the next_cursor attribute returned by the previous request's response_metadata. This parameter is optional, but pagination is mandatory: the default value simply fetches the first "page" of the collection. See pagination for more details.
@@ -148,6 +151,7 @@ module Slack
148
151
  # @see https://api.slack.com/methods/groups.list
149
152
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.list.json
150
153
  def groups_list(options = {})
154
+ logger.warn('groups.list: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.list, users.conversations.')
151
155
  if block_given?
152
156
  Pagination::Cursor.new(self, :groups_list, options).each do |page|
153
157
  yield page
@@ -158,7 +162,7 @@ module Slack
158
162
  end
159
163
 
160
164
  #
161
- # This method moves the read cursor in a private channel.
165
+ # Sets the read cursor in a private channel.
162
166
  #
163
167
  # @option options [group] :channel
164
168
  # Private channel to set reading cursor in.
@@ -170,11 +174,12 @@ module Slack
170
174
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
171
175
  throw ArgumentError.new('Required arguments :ts missing') if options[:ts].nil?
172
176
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
177
+ logger.warn('groups.mark: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: .')
173
178
  post('groups.mark', options)
174
179
  end
175
180
 
176
181
  #
177
- # This method opens a private channel.
182
+ # Opens a private channel.
178
183
  #
179
184
  # @option options [group] :channel
180
185
  # Private channel to open.
@@ -183,11 +188,12 @@ module Slack
183
188
  def groups_open(options = {})
184
189
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
185
190
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
191
+ logger.warn('groups.open: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: .')
186
192
  post('groups.open', options)
187
193
  end
188
194
 
189
195
  #
190
- # This method renames a private channel.
196
+ # Renames a private channel.
191
197
  #
192
198
  # @option options [group] :channel
193
199
  # Private channel to rename.
@@ -201,11 +207,12 @@ module Slack
201
207
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
202
208
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
203
209
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
210
+ logger.warn('groups.rename: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.rename.')
204
211
  post('groups.rename', options)
205
212
  end
206
213
 
207
214
  #
208
- # This method returns an entire thread (a message plus all the messages in reply to it).
215
+ # Retrieve a thread of messages posted to a private channel
209
216
  #
210
217
  # @option options [group] :channel
211
218
  # Private channel to fetch thread from.
@@ -217,11 +224,12 @@ module Slack
217
224
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
218
225
  throw ArgumentError.new('Required arguments :thread_ts missing') if options[:thread_ts].nil?
219
226
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
227
+ logger.warn('groups.replies: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.replies.')
220
228
  post('groups.replies', options)
221
229
  end
222
230
 
223
231
  #
224
- # This method is used to change the purpose of a private channel. The calling user must be a member of the private channel.
232
+ # Sets the purpose for a private channel.
225
233
  #
226
234
  # @option options [group] :channel
227
235
  # Private channel to set the purpose of.
@@ -233,11 +241,12 @@ module Slack
233
241
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
234
242
  throw ArgumentError.new('Required arguments :purpose missing') if options[:purpose].nil?
235
243
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
244
+ logger.warn('groups.setPurpose: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.setPurpose.')
236
245
  post('groups.setPurpose', options)
237
246
  end
238
247
 
239
248
  #
240
- # This method is used to change the topic of a private channel. The calling user must be a member of the private channel.
249
+ # Sets the topic for a private channel.
241
250
  #
242
251
  # @option options [group] :channel
243
252
  # Private channel to set the topic of.
@@ -249,11 +258,12 @@ module Slack
249
258
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
250
259
  throw ArgumentError.new('Required arguments :topic missing') if options[:topic].nil?
251
260
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
261
+ logger.warn('groups.setTopic: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.setTopic.')
252
262
  post('groups.setTopic', options)
253
263
  end
254
264
 
255
265
  #
256
- # This method unarchives a private channel.
266
+ # Unarchives a private channel.
257
267
  #
258
268
  # @option options [group] :channel
259
269
  # Private channel to unarchive.
@@ -262,6 +272,7 @@ module Slack
262
272
  def groups_unarchive(options = {})
263
273
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
264
274
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
275
+ logger.warn('groups.unarchive: This method is deprecated. It will stop functioning in February 2021 and will not work with newly created apps after June 10th, 2020. Alternative methods: conversations.unarchive.')
265
276
  post('groups.unarchive', options)
266
277
  end
267
278
  end