slack-ruby-client 0.13.1 → 2.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/.github/workflows/integration_test.yml +26 -0
- data/.github/workflows/lint.yml +14 -0
- data/.github/workflows/pr_lint.yml +21 -0
- data/.github/workflows/test.yml +36 -0
- data/.gitignore +5 -3
- data/.rubocop.yml +34 -5
- data/.rubocop_todo.yml +180 -46
- data/.ruby-version +1 -0
- data/CHANGELOG.md +119 -2
- data/CONTRIBUTING.md +23 -11
- data/Dangerfile +2 -0
- data/Gemfile +22 -5
- data/Gemfile.danger +6 -0
- data/LICENSE.md +1 -1
- data/README.md +236 -101
- data/RELEASING.md +2 -2
- data/Rakefile +2 -1
- data/UPGRADING.md +100 -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 +28 -0
- data/bin/commands/admin_apps_restricted.rb +17 -0
- data/bin/commands/admin_audit_anomaly_allow.rb +23 -0
- data/bin/commands/admin_auth_policy.rb +39 -0
- data/bin/commands/admin_barriers.rb +47 -0
- data/bin/commands/admin_conversations.rb +171 -0
- data/bin/commands/admin_conversations_ekm.rb +17 -0
- data/bin/commands/admin_conversations_restrictAccess.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/admin_users_unsupportedVersions.rb +15 -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 +52 -0
- data/bin/commands/auth.rb +1 -0
- data/bin/commands/auth_teams.rb +16 -0
- data/bin/commands/bookmarks.rb +53 -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/chat.rb +61 -14
- data/bin/commands/chat_scheduledMessages.rb +19 -0
- data/bin/commands/conversations.rb +82 -10
- 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 +34 -18
- data/bin/commands/files_comments.rb +1 -21
- data/bin/commands/files_remote.rb +78 -0
- data/bin/commands/migration.rb +2 -0
- 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 +1 -15
- data/bin/commands/search.rb +6 -1
- data/bin/commands/stars.rb +8 -6
- data/bin/commands/team.rb +6 -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 +50 -0
- data/bin/commands/workflows.rb +38 -0
- data/bin/commands.rb +41 -8
- data/bin/slack +3 -4
- 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 +6 -3
- 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/templates/event_handler.erb +5 -1
- data/lib/slack/real_time/api/typing.rb +5 -2
- data/lib/slack/real_time/client.rb +105 -54
- 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 +9 -13
- 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 +5 -0
- data/lib/slack/real_time/models/im.rb +1 -0
- data/lib/slack/real_time/models/{group.rb → mpim.rb} +2 -1
- 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 +3 -1
- data/lib/slack/real_time/socket.rb +45 -17
- data/lib/slack/real_time/stores/base.rb +28 -14
- data/lib/slack/real_time/stores/starter.rb +325 -297
- data/lib/slack/real_time/stores/store.rb +271 -196
- data/lib/slack/real_time/stores.rb +2 -7
- 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 +51 -0
- data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_audit_anomaly_allow.rb +34 -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 +264 -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_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/admin_users_unsupportedVersions.rb +25 -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 +77 -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/bookmarks.rb +88 -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/chat.rb +168 -65
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +40 -0
- data/lib/slack/web/api/endpoints/conversations.rb +182 -67
- data/lib/slack/web/api/endpoints/dialog.rb +5 -4
- 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 +69 -37
- data/lib/slack/web/api/endpoints/files_comments.rb +4 -36
- data/lib/slack/web/api/endpoints/files_remote.rb +127 -0
- data/lib/slack/web/api/endpoints/migration.rb +6 -3
- 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 +11 -18
- data/lib/slack/web/api/endpoints/reactions.rb +22 -21
- data/lib/slack/web/api/endpoints/reminders.rb +23 -10
- data/lib/slack/web/api/endpoints/rtm.rb +3 -25
- data/lib/slack/web/api/endpoints/search.rb +31 -16
- data/lib/slack/web/api/endpoints/stars.rb +14 -11
- data/lib/slack/web/api/endpoints/team.rb +15 -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 +31 -20
- data/lib/slack/web/api/endpoints/usergroups_users.rb +13 -8
- data/lib/slack/web/api/endpoints/users.rb +24 -23
- data/lib/slack/web/api/endpoints/users_admin.rb +3 -2
- 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 +102 -0
- data/lib/slack/web/api/endpoints/workflows.rb +61 -0
- data/lib/slack/web/api/endpoints.rb +82 -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 +1116 -0
- data/lib/slack/web/api/mixins/{channels.id.rb → conversations.id.rb} +5 -6
- data/lib/slack/web/api/mixins/ids.id.rb +3 -2
- data/lib/slack/web/api/mixins/users.id.rb +3 -4
- data/lib/slack/web/api/mixins/users.search.rb +3 -1
- data/lib/slack/web/api/mixins.rb +2 -2
- data/lib/slack/web/api/patches/chat.attachments-blocks.patch +69 -0
- data/lib/slack/web/api/patches/{dialog.1.open-json-support.patch → dialog.encoded-json.patch} +4 -4
- data/lib/slack/web/api/patches/views.view-json.patch +55 -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 +6 -2
- 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 +5 -2
- data/lib/slack/web/faraday/connection.rb +24 -20
- data/lib/slack/web/faraday/request.rb +5 -1
- data/lib/slack/web/faraday/response/raise_error.rb +14 -7
- 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 +12 -5
- 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 +51 -21
- data/lib/tasks/update.rake +1 -0
- data/lib/tasks/web.rake +48 -12
- data/screenshots/create-app.png +0 -0
- data/slack-ruby-client.gemspec +7 -12
- 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 +347 -26
- 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 +35 -0
- data/spec/slack/events/request_spec.rb +188 -0
- data/spec/slack/messages/formatting_spec.rb +35 -13
- data/spec/slack/real_time/api/message_spec.rb +7 -2
- data/spec/slack/real_time/api/ping_spec.rb +3 -1
- data/spec/slack/real_time/api/typing_spec.rb +6 -2
- data/spec/slack/real_time/client_spec.rb +300 -142
- 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 +20 -17
- data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +3 -2
- data/spec/slack/real_time/event_handlers/im_spec.rb +31 -27
- data/spec/slack/real_time/event_handlers/{group_spec.rb → private_channel_spec.rb} +36 -27
- data/spec/slack/real_time/event_handlers/{channel_spec.rb → public_channel_spec.rb} +31 -24
- data/spec/slack/real_time/event_handlers/team_spec.rb +8 -7
- data/spec/slack/real_time/event_handlers/user_spec.rb +7 -5
- data/spec/slack/real_time/rtm_connect_spec.rb +2 -1
- data/spec/slack/real_time/stores/store_spec.rb +50 -0
- data/spec/slack/slack_spec.rb +41 -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 +13 -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_audit_anomaly_allow_spec.rb +8 -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/admin_users_unsupportedVersions_spec.rb +8 -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_resources_spec.rb → auth_teams_spec.rb} +2 -1
- data/spec/slack/web/api/endpoints/bookmarks_spec.rb +40 -0
- 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 +144 -40
- data/spec/slack/web/api/endpoints/custom_specs/conversations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +18 -6
- data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +8 -3
- data/spec/slack/web/api/endpoints/custom_specs/views_spec.rb +112 -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 +18 -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_scopes_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 +45 -0
- data/spec/slack/web/api/mixins/users_spec.rb +19 -8
- data/spec/slack/web/api/pagination/cursor_spec.rb +47 -15
- data/spec/slack/web/client_spec.rb +199 -22
- 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/real_time/loaded_client.rb +120 -0
- data/spec/support/token.rb +1 -0
- data/spec/support/vcr.rb +37 -1
- metadata +174 -262
- data/.travis.yml +0 -32
- data/bin/commands/apps_permissions.rb +0 -22
- data/bin/commands/apps_permissions_resources.rb +0 -14
- data/bin/commands/apps_permissions_scopes.rb +0 -12
- data/bin/commands/apps_permissions_users.rb +0 -25
- data/bin/commands/channels.rb +0 -175
- data/bin/commands/groups.rb +0 -174
- data/bin/commands/im.rb +0 -67
- data/bin/commands/mpim.rb +0 -65
- 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/endpoints/apps_permissions.rb +0 -35
- data/lib/slack/web/api/endpoints/apps_permissions_resources.rb +0 -30
- data/lib/slack/web/api/endpoints/apps_permissions_scopes.rb +0 -20
- data/lib/slack/web/api/endpoints/apps_permissions_users.rb +0 -49
- data/lib/slack/web/api/endpoints/channels.rb +0 -266
- data/lib/slack/web/api/endpoints/groups.rb +0 -265
- data/lib/slack/web/api/endpoints/im.rb +0 -113
- data/lib/slack/web/api/endpoints/mpim.rb +0 -108
- data/lib/slack/web/api/endpoints/presence.rb +0 -23
- 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/fixtures/slack/web/rtm_start.yml +0 -104
- 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/real_time/rtm_start_spec.rb +0 -13
- data/spec/slack/real_time/store_spec.rb +0 -11
- 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,264 @@
|
|
|
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 AdminConversations
|
|
9
|
+
#
|
|
10
|
+
# Archive a public or private channel.
|
|
11
|
+
#
|
|
12
|
+
# @option options [Object] :channel_id
|
|
13
|
+
# The channel to archive.
|
|
14
|
+
# @see https://api.slack.com/methods/admin.conversations.archive
|
|
15
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.archive.json
|
|
16
|
+
def admin_conversations_archive(options = {})
|
|
17
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
18
|
+
post('admin.conversations.archive', options)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
#
|
|
22
|
+
# Convert a public channel to a private channel.
|
|
23
|
+
#
|
|
24
|
+
# @option options [Object] :channel_id
|
|
25
|
+
# The channel to convert to private.
|
|
26
|
+
# @option options [string] :name
|
|
27
|
+
# Name of private channel to create. Only respected when converting an MPIM.
|
|
28
|
+
# @see https://api.slack.com/methods/admin.conversations.convertToPrivate
|
|
29
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.convertToPrivate.json
|
|
30
|
+
def admin_conversations_convertToPrivate(options = {})
|
|
31
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
32
|
+
post('admin.conversations.convertToPrivate', options)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
#
|
|
36
|
+
# Create a public or private channel-based conversation.
|
|
37
|
+
#
|
|
38
|
+
# @option options [boolean] :is_private
|
|
39
|
+
# When true, creates a private channel instead of a public channel.
|
|
40
|
+
# @option options [string] :name
|
|
41
|
+
# Name of the public or private channel to create.
|
|
42
|
+
# @option options [string] :description
|
|
43
|
+
# Description of the public or private channel to create.
|
|
44
|
+
# @option options [boolean] :org_wide
|
|
45
|
+
# When true, the channel will be available org-wide. Note: if the channel is not org_wide=true, you must specify a team_id for this channel.
|
|
46
|
+
# @option options [Object] :team_id
|
|
47
|
+
# The workspace to create the channel in. Note: this argument is required unless you set org_wide=true.
|
|
48
|
+
# @see https://api.slack.com/methods/admin.conversations.create
|
|
49
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.create.json
|
|
50
|
+
def admin_conversations_create(options = {})
|
|
51
|
+
raise ArgumentError, 'Required arguments :is_private missing' if options[:is_private].nil?
|
|
52
|
+
raise ArgumentError, 'Required arguments :name missing' if options[:name].nil?
|
|
53
|
+
post('admin.conversations.create', options)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
#
|
|
57
|
+
# Delete a public or private channel.
|
|
58
|
+
#
|
|
59
|
+
# @option options [Object] :channel_id
|
|
60
|
+
# The channel to delete.
|
|
61
|
+
# @see https://api.slack.com/methods/admin.conversations.delete
|
|
62
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.delete.json
|
|
63
|
+
def admin_conversations_delete(options = {})
|
|
64
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
65
|
+
post('admin.conversations.delete', options)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
#
|
|
69
|
+
# Disconnect a connected channel from one or more workspaces.
|
|
70
|
+
#
|
|
71
|
+
# @option options [Object] :channel_id
|
|
72
|
+
# The channel to be disconnected from some workspaces.
|
|
73
|
+
# @option options [array] :leaving_team_ids
|
|
74
|
+
# team IDs getting removed from the channel, optional if there are only two teams in the channel.
|
|
75
|
+
# @see https://api.slack.com/methods/admin.conversations.disconnectShared
|
|
76
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.disconnectShared.json
|
|
77
|
+
def admin_conversations_disconnectShared(options = {})
|
|
78
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
79
|
+
post('admin.conversations.disconnectShared', options)
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
#
|
|
83
|
+
# Get conversation preferences for a public or private channel.
|
|
84
|
+
#
|
|
85
|
+
# @option options [Object] :channel_id
|
|
86
|
+
# The channel to get preferences for.
|
|
87
|
+
# @see https://api.slack.com/methods/admin.conversations.getConversationPrefs
|
|
88
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.getConversationPrefs.json
|
|
89
|
+
def admin_conversations_getConversationPrefs(options = {})
|
|
90
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
91
|
+
post('admin.conversations.getConversationPrefs', options)
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
#
|
|
95
|
+
# This API endpoint can be used by any admin to get a conversation's retention policy.
|
|
96
|
+
#
|
|
97
|
+
# @option options [string] :channel_id
|
|
98
|
+
# The conversation to get the retention policy for.
|
|
99
|
+
# @see https://api.slack.com/methods/admin.conversations.getCustomRetention
|
|
100
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.getCustomRetention.json
|
|
101
|
+
def admin_conversations_getCustomRetention(options = {})
|
|
102
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
103
|
+
post('admin.conversations.getCustomRetention', options)
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
#
|
|
107
|
+
# Get all the workspaces a given public or private channel is connected to within this Enterprise org.
|
|
108
|
+
#
|
|
109
|
+
# @option options [Object] :channel_id
|
|
110
|
+
# The channel to determine connected workspaces within the organization for.
|
|
111
|
+
# @option options [string] :cursor
|
|
112
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
113
|
+
# @option options [integer] :limit
|
|
114
|
+
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
|
115
|
+
# @see https://api.slack.com/methods/admin.conversations.getTeams
|
|
116
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.getTeams.json
|
|
117
|
+
def admin_conversations_getTeams(options = {})
|
|
118
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
119
|
+
if block_given?
|
|
120
|
+
Pagination::Cursor.new(self, :admin_conversations_getTeams, options).each do |page|
|
|
121
|
+
yield page
|
|
122
|
+
end
|
|
123
|
+
else
|
|
124
|
+
post('admin.conversations.getTeams', options)
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
#
|
|
129
|
+
# Invite a user to a public or private channel.
|
|
130
|
+
#
|
|
131
|
+
# @option options [Object] :channel_id
|
|
132
|
+
# The channel that the users will be invited to.
|
|
133
|
+
# @option options [array] :user_ids
|
|
134
|
+
# The users to invite.
|
|
135
|
+
# @see https://api.slack.com/methods/admin.conversations.invite
|
|
136
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.invite.json
|
|
137
|
+
def admin_conversations_invite(options = {})
|
|
138
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
139
|
+
raise ArgumentError, 'Required arguments :user_ids missing' if options[:user_ids].nil?
|
|
140
|
+
post('admin.conversations.invite', options)
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
#
|
|
144
|
+
# This API endpoint can be used by any admin to remove a conversation's retention policy.
|
|
145
|
+
#
|
|
146
|
+
# @option options [string] :channel_id
|
|
147
|
+
# The conversation to set the retention policy for.
|
|
148
|
+
# @see https://api.slack.com/methods/admin.conversations.removeCustomRetention
|
|
149
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.removeCustomRetention.json
|
|
150
|
+
def admin_conversations_removeCustomRetention(options = {})
|
|
151
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
152
|
+
post('admin.conversations.removeCustomRetention', options)
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
#
|
|
156
|
+
# Rename a public or private channel.
|
|
157
|
+
#
|
|
158
|
+
# @option options [Object] :channel_id
|
|
159
|
+
# The channel to rename.
|
|
160
|
+
# @option options [string] :name
|
|
161
|
+
# .
|
|
162
|
+
# @see https://api.slack.com/methods/admin.conversations.rename
|
|
163
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.rename.json
|
|
164
|
+
def admin_conversations_rename(options = {})
|
|
165
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
166
|
+
raise ArgumentError, 'Required arguments :name missing' if options[:name].nil?
|
|
167
|
+
post('admin.conversations.rename', options)
|
|
168
|
+
end
|
|
169
|
+
|
|
170
|
+
#
|
|
171
|
+
# Search for public or private channels in an Enterprise organization.
|
|
172
|
+
#
|
|
173
|
+
# @option options [array] :connected_team_ids
|
|
174
|
+
# Array of encoded team IDs, signifying the external orgs to search through.
|
|
175
|
+
# @option options [string] :cursor
|
|
176
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
177
|
+
# @option options [integer] :limit
|
|
178
|
+
# Maximum number of items to be returned. Must be between 1 - 20 both inclusive. Default is 10.
|
|
179
|
+
# @option options [string] :query
|
|
180
|
+
# Name of the the channel to query by.
|
|
181
|
+
# @option options [array] :search_channel_types
|
|
182
|
+
# The type of channel to include or exclude in the search. For example private will search private channels, while private_exclude will exclude them. For a full list of types, check the Types section.
|
|
183
|
+
# @option options [string] :sort
|
|
184
|
+
# Possible values are relevant (search ranking based on what we think is closest), name (alphabetical), member_count (number of users in the channel), and created (date channel was created). You can optionally pair this with the sort_dir arg to change how it is sorted.
|
|
185
|
+
# @option options [string] :sort_dir
|
|
186
|
+
# Sort direction. Possible values are asc for ascending order like (1, 2, 3) or (a, b, c), and desc for descending order like (3, 2, 1) or (c, b, a).
|
|
187
|
+
# @option options [array] :team_ids
|
|
188
|
+
# Comma separated string of team IDs, signifying the internal workspaces to search through.
|
|
189
|
+
# @see https://api.slack.com/methods/admin.conversations.search
|
|
190
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.search.json
|
|
191
|
+
def admin_conversations_search(options = {})
|
|
192
|
+
if block_given?
|
|
193
|
+
Pagination::Cursor.new(self, :admin_conversations_search, options).each do |page|
|
|
194
|
+
yield page
|
|
195
|
+
end
|
|
196
|
+
else
|
|
197
|
+
post('admin.conversations.search', options)
|
|
198
|
+
end
|
|
199
|
+
end
|
|
200
|
+
|
|
201
|
+
#
|
|
202
|
+
# Set the posting permissions for a public or private channel.
|
|
203
|
+
#
|
|
204
|
+
# @option options [string] :channel_id
|
|
205
|
+
# The channel to set the prefs for.
|
|
206
|
+
# @option options [string] :prefs
|
|
207
|
+
# The prefs for this channel in a stringified JSON format.
|
|
208
|
+
# @see https://api.slack.com/methods/admin.conversations.setConversationPrefs
|
|
209
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.setConversationPrefs.json
|
|
210
|
+
def admin_conversations_setConversationPrefs(options = {})
|
|
211
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
212
|
+
raise ArgumentError, 'Required arguments :prefs missing' if options[:prefs].nil?
|
|
213
|
+
post('admin.conversations.setConversationPrefs', options)
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
#
|
|
217
|
+
# This API endpoint can be used by any admin to set a conversation's retention policy.
|
|
218
|
+
#
|
|
219
|
+
# @option options [string] :channel_id
|
|
220
|
+
# The conversation to set the retention policy for.
|
|
221
|
+
# @option options [integer] :duration_days
|
|
222
|
+
# The message retention duration in days to set for this conversation.
|
|
223
|
+
# @see https://api.slack.com/methods/admin.conversations.setCustomRetention
|
|
224
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.setCustomRetention.json
|
|
225
|
+
def admin_conversations_setCustomRetention(options = {})
|
|
226
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
227
|
+
raise ArgumentError, 'Required arguments :duration_days missing' if options[:duration_days].nil?
|
|
228
|
+
post('admin.conversations.setCustomRetention', options)
|
|
229
|
+
end
|
|
230
|
+
|
|
231
|
+
#
|
|
232
|
+
# Set the workspaces in an Enterprise grid org that connect to a public or private channel.
|
|
233
|
+
#
|
|
234
|
+
# @option options [string] :channel_id
|
|
235
|
+
# The encoded channel_id to add or remove to workspaces.
|
|
236
|
+
# @option options [boolean] :org_channel
|
|
237
|
+
# True if channel has to be converted to an org channel.
|
|
238
|
+
# @option options [array] :target_team_ids
|
|
239
|
+
# A comma-separated list of workspaces to which the channel should be shared. Not required if the channel is being shared org-wide.
|
|
240
|
+
# @option options [Object] :team_id
|
|
241
|
+
# The workspace to which the channel belongs. Omit this argument if the channel is a cross-workspace shared channel.
|
|
242
|
+
# @see https://api.slack.com/methods/admin.conversations.setTeams
|
|
243
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.setTeams.json
|
|
244
|
+
def admin_conversations_setTeams(options = {})
|
|
245
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
246
|
+
post('admin.conversations.setTeams', options)
|
|
247
|
+
end
|
|
248
|
+
|
|
249
|
+
#
|
|
250
|
+
# Unarchive a public or private channel.
|
|
251
|
+
#
|
|
252
|
+
# @option options [Object] :channel_id
|
|
253
|
+
# The channel to unarchive.
|
|
254
|
+
# @see https://api.slack.com/methods/admin.conversations.unarchive
|
|
255
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations/admin.conversations.unarchive.json
|
|
256
|
+
def admin_conversations_unarchive(options = {})
|
|
257
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
258
|
+
post('admin.conversations.unarchive', options)
|
|
259
|
+
end
|
|
260
|
+
end
|
|
261
|
+
end
|
|
262
|
+
end
|
|
263
|
+
end
|
|
264
|
+
end
|
|
@@ -0,0 +1,35 @@
|
|
|
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 AdminConversationsEkm
|
|
9
|
+
#
|
|
10
|
+
# List all disconnected channels—i.e., channels that were once connected to other workspaces and then disconnected—and the corresponding original channel IDs for key revocation with EKM.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :channel_ids
|
|
13
|
+
# A comma-separated list of channels to filter to.
|
|
14
|
+
# @option options [string] :cursor
|
|
15
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
16
|
+
# @option options [integer] :limit
|
|
17
|
+
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
|
18
|
+
# @option options [string] :team_ids
|
|
19
|
+
# A comma-separated list of the workspaces to which the channels you would like returned belong.
|
|
20
|
+
# @see https://api.slack.com/methods/admin.conversations.ekm.listOriginalConnectedChannelInfo
|
|
21
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.ekm/admin.conversations.ekm.listOriginalConnectedChannelInfo.json
|
|
22
|
+
def admin_conversations_ekm_listOriginalConnectedChannelInfo(options = {})
|
|
23
|
+
if block_given?
|
|
24
|
+
Pagination::Cursor.new(self, :admin_conversations_ekm_listOriginalConnectedChannelInfo, options).each do |page|
|
|
25
|
+
yield page
|
|
26
|
+
end
|
|
27
|
+
else
|
|
28
|
+
post('admin.conversations.ekm.listOriginalConnectedChannelInfo', options)
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
@@ -0,0 +1,61 @@
|
|
|
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 AdminConversationsRestrictaccess
|
|
9
|
+
#
|
|
10
|
+
# Add an allowlist of IDP groups for accessing a channel
|
|
11
|
+
#
|
|
12
|
+
# @option options [Object] :channel_id
|
|
13
|
+
# The channel to link this group to.
|
|
14
|
+
# @option options [Object] :group_id
|
|
15
|
+
# The IDP Group ID to be an allowlist for the private channel.
|
|
16
|
+
# @option options [Object] :team_id
|
|
17
|
+
# The workspace where the channel exists. This argument is required for channels only tied to one workspace, and optional for channels that are shared across an organization.
|
|
18
|
+
# @see https://api.slack.com/methods/admin.conversations.restrictAccess.addGroup
|
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.restrictAccess/admin.conversations.restrictAccess.addGroup.json
|
|
20
|
+
def admin_conversations_restrictAccess_addGroup(options = {})
|
|
21
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
22
|
+
raise ArgumentError, 'Required arguments :group_id missing' if options[:group_id].nil?
|
|
23
|
+
post('admin.conversations.restrictAccess.addGroup', options)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
#
|
|
27
|
+
# List all IDP Groups linked to a channel
|
|
28
|
+
#
|
|
29
|
+
# @option options [Object] :channel_id
|
|
30
|
+
# .
|
|
31
|
+
# @option options [Object] :team_id
|
|
32
|
+
# The workspace where the channel exists. This argument is required for channels only tied to one workspace, and optional for channels that are shared across an organization.
|
|
33
|
+
# @see https://api.slack.com/methods/admin.conversations.restrictAccess.listGroups
|
|
34
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.restrictAccess/admin.conversations.restrictAccess.listGroups.json
|
|
35
|
+
def admin_conversations_restrictAccess_listGroups(options = {})
|
|
36
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
37
|
+
post('admin.conversations.restrictAccess.listGroups', options)
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
#
|
|
41
|
+
# Remove a linked IDP group linked from a private channel
|
|
42
|
+
#
|
|
43
|
+
# @option options [Object] :channel_id
|
|
44
|
+
# The channel to remove the linked group from.
|
|
45
|
+
# @option options [Object] :group_id
|
|
46
|
+
# The IDP Group ID to remove from the private channel.
|
|
47
|
+
# @option options [Object] :team_id
|
|
48
|
+
# The workspace where the channel exists. This argument is required for channels only tied to one workspace, and optional for channels that are shared across an organization.
|
|
49
|
+
# @see https://api.slack.com/methods/admin.conversations.restrictAccess.removeGroup
|
|
50
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.conversations.restrictAccess/admin.conversations.restrictAccess.removeGroup.json
|
|
51
|
+
def admin_conversations_restrictAccess_removeGroup(options = {})
|
|
52
|
+
raise ArgumentError, 'Required arguments :channel_id missing' if options[:channel_id].nil?
|
|
53
|
+
raise ArgumentError, 'Required arguments :group_id missing' if options[:group_id].nil?
|
|
54
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
55
|
+
post('admin.conversations.restrictAccess.removeGroup', options)
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
@@ -0,0 +1,88 @@
|
|
|
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 AdminEmoji
|
|
9
|
+
#
|
|
10
|
+
# Add an emoji.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :name
|
|
13
|
+
# The name of the emoji to be added. Colons (:myemoji:) around the value are not required, although they may be included.
|
|
14
|
+
# @option options [string] :url
|
|
15
|
+
# The URL of a file to use as an image for the emoji. Square images under 128KB and with transparent backgrounds work best.
|
|
16
|
+
# @see https://api.slack.com/methods/admin.emoji.add
|
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.emoji/admin.emoji.add.json
|
|
18
|
+
def admin_emoji_add(options = {})
|
|
19
|
+
raise ArgumentError, 'Required arguments :name missing' if options[:name].nil?
|
|
20
|
+
raise ArgumentError, 'Required arguments :url missing' if options[:url].nil?
|
|
21
|
+
post('admin.emoji.add', options)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# Add an emoji alias.
|
|
26
|
+
#
|
|
27
|
+
# @option options [string] :alias_for
|
|
28
|
+
# Name of the emoji for which the alias is being made. Any wrapping whitespace or colons will be automatically trimmed.
|
|
29
|
+
# @option options [string] :name
|
|
30
|
+
# The new alias for the specified emoji. Any wrapping whitespace or colons will be automatically trimmed.
|
|
31
|
+
# @see https://api.slack.com/methods/admin.emoji.addAlias
|
|
32
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.emoji/admin.emoji.addAlias.json
|
|
33
|
+
def admin_emoji_addAlias(options = {})
|
|
34
|
+
raise ArgumentError, 'Required arguments :alias_for missing' if options[:alias_for].nil?
|
|
35
|
+
raise ArgumentError, 'Required arguments :name missing' if options[:name].nil?
|
|
36
|
+
post('admin.emoji.addAlias', options)
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
#
|
|
40
|
+
# List emoji for an Enterprise Grid organization.
|
|
41
|
+
#
|
|
42
|
+
# @option options [string] :cursor
|
|
43
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
44
|
+
# @option options [integer] :limit
|
|
45
|
+
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
|
46
|
+
# @see https://api.slack.com/methods/admin.emoji.list
|
|
47
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.emoji/admin.emoji.list.json
|
|
48
|
+
def admin_emoji_list(options = {})
|
|
49
|
+
if block_given?
|
|
50
|
+
Pagination::Cursor.new(self, :admin_emoji_list, options).each do |page|
|
|
51
|
+
yield page
|
|
52
|
+
end
|
|
53
|
+
else
|
|
54
|
+
post('admin.emoji.list', options)
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
#
|
|
59
|
+
# Remove an emoji across an Enterprise Grid organization
|
|
60
|
+
#
|
|
61
|
+
# @option options [string] :name
|
|
62
|
+
# The name of the emoji to be removed. Colons (:myemoji:) around the value are not required, although they may be included.
|
|
63
|
+
# @see https://api.slack.com/methods/admin.emoji.remove
|
|
64
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.emoji/admin.emoji.remove.json
|
|
65
|
+
def admin_emoji_remove(options = {})
|
|
66
|
+
raise ArgumentError, 'Required arguments :name missing' if options[:name].nil?
|
|
67
|
+
post('admin.emoji.remove', options)
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
#
|
|
71
|
+
# Rename an emoji.
|
|
72
|
+
#
|
|
73
|
+
# @option options [string] :name
|
|
74
|
+
# The name of the emoji to be renamed. Colons (:myemoji:) around the value are not required, although they may be included.
|
|
75
|
+
# @option options [string] :new_name
|
|
76
|
+
# The new name of the emoji.
|
|
77
|
+
# @see https://api.slack.com/methods/admin.emoji.rename
|
|
78
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.emoji/admin.emoji.rename.json
|
|
79
|
+
def admin_emoji_rename(options = {})
|
|
80
|
+
raise ArgumentError, 'Required arguments :name missing' if options[:name].nil?
|
|
81
|
+
raise ArgumentError, 'Required arguments :new_name missing' if options[:new_name].nil?
|
|
82
|
+
post('admin.emoji.rename', options)
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
@@ -0,0 +1,61 @@
|
|
|
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 AdminInviterequests
|
|
9
|
+
#
|
|
10
|
+
# Approve a workspace invite request.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :invite_request_id
|
|
13
|
+
# ID of the request to invite.
|
|
14
|
+
# @option options [string] :team_id
|
|
15
|
+
# ID for the workspace where the invite request was made.
|
|
16
|
+
# @see https://api.slack.com/methods/admin.inviteRequests.approve
|
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.inviteRequests/admin.inviteRequests.approve.json
|
|
18
|
+
def admin_inviteRequests_approve(options = {})
|
|
19
|
+
raise ArgumentError, 'Required arguments :invite_request_id missing' if options[:invite_request_id].nil?
|
|
20
|
+
post('admin.inviteRequests.approve', options)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
#
|
|
24
|
+
# Deny a workspace invite request.
|
|
25
|
+
#
|
|
26
|
+
# @option options [string] :invite_request_id
|
|
27
|
+
# ID of the request to invite.
|
|
28
|
+
# @option options [string] :team_id
|
|
29
|
+
# ID for the workspace where the invite request was made.
|
|
30
|
+
# @see https://api.slack.com/methods/admin.inviteRequests.deny
|
|
31
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.inviteRequests/admin.inviteRequests.deny.json
|
|
32
|
+
def admin_inviteRequests_deny(options = {})
|
|
33
|
+
raise ArgumentError, 'Required arguments :invite_request_id missing' if options[:invite_request_id].nil?
|
|
34
|
+
post('admin.inviteRequests.deny', options)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
#
|
|
38
|
+
# List all pending workspace invite requests.
|
|
39
|
+
#
|
|
40
|
+
# @option options [string] :cursor
|
|
41
|
+
# Value of the next_cursor field sent as part of the previous API response.
|
|
42
|
+
# @option options [integer] :limit
|
|
43
|
+
# The number of results that will be returned by the API on each invocation. Must be between 1 - 1000, both inclusive.
|
|
44
|
+
# @option options [string] :team_id
|
|
45
|
+
# ID for the workspace where the invite requests were made.
|
|
46
|
+
# @see https://api.slack.com/methods/admin.inviteRequests.list
|
|
47
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.inviteRequests/admin.inviteRequests.list.json
|
|
48
|
+
def admin_inviteRequests_list(options = {})
|
|
49
|
+
if block_given?
|
|
50
|
+
Pagination::Cursor.new(self, :admin_inviteRequests_list, options).each do |page|
|
|
51
|
+
yield page
|
|
52
|
+
end
|
|
53
|
+
else
|
|
54
|
+
post('admin.inviteRequests.list', options)
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
61
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
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 AdminInviterequestsApproved
|
|
9
|
+
#
|
|
10
|
+
# List all approved workspace invite requests.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :cursor
|
|
13
|
+
# Value of the next_cursor field sent as part of the previous API response.
|
|
14
|
+
# @option options [integer] :limit
|
|
15
|
+
# The number of results that will be returned by the API on each invocation. Must be between 1 - 1000, both inclusive.
|
|
16
|
+
# @option options [string] :team_id
|
|
17
|
+
# ID for the workspace where the invite requests were made.
|
|
18
|
+
# @see https://api.slack.com/methods/admin.inviteRequests.approved.list
|
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.inviteRequests.approved/admin.inviteRequests.approved.list.json
|
|
20
|
+
def admin_inviteRequests_approved_list(options = {})
|
|
21
|
+
if block_given?
|
|
22
|
+
Pagination::Cursor.new(self, :admin_inviteRequests_approved_list, options).each do |page|
|
|
23
|
+
yield page
|
|
24
|
+
end
|
|
25
|
+
else
|
|
26
|
+
post('admin.inviteRequests.approved.list', options)
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
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 AdminInviterequestsDenied
|
|
9
|
+
#
|
|
10
|
+
# List all denied workspace invite requests.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :cursor
|
|
13
|
+
# Value of the next_cursor field sent as part of the previous api response.
|
|
14
|
+
# @option options [integer] :limit
|
|
15
|
+
# The number of results that will be returned by the API on each invocation. Must be between 1 - 1000 both inclusive.
|
|
16
|
+
# @option options [Object] :team_id
|
|
17
|
+
# ID for the workspace where the invite requests were made.
|
|
18
|
+
# @see https://api.slack.com/methods/admin.inviteRequests.denied.list
|
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.inviteRequests.denied/admin.inviteRequests.denied.list.json
|
|
20
|
+
def admin_inviteRequests_denied_list(options = {})
|
|
21
|
+
if block_given?
|
|
22
|
+
Pagination::Cursor.new(self, :admin_inviteRequests_denied_list, options).each do |page|
|
|
23
|
+
yield page
|
|
24
|
+
end
|
|
25
|
+
else
|
|
26
|
+
post('admin.inviteRequests.denied.list', options)
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,50 @@
|
|
|
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 AdminTeams
|
|
9
|
+
#
|
|
10
|
+
# Create an Enterprise team.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :team_domain
|
|
13
|
+
# Team domain (for example, slacksoftballteam). Domains are limited to 21 characters.
|
|
14
|
+
# @option options [string] :team_name
|
|
15
|
+
# Team name (for example, Slack Softball Team).
|
|
16
|
+
# @option options [string] :team_description
|
|
17
|
+
# Description for the team.
|
|
18
|
+
# @option options [string] :team_discoverability
|
|
19
|
+
# Who can join the team. A team's discoverability can be open, closed, invite_only, or unlisted.
|
|
20
|
+
# @see https://api.slack.com/methods/admin.teams.create
|
|
21
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams/admin.teams.create.json
|
|
22
|
+
def admin_teams_create(options = {})
|
|
23
|
+
raise ArgumentError, 'Required arguments :team_domain missing' if options[:team_domain].nil?
|
|
24
|
+
raise ArgumentError, 'Required arguments :team_name missing' if options[:team_name].nil?
|
|
25
|
+
post('admin.teams.create', options)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
#
|
|
29
|
+
# List all teams on an Enterprise organization
|
|
30
|
+
#
|
|
31
|
+
# @option options [string] :cursor
|
|
32
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
33
|
+
# @option options [integer] :limit
|
|
34
|
+
# The maximum number of items to return. Must be between 1 - 100 both inclusive.
|
|
35
|
+
# @see https://api.slack.com/methods/admin.teams.list
|
|
36
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams/admin.teams.list.json
|
|
37
|
+
def admin_teams_list(options = {})
|
|
38
|
+
if block_given?
|
|
39
|
+
Pagination::Cursor.new(self, :admin_teams_list, options).each do |page|
|
|
40
|
+
yield page
|
|
41
|
+
end
|
|
42
|
+
else
|
|
43
|
+
post('admin.teams.list', options)
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
@@ -0,0 +1,34 @@
|
|
|
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 AdminTeamsAdmins
|
|
9
|
+
#
|
|
10
|
+
# List all of the admins on a given workspace.
|
|
11
|
+
#
|
|
12
|
+
# @option options [Object] :team_id
|
|
13
|
+
# .
|
|
14
|
+
# @option options [string] :cursor
|
|
15
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
16
|
+
# @option options [integer] :limit
|
|
17
|
+
# The maximum number of items to return.
|
|
18
|
+
# @see https://api.slack.com/methods/admin.teams.admins.list
|
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams.admins/admin.teams.admins.list.json
|
|
20
|
+
def admin_teams_admins_list(options = {})
|
|
21
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
22
|
+
if block_given?
|
|
23
|
+
Pagination::Cursor.new(self, :admin_teams_admins_list, options).each do |page|
|
|
24
|
+
yield page
|
|
25
|
+
end
|
|
26
|
+
else
|
|
27
|
+
post('admin.teams.admins.list', options)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|