slack-ruby-client 0.14.4 → 0.16.0

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 (352) 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 +104 -47
  5. data/.travis.yml +1 -5
  6. data/CHANGELOG.md +41 -2
  7. data/CONTRIBUTING.md +17 -6
  8. data/Dangerfile +2 -1
  9. data/Gemfile +2 -2
  10. data/README.md +94 -53
  11. data/Rakefile +1 -0
  12. data/UPGRADING.md +20 -2
  13. data/bin/commands.rb +30 -0
  14. data/bin/commands/admin_analytics.rb +15 -0
  15. data/bin/commands/admin_apps.rb +40 -0
  16. data/bin/commands/admin_apps_approved.rb +17 -0
  17. data/bin/commands/admin_apps_requests.rb +16 -0
  18. data/bin/commands/admin_apps_restricted.rb +17 -0
  19. data/bin/commands/admin_barriers.rb +47 -0
  20. data/bin/commands/admin_conversations.rb +169 -0
  21. data/bin/commands/admin_conversations_ekm.rb +17 -0
  22. data/bin/commands/admin_conversations_restrictAccess.rb +37 -0
  23. data/bin/commands/admin_conversations_whitelist.rb +37 -0
  24. data/bin/commands/admin_emoji.rb +54 -0
  25. data/bin/commands/admin_inviteRequests.rb +36 -0
  26. data/bin/commands/admin_inviteRequests_approved.rb +16 -0
  27. data/bin/commands/admin_inviteRequests_denied.rb +16 -0
  28. data/bin/commands/admin_teams.rb +27 -0
  29. data/bin/commands/admin_teams_admins.rb +16 -0
  30. data/bin/commands/admin_teams_owners.rb +16 -0
  31. data/bin/commands/admin_teams_settings.rb +64 -0
  32. data/bin/commands/admin_usergroups.rb +48 -0
  33. data/bin/commands/admin_users.rb +97 -0
  34. data/bin/commands/admin_users_session.rb +25 -2
  35. data/bin/commands/api.rb +3 -3
  36. data/bin/commands/apps.rb +3 -2
  37. data/bin/commands/apps_connections.rb +13 -0
  38. data/bin/commands/apps_event_authorizations.rb +16 -0
  39. data/bin/commands/apps_permissions.rb +5 -4
  40. data/bin/commands/apps_permissions_resources.rb +3 -2
  41. data/bin/commands/apps_permissions_scopes.rb +3 -2
  42. data/bin/commands/apps_permissions_users.rb +5 -4
  43. data/bin/commands/auth.rb +5 -4
  44. data/bin/commands/auth_teams.rb +16 -0
  45. data/bin/commands/bots.rb +4 -2
  46. data/bin/commands/calls.rb +52 -0
  47. data/bin/commands/calls_participants.rb +25 -0
  48. data/bin/commands/channels.rb +37 -33
  49. data/bin/commands/chat.rb +34 -33
  50. data/bin/commands/chat_scheduledMessages.rb +4 -2
  51. data/bin/commands/conversations.rb +50 -38
  52. data/bin/commands/dialog.rb +3 -2
  53. data/bin/commands/dnd.rb +10 -9
  54. data/bin/commands/emoji.rb +3 -2
  55. data/bin/commands/files.rb +16 -13
  56. data/bin/commands/files_comments.rb +3 -2
  57. data/bin/commands/files_remote.rb +78 -0
  58. data/bin/commands/groups.rb +38 -35
  59. data/bin/commands/im.rb +14 -13
  60. data/bin/commands/migration.rb +4 -2
  61. data/bin/commands/mpim.rb +14 -13
  62. data/bin/commands/oauth.rb +6 -5
  63. data/bin/commands/oauth_v2.rb +17 -0
  64. data/bin/commands/pins.rb +7 -10
  65. data/bin/commands/reactions.rb +11 -11
  66. data/bin/commands/reminders.rb +11 -10
  67. data/bin/commands/rtm.rb +5 -4
  68. data/bin/commands/search.rb +11 -7
  69. data/bin/commands/stars.rb +7 -6
  70. data/bin/commands/team.rb +12 -8
  71. data/bin/commands/team_profile.rb +3 -2
  72. data/bin/commands/usergroups.rb +17 -11
  73. data/bin/commands/usergroups_users.rb +7 -4
  74. data/bin/commands/users.rb +26 -23
  75. data/bin/commands/users_admin.rb +1 -0
  76. data/bin/commands/users_prefs.rb +1 -0
  77. data/bin/commands/users_profile.rb +6 -5
  78. data/bin/commands/views.rb +48 -0
  79. data/bin/commands/workflows.rb +38 -0
  80. data/bin/slack +1 -2
  81. data/examples/hi_real_time_and_web/Gemfile +1 -0
  82. data/examples/hi_real_time_and_web/hi.rb +7 -3
  83. data/examples/hi_real_time_async_async/Gemfile +1 -0
  84. data/examples/hi_real_time_async_async/hi.rb +6 -2
  85. data/examples/hi_web/Gemfile +1 -0
  86. data/examples/hi_web/hi.rb +1 -0
  87. data/examples/new_ticket/Gemfile +1 -0
  88. data/examples/new_ticket/new_ticket.rb +1 -0
  89. data/lib/slack-ruby-client.rb +6 -4
  90. data/lib/slack.rb +1 -0
  91. data/lib/slack/config.rb +1 -0
  92. data/lib/slack/events/config.rb +1 -0
  93. data/lib/slack/events/request.rb +8 -2
  94. data/lib/slack/logger.rb +6 -5
  95. data/lib/slack/messages/formatting.rb +1 -0
  96. data/lib/slack/messages/message.rb +1 -4
  97. data/lib/slack/real_time/api/message.rb +3 -1
  98. data/lib/slack/real_time/api/message_id.rb +1 -0
  99. data/lib/slack/real_time/api/ping.rb +5 -2
  100. data/lib/slack/real_time/api/typing.rb +3 -1
  101. data/lib/slack/real_time/client.rb +21 -13
  102. data/lib/slack/real_time/concurrency.rb +1 -2
  103. data/lib/slack/real_time/concurrency/async.rb +12 -6
  104. data/lib/slack/real_time/config.rb +9 -3
  105. data/lib/slack/real_time/models.rb +1 -0
  106. data/lib/slack/real_time/models/base.rb +1 -4
  107. data/lib/slack/real_time/models/bot.rb +1 -0
  108. data/lib/slack/real_time/models/channel.rb +1 -0
  109. data/lib/slack/real_time/models/group.rb +1 -0
  110. data/lib/slack/real_time/models/im.rb +1 -0
  111. data/lib/slack/real_time/models/team.rb +1 -0
  112. data/lib/slack/real_time/models/user.rb +1 -0
  113. data/lib/slack/real_time/socket.rb +16 -13
  114. data/lib/slack/real_time/stores.rb +1 -0
  115. data/lib/slack/real_time/stores/base.rb +4 -1
  116. data/lib/slack/real_time/stores/starter.rb +1 -0
  117. data/lib/slack/real_time/stores/store.rb +16 -25
  118. data/lib/slack/version.rb +2 -1
  119. data/lib/slack/web/api/endpoints.rb +60 -0
  120. data/lib/slack/web/api/endpoints/admin_analytics.rb +26 -0
  121. data/lib/slack/web/api/endpoints/admin_apps.rb +62 -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_barriers.rb +82 -0
  126. data/lib/slack/web/api/endpoints/admin_conversations.rb +260 -0
  127. data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +35 -0
  128. data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +61 -0
  129. data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +64 -0
  130. data/lib/slack/web/api/endpoints/admin_emoji.rb +88 -0
  131. data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +61 -0
  132. data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +33 -0
  133. data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +33 -0
  134. data/lib/slack/web/api/endpoints/admin_teams.rb +50 -0
  135. data/lib/slack/web/api/endpoints/admin_teams_admins.rb +34 -0
  136. data/lib/slack/web/api/endpoints/admin_teams_owners.rb +34 -0
  137. data/lib/slack/web/api/endpoints/admin_teams_settings.rb +99 -0
  138. data/lib/slack/web/api/endpoints/admin_usergroups.rb +77 -0
  139. data/lib/slack/web/api/endpoints/admin_users.rb +161 -0
  140. data/lib/slack/web/api/endpoints/admin_users_session.rb +40 -1
  141. data/lib/slack/web/api/endpoints/api.rb +2 -3
  142. data/lib/slack/web/api/endpoints/apps.rb +2 -1
  143. data/lib/slack/web/api/endpoints/apps_connections.rb +21 -0
  144. data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +34 -0
  145. data/lib/slack/web/api/endpoints/apps_permissions.rb +3 -2
  146. data/lib/slack/web/api/endpoints/apps_permissions_resources.rb +2 -1
  147. data/lib/slack/web/api/endpoints/apps_permissions_scopes.rb +2 -1
  148. data/lib/slack/web/api/endpoints/apps_permissions_users.rb +3 -2
  149. data/lib/slack/web/api/endpoints/auth.rb +3 -2
  150. data/lib/slack/web/api/endpoints/auth_teams.rb +33 -0
  151. data/lib/slack/web/api/endpoints/bots.rb +4 -1
  152. data/lib/slack/web/api/endpoints/calls.rb +83 -0
  153. data/lib/slack/web/api/endpoints/calls_participants.rb +42 -0
  154. data/lib/slack/web/api/endpoints/channels.rb +52 -31
  155. data/lib/slack/web/api/endpoints/chat.rb +31 -30
  156. data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +5 -2
  157. data/lib/slack/web/api/endpoints/conversations.rb +55 -36
  158. data/lib/slack/web/api/endpoints/dialog.rb +2 -1
  159. data/lib/slack/web/api/endpoints/dnd.rb +5 -4
  160. data/lib/slack/web/api/endpoints/emoji.rb +2 -1
  161. data/lib/slack/web/api/endpoints/files.rb +13 -8
  162. data/lib/slack/web/api/endpoints/files_comments.rb +2 -1
  163. data/lib/slack/web/api/endpoints/files_remote.rb +127 -0
  164. data/lib/slack/web/api/endpoints/groups.rb +39 -24
  165. data/lib/slack/web/api/endpoints/im.rb +17 -12
  166. data/lib/slack/web/api/endpoints/migration.rb +4 -1
  167. data/lib/slack/web/api/endpoints/mpim.rb +18 -13
  168. data/lib/slack/web/api/endpoints/oauth.rb +4 -6
  169. data/lib/slack/web/api/endpoints/oauth_v2.rb +30 -0
  170. data/lib/slack/web/api/endpoints/pins.rb +7 -16
  171. data/lib/slack/web/api/endpoints/reactions.rb +14 -15
  172. data/lib/slack/web/api/endpoints/reminders.rb +6 -5
  173. data/lib/slack/web/api/endpoints/rtm.rb +3 -2
  174. data/lib/slack/web/api/endpoints/search.rb +10 -3
  175. data/lib/slack/web/api/endpoints/stars.rb +6 -7
  176. data/lib/slack/web/api/endpoints/team.rb +11 -5
  177. data/lib/slack/web/api/endpoints/team_profile.rb +2 -1
  178. data/lib/slack/web/api/endpoints/usergroups.rb +16 -5
  179. data/lib/slack/web/api/endpoints/usergroups_users.rb +7 -2
  180. data/lib/slack/web/api/endpoints/users.rb +18 -21
  181. data/lib/slack/web/api/endpoints/users_admin.rb +1 -0
  182. data/lib/slack/web/api/endpoints/users_prefs.rb +1 -0
  183. data/lib/slack/web/api/endpoints/users_profile.rb +4 -3
  184. data/lib/slack/web/api/endpoints/views.rb +97 -0
  185. data/lib/slack/web/api/endpoints/workflows.rb +61 -0
  186. data/lib/slack/web/api/error.rb +1 -0
  187. data/lib/slack/web/api/errors.rb +850 -0
  188. data/lib/slack/web/api/errors/internal_error.rb +14 -0
  189. data/lib/slack/web/api/errors/slack_error.rb +14 -1
  190. data/lib/slack/web/api/errors/too_many_requests_error.rb +1 -0
  191. data/lib/slack/web/api/mixins.rb +2 -0
  192. data/lib/slack/web/api/mixins/channels.id.rb +2 -3
  193. data/lib/slack/web/api/mixins/conversations.id.rb +25 -0
  194. data/lib/slack/web/api/mixins/groups.id.rb +2 -3
  195. data/lib/slack/web/api/mixins/ids.id.rb +3 -2
  196. data/lib/slack/web/api/mixins/users.id.rb +2 -3
  197. data/lib/slack/web/api/mixins/users.search.rb +1 -0
  198. data/lib/slack/web/api/patches/{chat.6.block-kit-support.patch → chat.1.patch} +29 -26
  199. data/lib/slack/web/api/patches/views.1.view-json.patch +40 -0
  200. data/lib/slack/web/api/patches/views.1.views-published.patch +16 -0
  201. data/lib/slack/web/api/templates/command.erb +1 -0
  202. data/lib/slack/web/api/templates/commands.erb +1 -0
  203. data/lib/slack/web/api/templates/endpoints.erb +2 -0
  204. data/lib/slack/web/api/templates/errors.erb +20 -0
  205. data/lib/slack/web/api/templates/method.erb +5 -1
  206. data/lib/slack/web/api/templates/method_spec.erb +2 -1
  207. data/lib/slack/web/client.rb +2 -1
  208. data/lib/slack/web/config.rb +3 -0
  209. data/lib/slack/web/faraday/connection.rb +24 -20
  210. data/lib/slack/web/faraday/request.rb +1 -0
  211. data/lib/slack/web/faraday/response/raise_error.rb +25 -6
  212. data/lib/slack/web/faraday/response/wrap_error.rb +18 -0
  213. data/lib/slack/web/pagination/cursor.rb +3 -2
  214. data/lib/slack_ruby_client.rb +1 -0
  215. data/lib/tasks/git.rake +1 -0
  216. data/lib/tasks/real_time.rake +13 -5
  217. data/lib/tasks/update.rake +1 -0
  218. data/lib/tasks/web.rake +34 -10
  219. data/screenshots/create-app.png +0 -0
  220. data/slack-ruby-client.gemspec +6 -3
  221. data/spec/fixtures/slack/web/channels_info.yml +108 -15
  222. data/spec/fixtures/slack/web/conversations_setTopic.yml +69 -0
  223. data/spec/fixtures/slack/web/conversations_setTopic_one_page.yml +142 -0
  224. data/spec/fixtures/slack/web/conversations_setTopic_paginated.yml +208 -0
  225. data/spec/fixtures/slack/web/views_open_error.yml +76 -0
  226. data/spec/integration/integration_spec.rb +16 -17
  227. data/spec/slack/config_spec.rb +2 -0
  228. data/spec/slack/events/config_spec.rb +8 -4
  229. data/spec/slack/events/request_spec.rb +74 -40
  230. data/spec/slack/messages/formatting_spec.rb +25 -13
  231. data/spec/slack/real_time/api/message_spec.rb +6 -1
  232. data/spec/slack/real_time/api/ping_spec.rb +2 -0
  233. data/spec/slack/real_time/api/typing_spec.rb +5 -1
  234. data/spec/slack/real_time/client_spec.rb +153 -38
  235. data/spec/slack/real_time/concurrency/it_behaves_like_a_realtime_socket.rb +2 -0
  236. data/spec/slack/real_time/event_handlers/bot_spec.rb +2 -1
  237. data/spec/slack/real_time/event_handlers/channel_spec.rb +9 -6
  238. data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +2 -1
  239. data/spec/slack/real_time/event_handlers/group_spec.rb +5 -4
  240. data/spec/slack/real_time/event_handlers/im_spec.rb +4 -3
  241. data/spec/slack/real_time/event_handlers/team_spec.rb +3 -1
  242. data/spec/slack/real_time/event_handlers/user_spec.rb +1 -0
  243. data/spec/slack/real_time/rtm_connect_spec.rb +1 -0
  244. data/spec/slack/real_time/rtm_start_spec.rb +1 -0
  245. data/spec/slack/real_time/store_spec.rb +2 -1
  246. data/spec/slack/slack_spec.rb +37 -5
  247. data/spec/slack/version_spec.rb +2 -1
  248. data/spec/slack/web/api/endpoints/admin_analytics_spec.rb +13 -0
  249. data/spec/slack/web/api/endpoints/admin_apps_approved_spec.rb +8 -0
  250. data/spec/slack/web/api/endpoints/admin_apps_requests_spec.rb +8 -0
  251. data/spec/slack/web/api/endpoints/admin_apps_restricted_spec.rb +8 -0
  252. data/spec/slack/web/api/endpoints/admin_apps_spec.rb +13 -0
  253. data/spec/slack/web/api/endpoints/admin_barriers_spec.rb +38 -0
  254. data/spec/slack/web/api/endpoints/admin_conversations_ekm_spec.rb +8 -0
  255. data/spec/slack/web/api/endpoints/admin_conversations_restrictAccess_spec.rb +32 -0
  256. data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +98 -0
  257. data/spec/slack/web/api/endpoints/admin_conversations_whitelist_spec.rb +32 -0
  258. data/spec/slack/web/api/endpoints/admin_emoji_spec.rb +37 -0
  259. data/spec/slack/web/api/endpoints/admin_inviteRequests_approved_spec.rb +8 -0
  260. data/spec/slack/web/api/endpoints/admin_inviteRequests_denied_spec.rb +8 -0
  261. data/spec/slack/web/api/endpoints/admin_inviteRequests_spec.rb +18 -0
  262. data/spec/slack/web/api/endpoints/admin_teams_admins_spec.rb +13 -0
  263. data/spec/slack/web/api/endpoints/admin_teams_owners_spec.rb +13 -0
  264. data/spec/slack/web/api/endpoints/admin_teams_settings_spec.rb +53 -0
  265. data/spec/slack/web/api/endpoints/admin_teams_spec.rb +16 -0
  266. data/spec/slack/web/api/endpoints/admin_usergroups_spec.rb +37 -0
  267. data/spec/slack/web/api/endpoints/admin_users_session_spec.rb +9 -0
  268. data/spec/slack/web/api/endpoints/admin_users_spec.rb +67 -0
  269. data/spec/slack/web/api/endpoints/api_spec.rb +1 -0
  270. data/spec/slack/web/api/endpoints/apps_connections_spec.rb +8 -0
  271. data/spec/slack/web/api/endpoints/apps_event_authorizations_spec.rb +13 -0
  272. data/spec/slack/web/api/endpoints/apps_permissions_resources_spec.rb +1 -0
  273. data/spec/slack/web/api/endpoints/apps_permissions_scopes_spec.rb +1 -0
  274. data/spec/slack/web/api/endpoints/apps_permissions_spec.rb +3 -2
  275. data/spec/slack/web/api/endpoints/apps_permissions_users_spec.rb +4 -3
  276. data/spec/slack/web/api/endpoints/apps_spec.rb +3 -2
  277. data/spec/slack/web/api/endpoints/auth_teams_spec.rb +8 -0
  278. data/spec/slack/web/api/endpoints/bots_spec.rb +1 -0
  279. data/spec/slack/web/api/endpoints/calls_participants_spec.rb +24 -0
  280. data/spec/slack/web/api/endpoints/calls_spec.rb +31 -0
  281. data/spec/slack/web/api/endpoints/chat_scheduledMessages_spec.rb +1 -0
  282. data/spec/slack/web/api/endpoints/conversations_spec.rb +21 -12
  283. data/spec/slack/web/api/endpoints/custom_specs/auth_spec.rb +5 -1
  284. data/spec/slack/web/api/endpoints/custom_specs/channels_spec.rb +5 -3
  285. data/spec/slack/web/api/endpoints/custom_specs/chat_spec.rb +80 -25
  286. data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +12 -4
  287. data/spec/slack/web/api/endpoints/custom_specs/groups_spec.rb +2 -0
  288. data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +6 -1
  289. data/spec/slack/web/api/endpoints/custom_specs/views_spec.rb +95 -0
  290. data/spec/slack/web/api/endpoints/dnd_spec.rb +1 -0
  291. data/spec/slack/web/api/endpoints/emoji_spec.rb +1 -0
  292. data/spec/slack/web/api/endpoints/files_comments_spec.rb +3 -2
  293. data/spec/slack/web/api/endpoints/files_remote_spec.rb +24 -0
  294. data/spec/slack/web/api/endpoints/files_spec.rb +5 -4
  295. data/spec/slack/web/api/endpoints/im_spec.rb +5 -4
  296. data/spec/slack/web/api/endpoints/migration_spec.rb +1 -0
  297. data/spec/slack/web/api/endpoints/mpim_spec.rb +5 -4
  298. data/spec/slack/web/api/endpoints/oauth_spec.rb +4 -14
  299. data/spec/slack/web/api/endpoints/oauth_v2_spec.rb +13 -0
  300. data/spec/slack/web/api/endpoints/pins_spec.rb +1 -0
  301. data/spec/slack/web/api/endpoints/reactions_spec.rb +8 -1
  302. data/spec/slack/web/api/endpoints/reminders_spec.rb +3 -2
  303. data/spec/slack/web/api/endpoints/rtm_spec.rb +1 -0
  304. data/spec/slack/web/api/endpoints/search_spec.rb +1 -0
  305. data/spec/slack/web/api/endpoints/stars_spec.rb +1 -0
  306. data/spec/slack/web/api/endpoints/team_profile_spec.rb +1 -0
  307. data/spec/slack/web/api/endpoints/team_spec.rb +1 -0
  308. data/spec/slack/web/api/endpoints/usergroups_spec.rb +1 -0
  309. data/spec/slack/web/api/endpoints/usergroups_users_spec.rb +3 -2
  310. data/spec/slack/web/api/endpoints/users_admin_spec.rb +1 -0
  311. data/spec/slack/web/api/endpoints/users_prefs_spec.rb +1 -0
  312. data/spec/slack/web/api/endpoints/users_profile_spec.rb +1 -0
  313. data/spec/slack/web/api/endpoints/views_spec.rb +29 -0
  314. data/spec/slack/web/api/endpoints/workflows_spec.rb +26 -0
  315. data/spec/slack/web/api/error_spec.rb +4 -2
  316. data/spec/slack/web/api/errors/slack_error_spec.rb +26 -2
  317. data/spec/slack/web/api/mixins/channels_spec.rb +17 -7
  318. data/spec/slack/web/api/mixins/conversations_list_spec.rb +21 -0
  319. data/spec/slack/web/api/mixins/conversations_spec.rb +43 -0
  320. data/spec/slack/web/api/mixins/groups_spec.rb +17 -7
  321. data/spec/slack/web/api/mixins/users_spec.rb +17 -8
  322. data/spec/slack/web/api/pagination/cursor_spec.rb +40 -10
  323. data/spec/slack/web/client_spec.rb +171 -18
  324. data/spec/slack/web/faraday/response/raise_error_spec.rb +47 -12
  325. data/spec/spec_helper.rb +2 -1
  326. data/spec/support/queue_with_timeout.rb +1 -0
  327. data/spec/support/real_time/concurrency/mock.rb +1 -0
  328. data/spec/support/real_time/connected_client.rb +9 -3
  329. data/spec/support/real_time/event.rb +1 -0
  330. data/spec/support/token.rb +1 -0
  331. data/spec/support/vcr.rb +5 -0
  332. metadata +190 -46
  333. data/examples/hi_real_time/Gemfile +0 -5
  334. data/examples/hi_real_time/hi.gif +0 -0
  335. data/examples/hi_real_time/hi.rb +0 -37
  336. data/examples/hi_real_time_async_celluloid/Gemfile +0 -6
  337. data/examples/hi_real_time_async_celluloid/Procfile +0 -2
  338. data/examples/hi_real_time_async_celluloid/hi.rb +0 -35
  339. data/examples/hi_real_time_async_eventmachine/Gemfile +0 -6
  340. data/examples/hi_real_time_async_eventmachine/Procfile +0 -2
  341. data/examples/hi_real_time_async_eventmachine/hi.rb +0 -35
  342. data/lib/slack/real_time/concurrency/celluloid.rb +0 -136
  343. data/lib/slack/real_time/concurrency/eventmachine.rb +0 -82
  344. data/lib/slack/web/api/patches/chat.1.text-attachments-required.patch +0 -13
  345. data/lib/slack/web/api/patches/chat.2.attachments-json.patch +0 -17
  346. data/lib/slack/web/api/patches/chat.3.update-attachments-support.patch +0 -21
  347. data/lib/slack/web/api/patches/chat.4.postEphemeral-attachments-support.patch +0 -17
  348. data/lib/slack/web/api/patches/chat.5.postEphemeral-text-or-attachments.patch +0 -15
  349. data/screenshots/register-bot.png +0 -0
  350. data/spec/slack/real_time/concurrency/celluloid_spec.rb +0 -111
  351. data/spec/slack/real_time/concurrency/eventmachine_spec.rb +0 -49
  352. data/spec/slack/web/api/errors/service_unavailable_spec.rb +0 -14
@@ -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 file.
39
40
  #
40
41
  # @option options [file] :file
41
42
  # Specify a file by providing its ID.
@@ -57,10 +58,14 @@ 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
+ # List for a team, in a channel, or from a user with applied filters.
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.
67
+ # @option options [Object] :team_id
68
+ # encoded team id to list files in, required if org token is used.
64
69
  # @option options [Object] :ts_from
65
70
  # Filter files created after this timestamp (inclusive).
66
71
  # @option options [Object] :ts_to
@@ -72,13 +77,13 @@ module Slack
72
77
  # @see https://api.slack.com/methods/files.list
73
78
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/files/files.list.json
74
79
  def files_list(options = {})
75
- options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
80
+ options = options.merge(channel: conversations_id(options)['channel']['id']) if options[:channel]
76
81
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
77
82
  post('files.list', options)
78
83
  end
79
84
 
80
85
  #
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.
86
+ # Revokes public/external sharing access for a file
82
87
  #
83
88
  # @option options [file] :file
84
89
  # File to revoke.
@@ -100,13 +105,13 @@ module Slack
100
105
  def files_share(options = {})
101
106
  throw ArgumentError.new('Required arguments :file missing') if options[:file].nil?
102
107
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
103
- options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
108
+ options = options.merge(channel: conversations_id(options)['channel']['id']) if options[:channel]
104
109
  logger.warn('The files.share method is undocumented.')
105
110
  post('files.share', options)
106
111
  end
107
112
 
108
113
  #
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.
114
+ # Enables a file for public/external sharing.
110
115
  #
111
116
  # @option options [file] :file
112
117
  # File to share.
@@ -118,7 +123,7 @@ module Slack
118
123
  end
119
124
 
120
125
  #
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.
126
+ # Uploads or creates a file.
122
127
  #
123
128
  # @option options [Object] :channels
124
129
  # 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
+ # The globally unique identifier (GUID) for the file, as set by the app registering the file with Slack. Either this field or file or both are required.
92
+ # @option options [file] :file
93
+ # Specify a file registered with Slack by providing its ID. Either this field or external_id or both are required.
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,29 +16,29 @@ 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.
28
+ # @option options [Object] :team_id
29
+ # encoded team id to create the channel in, required if org token is used.
26
30
  # @option options [Object] :validate
27
31
  # Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.
28
32
  # @see https://api.slack.com/methods/groups.create
29
33
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.create.json
30
34
  def groups_create(options = {})
31
35
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
36
+ 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
37
  post('groups.create', options)
33
38
  end
34
39
 
35
40
  #
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.
41
+ # Clones and archives a private channel.
41
42
  #
42
43
  # @option options [group] :channel
43
44
  # Private channel to clone and archive.
@@ -46,13 +47,12 @@ module Slack
46
47
  def groups_createChild(options = {})
47
48
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
48
49
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
50
+ 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
51
  post('groups.createChild', options)
50
52
  end
51
53
 
52
54
  #
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.
55
+ # Fetches history of messages and events from a private channel.
56
56
  #
57
57
  # @option options [group] :channel
58
58
  # Private channel to fetch history for.
@@ -69,11 +69,12 @@ module Slack
69
69
  def groups_history(options = {})
70
70
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
71
71
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
72
+ 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
73
  post('groups.history', options)
73
74
  end
74
75
 
75
76
  #
76
- # Don't use this method. Use conversations.info instead.
77
+ # Gets information about a private channel.
77
78
  #
78
79
  # @option options [group] :channel
79
80
  # Private channel to get info on.
@@ -84,11 +85,12 @@ module Slack
84
85
  def groups_info(options = {})
85
86
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
86
87
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
88
+ 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
89
  post('groups.info', options)
88
90
  end
89
91
 
90
92
  #
91
- # This method is used to invite a user to a private channel. The calling user must be a member of the private channel.
93
+ # Invites a user to a private channel.
92
94
  #
93
95
  # @option options [group] :channel
94
96
  # Private channel to invite user to.
@@ -101,11 +103,12 @@ module Slack
101
103
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
102
104
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
103
105
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
106
+ 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
107
  post('groups.invite', options)
105
108
  end
106
109
 
107
110
  #
108
- # This method allows a user to remove another member from a private channel.
111
+ # Removes a user from a private channel.
109
112
  #
110
113
  # @option options [group] :channel
111
114
  # Private channel to remove user from.
@@ -118,11 +121,12 @@ module Slack
118
121
  throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
119
122
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
120
123
  options = options.merge(user: users_id(options)['user']['id']) if options[:user]
124
+ 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
125
  post('groups.kick', options)
122
126
  end
123
127
 
124
128
  #
125
- # This method is used to leave a private channel.
129
+ # Leaves a private channel.
126
130
  #
127
131
  # @option options [group] :channel
128
132
  # Private channel to leave.
@@ -131,11 +135,12 @@ module Slack
131
135
  def groups_leave(options = {})
132
136
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
133
137
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
138
+ 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
139
  post('groups.leave', options)
135
140
  end
136
141
 
137
142
  #
138
- # Don't use this method. Use conversations.list instead.
143
+ # Lists private channels that the calling user has access to.
139
144
  #
140
145
  # @option options [Object] :cursor
141
146
  # 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.
@@ -145,9 +150,12 @@ module Slack
145
150
  # Exclude the members from each group.
146
151
  # @option options [Object] :limit
147
152
  # The maximum number of items to return. Fewer than the requested number of items may be returned, even if the end of the list hasn't been reached.
153
+ # @option options [Object] :team_id
154
+ # encoded team id to list channels in, required if org token is used.
148
155
  # @see https://api.slack.com/methods/groups.list
149
156
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.list.json
150
157
  def groups_list(options = {})
158
+ 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
159
  if block_given?
152
160
  Pagination::Cursor.new(self, :groups_list, options).each do |page|
153
161
  yield page
@@ -158,23 +166,24 @@ module Slack
158
166
  end
159
167
 
160
168
  #
161
- # This method moves the read cursor in a private channel.
169
+ # Sets the read cursor in a private channel.
162
170
  #
163
171
  # @option options [group] :channel
164
- # Private channel to set reading cursor in.
172
+ # Channel or conversation to set the read cursor for.
165
173
  # @option options [timestamp] :ts
166
- # Timestamp of the most recently seen message.
174
+ # Unique identifier of message you want marked as most recently seen in this conversation.
167
175
  # @see https://api.slack.com/methods/groups.mark
168
176
  # @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.mark.json
169
177
  def groups_mark(options = {})
170
178
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
171
179
  throw ArgumentError.new('Required arguments :ts missing') if options[:ts].nil?
172
180
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
181
+ 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: conversations.mark.')
173
182
  post('groups.mark', options)
174
183
  end
175
184
 
176
185
  #
177
- # This method opens a private channel.
186
+ # Opens a private channel.
178
187
  #
179
188
  # @option options [group] :channel
180
189
  # Private channel to open.
@@ -183,11 +192,12 @@ module Slack
183
192
  def groups_open(options = {})
184
193
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
185
194
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
195
+ 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
196
  post('groups.open', options)
187
197
  end
188
198
 
189
199
  #
190
- # This method renames a private channel.
200
+ # Renames a private channel.
191
201
  #
192
202
  # @option options [group] :channel
193
203
  # Private channel to rename.
@@ -201,11 +211,12 @@ module Slack
201
211
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
202
212
  throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
203
213
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
214
+ 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
215
  post('groups.rename', options)
205
216
  end
206
217
 
207
218
  #
208
- # This method returns an entire thread (a message plus all the messages in reply to it).
219
+ # Retrieve a thread of messages posted to a private channel
209
220
  #
210
221
  # @option options [group] :channel
211
222
  # Private channel to fetch thread from.
@@ -217,11 +228,12 @@ module Slack
217
228
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
218
229
  throw ArgumentError.new('Required arguments :thread_ts missing') if options[:thread_ts].nil?
219
230
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
231
+ 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
232
  post('groups.replies', options)
221
233
  end
222
234
 
223
235
  #
224
- # This method is used to change the purpose of a private channel. The calling user must be a member of the private channel.
236
+ # Sets the purpose for a private channel.
225
237
  #
226
238
  # @option options [group] :channel
227
239
  # Private channel to set the purpose of.
@@ -233,11 +245,12 @@ module Slack
233
245
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
234
246
  throw ArgumentError.new('Required arguments :purpose missing') if options[:purpose].nil?
235
247
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
248
+ 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
249
  post('groups.setPurpose', options)
237
250
  end
238
251
 
239
252
  #
240
- # This method is used to change the topic of a private channel. The calling user must be a member of the private channel.
253
+ # Sets the topic for a private channel.
241
254
  #
242
255
  # @option options [group] :channel
243
256
  # Private channel to set the topic of.
@@ -249,11 +262,12 @@ module Slack
249
262
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
250
263
  throw ArgumentError.new('Required arguments :topic missing') if options[:topic].nil?
251
264
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
265
+ 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
266
  post('groups.setTopic', options)
253
267
  end
254
268
 
255
269
  #
256
- # This method unarchives a private channel.
270
+ # Unarchives a private channel.
257
271
  #
258
272
  # @option options [group] :channel
259
273
  # Private channel to unarchive.
@@ -262,6 +276,7 @@ module Slack
262
276
  def groups_unarchive(options = {})
263
277
  throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
264
278
  options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
279
+ 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
280
  post('groups.unarchive', options)
266
281
  end
267
282
  end