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,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 AdminTeamsOwners
|
|
9
|
+
#
|
|
10
|
+
# List all of the owners 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. Must be between 1 - 1000 both inclusive.
|
|
18
|
+
# @see https://api.slack.com/methods/admin.teams.owners.list
|
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams.owners/admin.teams.owners.list.json
|
|
20
|
+
def admin_teams_owners_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_owners_list, options).each do |page|
|
|
24
|
+
yield page
|
|
25
|
+
end
|
|
26
|
+
else
|
|
27
|
+
post('admin.teams.owners.list', options)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
@@ -0,0 +1,99 @@
|
|
|
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 AdminTeamsSettings
|
|
9
|
+
#
|
|
10
|
+
# Fetch information about settings in a workspace
|
|
11
|
+
#
|
|
12
|
+
# @option options [Object] :team_id
|
|
13
|
+
# .
|
|
14
|
+
# @see https://api.slack.com/methods/admin.teams.settings.info
|
|
15
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams.settings/admin.teams.settings.info.json
|
|
16
|
+
def admin_teams_settings_info(options = {})
|
|
17
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
18
|
+
post('admin.teams.settings.info', options)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
#
|
|
22
|
+
# Set the default channels of a workspace.
|
|
23
|
+
#
|
|
24
|
+
# @option options [array] :channel_ids
|
|
25
|
+
# An array of channel IDs.
|
|
26
|
+
# @option options [Object] :team_id
|
|
27
|
+
# ID for the workspace to set the default channel for.
|
|
28
|
+
# @see https://api.slack.com/methods/admin.teams.settings.setDefaultChannels
|
|
29
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams.settings/admin.teams.settings.setDefaultChannels.json
|
|
30
|
+
def admin_teams_settings_setDefaultChannels(options = {})
|
|
31
|
+
raise ArgumentError, 'Required arguments :channel_ids missing' if options[:channel_ids].nil?
|
|
32
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
33
|
+
post('admin.teams.settings.setDefaultChannels', options)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
#
|
|
37
|
+
# Set the description of a given workspace.
|
|
38
|
+
#
|
|
39
|
+
# @option options [string] :description
|
|
40
|
+
# The new description for the workspace.
|
|
41
|
+
# @option options [Object] :team_id
|
|
42
|
+
# ID for the workspace to set the description for.
|
|
43
|
+
# @see https://api.slack.com/methods/admin.teams.settings.setDescription
|
|
44
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams.settings/admin.teams.settings.setDescription.json
|
|
45
|
+
def admin_teams_settings_setDescription(options = {})
|
|
46
|
+
raise ArgumentError, 'Required arguments :description missing' if options[:description].nil?
|
|
47
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
48
|
+
post('admin.teams.settings.setDescription', options)
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
#
|
|
52
|
+
# An API method that allows admins to set the discoverability of a given workspace
|
|
53
|
+
#
|
|
54
|
+
# @option options [string] :discoverability
|
|
55
|
+
# This workspace's discovery setting. It must be set to one of open, invite_only, closed, or unlisted.
|
|
56
|
+
# @option options [Object] :team_id
|
|
57
|
+
# The ID of the workspace to set discoverability on.
|
|
58
|
+
# @see https://api.slack.com/methods/admin.teams.settings.setDiscoverability
|
|
59
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams.settings/admin.teams.settings.setDiscoverability.json
|
|
60
|
+
def admin_teams_settings_setDiscoverability(options = {})
|
|
61
|
+
raise ArgumentError, 'Required arguments :discoverability missing' if options[:discoverability].nil?
|
|
62
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
63
|
+
post('admin.teams.settings.setDiscoverability', options)
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
#
|
|
67
|
+
# Sets the icon of a workspace.
|
|
68
|
+
#
|
|
69
|
+
# @option options [string] :image_url
|
|
70
|
+
# Image URL for the icon.
|
|
71
|
+
# @option options [Object] :team_id
|
|
72
|
+
# ID for the workspace to set the icon for.
|
|
73
|
+
# @see https://api.slack.com/methods/admin.teams.settings.setIcon
|
|
74
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams.settings/admin.teams.settings.setIcon.json
|
|
75
|
+
def admin_teams_settings_setIcon(options = {})
|
|
76
|
+
raise ArgumentError, 'Required arguments :image_url missing' if options[:image_url].nil?
|
|
77
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
78
|
+
post('admin.teams.settings.setIcon', options)
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
#
|
|
82
|
+
# Set the name of a given workspace.
|
|
83
|
+
#
|
|
84
|
+
# @option options [string] :name
|
|
85
|
+
# The new name of the workspace.
|
|
86
|
+
# @option options [Object] :team_id
|
|
87
|
+
# ID for the workspace to set the name for.
|
|
88
|
+
# @see https://api.slack.com/methods/admin.teams.settings.setName
|
|
89
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.teams.settings/admin.teams.settings.setName.json
|
|
90
|
+
def admin_teams_settings_setName(options = {})
|
|
91
|
+
raise ArgumentError, 'Required arguments :name missing' if options[:name].nil?
|
|
92
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
93
|
+
post('admin.teams.settings.setName', options)
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
end
|
|
@@ -0,0 +1,77 @@
|
|
|
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 AdminUsergroups
|
|
9
|
+
#
|
|
10
|
+
# Add up to one hundred default channels to an IDP group.
|
|
11
|
+
#
|
|
12
|
+
# @option options [array] :channel_ids
|
|
13
|
+
# Comma separated string of channel IDs.
|
|
14
|
+
# @option options [string] :usergroup_id
|
|
15
|
+
# ID of the IDP group to add default channels for.
|
|
16
|
+
# @option options [string] :team_id
|
|
17
|
+
# The workspace to add default channels in.
|
|
18
|
+
# @see https://api.slack.com/methods/admin.usergroups.addChannels
|
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.usergroups/admin.usergroups.addChannels.json
|
|
20
|
+
def admin_usergroups_addChannels(options = {})
|
|
21
|
+
raise ArgumentError, 'Required arguments :channel_ids missing' if options[:channel_ids].nil?
|
|
22
|
+
raise ArgumentError, 'Required arguments :usergroup_id missing' if options[:usergroup_id].nil?
|
|
23
|
+
post('admin.usergroups.addChannels', options)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
#
|
|
27
|
+
# Associate one or more default workspaces with an organization-wide IDP group.
|
|
28
|
+
#
|
|
29
|
+
# @option options [array] :team_ids
|
|
30
|
+
# A comma separated list of encoded team (workspace) IDs. Each workspace MUST belong to the organization associated with the token.
|
|
31
|
+
# @option options [string] :usergroup_id
|
|
32
|
+
# An encoded usergroup (IDP Group) ID.
|
|
33
|
+
# @option options [boolean] :auto_provision
|
|
34
|
+
# When true, this method automatically creates new workspace accounts for the IDP group members.
|
|
35
|
+
# @see https://api.slack.com/methods/admin.usergroups.addTeams
|
|
36
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.usergroups/admin.usergroups.addTeams.json
|
|
37
|
+
def admin_usergroups_addTeams(options = {})
|
|
38
|
+
raise ArgumentError, 'Required arguments :team_ids missing' if options[:team_ids].nil?
|
|
39
|
+
raise ArgumentError, 'Required arguments :usergroup_id missing' if options[:usergroup_id].nil?
|
|
40
|
+
post('admin.usergroups.addTeams', options)
|
|
41
|
+
end
|
|
42
|
+
|
|
43
|
+
#
|
|
44
|
+
# List the channels linked to an org-level IDP group (user group).
|
|
45
|
+
#
|
|
46
|
+
# @option options [Object] :usergroup_id
|
|
47
|
+
# ID of the IDP group to list default channels for.
|
|
48
|
+
# @option options [boolean] :include_num_members
|
|
49
|
+
# Flag to include or exclude the count of members per channel.
|
|
50
|
+
# @option options [string] :team_id
|
|
51
|
+
# ID of the the workspace.
|
|
52
|
+
# @see https://api.slack.com/methods/admin.usergroups.listChannels
|
|
53
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.usergroups/admin.usergroups.listChannels.json
|
|
54
|
+
def admin_usergroups_listChannels(options = {})
|
|
55
|
+
raise ArgumentError, 'Required arguments :usergroup_id missing' if options[:usergroup_id].nil?
|
|
56
|
+
post('admin.usergroups.listChannels', options)
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
#
|
|
60
|
+
# Remove one or more default channels from an org-level IDP group (user group).
|
|
61
|
+
#
|
|
62
|
+
# @option options [array] :channel_ids
|
|
63
|
+
# Comma-separated string of channel IDs.
|
|
64
|
+
# @option options [string] :usergroup_id
|
|
65
|
+
# ID of the IDP Group.
|
|
66
|
+
# @see https://api.slack.com/methods/admin.usergroups.removeChannels
|
|
67
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.usergroups/admin.usergroups.removeChannels.json
|
|
68
|
+
def admin_usergroups_removeChannels(options = {})
|
|
69
|
+
raise ArgumentError, 'Required arguments :channel_ids missing' if options[:channel_ids].nil?
|
|
70
|
+
raise ArgumentError, 'Required arguments :usergroup_id missing' if options[:usergroup_id].nil?
|
|
71
|
+
post('admin.usergroups.removeChannels', options)
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
@@ -0,0 +1,163 @@
|
|
|
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 AdminUsers
|
|
9
|
+
#
|
|
10
|
+
# Add an Enterprise user to a workspace.
|
|
11
|
+
#
|
|
12
|
+
# @option options [Object] :team_id
|
|
13
|
+
# The ID (T1234) of the workspace.
|
|
14
|
+
# @option options [Object] :user_id
|
|
15
|
+
# The ID of the user to add to the workspace.
|
|
16
|
+
# @option options [string] :channel_ids
|
|
17
|
+
# Comma separated values of channel IDs to add user in the new workspace.
|
|
18
|
+
# @option options [boolean] :is_restricted
|
|
19
|
+
# True if user should be added to the workspace as a guest.
|
|
20
|
+
# @option options [boolean] :is_ultra_restricted
|
|
21
|
+
# True if user should be added to the workspace as a single-channel guest.
|
|
22
|
+
# @see https://api.slack.com/methods/admin.users.assign
|
|
23
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.assign.json
|
|
24
|
+
def admin_users_assign(options = {})
|
|
25
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
26
|
+
raise ArgumentError, 'Required arguments :user_id missing' if options[:user_id].nil?
|
|
27
|
+
post('admin.users.assign', options)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
#
|
|
31
|
+
# Invite a user to a workspace.
|
|
32
|
+
#
|
|
33
|
+
# @option options [string] :channel_ids
|
|
34
|
+
# A comma-separated list of channel_ids for this user to join. At least one channel is required.
|
|
35
|
+
# @option options [string] :email
|
|
36
|
+
# The email address of the person to invite.
|
|
37
|
+
# @option options [Object] :team_id
|
|
38
|
+
# The ID (T1234) of the workspace.
|
|
39
|
+
# @option options [string] :custom_message
|
|
40
|
+
# An optional message to send to the user in the invite email.
|
|
41
|
+
# @option options [boolean] :email_password_policy_enabled
|
|
42
|
+
# Allow invited user to sign in via email and password. Only available for Enterprise Grid teams via admin invite.
|
|
43
|
+
# @option options [string] :guest_expiration_ts
|
|
44
|
+
# Timestamp when guest account should be disabled. Only include this timestamp if you are inviting a guest user and you want their account to expire on a certain date.
|
|
45
|
+
# @option options [boolean] :is_restricted
|
|
46
|
+
# Is this user a multi-channel guest user? (default: false).
|
|
47
|
+
# @option options [boolean] :is_ultra_restricted
|
|
48
|
+
# Is this user a single channel guest user? (default: false).
|
|
49
|
+
# @option options [string] :real_name
|
|
50
|
+
# Full name of the user.
|
|
51
|
+
# @option options [boolean] :resend
|
|
52
|
+
# Allow this invite to be resent in the future if a user has not signed up yet. (default: false).
|
|
53
|
+
# @see https://api.slack.com/methods/admin.users.invite
|
|
54
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.invite.json
|
|
55
|
+
def admin_users_invite(options = {})
|
|
56
|
+
raise ArgumentError, 'Required arguments :channel_ids missing' if options[:channel_ids].nil?
|
|
57
|
+
raise ArgumentError, 'Required arguments :email missing' if options[:email].nil?
|
|
58
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
59
|
+
post('admin.users.invite', options)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
#
|
|
63
|
+
# List users on a workspace
|
|
64
|
+
#
|
|
65
|
+
# @option options [string] :cursor
|
|
66
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
67
|
+
# @option options [integer] :limit
|
|
68
|
+
# Limit for how many users to be retrieved per page.
|
|
69
|
+
# @option options [Object] :team_id
|
|
70
|
+
# The ID (T1234) of the workspace. The team_id is required if you use an org-level token.
|
|
71
|
+
# @see https://api.slack.com/methods/admin.users.list
|
|
72
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.list.json
|
|
73
|
+
def admin_users_list(options = {})
|
|
74
|
+
if block_given?
|
|
75
|
+
Pagination::Cursor.new(self, :admin_users_list, options).each do |page|
|
|
76
|
+
yield page
|
|
77
|
+
end
|
|
78
|
+
else
|
|
79
|
+
post('admin.users.list', options)
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
#
|
|
84
|
+
# Remove a user from a workspace.
|
|
85
|
+
#
|
|
86
|
+
# @option options [Object] :team_id
|
|
87
|
+
# The ID (T1234) of the workspace.
|
|
88
|
+
# @option options [string] :user_id
|
|
89
|
+
# The ID of the user to remove.
|
|
90
|
+
# @see https://api.slack.com/methods/admin.users.remove
|
|
91
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.remove.json
|
|
92
|
+
def admin_users_remove(options = {})
|
|
93
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
94
|
+
raise ArgumentError, 'Required arguments :user_id missing' if options[:user_id].nil?
|
|
95
|
+
post('admin.users.remove', options)
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
#
|
|
99
|
+
# Set an existing guest, regular user, or owner to be an admin user.
|
|
100
|
+
#
|
|
101
|
+
# @option options [Object] :team_id
|
|
102
|
+
# The ID (T1234) of the workspace.
|
|
103
|
+
# @option options [string] :user_id
|
|
104
|
+
# The ID of the user to designate as an admin.
|
|
105
|
+
# @see https://api.slack.com/methods/admin.users.setAdmin
|
|
106
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.setAdmin.json
|
|
107
|
+
def admin_users_setAdmin(options = {})
|
|
108
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
109
|
+
raise ArgumentError, 'Required arguments :user_id missing' if options[:user_id].nil?
|
|
110
|
+
post('admin.users.setAdmin', options)
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
#
|
|
114
|
+
# Set an expiration for a guest user
|
|
115
|
+
#
|
|
116
|
+
# @option options [integer] :expiration_ts
|
|
117
|
+
# Timestamp when guest account should be disabled.
|
|
118
|
+
# @option options [string] :user_id
|
|
119
|
+
# The ID of the user to set an expiration for.
|
|
120
|
+
# @option options [Object] :team_id
|
|
121
|
+
# The ID (T1234) of the workspace.
|
|
122
|
+
# @see https://api.slack.com/methods/admin.users.setExpiration
|
|
123
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.setExpiration.json
|
|
124
|
+
def admin_users_setExpiration(options = {})
|
|
125
|
+
raise ArgumentError, 'Required arguments :expiration_ts missing' if options[:expiration_ts].nil?
|
|
126
|
+
raise ArgumentError, 'Required arguments :user_id missing' if options[:user_id].nil?
|
|
127
|
+
post('admin.users.setExpiration', options)
|
|
128
|
+
end
|
|
129
|
+
|
|
130
|
+
#
|
|
131
|
+
# Set an existing guest, regular user, or admin user to be a workspace owner.
|
|
132
|
+
#
|
|
133
|
+
# @option options [Object] :team_id
|
|
134
|
+
# The ID (T1234) of the workspace.
|
|
135
|
+
# @option options [Object] :user_id
|
|
136
|
+
# Id of the user to promote to owner.
|
|
137
|
+
# @see https://api.slack.com/methods/admin.users.setOwner
|
|
138
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.setOwner.json
|
|
139
|
+
def admin_users_setOwner(options = {})
|
|
140
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
141
|
+
raise ArgumentError, 'Required arguments :user_id missing' if options[:user_id].nil?
|
|
142
|
+
post('admin.users.setOwner', options)
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
#
|
|
146
|
+
# Set an existing guest user, admin user, or owner to be a regular user.
|
|
147
|
+
#
|
|
148
|
+
# @option options [Object] :team_id
|
|
149
|
+
# The ID (T1234) of the workspace.
|
|
150
|
+
# @option options [string] :user_id
|
|
151
|
+
# The ID of the user to designate as a regular user.
|
|
152
|
+
# @see https://api.slack.com/methods/admin.users.setRegular
|
|
153
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users/admin.users.setRegular.json
|
|
154
|
+
def admin_users_setRegular(options = {})
|
|
155
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
156
|
+
raise ArgumentError, 'Required arguments :user_id missing' if options[:user_id].nil?
|
|
157
|
+
post('admin.users.setRegular', options)
|
|
158
|
+
end
|
|
159
|
+
end
|
|
160
|
+
end
|
|
161
|
+
end
|
|
162
|
+
end
|
|
163
|
+
end
|
|
@@ -0,0 +1,122 @@
|
|
|
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 AdminUsersSession
|
|
9
|
+
#
|
|
10
|
+
# Clear user-specific session settings—the session duration and what happens when the client closes—for a list of users.
|
|
11
|
+
#
|
|
12
|
+
# @option options [array] :user_ids
|
|
13
|
+
# The IDs of users you'd like to clear session settings for.
|
|
14
|
+
# @see https://api.slack.com/methods/admin.users.session.clearSettings
|
|
15
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users.session/admin.users.session.clearSettings.json
|
|
16
|
+
def admin_users_session_clearSettings(options = {})
|
|
17
|
+
raise ArgumentError, 'Required arguments :user_ids missing' if options[:user_ids].nil?
|
|
18
|
+
post('admin.users.session.clearSettings', options)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
#
|
|
22
|
+
# Get user-specific session settings—the session duration and what happens when the client closes—given a list of users.
|
|
23
|
+
#
|
|
24
|
+
# @option options [array] :user_ids
|
|
25
|
+
# The IDs of users you'd like to fetch session settings for. Note: if a user does not have any active sessions, they will not be returned in the response.
|
|
26
|
+
# @see https://api.slack.com/methods/admin.users.session.getSettings
|
|
27
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users.session/admin.users.session.getSettings.json
|
|
28
|
+
def admin_users_session_getSettings(options = {})
|
|
29
|
+
raise ArgumentError, 'Required arguments :user_ids missing' if options[:user_ids].nil?
|
|
30
|
+
post('admin.users.session.getSettings', options)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
#
|
|
34
|
+
# Revoke a single session for a user. The user will be forced to login to Slack.
|
|
35
|
+
#
|
|
36
|
+
# @option options [integer] :session_id
|
|
37
|
+
# ID of the session to invalidate.
|
|
38
|
+
# @option options [string] :team_id
|
|
39
|
+
# ID of the workspace that the session belongs to.
|
|
40
|
+
# @see https://api.slack.com/methods/admin.users.session.invalidate
|
|
41
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users.session/admin.users.session.invalidate.json
|
|
42
|
+
def admin_users_session_invalidate(options = {})
|
|
43
|
+
raise ArgumentError, 'Required arguments :session_id missing' if options[:session_id].nil?
|
|
44
|
+
raise ArgumentError, 'Required arguments :team_id missing' if options[:team_id].nil?
|
|
45
|
+
post('admin.users.session.invalidate', options)
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
#
|
|
49
|
+
# List active user sessions for an organization
|
|
50
|
+
#
|
|
51
|
+
# @option options [string] :cursor
|
|
52
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
53
|
+
# @option options [integer] :limit
|
|
54
|
+
# The maximum number of items to return. Must be between 1 - 1000 both inclusive.
|
|
55
|
+
# @option options [string] :team_id
|
|
56
|
+
# The ID of the workspace you'd like active sessions for. If you pass a team_id, you'll need to pass a user_id as well.
|
|
57
|
+
# @option options [string] :user_id
|
|
58
|
+
# The ID of user you'd like active sessions for. If you pass a user_id, you'll need to pass a team_id as well.
|
|
59
|
+
# @see https://api.slack.com/methods/admin.users.session.list
|
|
60
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users.session/admin.users.session.list.json
|
|
61
|
+
def admin_users_session_list(options = {})
|
|
62
|
+
if block_given?
|
|
63
|
+
Pagination::Cursor.new(self, :admin_users_session_list, options).each do |page|
|
|
64
|
+
yield page
|
|
65
|
+
end
|
|
66
|
+
else
|
|
67
|
+
post('admin.users.session.list', options)
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
#
|
|
72
|
+
# Wipes all valid sessions on all devices for a given user
|
|
73
|
+
#
|
|
74
|
+
# @option options [string] :user_id
|
|
75
|
+
# The ID of the user to wipe sessions for.
|
|
76
|
+
# @option options [boolean] :mobile_only
|
|
77
|
+
# Only expire mobile sessions (default: false).
|
|
78
|
+
# @option options [boolean] :web_only
|
|
79
|
+
# Only expire web sessions (default: false).
|
|
80
|
+
# @see https://api.slack.com/methods/admin.users.session.reset
|
|
81
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users.session/admin.users.session.reset.json
|
|
82
|
+
def admin_users_session_reset(options = {})
|
|
83
|
+
raise ArgumentError, 'Required arguments :user_id missing' if options[:user_id].nil?
|
|
84
|
+
post('admin.users.session.reset', options)
|
|
85
|
+
end
|
|
86
|
+
|
|
87
|
+
#
|
|
88
|
+
# Enqueues an asynchronous job to wipe all valid sessions on all devices for a given list of users
|
|
89
|
+
#
|
|
90
|
+
# @option options [array] :user_ids
|
|
91
|
+
# The ID of the user to wipe sessions for.
|
|
92
|
+
# @option options [boolean] :mobile_only
|
|
93
|
+
# Only expire mobile sessions (default: false).
|
|
94
|
+
# @option options [boolean] :web_only
|
|
95
|
+
# Only expire web sessions (default: false).
|
|
96
|
+
# @see https://api.slack.com/methods/admin.users.session.resetBulk
|
|
97
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users.session/admin.users.session.resetBulk.json
|
|
98
|
+
def admin_users_session_resetBulk(options = {})
|
|
99
|
+
raise ArgumentError, 'Required arguments :user_ids missing' if options[:user_ids].nil?
|
|
100
|
+
post('admin.users.session.resetBulk', options)
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
#
|
|
104
|
+
# Configure the user-level session settings—the session duration and what happens when the client closes—for one or more users.
|
|
105
|
+
#
|
|
106
|
+
# @option options [array] :user_ids
|
|
107
|
+
# The list of up to 1,000 user IDs to apply the session settings for.
|
|
108
|
+
# @option options [boolean] :desktop_app_browser_quit
|
|
109
|
+
# Terminate the session when the client—either the desktop app or a browser window—is closed.
|
|
110
|
+
# @option options [integer] :duration
|
|
111
|
+
# The session duration, in seconds. The minimum value is 28800, which represents 8 hours; the max value is 315569520 or 10 years (that's a long Slack session).
|
|
112
|
+
# @see https://api.slack.com/methods/admin.users.session.setSettings
|
|
113
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users.session/admin.users.session.setSettings.json
|
|
114
|
+
def admin_users_session_setSettings(options = {})
|
|
115
|
+
raise ArgumentError, 'Required arguments :user_ids missing' if options[:user_ids].nil?
|
|
116
|
+
post('admin.users.session.setSettings', options)
|
|
117
|
+
end
|
|
118
|
+
end
|
|
119
|
+
end
|
|
120
|
+
end
|
|
121
|
+
end
|
|
122
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
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 AdminUsersUnsupportedversions
|
|
9
|
+
#
|
|
10
|
+
# Ask Slackbot to send you an export listing all workspace members using unsupported software, presented as a zipped CSV file.
|
|
11
|
+
#
|
|
12
|
+
# @option options [integer] :date_end_of_support
|
|
13
|
+
# Unix timestamp of the date of past or upcoming end of support cycles. If not provided will include all announced end of support cycles.
|
|
14
|
+
# @option options [integer] :date_sessions_started
|
|
15
|
+
# Unix timestamp of a date to start looking for user sessions. If not provided will start six months ago.
|
|
16
|
+
# @see https://api.slack.com/methods/admin.users.unsupportedVersions.export
|
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/admin.users.unsupportedVersions/admin.users.unsupportedVersions.export.json
|
|
18
|
+
def admin_users_unsupportedVersions_export(options = {})
|
|
19
|
+
post('admin.users.unsupportedVersions.export', options)
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
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,10 +9,8 @@ module Slack
|
|
|
8
9
|
#
|
|
9
10
|
# Checks API calling code.
|
|
10
11
|
#
|
|
11
|
-
# @option options [
|
|
12
|
+
# @option options [string] :error
|
|
12
13
|
# Error response to return.
|
|
13
|
-
# @option options [Object] :foo
|
|
14
|
-
# example property to return.
|
|
15
14
|
# @see https://api.slack.com/methods/api.test
|
|
16
15
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/api/api.test.json
|
|
17
16
|
def api_test(options = {})
|
|
@@ -0,0 +1,27 @@
|
|
|
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 Apps
|
|
9
|
+
#
|
|
10
|
+
# Uninstalls your app from a workspace.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :client_id
|
|
13
|
+
# Issued when you created your application.
|
|
14
|
+
# @option options [string] :client_secret
|
|
15
|
+
# Issued when you created your application.
|
|
16
|
+
# @see https://api.slack.com/methods/apps.uninstall
|
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps/apps.uninstall.json
|
|
18
|
+
def apps_uninstall(options = {})
|
|
19
|
+
raise ArgumentError, 'Required arguments :client_id missing' if options[:client_id].nil?
|
|
20
|
+
raise ArgumentError, 'Required arguments :client_secret missing' if options[:client_secret].nil?
|
|
21
|
+
post('apps.uninstall', options)
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
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 AppsConnections
|
|
9
|
+
#
|
|
10
|
+
# Generate a temporary Socket Mode WebSocket URL that your app can connect to in order to receive events and interactive payloads over.
|
|
11
|
+
#
|
|
12
|
+
# @see https://api.slack.com/methods/apps.connections.open
|
|
13
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.connections/apps.connections.open.json
|
|
14
|
+
def apps_connections_open(options = {})
|
|
15
|
+
post('apps.connections.open', options)
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
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 AppsEventAuthorizations
|
|
9
|
+
#
|
|
10
|
+
# Get a list of authorizations for the given event context. Each authorization represents an app installation that the event is visible to.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :event_context
|
|
13
|
+
# .
|
|
14
|
+
# @option options [string] :cursor
|
|
15
|
+
# .
|
|
16
|
+
# @option options [integer] :limit
|
|
17
|
+
# .
|
|
18
|
+
# @see https://api.slack.com/methods/apps.event.authorizations.list
|
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.event.authorizations/apps.event.authorizations.list.json
|
|
20
|
+
def apps_event_authorizations_list(options = {})
|
|
21
|
+
raise ArgumentError, 'Required arguments :event_context missing' if options[:event_context].nil?
|
|
22
|
+
if block_given?
|
|
23
|
+
Pagination::Cursor.new(self, :apps_event_authorizations_list, options).each do |page|
|
|
24
|
+
yield page
|
|
25
|
+
end
|
|
26
|
+
else
|
|
27
|
+
post('apps.event.authorizations.list', options)
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|