slack-ruby-client 0.13.1 → 1.0.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.
- checksums.yaml +4 -4
- data/.github/FUNDING.yml +1 -0
- data/.gitignore +1 -0
- data/.rubocop.yml +29 -5
- data/.rubocop_todo.yml +124 -44
- data/.travis.yml +5 -8
- data/CHANGELOG.md +92 -2
- data/CONTRIBUTING.md +19 -8
- data/Dangerfile +2 -0
- data/Gemfile +10 -5
- data/LICENSE.md +1 -1
- data/README.md +186 -49
- data/RELEASING.md +1 -1
- data/Rakefile +2 -1
- data/UPGRADING.md +72 -2
- data/bin/commands/admin_analytics.rb +16 -0
- data/bin/commands/admin_apps.rb +51 -0
- data/bin/commands/admin_apps_approved.rb +17 -0
- data/bin/commands/admin_apps_requests.rb +17 -0
- data/bin/commands/admin_apps_restricted.rb +17 -0
- data/bin/commands/admin_auth_policy.rb +39 -0
- data/bin/commands/admin_barriers.rb +47 -0
- data/bin/commands/admin_conversations.rb +169 -0
- data/bin/commands/admin_conversations_ekm.rb +17 -0
- data/bin/commands/admin_conversations_restrictAccess.rb +37 -0
- data/bin/commands/admin_conversations_whitelist.rb +37 -0
- data/bin/commands/admin_emoji.rb +54 -0
- data/bin/commands/admin_inviteRequests.rb +36 -0
- data/bin/commands/admin_inviteRequests_approved.rb +16 -0
- data/bin/commands/admin_inviteRequests_denied.rb +16 -0
- data/bin/commands/admin_teams.rb +27 -0
- data/bin/commands/admin_teams_admins.rb +16 -0
- data/bin/commands/admin_teams_owners.rb +16 -0
- data/bin/commands/admin_teams_settings.rb +64 -0
- data/bin/commands/admin_usergroups.rb +48 -0
- data/bin/commands/admin_users.rb +98 -0
- data/bin/commands/admin_users_session.rb +78 -0
- data/bin/commands/api.rb +1 -1
- data/bin/commands/apps.rb +15 -0
- data/bin/commands/apps_connections.rb +13 -0
- data/bin/commands/apps_event_authorizations.rb +16 -0
- data/bin/commands/apps_manifest.rb +51 -0
- data/bin/commands/apps_permissions.rb +1 -0
- data/bin/commands/apps_permissions_resources.rb +1 -0
- data/bin/commands/apps_permissions_scopes.rb +1 -0
- data/bin/commands/apps_permissions_users.rb +1 -0
- data/bin/commands/auth.rb +1 -0
- data/bin/commands/auth_teams.rb +16 -0
- data/bin/commands/bots.rb +2 -0
- data/bin/commands/calls.rb +52 -0
- data/bin/commands/calls_participants.rb +25 -0
- data/bin/commands/channels.rb +1 -153
- data/bin/commands/chat.rb +56 -12
- data/bin/commands/chat_scheduledMessages.rb +19 -0
- data/bin/commands/conversations.rb +75 -5
- data/bin/commands/dialog.rb +1 -0
- data/bin/commands/dnd.rb +6 -3
- data/bin/commands/emoji.rb +1 -0
- data/bin/commands/files.rb +10 -18
- data/bin/commands/files_comments.rb +1 -21
- data/bin/commands/files_remote.rb +78 -0
- data/bin/commands/groups.rb +1 -161
- data/bin/commands/im.rb +1 -62
- data/bin/commands/migration.rb +2 -0
- data/bin/commands/mpim.rb +1 -60
- data/bin/commands/oauth.rb +2 -14
- data/bin/commands/oauth_v2.rb +29 -0
- data/bin/commands/openid_connect.rb +27 -0
- data/bin/commands/pins.rb +3 -6
- data/bin/commands/reactions.rb +3 -3
- data/bin/commands/reminders.rb +7 -0
- data/bin/commands/rtm.rb +3 -2
- data/bin/commands/search.rb +6 -1
- data/bin/commands/stars.rb +8 -6
- data/bin/commands/team.rb +5 -0
- data/bin/commands/team_billing.rb +13 -0
- data/bin/commands/team_preferences.rb +13 -0
- data/bin/commands/team_profile.rb +1 -0
- data/bin/commands/tooling_tokens.rb +14 -0
- data/bin/commands/usergroups.rb +7 -1
- data/bin/commands/usergroups_users.rb +3 -0
- data/bin/commands/users.rb +6 -4
- data/bin/commands/users_admin.rb +1 -0
- data/bin/commands/users_prefs.rb +1 -0
- data/bin/commands/users_profile.rb +6 -5
- data/bin/commands/views.rb +48 -0
- data/bin/commands/workflows.rb +38 -0
- data/bin/commands.rb +38 -8
- data/bin/slack +2 -3
- data/examples/hi_real_time_and_web/Gemfile +1 -0
- data/examples/hi_real_time_and_web/hi.rb +7 -3
- data/examples/hi_real_time_async_async/Gemfile +1 -0
- data/examples/hi_real_time_async_async/hi.rb +6 -2
- data/examples/hi_web/Gemfile +1 -0
- data/examples/hi_web/hi.rb +1 -0
- data/examples/new_ticket/Gemfile +1 -0
- data/examples/new_ticket/new_ticket.rb +1 -0
- data/lib/slack/config.rb +2 -2
- data/lib/slack/events/config.rb +32 -0
- data/lib/slack/events/request.rb +72 -0
- data/lib/slack/logger.rb +6 -5
- data/lib/slack/messages/formatting.rb +1 -0
- data/lib/slack/messages/message.rb +1 -4
- data/lib/slack/real_time/api/message.rb +3 -1
- data/lib/slack/real_time/api/message_id.rb +1 -0
- data/lib/slack/real_time/api/ping.rb +5 -2
- data/lib/slack/real_time/api/typing.rb +3 -1
- data/lib/slack/real_time/client.rb +101 -32
- data/lib/slack/real_time/concurrency/async.rb +77 -6
- data/lib/slack/real_time/concurrency.rb +1 -2
- data/lib/slack/real_time/config.rb +6 -10
- data/lib/slack/real_time/models/base.rb +1 -4
- data/lib/slack/real_time/models/bot.rb +1 -0
- data/lib/slack/real_time/models/channel.rb +1 -0
- data/lib/slack/real_time/models/group.rb +1 -0
- data/lib/slack/real_time/models/im.rb +1 -0
- data/lib/slack/real_time/models/team.rb +1 -0
- data/lib/slack/real_time/models/user.rb +1 -0
- data/lib/slack/real_time/models.rb +1 -0
- data/lib/slack/real_time/socket.rb +45 -17
- data/lib/slack/real_time/stores/base.rb +5 -7
- data/lib/slack/real_time/stores/starter.rb +17 -3
- data/lib/slack/real_time/stores/store.rb +33 -25
- data/lib/slack/real_time/stores.rb +1 -0
- data/lib/slack/version.rb +2 -1
- data/lib/slack/web/api/endpoints/admin_analytics.rb +28 -0
- data/lib/slack/web/api/endpoints/admin_apps.rb +78 -0
- data/lib/slack/web/api/endpoints/admin_apps_approved.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_apps_requests.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_auth_policy.rb +72 -0
- data/lib/slack/web/api/endpoints/admin_barriers.rb +82 -0
- data/lib/slack/web/api/endpoints/admin_conversations.rb +260 -0
- data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +64 -0
- data/lib/slack/web/api/endpoints/admin_emoji.rb +88 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_teams.rb +50 -0
- data/lib/slack/web/api/endpoints/admin_teams_admins.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_teams_owners.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_teams_settings.rb +99 -0
- data/lib/slack/web/api/endpoints/admin_usergroups.rb +77 -0
- data/lib/slack/web/api/endpoints/admin_users.rb +163 -0
- data/lib/slack/web/api/endpoints/admin_users_session.rb +122 -0
- data/lib/slack/web/api/endpoints/api.rb +2 -3
- data/lib/slack/web/api/endpoints/apps.rb +27 -0
- data/lib/slack/web/api/endpoints/apps_connections.rb +21 -0
- data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +34 -0
- data/lib/slack/web/api/endpoints/apps_manifest.rb +75 -0
- data/lib/slack/web/api/endpoints/apps_permissions.rb +1 -0
- data/lib/slack/web/api/endpoints/apps_permissions_resources.rb +1 -0
- data/lib/slack/web/api/endpoints/apps_permissions_scopes.rb +1 -0
- data/lib/slack/web/api/endpoints/apps_permissions_users.rb +1 -0
- data/lib/slack/web/api/endpoints/auth.rb +2 -1
- data/lib/slack/web/api/endpoints/auth_teams.rb +33 -0
- data/lib/slack/web/api/endpoints/bots.rb +4 -1
- data/lib/slack/web/api/endpoints/calls.rb +83 -0
- data/lib/slack/web/api/endpoints/calls_participants.rb +42 -0
- data/lib/slack/web/api/endpoints/channels.rb +2 -243
- data/lib/slack/web/api/endpoints/chat.rb +144 -47
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +40 -0
- data/lib/slack/web/api/endpoints/conversations.rb +152 -41
- data/lib/slack/web/api/endpoints/dialog.rb +3 -2
- data/lib/slack/web/api/endpoints/dnd.rb +9 -4
- data/lib/slack/web/api/endpoints/emoji.rb +1 -0
- data/lib/slack/web/api/endpoints/files.rb +24 -29
- data/lib/slack/web/api/endpoints/files_comments.rb +2 -34
- data/lib/slack/web/api/endpoints/files_remote.rb +127 -0
- data/lib/slack/web/api/endpoints/groups.rb +1 -253
- data/lib/slack/web/api/endpoints/im.rb +1 -101
- data/lib/slack/web/api/endpoints/migration.rb +5 -2
- data/lib/slack/web/api/endpoints/mpim.rb +1 -96
- data/lib/slack/web/api/endpoints/oauth.rb +7 -31
- data/lib/slack/web/api/endpoints/oauth_v2.rb +48 -0
- data/lib/slack/web/api/endpoints/openid_connect.rb +42 -0
- data/lib/slack/web/api/endpoints/pins.rb +8 -15
- data/lib/slack/web/api/endpoints/reactions.rb +20 -19
- data/lib/slack/web/api/endpoints/reminders.rb +18 -5
- data/lib/slack/web/api/endpoints/rtm.rb +11 -10
- data/lib/slack/web/api/endpoints/search.rb +28 -13
- data/lib/slack/web/api/endpoints/stars.rb +14 -11
- data/lib/slack/web/api/endpoints/team.rb +13 -4
- data/lib/slack/web/api/endpoints/team_billing.rb +21 -0
- data/lib/slack/web/api/endpoints/team_preferences.rb +21 -0
- data/lib/slack/web/api/endpoints/team_profile.rb +2 -1
- data/lib/slack/web/api/endpoints/tooling_tokens.rb +24 -0
- data/lib/slack/web/api/endpoints/usergroups.rb +27 -16
- data/lib/slack/web/api/endpoints/usergroups_users.rb +10 -5
- data/lib/slack/web/api/endpoints/users.rb +21 -20
- data/lib/slack/web/api/endpoints/users_admin.rb +1 -0
- data/lib/slack/web/api/endpoints/users_prefs.rb +1 -0
- data/lib/slack/web/api/endpoints/users_profile.rb +8 -7
- data/lib/slack/web/api/endpoints/views.rb +97 -0
- data/lib/slack/web/api/endpoints/workflows.rb +61 -0
- data/lib/slack/web/api/endpoints.rb +76 -18
- data/lib/slack/web/api/error.rb +1 -0
- data/lib/slack/web/api/errors/server_error.rb +37 -0
- data/lib/slack/web/api/errors/slack_error.rb +14 -1
- data/lib/slack/web/api/errors/too_many_requests_error.rb +2 -4
- data/lib/slack/web/api/errors.rb +1040 -0
- data/lib/slack/web/api/mixins/{channels.id.rb → conversations.id.rb} +4 -5
- data/lib/slack/web/api/mixins/ids.id.rb +3 -2
- data/lib/slack/web/api/mixins/users.id.rb +2 -3
- data/lib/slack/web/api/mixins/users.search.rb +1 -0
- data/lib/slack/web/api/mixins.rb +2 -2
- data/lib/slack/web/api/patches/chat.1.patch +70 -0
- data/lib/slack/web/api/patches/views.1.view-json.patch +40 -0
- data/lib/slack/web/api/patches/views.1.views-published.patch +16 -0
- data/lib/slack/web/api/templates/command.erb +1 -0
- data/lib/slack/web/api/templates/commands.erb +1 -0
- data/lib/slack/web/api/templates/endpoints.erb +2 -2
- data/lib/slack/web/api/templates/errors.erb +20 -0
- data/lib/slack/web/api/templates/method.erb +5 -1
- data/lib/slack/web/api/templates/method_spec.erb +2 -1
- data/lib/slack/web/client.rb +2 -1
- data/lib/slack/web/config.rb +3 -0
- data/lib/slack/web/faraday/connection.rb +24 -20
- data/lib/slack/web/faraday/request.rb +3 -1
- data/lib/slack/web/faraday/response/raise_error.rb +21 -6
- data/lib/slack/web/faraday/response/wrap_error.rb +24 -0
- data/lib/slack/web/pagination/cursor.rb +7 -7
- data/lib/slack-ruby-client.rb +10 -4
- data/lib/slack.rb +1 -0
- data/lib/slack_ruby_client.rb +1 -0
- data/lib/tasks/git.rake +1 -0
- data/lib/tasks/real_time.rake +15 -5
- data/lib/tasks/update.rake +1 -0
- data/lib/tasks/web.rake +39 -10
- data/screenshots/create-app.png +0 -0
- data/slack-ruby-client.gemspec +9 -6
- data/spec/fixtures/slack/web/429_error.yml +50 -54
- data/spec/fixtures/slack/web/auth_test_error.yml +51 -18
- data/spec/fixtures/slack/web/auth_test_success.yml +50 -26
- data/spec/fixtures/slack/web/conversations_info.yml +167 -0
- data/spec/fixtures/slack/web/conversations_setTopic.yml +84 -0
- data/spec/fixtures/slack/web/conversations_setTopic_one_page.yml +172 -0
- data/spec/fixtures/slack/web/conversations_setTopic_paginated.yml +253 -0
- data/spec/fixtures/slack/web/paginated_users_list.yml +501 -69
- data/spec/fixtures/slack/web/rtm_connect.yml +267 -30
- data/spec/fixtures/slack/web/rtm_start.yml +771 -60
- data/spec/fixtures/slack/web/users_info.yml +153 -69
- data/spec/fixtures/slack/web/users_list.yml +102 -41
- data/spec/fixtures/slack/web/views_open_error.yml +83 -0
- data/spec/integration/integration_spec.rb +115 -47
- data/spec/slack/config_spec.rb +2 -0
- data/spec/slack/events/config_spec.rb +33 -0
- data/spec/slack/events/request_spec.rb +184 -0
- data/spec/slack/messages/formatting_spec.rb +25 -13
- data/spec/slack/real_time/api/message_spec.rb +6 -1
- data/spec/slack/real_time/api/ping_spec.rb +2 -0
- data/spec/slack/real_time/api/typing_spec.rb +5 -1
- data/spec/slack/real_time/client_spec.rb +244 -50
- data/spec/slack/real_time/concurrency/it_behaves_like_a_realtime_socket.rb +2 -0
- data/spec/slack/real_time/concurrency/with_concurrency_spec.rb +10 -0
- data/spec/slack/real_time/concurrency/without_concurrency_spec.rb +10 -0
- data/spec/slack/real_time/event_handlers/bot_spec.rb +3 -2
- data/spec/slack/real_time/event_handlers/channel_spec.rb +10 -7
- data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +2 -1
- data/spec/slack/real_time/event_handlers/group_spec.rb +5 -4
- data/spec/slack/real_time/event_handlers/im_spec.rb +9 -8
- data/spec/slack/real_time/event_handlers/team_spec.rb +3 -1
- data/spec/slack/real_time/event_handlers/user_spec.rb +3 -2
- data/spec/slack/real_time/rtm_connect_spec.rb +2 -1
- data/spec/slack/real_time/rtm_start_spec.rb +2 -1
- data/spec/slack/real_time/store_spec.rb +2 -1
- data/spec/slack/slack_spec.rb +40 -6
- data/spec/slack/version_spec.rb +2 -1
- data/spec/slack/web/api/endpoints/admin_analytics_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_apps_approved_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_apps_requests_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_apps_restricted_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_apps_spec.rb +18 -0
- data/spec/slack/web/api/endpoints/admin_auth_policy_spec.rb +35 -0
- data/spec/slack/web/api/endpoints/admin_barriers_spec.rb +38 -0
- data/spec/slack/web/api/endpoints/admin_conversations_ekm_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_conversations_restrictAccess_spec.rb +32 -0
- data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +98 -0
- data/spec/slack/web/api/endpoints/admin_emoji_spec.rb +37 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_approved_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_denied_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_spec.rb +18 -0
- data/spec/slack/web/api/endpoints/admin_teams_admins_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_teams_owners_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_teams_settings_spec.rb +53 -0
- data/spec/slack/web/api/endpoints/admin_teams_spec.rb +16 -0
- data/spec/slack/web/api/endpoints/admin_usergroups_spec.rb +37 -0
- data/spec/slack/web/api/endpoints/admin_users_session_spec.rb +41 -0
- data/spec/slack/web/api/endpoints/admin_users_spec.rb +67 -0
- data/spec/slack/web/api/endpoints/api_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/apps_connections_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/apps_event_authorizations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/apps_manifest_spec.rb +36 -0
- data/spec/slack/web/api/endpoints/apps_spec.rb +16 -0
- data/spec/slack/web/api/endpoints/{apps_permissions_scopes_spec.rb → auth_teams_spec.rb} +2 -1
- data/spec/slack/web/api/endpoints/bots_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/calls_participants_spec.rb +24 -0
- data/spec/slack/web/api/endpoints/calls_spec.rb +31 -0
- data/spec/slack/web/api/endpoints/chat_scheduledMessages_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/custom_specs/auth_spec.rb +9 -7
- data/spec/slack/web/api/endpoints/custom_specs/chat_spec.rb +112 -36
- data/spec/slack/web/api/endpoints/custom_specs/conversations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +12 -4
- data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +8 -3
- data/spec/slack/web/api/endpoints/custom_specs/views_spec.rb +95 -0
- data/spec/slack/web/api/endpoints/dnd_spec.rb +4 -3
- data/spec/slack/web/api/endpoints/emoji_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/files_comments_spec.rb +3 -21
- data/spec/slack/web/api/endpoints/files_remote_spec.rb +24 -0
- data/spec/slack/web/api/endpoints/files_spec.rb +5 -4
- data/spec/slack/web/api/endpoints/migration_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/oauth_spec.rb +1 -22
- data/spec/slack/web/api/endpoints/oauth_v2_spec.rb +16 -0
- data/spec/slack/web/api/endpoints/openid_connect_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/pins_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/reactions_spec.rb +8 -1
- data/spec/slack/web/api/endpoints/reminders_spec.rb +3 -2
- data/spec/slack/web/api/endpoints/rtm_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/search_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/stars_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/{apps_permissions_resources_spec.rb → team_billing_spec.rb} +2 -1
- data/spec/slack/web/api/endpoints/team_preferences_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/team_profile_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/team_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/tooling_tokens_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/usergroups_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/usergroups_users_spec.rb +3 -2
- data/spec/slack/web/api/endpoints/users_admin_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/users_prefs_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/users_profile_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/workflows_spec.rb +26 -0
- data/spec/slack/web/api/error_spec.rb +7 -7
- data/spec/slack/web/api/errors/slack_error_spec.rb +26 -7
- data/spec/slack/web/api/mixins/conversations_list_spec.rb +21 -0
- data/spec/slack/web/api/mixins/conversations_spec.rb +43 -0
- data/spec/slack/web/api/mixins/users_spec.rb +17 -8
- data/spec/slack/web/api/pagination/cursor_spec.rb +41 -13
- data/spec/slack/web/client_spec.rb +168 -19
- data/spec/slack/web/faraday/request_spec.rb +80 -0
- data/spec/slack/web/faraday/response/raise_error_spec.rb +48 -12
- data/spec/spec_helper.rb +9 -2
- data/spec/support/queue_with_timeout.rb +5 -4
- data/spec/support/real_time/concurrency/mock.rb +1 -0
- data/spec/support/real_time/connected_client.rb +6 -6
- data/spec/support/real_time/event.rb +1 -0
- data/spec/support/token.rb +1 -0
- data/spec/support/vcr.rb +37 -1
- metadata +205 -147
- data/examples/hi_real_time/Gemfile +0 -5
- data/examples/hi_real_time/hi.gif +0 -0
- data/examples/hi_real_time/hi.rb +0 -37
- data/examples/hi_real_time_async_celluloid/Gemfile +0 -6
- data/examples/hi_real_time_async_celluloid/Procfile +0 -2
- data/examples/hi_real_time_async_celluloid/hi.rb +0 -35
- data/examples/hi_real_time_async_eventmachine/Gemfile +0 -6
- data/examples/hi_real_time_async_eventmachine/Procfile +0 -2
- data/examples/hi_real_time_async_eventmachine/hi.rb +0 -35
- data/lib/slack/real_time/concurrency/celluloid.rb +0 -118
- data/lib/slack/real_time/concurrency/eventmachine.rb +0 -66
- data/lib/slack/web/api/mixins/channels.id.json +0 -20
- data/lib/slack/web/api/mixins/groups.id.json +0 -20
- data/lib/slack/web/api/mixins/groups.id.rb +0 -26
- data/lib/slack/web/api/patches/chat.1.text-attachments-required.patch +0 -13
- data/lib/slack/web/api/patches/chat.2.attachments-json.patch +0 -17
- data/lib/slack/web/api/patches/chat.3.update-attachments-support.patch +0 -21
- data/lib/slack/web/api/patches/chat.4.postEphemeral-attachments-support.patch +0 -17
- data/lib/slack/web/api/patches/chat.5.postEphemeral-text-or-attachments.patch +0 -13
- data/screenshots/register-bot.png +0 -0
- data/spec/fixtures/slack/web/503_error.yml +0 -14
- data/spec/fixtures/slack/web/channels_info.yml +0 -46
- data/spec/fixtures/slack/web/groups_info.yml +0 -43
- data/spec/slack/real_time/concurrency/celluloid_spec.rb +0 -106
- data/spec/slack/real_time/concurrency/eventmachine_spec.rb +0 -47
- data/spec/slack/web/api/endpoints/apps_permissions_spec.rb +0 -15
- data/spec/slack/web/api/endpoints/apps_permissions_users_spec.rb +0 -18
- data/spec/slack/web/api/endpoints/conversations_spec.rb +0 -100
- data/spec/slack/web/api/endpoints/custom_specs/channels_spec.rb +0 -11
- data/spec/slack/web/api/endpoints/custom_specs/groups_spec.rb +0 -11
- data/spec/slack/web/api/endpoints/im_spec.rb +0 -38
- data/spec/slack/web/api/endpoints/mpim_spec.rb +0 -38
- data/spec/slack/web/api/errors/service_unavailable_spec.rb +0 -14
- data/spec/slack/web/api/mixins/channels_spec.rb +0 -33
- data/spec/slack/web/api/mixins/groups_spec.rb +0 -33
|
@@ -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 [string] :external_id
|
|
13
|
+
# Creator defined GUID for the file.
|
|
14
|
+
# @option options [string] :external_url
|
|
15
|
+
# URL of the remote file.
|
|
16
|
+
# @option options [string] :title
|
|
17
|
+
# Title of the file being shared.
|
|
18
|
+
# @option options [string] :filetype
|
|
19
|
+
# type of file.
|
|
20
|
+
# @option options [string] :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 [string] :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 [string] :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 [string] :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 [integer] :limit
|
|
54
|
+
# The maximum number of items to return.
|
|
55
|
+
# @option options [string] :ts_from
|
|
56
|
+
# Filter files created after this timestamp (inclusive).
|
|
57
|
+
# @option options [string] :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 [string] :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 [string] :channels
|
|
89
|
+
# Comma-separated list of channel IDs where the file will be shared.
|
|
90
|
+
# @option options [string] :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 [string] :external_id
|
|
105
|
+
# Creator defined GUID for the file.
|
|
106
|
+
# @option options [string] :external_url
|
|
107
|
+
# URL of the remote file.
|
|
108
|
+
# @option options [file] :file
|
|
109
|
+
# Specify a file by providing its ID.
|
|
110
|
+
# @option options [string] :filetype
|
|
111
|
+
# type of file.
|
|
112
|
+
# @option options [string] :indexable_file_contents
|
|
113
|
+
# File containing contents that can be used to improve searchability for the remote file.
|
|
114
|
+
# @option options [string] :preview_image
|
|
115
|
+
# Preview of the document via multipart/form-data.
|
|
116
|
+
# @option options [string] :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
|
|
@@ -5,259 +6,6 @@ module Slack
|
|
|
5
6
|
module Api
|
|
6
7
|
module Endpoints
|
|
7
8
|
module Groups
|
|
8
|
-
#
|
|
9
|
-
# Archives a private channel.
|
|
10
|
-
#
|
|
11
|
-
# @option options [group] :channel
|
|
12
|
-
# Private channel to archive.
|
|
13
|
-
# @see https://api.slack.com/methods/groups.archive
|
|
14
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.archive.json
|
|
15
|
-
def groups_archive(options = {})
|
|
16
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
17
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
18
|
-
post('groups.archive', options)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
#
|
|
22
|
-
# Creates a private channel.
|
|
23
|
-
#
|
|
24
|
-
# @option options [Object] :name
|
|
25
|
-
# Name of private channel to create.
|
|
26
|
-
# @option options [Object] :validate
|
|
27
|
-
# Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.
|
|
28
|
-
# @see https://api.slack.com/methods/groups.create
|
|
29
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.create.json
|
|
30
|
-
def groups_create(options = {})
|
|
31
|
-
throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
|
|
32
|
-
post('groups.create', options)
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
#
|
|
36
|
-
# Clones and archives a private channel.
|
|
37
|
-
#
|
|
38
|
-
# @option options [group] :channel
|
|
39
|
-
# Private channel to clone and archive.
|
|
40
|
-
# @see https://api.slack.com/methods/groups.createChild
|
|
41
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.createChild.json
|
|
42
|
-
def groups_createChild(options = {})
|
|
43
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
44
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
45
|
-
post('groups.createChild', options)
|
|
46
|
-
end
|
|
47
|
-
|
|
48
|
-
#
|
|
49
|
-
# Fetches history of messages and events from a private channel.
|
|
50
|
-
#
|
|
51
|
-
# @option options [group] :channel
|
|
52
|
-
# Private channel to fetch history for.
|
|
53
|
-
# @option options [Object] :inclusive
|
|
54
|
-
# Include messages with latest or oldest timestamp in results.
|
|
55
|
-
# @option options [timestamp] :latest
|
|
56
|
-
# End of time range of messages to include in results.
|
|
57
|
-
# @option options [timestamp] :oldest
|
|
58
|
-
# Start of time range of messages to include in results.
|
|
59
|
-
# @option options [Object] :unreads
|
|
60
|
-
# Include unread_count_display in the output?.
|
|
61
|
-
# @see https://api.slack.com/methods/groups.history
|
|
62
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.history.json
|
|
63
|
-
def groups_history(options = {})
|
|
64
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
65
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
66
|
-
post('groups.history', options)
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
#
|
|
70
|
-
# Gets information about a private channel.
|
|
71
|
-
#
|
|
72
|
-
# @option options [group] :channel
|
|
73
|
-
# Private channel to get info on.
|
|
74
|
-
# @option options [Object] :include_locale
|
|
75
|
-
# Set this to true to receive the locale for this group. Defaults to false.
|
|
76
|
-
# @see https://api.slack.com/methods/groups.info
|
|
77
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.info.json
|
|
78
|
-
def groups_info(options = {})
|
|
79
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
80
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
81
|
-
post('groups.info', options)
|
|
82
|
-
end
|
|
83
|
-
|
|
84
|
-
#
|
|
85
|
-
# Invites a user to a private channel.
|
|
86
|
-
#
|
|
87
|
-
# @option options [group] :channel
|
|
88
|
-
# Private channel to invite user to.
|
|
89
|
-
# @option options [user] :user
|
|
90
|
-
# User to invite.
|
|
91
|
-
# @see https://api.slack.com/methods/groups.invite
|
|
92
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.invite.json
|
|
93
|
-
def groups_invite(options = {})
|
|
94
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
95
|
-
throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
|
|
96
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
97
|
-
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
|
98
|
-
post('groups.invite', options)
|
|
99
|
-
end
|
|
100
|
-
|
|
101
|
-
#
|
|
102
|
-
# Removes a user from a private channel.
|
|
103
|
-
#
|
|
104
|
-
# @option options [group] :channel
|
|
105
|
-
# Private channel to remove user from.
|
|
106
|
-
# @option options [user] :user
|
|
107
|
-
# User to remove from private channel.
|
|
108
|
-
# @see https://api.slack.com/methods/groups.kick
|
|
109
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.kick.json
|
|
110
|
-
def groups_kick(options = {})
|
|
111
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
112
|
-
throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
|
|
113
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
114
|
-
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
|
115
|
-
post('groups.kick', options)
|
|
116
|
-
end
|
|
117
|
-
|
|
118
|
-
#
|
|
119
|
-
# Leaves a private channel.
|
|
120
|
-
#
|
|
121
|
-
# @option options [group] :channel
|
|
122
|
-
# Private channel to leave.
|
|
123
|
-
# @see https://api.slack.com/methods/groups.leave
|
|
124
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.leave.json
|
|
125
|
-
def groups_leave(options = {})
|
|
126
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
127
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
128
|
-
post('groups.leave', options)
|
|
129
|
-
end
|
|
130
|
-
|
|
131
|
-
#
|
|
132
|
-
# Lists private channels that the calling user has access to.
|
|
133
|
-
#
|
|
134
|
-
# @option options [Object] :cursor
|
|
135
|
-
# 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.
|
|
136
|
-
# @option options [Object] :exclude_archived
|
|
137
|
-
# Don't return archived private channels.
|
|
138
|
-
# @option options [Object] :exclude_members
|
|
139
|
-
# Exclude the members from each group.
|
|
140
|
-
# @option options [Object] :limit
|
|
141
|
-
# 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.
|
|
142
|
-
# @see https://api.slack.com/methods/groups.list
|
|
143
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.list.json
|
|
144
|
-
def groups_list(options = {})
|
|
145
|
-
if block_given?
|
|
146
|
-
Pagination::Cursor.new(self, :groups_list, options).each do |page|
|
|
147
|
-
yield page
|
|
148
|
-
end
|
|
149
|
-
else
|
|
150
|
-
post('groups.list', options)
|
|
151
|
-
end
|
|
152
|
-
end
|
|
153
|
-
|
|
154
|
-
#
|
|
155
|
-
# Sets the read cursor in a private channel.
|
|
156
|
-
#
|
|
157
|
-
# @option options [group] :channel
|
|
158
|
-
# Private channel to set reading cursor in.
|
|
159
|
-
# @option options [timestamp] :ts
|
|
160
|
-
# Timestamp of the most recently seen message.
|
|
161
|
-
# @see https://api.slack.com/methods/groups.mark
|
|
162
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.mark.json
|
|
163
|
-
def groups_mark(options = {})
|
|
164
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
165
|
-
throw ArgumentError.new('Required arguments :ts missing') if options[:ts].nil?
|
|
166
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
167
|
-
post('groups.mark', options)
|
|
168
|
-
end
|
|
169
|
-
|
|
170
|
-
#
|
|
171
|
-
# Opens a private channel.
|
|
172
|
-
#
|
|
173
|
-
# @option options [group] :channel
|
|
174
|
-
# Private channel to open.
|
|
175
|
-
# @see https://api.slack.com/methods/groups.open
|
|
176
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.open.json
|
|
177
|
-
def groups_open(options = {})
|
|
178
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
179
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
180
|
-
post('groups.open', options)
|
|
181
|
-
end
|
|
182
|
-
|
|
183
|
-
#
|
|
184
|
-
# Renames a private channel.
|
|
185
|
-
#
|
|
186
|
-
# @option options [group] :channel
|
|
187
|
-
# Private channel to rename.
|
|
188
|
-
# @option options [Object] :name
|
|
189
|
-
# New name for private channel.
|
|
190
|
-
# @option options [Object] :validate
|
|
191
|
-
# Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.
|
|
192
|
-
# @see https://api.slack.com/methods/groups.rename
|
|
193
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.rename.json
|
|
194
|
-
def groups_rename(options = {})
|
|
195
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
196
|
-
throw ArgumentError.new('Required arguments :name missing') if options[:name].nil?
|
|
197
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
198
|
-
post('groups.rename', options)
|
|
199
|
-
end
|
|
200
|
-
|
|
201
|
-
#
|
|
202
|
-
# Retrieve a thread of messages posted to a private channel
|
|
203
|
-
#
|
|
204
|
-
# @option options [group] :channel
|
|
205
|
-
# Private channel to fetch thread from.
|
|
206
|
-
# @option options [Object] :thread_ts
|
|
207
|
-
# Unique identifier of a thread's parent message.
|
|
208
|
-
# @see https://api.slack.com/methods/groups.replies
|
|
209
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.replies.json
|
|
210
|
-
def groups_replies(options = {})
|
|
211
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
212
|
-
throw ArgumentError.new('Required arguments :thread_ts missing') if options[:thread_ts].nil?
|
|
213
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
214
|
-
post('groups.replies', options)
|
|
215
|
-
end
|
|
216
|
-
|
|
217
|
-
#
|
|
218
|
-
# Sets the purpose for a private channel.
|
|
219
|
-
#
|
|
220
|
-
# @option options [group] :channel
|
|
221
|
-
# Private channel to set the purpose of.
|
|
222
|
-
# @option options [Object] :purpose
|
|
223
|
-
# The new purpose.
|
|
224
|
-
# @see https://api.slack.com/methods/groups.setPurpose
|
|
225
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.setPurpose.json
|
|
226
|
-
def groups_setPurpose(options = {})
|
|
227
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
228
|
-
throw ArgumentError.new('Required arguments :purpose missing') if options[:purpose].nil?
|
|
229
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
230
|
-
post('groups.setPurpose', options)
|
|
231
|
-
end
|
|
232
|
-
|
|
233
|
-
#
|
|
234
|
-
# Sets the topic for a private channel.
|
|
235
|
-
#
|
|
236
|
-
# @option options [group] :channel
|
|
237
|
-
# Private channel to set the topic of.
|
|
238
|
-
# @option options [Object] :topic
|
|
239
|
-
# The new topic.
|
|
240
|
-
# @see https://api.slack.com/methods/groups.setTopic
|
|
241
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.setTopic.json
|
|
242
|
-
def groups_setTopic(options = {})
|
|
243
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
244
|
-
throw ArgumentError.new('Required arguments :topic missing') if options[:topic].nil?
|
|
245
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
246
|
-
post('groups.setTopic', options)
|
|
247
|
-
end
|
|
248
|
-
|
|
249
|
-
#
|
|
250
|
-
# Unarchives a private channel.
|
|
251
|
-
#
|
|
252
|
-
# @option options [group] :channel
|
|
253
|
-
# Private channel to unarchive.
|
|
254
|
-
# @see https://api.slack.com/methods/groups.unarchive
|
|
255
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/groups/groups.unarchive.json
|
|
256
|
-
def groups_unarchive(options = {})
|
|
257
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
258
|
-
options = options.merge(channel: groups_id(options)['group']['id']) if options[:channel]
|
|
259
|
-
post('groups.unarchive', options)
|
|
260
|
-
end
|
|
261
9
|
end
|
|
262
10
|
end
|
|
263
11
|
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
|
|
@@ -5,107 +6,6 @@ module Slack
|
|
|
5
6
|
module Api
|
|
6
7
|
module Endpoints
|
|
7
8
|
module Im
|
|
8
|
-
#
|
|
9
|
-
# Close a direct message channel.
|
|
10
|
-
#
|
|
11
|
-
# @option options [im] :channel
|
|
12
|
-
# Direct message channel to close.
|
|
13
|
-
# @see https://api.slack.com/methods/im.close
|
|
14
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/im/im.close.json
|
|
15
|
-
def im_close(options = {})
|
|
16
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
17
|
-
options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
|
|
18
|
-
post('im.close', options)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
#
|
|
22
|
-
# Fetches history of messages and events from direct message channel.
|
|
23
|
-
#
|
|
24
|
-
# @option options [im] :channel
|
|
25
|
-
# Direct message channel to fetch history for.
|
|
26
|
-
# @option options [Object] :inclusive
|
|
27
|
-
# Include messages with latest or oldest timestamp in results.
|
|
28
|
-
# @option options [timestamp] :latest
|
|
29
|
-
# End of time range of messages to include in results.
|
|
30
|
-
# @option options [timestamp] :oldest
|
|
31
|
-
# Start of time range of messages to include in results.
|
|
32
|
-
# @option options [Object] :unreads
|
|
33
|
-
# Include unread_count_display in the output?.
|
|
34
|
-
# @see https://api.slack.com/methods/im.history
|
|
35
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/im/im.history.json
|
|
36
|
-
def im_history(options = {})
|
|
37
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
38
|
-
options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
|
|
39
|
-
post('im.history', options)
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
#
|
|
43
|
-
# Lists direct message channels for the calling user.
|
|
44
|
-
#
|
|
45
|
-
# @option options [Object] :cursor
|
|
46
|
-
# 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.
|
|
47
|
-
# @option options [Object] :limit
|
|
48
|
-
# The maximum number of items to return. Fewer than the requested number of items may be returned, even if the end of the users list hasn't been reached.
|
|
49
|
-
# @see https://api.slack.com/methods/im.list
|
|
50
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/im/im.list.json
|
|
51
|
-
def im_list(options = {})
|
|
52
|
-
if block_given?
|
|
53
|
-
Pagination::Cursor.new(self, :im_list, options).each do |page|
|
|
54
|
-
yield page
|
|
55
|
-
end
|
|
56
|
-
else
|
|
57
|
-
post('im.list', options)
|
|
58
|
-
end
|
|
59
|
-
end
|
|
60
|
-
|
|
61
|
-
#
|
|
62
|
-
# Sets the read cursor in a direct message channel.
|
|
63
|
-
#
|
|
64
|
-
# @option options [im] :channel
|
|
65
|
-
# Direct message channel to set reading cursor in.
|
|
66
|
-
# @option options [timestamp] :ts
|
|
67
|
-
# Timestamp of the most recently seen message.
|
|
68
|
-
# @see https://api.slack.com/methods/im.mark
|
|
69
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/im/im.mark.json
|
|
70
|
-
def im_mark(options = {})
|
|
71
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
72
|
-
throw ArgumentError.new('Required arguments :ts missing') if options[:ts].nil?
|
|
73
|
-
options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
|
|
74
|
-
post('im.mark', options)
|
|
75
|
-
end
|
|
76
|
-
|
|
77
|
-
#
|
|
78
|
-
# Opens a direct message channel.
|
|
79
|
-
#
|
|
80
|
-
# @option options [user] :user
|
|
81
|
-
# User to open a direct message channel with.
|
|
82
|
-
# @option options [Object] :include_locale
|
|
83
|
-
# Set this to true to receive the locale for this im. Defaults to false.
|
|
84
|
-
# @option options [Object] :return_im
|
|
85
|
-
# Boolean, indicates you want the full IM channel definition in the response.
|
|
86
|
-
# @see https://api.slack.com/methods/im.open
|
|
87
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/im/im.open.json
|
|
88
|
-
def im_open(options = {})
|
|
89
|
-
throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
|
|
90
|
-
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
|
91
|
-
post('im.open', options)
|
|
92
|
-
end
|
|
93
|
-
|
|
94
|
-
#
|
|
95
|
-
# Retrieve a thread of messages posted to a direct message conversation
|
|
96
|
-
#
|
|
97
|
-
# @option options [im] :channel
|
|
98
|
-
# Direct message channel to fetch thread from.
|
|
99
|
-
# @option options [Object] :thread_ts
|
|
100
|
-
# Unique identifier of a thread's parent message.
|
|
101
|
-
# @see https://api.slack.com/methods/im.replies
|
|
102
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/im/im.replies.json
|
|
103
|
-
def im_replies(options = {})
|
|
104
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
105
|
-
throw ArgumentError.new('Required arguments :thread_ts missing') if options[:thread_ts].nil?
|
|
106
|
-
options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
|
|
107
|
-
post('im.replies', options)
|
|
108
|
-
end
|
|
109
9
|
end
|
|
110
10
|
end
|
|
111
11
|
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
|
|
@@ -8,9 +9,11 @@ module Slack
|
|
|
8
9
|
#
|
|
9
10
|
# For Enterprise Grid workspaces, map local user IDs to global user IDs
|
|
10
11
|
#
|
|
11
|
-
# @option options [
|
|
12
|
+
# @option options [array] :users
|
|
12
13
|
# A comma-separated list of user ids, up to 400 per request.
|
|
13
|
-
# @option options [
|
|
14
|
+
# @option options [string] :team_id
|
|
15
|
+
# Specify team_id starts with T in case of Org Token.
|
|
16
|
+
# @option options [boolean] :to_old
|
|
14
17
|
# Specify true to convert W global user IDs to workspace-specific U IDs. Defaults to false.
|
|
15
18
|
# @see https://api.slack.com/methods/migration.exchange
|
|
16
19
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/migration/migration.exchange.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
|
|
@@ -5,102 +6,6 @@ module Slack
|
|
|
5
6
|
module Api
|
|
6
7
|
module Endpoints
|
|
7
8
|
module Mpim
|
|
8
|
-
#
|
|
9
|
-
# Closes a multiparty direct message channel.
|
|
10
|
-
#
|
|
11
|
-
# @option options [channel] :channel
|
|
12
|
-
# MPIM to close.
|
|
13
|
-
# @see https://api.slack.com/methods/mpim.close
|
|
14
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/mpim/mpim.close.json
|
|
15
|
-
def mpim_close(options = {})
|
|
16
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
17
|
-
options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
|
|
18
|
-
post('mpim.close', options)
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
#
|
|
22
|
-
# Fetches history of messages and events from a multiparty direct message.
|
|
23
|
-
#
|
|
24
|
-
# @option options [channel] :channel
|
|
25
|
-
# Multiparty direct message to fetch history for.
|
|
26
|
-
# @option options [Object] :inclusive
|
|
27
|
-
# Include messages with latest or oldest timestamp in results.
|
|
28
|
-
# @option options [timestamp] :latest
|
|
29
|
-
# End of time range of messages to include in results.
|
|
30
|
-
# @option options [timestamp] :oldest
|
|
31
|
-
# Start of time range of messages to include in results.
|
|
32
|
-
# @option options [Object] :unreads
|
|
33
|
-
# Include unread_count_display in the output?.
|
|
34
|
-
# @see https://api.slack.com/methods/mpim.history
|
|
35
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/mpim/mpim.history.json
|
|
36
|
-
def mpim_history(options = {})
|
|
37
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
38
|
-
options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
|
|
39
|
-
post('mpim.history', options)
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
#
|
|
43
|
-
# Lists multiparty direct message channels for the calling user.
|
|
44
|
-
#
|
|
45
|
-
# @option options [Object] :cursor
|
|
46
|
-
# 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.
|
|
47
|
-
# @option options [Object] :limit
|
|
48
|
-
# 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.
|
|
49
|
-
# @see https://api.slack.com/methods/mpim.list
|
|
50
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/mpim/mpim.list.json
|
|
51
|
-
def mpim_list(options = {})
|
|
52
|
-
if block_given?
|
|
53
|
-
Pagination::Cursor.new(self, :mpim_list, options).each do |page|
|
|
54
|
-
yield page
|
|
55
|
-
end
|
|
56
|
-
else
|
|
57
|
-
post('mpim.list', options)
|
|
58
|
-
end
|
|
59
|
-
end
|
|
60
|
-
|
|
61
|
-
#
|
|
62
|
-
# Sets the read cursor in a multiparty direct message channel.
|
|
63
|
-
#
|
|
64
|
-
# @option options [channel] :channel
|
|
65
|
-
# multiparty direct message channel to set reading cursor in.
|
|
66
|
-
# @option options [timestamp] :ts
|
|
67
|
-
# Timestamp of the most recently seen message.
|
|
68
|
-
# @see https://api.slack.com/methods/mpim.mark
|
|
69
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/mpim/mpim.mark.json
|
|
70
|
-
def mpim_mark(options = {})
|
|
71
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
72
|
-
throw ArgumentError.new('Required arguments :ts missing') if options[:ts].nil?
|
|
73
|
-
options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
|
|
74
|
-
post('mpim.mark', options)
|
|
75
|
-
end
|
|
76
|
-
|
|
77
|
-
#
|
|
78
|
-
# This method opens a multiparty direct message.
|
|
79
|
-
#
|
|
80
|
-
# @option options [Object] :users
|
|
81
|
-
# Comma separated lists of users. The ordering of the users is preserved whenever a MPIM group is returned.
|
|
82
|
-
# @see https://api.slack.com/methods/mpim.open
|
|
83
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/mpim/mpim.open.json
|
|
84
|
-
def mpim_open(options = {})
|
|
85
|
-
throw ArgumentError.new('Required arguments :users missing') if options[:users].nil?
|
|
86
|
-
post('mpim.open', options)
|
|
87
|
-
end
|
|
88
|
-
|
|
89
|
-
#
|
|
90
|
-
# Retrieve a thread of messages posted to a direct message conversation from a multiparty direct message.
|
|
91
|
-
#
|
|
92
|
-
# @option options [channel] :channel
|
|
93
|
-
# Multiparty direct message channel to fetch thread from.
|
|
94
|
-
# @option options [Object] :thread_ts
|
|
95
|
-
# Unique identifier of a thread's parent message.
|
|
96
|
-
# @see https://api.slack.com/methods/mpim.replies
|
|
97
|
-
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/mpim/mpim.replies.json
|
|
98
|
-
def mpim_replies(options = {})
|
|
99
|
-
throw ArgumentError.new('Required arguments :channel missing') if options[:channel].nil?
|
|
100
|
-
throw ArgumentError.new('Required arguments :thread_ts missing') if options[:thread_ts].nil?
|
|
101
|
-
options = options.merge(channel: channels_id(options)['channel']['id']) if options[:channel]
|
|
102
|
-
post('mpim.replies', options)
|
|
103
|
-
end
|
|
104
9
|
end
|
|
105
10
|
end
|
|
106
11
|
end
|