slack-ruby-client 0.11.1 → 1.1.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/danger.yml +19 -0
- data/.github/workflows/integtest.yml +25 -0
- data/.github/workflows/rubocop.yml +13 -0
- data/.github/workflows/test.yml +34 -0
- data/.gitignore +6 -3
- data/.rubocop.yml +36 -2
- data/.rubocop_todo.yml +186 -54
- data/CHANGELOG.md +156 -31
- data/CONTRIBUTING.md +20 -9
- data/Dangerfile +2 -0
- data/Gemfile +27 -6
- data/Gemfile.danger +6 -0
- data/LICENSE.md +1 -1
- data/README.md +199 -52
- data/RELEASING.md +2 -2
- data/Rakefile +2 -1
- data/UPGRADING.md +89 -3
- 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_auth_policy.rb +39 -0
- data/bin/commands/admin_barriers.rb +47 -0
- data/bin/commands/admin_conversations.rb +170 -0
- data/bin/commands/admin_conversations_ekm.rb +17 -0
- data/bin/commands/admin_conversations_restrictAccess.rb +37 -0
- data/bin/commands/admin_conversations_whitelist.rb +37 -0
- data/bin/commands/admin_emoji.rb +54 -0
- data/bin/commands/admin_inviteRequests.rb +36 -0
- data/bin/commands/admin_inviteRequests_approved.rb +16 -0
- data/bin/commands/admin_inviteRequests_denied.rb +16 -0
- data/bin/commands/admin_teams.rb +27 -0
- data/bin/commands/admin_teams_admins.rb +16 -0
- data/bin/commands/admin_teams_owners.rb +16 -0
- data/bin/commands/admin_teams_settings.rb +64 -0
- data/bin/commands/admin_usergroups.rb +48 -0
- data/bin/commands/admin_users.rb +98 -0
- data/bin/commands/admin_users_session.rb +78 -0
- data/bin/commands/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/apps_permissions.rb +1 -0
- data/bin/commands/apps_permissions_resources.rb +15 -0
- data/bin/commands/apps_permissions_scopes.rb +13 -0
- data/bin/commands/apps_permissions_users.rb +26 -0
- data/bin/commands/auth.rb +1 -0
- data/bin/commands/auth_teams.rb +16 -0
- data/bin/commands/bookmarks.rb +52 -0
- data/bin/commands/bots.rb +2 -0
- data/bin/commands/calls.rb +52 -0
- data/bin/commands/calls_participants.rb +25 -0
- data/bin/commands/channels.rb +1 -153
- data/bin/commands/chat.rb +57 -12
- data/bin/commands/chat_scheduledMessages.rb +19 -0
- data/bin/commands/conversations.rb +75 -4
- 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 +14 -19
- data/bin/commands/files_comments.rb +1 -21
- data/bin/commands/files_remote.rb +78 -0
- data/bin/commands/groups.rb +1 -159
- data/bin/commands/im.rb +1 -62
- data/bin/commands/migration.rb +2 -0
- data/bin/commands/mpim.rb +1 -58
- data/bin/commands/oauth.rb +4 -15
- 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 +5 -3
- data/bin/commands/reminders.rb +7 -0
- data/bin/commands/rtm.rb +7 -4
- data/bin/commands/search.rb +8 -3
- data/bin/commands/stars.rb +10 -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 +21 -6
- data/bin/commands/users_admin.rb +1 -0
- data/bin/commands/users_prefs.rb +1 -0
- data/bin/commands/users_profile.rb +7 -6
- data/bin/commands/views.rb +48 -0
- data/bin/commands/workflows.rb +38 -0
- data/bin/commands.rb +40 -5
- data/bin/slack +2 -3
- data/examples/hi_real_time_and_web/Gemfile +1 -0
- data/examples/hi_real_time_and_web/hi.rb +7 -3
- data/examples/{hi_real_time_async_eventmachine → hi_real_time_async_async}/Gemfile +2 -1
- data/examples/{hi_real_time_async_celluloid → hi_real_time_async_async}/Procfile +0 -0
- data/examples/{hi_real_time_async_celluloid → hi_real_time_async_async}/hi.rb +12 -7
- 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 -1
- data/lib/slack/messages/message.rb +1 -4
- data/lib/slack/real_time/api/message.rb +3 -1
- data/lib/slack/real_time/api/message_id.rb +1 -0
- data/lib/slack/real_time/api/ping.rb +5 -2
- data/lib/slack/real_time/api/typing.rb +3 -1
- data/lib/slack/real_time/client.rb +103 -34
- data/lib/slack/real_time/concurrency/async.rb +138 -0
- data/lib/slack/real_time/concurrency.rb +2 -2
- data/lib/slack/real_time/config.rb +6 -10
- data/lib/slack/real_time/models/base.rb +1 -4
- data/lib/slack/real_time/models/bot.rb +1 -0
- data/lib/slack/real_time/models/channel.rb +1 -0
- data/lib/slack/real_time/models/group.rb +1 -0
- data/lib/slack/real_time/models/im.rb +1 -0
- data/lib/slack/real_time/models/team.rb +1 -0
- data/lib/slack/real_time/models/user.rb +1 -0
- data/lib/slack/real_time/models.rb +1 -0
- data/lib/slack/real_time/socket.rb +45 -17
- data/lib/slack/real_time/stores/base.rb +5 -7
- data/lib/slack/real_time/stores/starter.rb +27 -3
- data/lib/slack/real_time/stores/store.rb +43 -25
- data/lib/slack/real_time/stores.rb +1 -0
- data/lib/slack/version.rb +2 -1
- data/lib/slack/web/api/endpoints/admin_analytics.rb +28 -0
- data/lib/slack/web/api/endpoints/admin_apps.rb +78 -0
- data/lib/slack/web/api/endpoints/admin_apps_approved.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_apps_requests.rb +51 -0
- data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_auth_policy.rb +72 -0
- data/lib/slack/web/api/endpoints/admin_barriers.rb +82 -0
- data/lib/slack/web/api/endpoints/admin_conversations.rb +262 -0
- data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +64 -0
- data/lib/slack/web/api/endpoints/admin_emoji.rb +88 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_teams.rb +50 -0
- data/lib/slack/web/api/endpoints/admin_teams_admins.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_teams_owners.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_teams_settings.rb +99 -0
- data/lib/slack/web/api/endpoints/admin_usergroups.rb +77 -0
- data/lib/slack/web/api/endpoints/admin_users.rb +163 -0
- data/lib/slack/web/api/endpoints/admin_users_session.rb +122 -0
- data/lib/slack/web/api/endpoints/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/apps_permissions.rb +1 -0
- data/lib/slack/web/api/endpoints/apps_permissions_resources.rb +31 -0
- data/lib/slack/web/api/endpoints/apps_permissions_scopes.rb +21 -0
- data/lib/slack/web/api/endpoints/apps_permissions_users.rb +50 -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 +86 -0
- data/lib/slack/web/api/endpoints/bots.rb +4 -1
- data/lib/slack/web/api/endpoints/calls.rb +83 -0
- data/lib/slack/web/api/endpoints/calls_participants.rb +42 -0
- data/lib/slack/web/api/endpoints/channels.rb +2 -243
- data/lib/slack/web/api/endpoints/chat.rb +145 -46
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +40 -0
- data/lib/slack/web/api/endpoints/conversations.rb +152 -39
- data/lib/slack/web/api/endpoints/dialog.rb +3 -2
- data/lib/slack/web/api/endpoints/dnd.rb +9 -4
- data/lib/slack/web/api/endpoints/emoji.rb +1 -0
- data/lib/slack/web/api/endpoints/files.rb +35 -28
- data/lib/slack/web/api/endpoints/files_comments.rb +2 -34
- data/lib/slack/web/api/endpoints/files_remote.rb +127 -0
- data/lib/slack/web/api/endpoints/groups.rb +1 -243
- data/lib/slack/web/api/endpoints/im.rb +1 -101
- data/lib/slack/web/api/endpoints/migration.rb +5 -2
- data/lib/slack/web/api/endpoints/mpim.rb +1 -86
- data/lib/slack/web/api/endpoints/oauth.rb +8 -30
- data/lib/slack/web/api/endpoints/oauth_v2.rb +48 -0
- data/lib/slack/web/api/endpoints/openid_connect.rb +42 -0
- data/lib/slack/web/api/endpoints/pins.rb +8 -15
- data/lib/slack/web/api/endpoints/reactions.rb +29 -18
- data/lib/slack/web/api/endpoints/reminders.rb +18 -5
- data/lib/slack/web/api/endpoints/rtm.rb +14 -9
- data/lib/slack/web/api/endpoints/search.rb +30 -15
- data/lib/slack/web/api/endpoints/stars.rb +23 -10
- 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 +27 -16
- data/lib/slack/web/api/endpoints/usergroups_users.rb +10 -5
- data/lib/slack/web/api/endpoints/users.rb +44 -17
- data/lib/slack/web/api/endpoints/users_admin.rb +1 -0
- data/lib/slack/web/api/endpoints/users_prefs.rb +1 -0
- data/lib/slack/web/api/endpoints/users_profile.rb +9 -8
- data/lib/slack/web/api/endpoints/views.rb +97 -0
- data/lib/slack/web/api/endpoints/workflows.rb +61 -0
- data/lib/slack/web/api/endpoints.rb +80 -12
- 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 +1066 -0
- data/lib/slack/web/api/mixins/{channels.id.rb → conversations.id.rb} +4 -5
- data/lib/slack/web/api/mixins/ids.id.rb +3 -2
- data/lib/slack/web/api/mixins/users.id.rb +2 -3
- data/lib/slack/web/api/mixins/users.search.rb +1 -0
- data/lib/slack/web/api/mixins.rb +2 -2
- data/lib/slack/web/api/patches/chat.1.patch +70 -0
- data/lib/slack/web/api/patches/views.1.view-json.patch +40 -0
- data/lib/slack/web/api/patches/views.1.views-published.patch +16 -0
- data/lib/slack/web/api/templates/command.erb +1 -0
- data/lib/slack/web/api/templates/commands.erb +1 -0
- data/lib/slack/web/api/templates/endpoints.erb +2 -2
- data/lib/slack/web/api/templates/errors.erb +20 -0
- data/lib/slack/web/api/templates/method.erb +5 -1
- data/lib/slack/web/api/templates/method_spec.erb +2 -1
- data/lib/slack/web/client.rb +2 -1
- data/lib/slack/web/config.rb +3 -0
- data/lib/slack/web/faraday/connection.rb +24 -20
- data/lib/slack/web/faraday/request.rb +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 +16 -8
- data/lib/tasks/update.rake +1 -0
- data/lib/tasks/web.rake +39 -10
- data/screenshots/create-app.png +0 -0
- data/slack-ruby-client.gemspec +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 +267 -30
- data/spec/fixtures/slack/web/rtm_start.yml +771 -60
- data/spec/fixtures/slack/web/users_info.yml +153 -69
- data/spec/fixtures/slack/web/users_list.yml +102 -41
- data/spec/fixtures/slack/web/views_open_error.yml +83 -0
- data/spec/integration/integration_spec.rb +116 -48
- data/spec/slack/config_spec.rb +2 -0
- data/spec/slack/events/config_spec.rb +33 -0
- data/spec/slack/events/request_spec.rb +184 -0
- data/spec/slack/messages/formatting_spec.rb +25 -14
- data/spec/slack/real_time/api/message_spec.rb +6 -1
- data/spec/slack/real_time/api/ping_spec.rb +2 -0
- data/spec/slack/real_time/api/typing_spec.rb +5 -1
- data/spec/slack/real_time/client_spec.rb +258 -62
- data/spec/slack/real_time/concurrency/it_behaves_like_a_realtime_socket.rb +2 -0
- data/spec/slack/real_time/concurrency/with_concurrency_spec.rb +10 -0
- data/spec/slack/real_time/concurrency/without_concurrency_spec.rb +10 -0
- data/spec/slack/real_time/event_handlers/bot_spec.rb +3 -2
- data/spec/slack/real_time/event_handlers/channel_spec.rb +14 -11
- data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +2 -1
- data/spec/slack/real_time/event_handlers/group_spec.rb +6 -5
- data/spec/slack/real_time/event_handlers/im_spec.rb +10 -9
- data/spec/slack/real_time/event_handlers/team_spec.rb +3 -1
- data/spec/slack/real_time/event_handlers/user_spec.rb +3 -2
- data/spec/slack/real_time/rtm_connect_spec.rb +2 -1
- data/spec/slack/real_time/rtm_start_spec.rb +2 -1
- data/spec/slack/real_time/store_spec.rb +4 -3
- data/spec/slack/slack_spec.rb +42 -8
- 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_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/auth_teams_spec.rb +8 -0
- 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 +131 -39
- data/spec/slack/web/api/endpoints/custom_specs/conversations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +16 -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 +103 -0
- data/spec/slack/web/api/endpoints/dnd_spec.rb +4 -3
- data/spec/slack/web/api/endpoints/emoji_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/files_comments_spec.rb +3 -21
- data/spec/slack/web/api/endpoints/files_remote_spec.rb +24 -0
- data/spec/slack/web/api/endpoints/files_spec.rb +5 -4
- data/spec/slack/web/api/endpoints/migration_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/oauth_spec.rb +1 -22
- data/spec/slack/web/api/endpoints/oauth_v2_spec.rb +16 -0
- data/spec/slack/web/api/endpoints/openid_connect_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/pins_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/reactions_spec.rb +8 -1
- data/spec/slack/web/api/endpoints/reminders_spec.rb +3 -2
- data/spec/slack/web/api/endpoints/rtm_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/search_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/stars_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/team_billing_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/team_preferences_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/team_profile_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/team_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/tooling_tokens_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/usergroups_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/usergroups_users_spec.rb +3 -2
- data/spec/slack/web/api/endpoints/users_admin_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/users_prefs_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/users_profile_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/workflows_spec.rb +26 -0
- data/spec/slack/web/api/error_spec.rb +7 -7
- data/spec/slack/web/api/errors/slack_error_spec.rb +26 -7
- data/spec/slack/web/api/mixins/conversations_list_spec.rb +21 -0
- data/spec/slack/web/api/mixins/conversations_spec.rb +43 -0
- data/spec/slack/web/api/mixins/users_spec.rb +25 -14
- data/spec/slack/web/api/pagination/cursor_spec.rb +43 -15
- data/spec/slack/web/client_spec.rb +186 -19
- data/spec/slack/web/faraday/request_spec.rb +80 -0
- data/spec/slack/web/faraday/response/raise_error_spec.rb +48 -12
- data/spec/spec_helper.rb +9 -2
- data/spec/support/queue_with_timeout.rb +5 -4
- data/spec/support/real_time/concurrency/mock.rb +1 -0
- data/spec/support/real_time/connected_client.rb +6 -6
- data/spec/support/real_time/event.rb +1 -0
- data/spec/support/token.rb +1 -0
- data/spec/support/vcr.rb +37 -1
- metadata +177 -231
- data/.travis.yml +0 -30
- 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_eventmachine/Procfile +0 -2
- data/examples/hi_real_time_async_eventmachine/hi.rb +0 -36
- data/lib/slack/real_time/concurrency/celluloid.rb +0 -117
- data/lib/slack/real_time/concurrency/eventmachine.rb +0 -60
- 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/screenshots/register-bot.png +0 -0
- data/spec/fixtures/slack/web/503_error.yml +0 -14
- data/spec/fixtures/slack/web/channels_info.yml +0 -46
- data/spec/fixtures/slack/web/groups_info.yml +0 -43
- data/spec/slack/real_time/concurrency/celluloid_spec.rb +0 -62
- data/spec/slack/real_time/concurrency/eventmachine_spec.rb +0 -47
- data/spec/slack/web/api/endpoints/apps_permissions_spec.rb +0 -15
- data/spec/slack/web/api/endpoints/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 -31
- data/spec/slack/web/api/mixins/groups_spec.rb +0 -31
|
@@ -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
|
+
throw ArgumentError.new('Required arguments :client_id missing') if options[:client_id].nil?
|
|
20
|
+
throw ArgumentError.new('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
|
+
throw ArgumentError.new('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
|
|
@@ -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 AppsManifest
|
|
9
|
+
#
|
|
10
|
+
# Create an app from an app manifest.
|
|
11
|
+
#
|
|
12
|
+
# @option options [manifest object as string] :manifest
|
|
13
|
+
# A JSON app manifest encoded as a string. This manifest must use a valid app manifest schema - read our guide to creating one.
|
|
14
|
+
# @see https://api.slack.com/methods/apps.manifest.create
|
|
15
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.manifest/apps.manifest.create.json
|
|
16
|
+
def apps_manifest_create(options = {})
|
|
17
|
+
throw ArgumentError.new('Required arguments :manifest missing') if options[:manifest].nil?
|
|
18
|
+
post('apps.manifest.create', options)
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
#
|
|
22
|
+
# Permanently deletes an app created through app manifests
|
|
23
|
+
#
|
|
24
|
+
# @option options [Object] :app_id
|
|
25
|
+
# The ID of the app you want to delete.
|
|
26
|
+
# @see https://api.slack.com/methods/apps.manifest.delete
|
|
27
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.manifest/apps.manifest.delete.json
|
|
28
|
+
def apps_manifest_delete(options = {})
|
|
29
|
+
throw ArgumentError.new('Required arguments :app_id missing') if options[:app_id].nil?
|
|
30
|
+
post('apps.manifest.delete', options)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
#
|
|
34
|
+
# Export an app manifest from an existing app
|
|
35
|
+
#
|
|
36
|
+
# @option options [Object] :app_id
|
|
37
|
+
# The ID of the app whose configuration you want to export as a manifest.
|
|
38
|
+
# @see https://api.slack.com/methods/apps.manifest.export
|
|
39
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.manifest/apps.manifest.export.json
|
|
40
|
+
def apps_manifest_export(options = {})
|
|
41
|
+
throw ArgumentError.new('Required arguments :app_id missing') if options[:app_id].nil?
|
|
42
|
+
post('apps.manifest.export', options)
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
#
|
|
46
|
+
# Update an app from an app manifest
|
|
47
|
+
#
|
|
48
|
+
# @option options [Object] :app_id
|
|
49
|
+
# The ID of the app whose configuration you want to update.
|
|
50
|
+
# @option options [manifest object as string] :manifest
|
|
51
|
+
# A JSON app manifest encoded as a string. This manifest must use a valid app manifest schema - read our guide to creating one. As this method entirely replaces any previous configuration, manifest must contain both unmodified and modified fields.
|
|
52
|
+
# @see https://api.slack.com/methods/apps.manifest.update
|
|
53
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.manifest/apps.manifest.update.json
|
|
54
|
+
def apps_manifest_update(options = {})
|
|
55
|
+
throw ArgumentError.new('Required arguments :app_id missing') if options[:app_id].nil?
|
|
56
|
+
throw ArgumentError.new('Required arguments :manifest missing') if options[:manifest].nil?
|
|
57
|
+
post('apps.manifest.update', options)
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
#
|
|
61
|
+
# Validate an app manifest
|
|
62
|
+
#
|
|
63
|
+
# @option options [manifest object as string] :manifest
|
|
64
|
+
# The manifest to be validated. Will be validated against the app manifest schema - read our guide.
|
|
65
|
+
# @option options [Object] :app_id
|
|
66
|
+
# The ID of the app whose configuration you want to validate.
|
|
67
|
+
# @see https://api.slack.com/methods/apps.manifest.validate
|
|
68
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.manifest/apps.manifest.validate.json
|
|
69
|
+
def apps_manifest_validate(options = {})
|
|
70
|
+
throw ArgumentError.new('Required arguments :manifest missing') if options[:manifest].nil?
|
|
71
|
+
post('apps.manifest.validate', options)
|
|
72
|
+
end
|
|
73
|
+
end
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
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 AppsPermissionsResources
|
|
9
|
+
#
|
|
10
|
+
# Returns list of resource grants this app has on a team.
|
|
11
|
+
#
|
|
12
|
+
# @option options [Object] :cursor
|
|
13
|
+
# Paginate through collections of data by setting the cursor parameter to a next_cursor attribute returned by a previous request's response_metadata. Default value fetches the first "page" of the collection. See pagination for more detail.
|
|
14
|
+
# @option options [Object] :limit
|
|
15
|
+
# The maximum number of items to return.
|
|
16
|
+
# @see https://api.slack.com/methods/apps.permissions.resources.list
|
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.permissions.resources/apps.permissions.resources.list.json
|
|
18
|
+
def apps_permissions_resources_list(options = {})
|
|
19
|
+
if block_given?
|
|
20
|
+
Pagination::Cursor.new(self, :apps_permissions_resources_list, options).each do |page|
|
|
21
|
+
yield page
|
|
22
|
+
end
|
|
23
|
+
else
|
|
24
|
+
post('apps.permissions.resources.list', options)
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
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 AppsPermissionsScopes
|
|
9
|
+
#
|
|
10
|
+
# Returns list of scopes this app has on a team.
|
|
11
|
+
#
|
|
12
|
+
# @see https://api.slack.com/methods/apps.permissions.scopes.list
|
|
13
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.permissions.scopes/apps.permissions.scopes.list.json
|
|
14
|
+
def apps_permissions_scopes_list(options = {})
|
|
15
|
+
post('apps.permissions.scopes.list', options)
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
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 AppsPermissionsUsers
|
|
9
|
+
#
|
|
10
|
+
# Returns list of user grants and corresponding scopes this app has on a team.
|
|
11
|
+
#
|
|
12
|
+
# @option options [Object] :cursor
|
|
13
|
+
# Paginate through collections of data by setting the cursor parameter to a next_cursor attribute returned by a previous request's response_metadata. Default value fetches the first "page" of the collection. See pagination for more detail.
|
|
14
|
+
# @option options [Object] :limit
|
|
15
|
+
# The maximum number of items to return.
|
|
16
|
+
# @see https://api.slack.com/methods/apps.permissions.users.list
|
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.permissions.users/apps.permissions.users.list.json
|
|
18
|
+
def apps_permissions_users_list(options = {})
|
|
19
|
+
if block_given?
|
|
20
|
+
Pagination::Cursor.new(self, :apps_permissions_users_list, options).each do |page|
|
|
21
|
+
yield page
|
|
22
|
+
end
|
|
23
|
+
else
|
|
24
|
+
post('apps.permissions.users.list', options)
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
#
|
|
29
|
+
# Enables an app to trigger a permissions modal to grant an app access to a user access scope.
|
|
30
|
+
#
|
|
31
|
+
# @option options [Object] :scopes
|
|
32
|
+
# A comma separated list of user scopes to request for.
|
|
33
|
+
# @option options [Object] :trigger_id
|
|
34
|
+
# Token used to trigger the request.
|
|
35
|
+
# @option options [user] :user
|
|
36
|
+
# The user this scope is being requested for.
|
|
37
|
+
# @see https://api.slack.com/methods/apps.permissions.users.request
|
|
38
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/apps.permissions.users/apps.permissions.users.request.json
|
|
39
|
+
def apps_permissions_users_request(options = {})
|
|
40
|
+
throw ArgumentError.new('Required arguments :scopes missing') if options[:scopes].nil?
|
|
41
|
+
throw ArgumentError.new('Required arguments :trigger_id missing') if options[:trigger_id].nil?
|
|
42
|
+
throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
|
|
43
|
+
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
|
44
|
+
post('apps.permissions.users.request', options)
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
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,7 +9,7 @@ module Slack
|
|
|
8
9
|
#
|
|
9
10
|
# Revokes a token.
|
|
10
11
|
#
|
|
11
|
-
# @option options [
|
|
12
|
+
# @option options [boolean] :test
|
|
12
13
|
# Setting this parameter to 1 triggers a testing mode where the specified token will not actually be revoked.
|
|
13
14
|
# @see https://api.slack.com/methods/auth.revoke
|
|
14
15
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/auth/auth.revoke.json
|
|
@@ -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 AuthTeams
|
|
9
|
+
#
|
|
10
|
+
# List the workspaces a token can access.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :cursor
|
|
13
|
+
# Set cursor to next_cursor returned by the previous call to list items in the next page.
|
|
14
|
+
# @option options [boolean] :include_icon
|
|
15
|
+
# Whether to return icon paths for each workspace. An icon path represents a URI pointing to the image signifying the workspace.
|
|
16
|
+
# @option options [integer] :limit
|
|
17
|
+
# The maximum number of workspaces to return. Must be a positive integer no larger than 1000.
|
|
18
|
+
# @see https://api.slack.com/methods/auth.teams.list
|
|
19
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/auth.teams/auth.teams.list.json
|
|
20
|
+
def auth_teams_list(options = {})
|
|
21
|
+
if block_given?
|
|
22
|
+
Pagination::Cursor.new(self, :auth_teams_list, options).each do |page|
|
|
23
|
+
yield page
|
|
24
|
+
end
|
|
25
|
+
else
|
|
26
|
+
post('auth.teams.list', options)
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,86 @@
|
|
|
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 Bookmarks
|
|
9
|
+
#
|
|
10
|
+
# Add bookmark to a channel.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :channel_id
|
|
13
|
+
# Channel to add bookmark in.
|
|
14
|
+
# @option options [string] :title
|
|
15
|
+
# Title for the bookmark.
|
|
16
|
+
# @option options [string] :type
|
|
17
|
+
# Type of the bookmark i.e link.
|
|
18
|
+
# @option options [string] :emoji
|
|
19
|
+
# Emoji tag to apply to the link.
|
|
20
|
+
# @option options [string] :entity_id
|
|
21
|
+
# ID of the entity being bookmarked. Only applies to message and file types.
|
|
22
|
+
# @option options [string] :link
|
|
23
|
+
# Link to bookmark.
|
|
24
|
+
# @option options [string] :parent_id
|
|
25
|
+
# Id of this bookmark's parent.
|
|
26
|
+
# @see https://api.slack.com/methods/bookmarks.add
|
|
27
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bookmarks/bookmarks.add.json
|
|
28
|
+
def bookmarks_add(options = {})
|
|
29
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
|
30
|
+
throw ArgumentError.new('Required arguments :title missing') if options[:title].nil?
|
|
31
|
+
throw ArgumentError.new('Required arguments :type missing') if options[:type].nil?
|
|
32
|
+
post('bookmarks.add', options)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
#
|
|
36
|
+
# Edit bookmark.
|
|
37
|
+
#
|
|
38
|
+
# @option options [string] :bookmark_id
|
|
39
|
+
# Bookmark to update.
|
|
40
|
+
# @option options [string] :channel_id
|
|
41
|
+
# Channel to update bookmark in.
|
|
42
|
+
# @option options [string] :emoji
|
|
43
|
+
# Emoji tag to apply to the link.
|
|
44
|
+
# @option options [string] :link
|
|
45
|
+
# Link to bookmark.
|
|
46
|
+
# @option options [string] :title
|
|
47
|
+
# Title for the bookmark.
|
|
48
|
+
# @see https://api.slack.com/methods/bookmarks.edit
|
|
49
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bookmarks/bookmarks.edit.json
|
|
50
|
+
def bookmarks_edit(options = {})
|
|
51
|
+
throw ArgumentError.new('Required arguments :bookmark_id missing') if options[:bookmark_id].nil?
|
|
52
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
|
53
|
+
post('bookmarks.edit', options)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
#
|
|
57
|
+
# List bookmark for the channel.
|
|
58
|
+
#
|
|
59
|
+
# @option options [string] :channel_id
|
|
60
|
+
# Channel to list bookmarks in.
|
|
61
|
+
# @see https://api.slack.com/methods/bookmarks.list
|
|
62
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bookmarks/bookmarks.list.json
|
|
63
|
+
def bookmarks_list(options = {})
|
|
64
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
|
65
|
+
post('bookmarks.list', options)
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
#
|
|
69
|
+
# Remove bookmark from the channel.
|
|
70
|
+
#
|
|
71
|
+
# @option options [string] :bookmark_id
|
|
72
|
+
# Bookmark to remove.
|
|
73
|
+
# @option options [string] :channel_id
|
|
74
|
+
# Channel to remove bookmark.
|
|
75
|
+
# @see https://api.slack.com/methods/bookmarks.remove
|
|
76
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bookmarks/bookmarks.remove.json
|
|
77
|
+
def bookmarks_remove(options = {})
|
|
78
|
+
throw ArgumentError.new('Required arguments :bookmark_id missing') if options[:bookmark_id].nil?
|
|
79
|
+
throw ArgumentError.new('Required arguments :channel_id missing') if options[:channel_id].nil?
|
|
80
|
+
post('bookmarks.remove', options)
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
end
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
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,8 +9,10 @@ module Slack
|
|
|
8
9
|
#
|
|
9
10
|
# Gets information about a bot user.
|
|
10
11
|
#
|
|
11
|
-
# @option options [
|
|
12
|
+
# @option options [user] :bot
|
|
12
13
|
# Bot user to get info on.
|
|
14
|
+
# @option options [team] :team_id
|
|
15
|
+
# encoded team id or enterprise id where the bot exists, required if org token is used.
|
|
13
16
|
# @see https://api.slack.com/methods/bots.info
|
|
14
17
|
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/bots/bots.info.json
|
|
15
18
|
def bots_info(options = {})
|
|
@@ -0,0 +1,83 @@
|
|
|
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 Calls
|
|
9
|
+
#
|
|
10
|
+
# Registers a new Call.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :external_unique_id
|
|
13
|
+
# An ID supplied by the 3rd-party Call provider. It must be unique across all Calls from that service.
|
|
14
|
+
# @option options [string] :join_url
|
|
15
|
+
# The URL required for a client to join the Call.
|
|
16
|
+
# @option options [string] :created_by
|
|
17
|
+
# The valid Slack user ID of the user who created this Call. When this method is called with a user token, the created_by field is optional and defaults to the authed user of the token. Otherwise, the field is required.
|
|
18
|
+
# @option options [integer] :date_start
|
|
19
|
+
# Call start time in UTC UNIX timestamp format.
|
|
20
|
+
# @option options [string] :desktop_app_join_url
|
|
21
|
+
# When supplied, available Slack clients will attempt to directly launch the 3rd-party Call with this URL.
|
|
22
|
+
# @option options [string] :external_display_id
|
|
23
|
+
# An optional, human-readable ID supplied by the 3rd-party Call provider. If supplied, this ID will be displayed in the Call object.
|
|
24
|
+
# @option options [string] :title
|
|
25
|
+
# The name of the Call.
|
|
26
|
+
# @option options [array] :users
|
|
27
|
+
# The list of users to register as participants in the Call. Read more on how to specify users here.
|
|
28
|
+
# @see https://api.slack.com/methods/calls.add
|
|
29
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/calls/calls.add.json
|
|
30
|
+
def calls_add(options = {})
|
|
31
|
+
throw ArgumentError.new('Required arguments :external_unique_id missing') if options[:external_unique_id].nil?
|
|
32
|
+
throw ArgumentError.new('Required arguments :join_url missing') if options[:join_url].nil?
|
|
33
|
+
post('calls.add', options)
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
#
|
|
37
|
+
# Ends a Call.
|
|
38
|
+
#
|
|
39
|
+
# @option options [string] :id
|
|
40
|
+
# id returned when registering the call using the calls.add method.
|
|
41
|
+
# @option options [integer] :duration
|
|
42
|
+
# Call duration in seconds.
|
|
43
|
+
# @see https://api.slack.com/methods/calls.end
|
|
44
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/calls/calls.end.json
|
|
45
|
+
def calls_end(options = {})
|
|
46
|
+
throw ArgumentError.new('Required arguments :id missing') if options[:id].nil?
|
|
47
|
+
post('calls.end', options)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
#
|
|
51
|
+
# Returns information about a Call.
|
|
52
|
+
#
|
|
53
|
+
# @option options [string] :id
|
|
54
|
+
# id of the Call returned by the calls.add method.
|
|
55
|
+
# @see https://api.slack.com/methods/calls.info
|
|
56
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/calls/calls.info.json
|
|
57
|
+
def calls_info(options = {})
|
|
58
|
+
throw ArgumentError.new('Required arguments :id missing') if options[:id].nil?
|
|
59
|
+
post('calls.info', options)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
#
|
|
63
|
+
# Updates information about a Call.
|
|
64
|
+
#
|
|
65
|
+
# @option options [string] :id
|
|
66
|
+
# id returned by the calls.add method.
|
|
67
|
+
# @option options [string] :desktop_app_join_url
|
|
68
|
+
# When supplied, available Slack clients will attempt to directly launch the 3rd-party Call with this URL.
|
|
69
|
+
# @option options [string] :join_url
|
|
70
|
+
# The URL required for a client to join the Call.
|
|
71
|
+
# @option options [string] :title
|
|
72
|
+
# The name of the Call.
|
|
73
|
+
# @see https://api.slack.com/methods/calls.update
|
|
74
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/calls/calls.update.json
|
|
75
|
+
def calls_update(options = {})
|
|
76
|
+
throw ArgumentError.new('Required arguments :id missing') if options[:id].nil?
|
|
77
|
+
post('calls.update', options)
|
|
78
|
+
end
|
|
79
|
+
end
|
|
80
|
+
end
|
|
81
|
+
end
|
|
82
|
+
end
|
|
83
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
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 CallsParticipants
|
|
9
|
+
#
|
|
10
|
+
# Registers new participants added to a Call.
|
|
11
|
+
#
|
|
12
|
+
# @option options [string] :id
|
|
13
|
+
# id returned by the calls.add method.
|
|
14
|
+
# @option options [array] :users
|
|
15
|
+
# The list of users to add as participants in the Call. Read more on how to specify users here.
|
|
16
|
+
# @see https://api.slack.com/methods/calls.participants.add
|
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/calls.participants/calls.participants.add.json
|
|
18
|
+
def calls_participants_add(options = {})
|
|
19
|
+
throw ArgumentError.new('Required arguments :id missing') if options[:id].nil?
|
|
20
|
+
throw ArgumentError.new('Required arguments :users missing') if options[:users].nil?
|
|
21
|
+
post('calls.participants.add', options)
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
#
|
|
25
|
+
# Registers participants removed from a Call.
|
|
26
|
+
#
|
|
27
|
+
# @option options [string] :id
|
|
28
|
+
# id returned by the calls.add method.
|
|
29
|
+
# @option options [array] :users
|
|
30
|
+
# The list of users to remove as participants in the Call. Read more on how to specify users here.
|
|
31
|
+
# @see https://api.slack.com/methods/calls.participants.remove
|
|
32
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/calls.participants/calls.participants.remove.json
|
|
33
|
+
def calls_participants_remove(options = {})
|
|
34
|
+
throw ArgumentError.new('Required arguments :id missing') if options[:id].nil?
|
|
35
|
+
throw ArgumentError.new('Required arguments :users missing') if options[:users].nil?
|
|
36
|
+
post('calls.participants.remove', options)
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|