slack-ruby-client 0.7.2 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.github/FUNDING.yml +1 -0
- data/.gitignore +2 -0
- data/.gitmodules +1 -1
- data/.rubocop.yml +37 -1
- data/.rubocop_todo.yml +130 -47
- data/.travis.yml +17 -13
- data/CHANGELOG.md +254 -43
- data/CONTRIBUTING.md +26 -15
- data/Dangerfile +3 -0
- data/Gemfile +13 -2
- data/LICENSE.md +1 -1
- data/README.md +287 -63
- data/RELEASING.md +22 -14
- data/Rakefile +2 -1
- data/UPGRADING.md +129 -5
- data/bin/commands/admin_analytics.rb +16 -0
- data/bin/commands/admin_apps.rb +51 -0
- data/bin/commands/admin_apps_approved.rb +17 -0
- data/bin/commands/admin_apps_requests.rb +17 -0
- data/bin/commands/admin_apps_restricted.rb +17 -0
- data/bin/commands/admin_auth_policy.rb +39 -0
- data/bin/commands/admin_barriers.rb +47 -0
- data/bin/commands/admin_conversations.rb +169 -0
- data/bin/commands/admin_conversations_ekm.rb +17 -0
- data/bin/commands/admin_conversations_restrictAccess.rb +37 -0
- data/bin/commands/admin_conversations_whitelist.rb +37 -0
- data/bin/commands/admin_emoji.rb +54 -0
- data/bin/commands/admin_inviteRequests.rb +36 -0
- data/bin/commands/admin_inviteRequests_approved.rb +16 -0
- data/bin/commands/admin_inviteRequests_denied.rb +16 -0
- data/bin/commands/admin_teams.rb +27 -0
- data/bin/commands/admin_teams_admins.rb +16 -0
- data/bin/commands/admin_teams_owners.rb +16 -0
- data/bin/commands/admin_teams_settings.rb +64 -0
- data/bin/commands/admin_usergroups.rb +48 -0
- data/bin/commands/admin_users.rb +98 -0
- data/bin/commands/admin_users_session.rb +78 -0
- data/bin/commands/api.rb +3 -3
- data/bin/commands/apps.rb +15 -0
- data/bin/commands/apps_connections.rb +13 -0
- data/bin/commands/apps_event_authorizations.rb +16 -0
- data/bin/commands/apps_manifest.rb +51 -0
- data/bin/commands/apps_permissions.rb +23 -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 +12 -2
- data/bin/commands/auth_teams.rb +16 -0
- data/bin/commands/bots.rb +15 -0
- data/bin/commands/calls.rb +52 -0
- data/bin/commands/calls_participants.rb +25 -0
- data/bin/commands/channels.rb +6 -132
- data/bin/commands/chat.rb +127 -20
- data/bin/commands/chat_scheduledMessages.rb +19 -0
- data/bin/commands/conversations.rb +253 -0
- data/bin/commands/dialog.rb +15 -0
- data/bin/commands/dnd.rb +12 -9
- data/bin/commands/emoji.rb +3 -2
- data/bin/commands/files.rb +47 -31
- data/bin/commands/files_comments.rb +3 -23
- data/bin/commands/files_remote.rb +78 -0
- data/bin/commands/groups.rb +1 -154
- data/bin/commands/im.rb +1 -48
- data/bin/commands/migration.rb +16 -0
- data/bin/commands/mpim.rb +1 -48
- data/bin/commands/oauth.rb +4 -2
- data/bin/commands/oauth_v2.rb +29 -0
- data/bin/commands/openid_connect.rb +27 -0
- data/bin/commands/pins.rb +9 -12
- data/bin/commands/reactions.rb +17 -15
- data/bin/commands/reminders.rb +17 -10
- data/bin/commands/rtm.rb +19 -4
- data/bin/commands/search.rb +17 -12
- data/bin/commands/stars.rb +12 -9
- data/bin/commands/team.rb +23 -8
- data/bin/commands/team_billing.rb +13 -0
- data/bin/commands/team_preferences.rb +13 -0
- data/bin/commands/team_profile.rb +14 -0
- data/bin/commands/tooling_tokens.rb +14 -0
- data/bin/commands/usergroups.rb +23 -17
- data/bin/commands/usergroups_users.rb +7 -4
- data/bin/commands/users.rb +83 -27
- data/bin/commands/users_admin.rb +29 -0
- data/bin/commands/users_prefs.rb +13 -0
- data/bin/commands/users_profile.rb +27 -0
- data/bin/commands/views.rb +48 -0
- data/bin/commands/workflows.rb +38 -0
- data/bin/commands.rb +47 -5
- data/bin/slack +3 -4
- data/examples/hi_real_time_and_web/Gemfile +1 -0
- data/examples/hi_real_time_and_web/hi.rb +8 -4
- data/examples/{hi_real_time_async_celluloid → 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 +13 -8
- data/examples/hi_web/Gemfile +1 -0
- data/examples/hi_web/hi.rb +2 -1
- data/examples/new_ticket/Gemfile +1 -0
- data/examples/new_ticket/new_ticket.rb +3 -2
- 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 +4 -4
- data/lib/slack/messages/message.rb +6 -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/templates/event_handler.erb +1 -1
- data/lib/slack/real_time/api/typing.rb +3 -1
- data/lib/slack/real_time/client.rb +116 -36
- 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 +17 -19
- data/lib/slack/real_time/models/base.rb +3 -3
- 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 +8 -7
- data/lib/slack/real_time/socket.rb +51 -23
- data/lib/slack/real_time/stores/base.rb +6 -9
- data/lib/slack/real_time/stores/starter.rb +143 -69
- data/lib/slack/real_time/stores/store.rb +160 -82
- data/lib/slack/real_time/stores.rb +4 -3
- data/lib/slack/version.rb +2 -1
- data/lib/slack/web/api/endpoints/admin_analytics.rb +28 -0
- data/lib/slack/web/api/endpoints/admin_apps.rb +78 -0
- data/lib/slack/web/api/endpoints/admin_apps_approved.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_apps_requests.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_auth_policy.rb +72 -0
- data/lib/slack/web/api/endpoints/admin_barriers.rb +82 -0
- data/lib/slack/web/api/endpoints/admin_conversations.rb +260 -0
- data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_conversations_whitelist.rb +64 -0
- data/lib/slack/web/api/endpoints/admin_emoji.rb +88 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +33 -0
- data/lib/slack/web/api/endpoints/admin_teams.rb +50 -0
- data/lib/slack/web/api/endpoints/admin_teams_admins.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_teams_owners.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_teams_settings.rb +99 -0
- data/lib/slack/web/api/endpoints/admin_usergroups.rb +77 -0
- data/lib/slack/web/api/endpoints/admin_users.rb +163 -0
- data/lib/slack/web/api/endpoints/admin_users_session.rb +122 -0
- data/lib/slack/web/api/endpoints/api.rb +4 -5
- data/lib/slack/web/api/endpoints/apps.rb +27 -0
- data/lib/slack/web/api/endpoints/apps_connections.rb +21 -0
- data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +34 -0
- data/lib/slack/web/api/endpoints/apps_manifest.rb +75 -0
- data/lib/slack/web/api/endpoints/apps_permissions.rb +36 -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 +14 -2
- data/lib/slack/web/api/endpoints/auth_teams.rb +33 -0
- data/lib/slack/web/api/endpoints/bots.rb +25 -0
- 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 +8 -201
- data/lib/slack/web/api/endpoints/chat.rb +252 -42
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +40 -0
- data/lib/slack/web/api/endpoints/conversations.rb +422 -0
- data/lib/slack/web/api/endpoints/dialog.rb +33 -0
- data/lib/slack/web/api/endpoints/dnd.rb +17 -12
- data/lib/slack/web/api/endpoints/emoji.rb +3 -2
- data/lib/slack/web/api/endpoints/files.rb +82 -43
- 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/groups.rb +1 -235
- data/lib/slack/web/api/endpoints/im.rb +1 -73
- data/lib/slack/web/api/endpoints/migration.rb +28 -0
- data/lib/slack/web/api/endpoints/mpim.rb +1 -72
- data/lib/slack/web/api/endpoints/oauth.rb +9 -10
- 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 +14 -23
- data/lib/slack/web/api/endpoints/presence.rb +1 -1
- data/lib/slack/web/api/endpoints/reactions.rb +43 -34
- data/lib/slack/web/api/endpoints/reminders.rb +28 -15
- data/lib/slack/web/api/endpoints/rtm.rb +29 -8
- data/lib/slack/web/api/endpoints/search.rb +39 -24
- data/lib/slack/web/api/endpoints/stars.rb +30 -22
- data/lib/slack/web/api/endpoints/team.rb +34 -11
- 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 +23 -0
- data/lib/slack/web/api/endpoints/tooling_tokens.rb +24 -0
- data/lib/slack/web/api/endpoints/usergroups.rb +43 -32
- data/lib/slack/web/api/endpoints/usergroups_users.rb +14 -9
- data/lib/slack/web/api/endpoints/users.rb +104 -19
- data/lib/slack/web/api/endpoints/users_admin.rb +49 -0
- data/lib/slack/web/api/endpoints/users_prefs.rb +21 -0
- data/lib/slack/web/api/endpoints/users_profile.rb +44 -0
- 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 +111 -29
- data/lib/slack/web/api/error.rb +2 -8
- data/lib/slack/web/api/errors/server_error.rb +37 -0
- data/lib/slack/web/api/errors/slack_error.rb +29 -0
- data/lib/slack/web/api/errors/too_many_requests_error.rb +21 -0
- data/lib/slack/web/api/errors.rb +1040 -0
- data/lib/slack/web/api/mixins/conversations.id.rb +25 -0
- data/lib/slack/web/api/mixins/ids.id.rb +24 -0
- data/lib/slack/web/api/mixins/users.id.rb +6 -7
- data/lib/slack/web/api/mixins/users.search.rb +39 -36
- data/lib/slack/web/api/mixins.rb +4 -4
- data/lib/slack/web/api/patches/chat.1.patch +70 -0
- data/lib/slack/web/api/patches/dialog.1.open-json-support.patch +17 -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 +5 -3
- data/lib/slack/web/api/templates/commands.erb +2 -1
- data/lib/slack/web/api/templates/endpoints.erb +5 -5
- data/lib/slack/web/api/templates/errors.erb +20 -0
- data/lib/slack/web/api/templates/method.erb +26 -4
- data/lib/slack/web/api/templates/method_spec.erb +3 -2
- data/lib/slack/web/client.rb +2 -1
- data/lib/slack/web/config.rb +21 -10
- data/lib/slack/web/faraday/connection.rb +25 -16
- data/lib/slack/web/faraday/request.rb +4 -1
- data/lib/slack/web/faraday/response/raise_error.rb +19 -1
- data/lib/slack/web/faraday/response/wrap_error.rb +24 -0
- data/lib/slack/web/pagination/cursor.rb +48 -0
- data/lib/slack-ruby-client.rb +40 -26
- data/lib/slack.rb +1 -0
- data/lib/slack_ruby_client.rb +1 -0
- data/lib/tasks/git.rake +2 -1
- data/lib/tasks/real_time.rake +16 -6
- data/lib/tasks/update.rake +1 -0
- data/lib/tasks/web.rake +42 -10
- data/screenshots/create-app.png +0 -0
- data/slack-ruby-client.gemspec +11 -9
- data/spec/fixtures/slack/web/429_error.yml +50 -52
- 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 +613 -0
- data/spec/fixtures/slack/web/rtm_connect.yml +307 -0
- 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 +465 -141
- data/spec/slack/real_time/concurrency/it_behaves_like_a_realtime_socket.rb +21 -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 +7 -4
- data/spec/slack/real_time/event_handlers/channel_spec.rb +10 -7
- data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +3 -2
- data/spec/slack/real_time/event_handlers/group_spec.rb +5 -4
- data/spec/slack/real_time/event_handlers/im_spec.rb +9 -8
- data/spec/slack/real_time/event_handlers/team_spec.rb +8 -4
- data/spec/slack/real_time/event_handlers/user_spec.rb +7 -4
- data/spec/slack/real_time/rtm_connect_spec.rb +14 -0
- data/spec/slack/real_time/rtm_start_spec.rb +2 -1
- data/spec/slack/real_time/store_spec.rb +2 -1
- data/spec/slack/slack_spec.rb +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 +8 -0
- data/spec/slack/web/api/endpoints/admin_apps_restricted_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_apps_spec.rb +18 -0
- data/spec/slack/web/api/endpoints/admin_auth_policy_spec.rb +35 -0
- data/spec/slack/web/api/endpoints/admin_barriers_spec.rb +38 -0
- data/spec/slack/web/api/endpoints/admin_conversations_ekm_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_conversations_restrictAccess_spec.rb +32 -0
- data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +98 -0
- data/spec/slack/web/api/endpoints/admin_emoji_spec.rb +37 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_approved_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_denied_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/admin_inviteRequests_spec.rb +18 -0
- data/spec/slack/web/api/endpoints/admin_teams_admins_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_teams_owners_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/admin_teams_settings_spec.rb +53 -0
- data/spec/slack/web/api/endpoints/admin_teams_spec.rb +16 -0
- data/spec/slack/web/api/endpoints/admin_usergroups_spec.rb +37 -0
- data/spec/slack/web/api/endpoints/admin_users_session_spec.rb +41 -0
- data/spec/slack/web/api/endpoints/admin_users_spec.rb +67 -0
- data/spec/slack/web/api/endpoints/api_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/apps_connections_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/apps_event_authorizations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/apps_manifest_spec.rb +36 -0
- data/spec/slack/web/api/endpoints/apps_spec.rb +16 -0
- data/spec/slack/web/api/endpoints/auth_teams_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/bots_spec.rb +8 -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 +11 -4
- data/spec/slack/web/api/endpoints/custom_specs/chat_spec.rb +140 -24
- data/spec/slack/web/api/endpoints/custom_specs/conversations_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +36 -0
- data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +22 -7
- data/spec/slack/web/api/endpoints/custom_specs/views_spec.rb +95 -0
- data/spec/slack/web/api/endpoints/dnd_spec.rb +4 -3
- data/spec/slack/web/api/endpoints/emoji_spec.rb +1 -0
- data/spec/slack/web/api/endpoints/files_comments_spec.rb +3 -21
- data/spec/slack/web/api/endpoints/files_remote_spec.rb +24 -0
- data/spec/slack/web/api/endpoints/files_spec.rb +17 -5
- data/spec/slack/web/api/endpoints/migration_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/oauth_spec.rb +1 -11
- 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 +8 -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 +18 -0
- data/spec/slack/web/api/endpoints/users_prefs_spec.rb +8 -0
- data/spec/slack/web/api/endpoints/users_profile_spec.rb +8 -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 +33 -0
- 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 +30 -17
- data/spec/slack/web/api/pagination/cursor_spec.rb +98 -0
- data/spec/slack/web/client_spec.rb +211 -14
- data/spec/slack/web/faraday/request_spec.rb +80 -0
- data/spec/slack/web/faraday/response/raise_error_spec.rb +86 -0
- data/spec/spec_helper.rb +9 -2
- data/spec/support/queue_with_timeout.rb +6 -5
- data/spec/support/real_time/concurrency/mock.rb +2 -2
- data/spec/support/real_time/connected_client.rb +7 -2
- data/spec/support/real_time/event.rb +1 -0
- data/spec/support/token.rb +1 -0
- data/spec/support/vcr.rb +37 -1
- metadata +250 -130
- 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/Gemfile +0 -5
- data/examples/hi_real_time_async/hi.rb +0 -29
- 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 -36
- data/lib/slack/real_time/concurrency/celluloid.rb +0 -100
- 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/channels.id.rb +0 -26
- 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 -20
- data/screenshots/register-bot.png +0 -0
- 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 -35
- data/spec/slack/real_time/concurrency/eventmachine_spec.rb +0 -50
- 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 -30
- data/spec/slack/web/api/endpoints/mpim_spec.rb +0 -30
- data/spec/slack/web/api/mixins/channels_spec.rb +0 -31
- data/spec/slack/web/api/mixins/groups_spec.rb +0 -31
@@ -1,3 +1,4 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
2
3
|
|
3
4
|
module Slack
|
@@ -6,26 +7,72 @@ module Slack
|
|
6
7
|
module Endpoints
|
7
8
|
module Users
|
8
9
|
#
|
9
|
-
#
|
10
|
-
#
|
10
|
+
# List conversations the calling user may access.
|
11
|
+
#
|
12
|
+
# @option options [string] :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 [boolean] :exclude_archived
|
15
|
+
# Set to true to exclude archived channels from the list.
|
16
|
+
# @option options [number] :limit
|
17
|
+
# The maximum number of items to return. Fewer than the requested number of items may be returned, even if the end of the list hasn't been reached. Must be an integer no larger than 1000.
|
18
|
+
# @option options [string] :team_id
|
19
|
+
# encoded team id to list conversations in, required if org token is used.
|
20
|
+
# @option options [string] :types
|
21
|
+
# Mix and match channel types by providing a comma-separated list of any combination of public_channel, private_channel, mpim, im.
|
22
|
+
# @option options [user] :user
|
23
|
+
# Browse conversations by a specific user ID's membership. Non-public channels are restricted to those where the calling user shares membership.
|
24
|
+
# @see https://api.slack.com/methods/users.conversations
|
25
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.conversations.json
|
26
|
+
def users_conversations(options = {})
|
27
|
+
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
28
|
+
if block_given?
|
29
|
+
Pagination::Cursor.new(self, :users_conversations, options).each do |page|
|
30
|
+
yield page
|
31
|
+
end
|
32
|
+
else
|
33
|
+
post('users.conversations', options)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
#
|
38
|
+
# Delete the user profile photo
|
39
|
+
#
|
40
|
+
# @see https://api.slack.com/methods/users.deletePhoto
|
41
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.deletePhoto.json
|
42
|
+
def users_deletePhoto(options = {})
|
43
|
+
post('users.deletePhoto', options)
|
44
|
+
end
|
45
|
+
|
46
|
+
#
|
47
|
+
# Gets user presence information.
|
11
48
|
#
|
12
49
|
# @option options [user] :user
|
13
50
|
# User to get presence info on. Defaults to the authed user.
|
14
51
|
# @see https://api.slack.com/methods/users.getPresence
|
15
|
-
# @see https://github.com/
|
52
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.getPresence.json
|
16
53
|
def users_getPresence(options = {})
|
17
|
-
throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
|
18
54
|
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
19
55
|
post('users.getPresence', options)
|
20
56
|
end
|
21
57
|
|
22
58
|
#
|
23
|
-
#
|
59
|
+
# Get a user's identity.
|
60
|
+
#
|
61
|
+
# @see https://api.slack.com/methods/users.identity
|
62
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.identity.json
|
63
|
+
def users_identity(options = {})
|
64
|
+
post('users.identity', options)
|
65
|
+
end
|
66
|
+
|
67
|
+
#
|
68
|
+
# Gets information about a user.
|
24
69
|
#
|
25
70
|
# @option options [user] :user
|
26
71
|
# User to get info on.
|
72
|
+
# @option options [boolean] :include_locale
|
73
|
+
# Set this to true to receive the locale for this user. Defaults to false.
|
27
74
|
# @see https://api.slack.com/methods/users.info
|
28
|
-
# @see https://github.com/
|
75
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.info.json
|
29
76
|
def users_info(options = {})
|
30
77
|
throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
|
31
78
|
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
@@ -33,35 +80,73 @@ module Slack
|
|
33
80
|
end
|
34
81
|
|
35
82
|
#
|
36
|
-
#
|
83
|
+
# Lists all users in a Slack team.
|
37
84
|
#
|
38
|
-
# @option options [
|
39
|
-
#
|
85
|
+
# @option options [string] :cursor
|
86
|
+
# 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.
|
87
|
+
# @option options [boolean] :include_locale
|
88
|
+
# Set this to true to receive the locale for users. Defaults to false.
|
89
|
+
# @option options [number] :limit
|
90
|
+
# The maximum number of items to return. Fewer than the requested number of items may be returned, even if the end of the users list hasn't been reached. Providing no limit value will result in Slack attempting to deliver you the entire result set. If the collection is too large you may experience limit_required or HTTP 500 errors.
|
91
|
+
# @option options [string] :team_id
|
92
|
+
# encoded team id to list users in, required if org token is used.
|
40
93
|
# @see https://api.slack.com/methods/users.list
|
41
|
-
# @see https://github.com/
|
94
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.list.json
|
42
95
|
def users_list(options = {})
|
43
|
-
|
96
|
+
if block_given?
|
97
|
+
Pagination::Cursor.new(self, :users_list, options).each do |page|
|
98
|
+
yield page
|
99
|
+
end
|
100
|
+
else
|
101
|
+
post('users.list', options)
|
102
|
+
end
|
44
103
|
end
|
45
104
|
|
46
105
|
#
|
47
|
-
#
|
48
|
-
#
|
49
|
-
#
|
106
|
+
# Find a user with an email address.
|
107
|
+
#
|
108
|
+
# @option options [string] :email
|
109
|
+
# An email address belonging to a user in the workspace.
|
110
|
+
# @see https://api.slack.com/methods/users.lookupByEmail
|
111
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.lookupByEmail.json
|
112
|
+
def users_lookupByEmail(options = {})
|
113
|
+
throw ArgumentError.new('Required arguments :email missing') if options[:email].nil?
|
114
|
+
post('users.lookupByEmail', options)
|
115
|
+
end
|
116
|
+
|
117
|
+
#
|
118
|
+
# Marked a user as active. Deprecated and non-functional.
|
50
119
|
#
|
51
120
|
# @see https://api.slack.com/methods/users.setActive
|
52
|
-
# @see https://github.com/
|
121
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.setActive.json
|
53
122
|
def users_setActive(options = {})
|
54
123
|
post('users.setActive', options)
|
55
124
|
end
|
56
125
|
|
57
126
|
#
|
58
|
-
#
|
59
|
-
#
|
127
|
+
# Set the user profile photo
|
128
|
+
#
|
129
|
+
# @option options [string] :crop_w
|
130
|
+
# Width/height of crop box (always square).
|
131
|
+
# @option options [string] :crop_x
|
132
|
+
# X coordinate of top-left corner of crop box.
|
133
|
+
# @option options [string] :crop_y
|
134
|
+
# Y coordinate of top-left corner of crop box.
|
135
|
+
# @option options [string] :image
|
136
|
+
# File contents via multipart/form-data.
|
137
|
+
# @see https://api.slack.com/methods/users.setPhoto
|
138
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.setPhoto.json
|
139
|
+
def users_setPhoto(options = {})
|
140
|
+
post('users.setPhoto', options)
|
141
|
+
end
|
142
|
+
|
143
|
+
#
|
144
|
+
# Manually sets user presence.
|
60
145
|
#
|
61
|
-
# @option options [
|
146
|
+
# @option options [string] :presence
|
62
147
|
# Either auto or away.
|
63
148
|
# @see https://api.slack.com/methods/users.setPresence
|
64
|
-
# @see https://github.com/
|
149
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users/users.setPresence.json
|
65
150
|
def users_setPresence(options = {})
|
66
151
|
throw ArgumentError.new('Required arguments :presence missing') if options[:presence].nil?
|
67
152
|
post('users.setPresence', options)
|
@@ -0,0 +1,49 @@
|
|
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 UsersAdmin
|
9
|
+
#
|
10
|
+
# Send an invitation to a new user by email (undocumented)
|
11
|
+
#
|
12
|
+
# @option options [Object] :email
|
13
|
+
# Email address of the new user
|
14
|
+
# @option options [Object] :channels
|
15
|
+
# Comma-separated list of IDs (not names!) for channels, which the new user will auto-join. Both channel IDs for public channels and group IDs for private chanels work.
|
16
|
+
# @option options [Object] :first_name
|
17
|
+
# Prefilled input for the "First name" field on the "new user registration" page.
|
18
|
+
# @option options [Object] :last_name
|
19
|
+
# Prefilled input for the "Last name" field on the "new user registration" page.
|
20
|
+
# @option options [Object] :resend
|
21
|
+
# Resend the invitation email if the user has already been invited and the email was sent some time ago.
|
22
|
+
# @option options [Object] :restricted
|
23
|
+
# Invite a guest that can use multiple channels
|
24
|
+
# @option options [Object] :ultra_restricted
|
25
|
+
# Invite a guest that can use one channel only
|
26
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/undocumented/users.admin/users.admin.invite.json
|
27
|
+
def users_admin_invite(options = {})
|
28
|
+
throw ArgumentError.new('Required arguments :email missing') if options[:email].nil?
|
29
|
+
logger.warn('The users.admin.invite method is undocumented.')
|
30
|
+
post('users.admin.invite', options)
|
31
|
+
end
|
32
|
+
|
33
|
+
#
|
34
|
+
# Disable a user (undocumented)
|
35
|
+
#
|
36
|
+
# @option options [user] :user
|
37
|
+
# User to disable
|
38
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/undocumented/users.admin/users.admin.setInactive.json
|
39
|
+
def users_admin_setInactive(options = {})
|
40
|
+
throw ArgumentError.new('Required arguments :user missing') if options[:user].nil?
|
41
|
+
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
42
|
+
logger.warn('The users.admin.setInactive method is undocumented.')
|
43
|
+
post('users.admin.setInactive', options)
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
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 UsersPrefs
|
9
|
+
#
|
10
|
+
# Returns the user's preferences (undocumented)
|
11
|
+
#
|
12
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/undocumented/users.prefs/users.prefs.get.json
|
13
|
+
def users_prefs_get(options = {})
|
14
|
+
logger.warn('The users.prefs.get method is undocumented.')
|
15
|
+
post('users.prefs.get', options)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,44 @@
|
|
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 UsersProfile
|
9
|
+
#
|
10
|
+
# Retrieve a user's profile information, including their custom status.
|
11
|
+
#
|
12
|
+
# @option options [boolean] :include_labels
|
13
|
+
# Include labels for each ID in custom profile fields. Using this parameter will heavily rate-limit your requests and is not recommended.
|
14
|
+
# @option options [user] :user
|
15
|
+
# User to retrieve profile info for.
|
16
|
+
# @see https://api.slack.com/methods/users.profile.get
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users.profile/users.profile.get.json
|
18
|
+
def users_profile_get(options = {})
|
19
|
+
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
20
|
+
post('users.profile.get', options)
|
21
|
+
end
|
22
|
+
|
23
|
+
#
|
24
|
+
# Set a user's profile information, including custom status.
|
25
|
+
#
|
26
|
+
# @option options [string] :name
|
27
|
+
# Name of a single key to set. Usable only if profile is not passed.
|
28
|
+
# @option options [string] :profile
|
29
|
+
# Collection of key:value pairs presented as a URL-encoded JSON hash. At most 50 fields may be set. Each field name is limited to 255 characters.
|
30
|
+
# @option options [user] :user
|
31
|
+
# ID of user to change. This argument may only be specified by team admins on paid teams.
|
32
|
+
# @option options [string] :value
|
33
|
+
# Value to set a single key to. Usable only if profile is not passed.
|
34
|
+
# @see https://api.slack.com/methods/users.profile.set
|
35
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/users.profile/users.profile.set.json
|
36
|
+
def users_profile_set(options = {})
|
37
|
+
options = options.merge(user: users_id(options)['user']['id']) if options[:user]
|
38
|
+
post('users.profile.set', options)
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,97 @@
|
|
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 Views
|
9
|
+
#
|
10
|
+
# Open a view for a user.
|
11
|
+
#
|
12
|
+
# @option options [string] :trigger_id
|
13
|
+
# Exchange a trigger to post to the user.
|
14
|
+
# @option options [view as string] :view
|
15
|
+
# A view payload. This must be a JSON-encoded string.
|
16
|
+
# @see https://api.slack.com/methods/views.open
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/views/views.open.json
|
18
|
+
def views_open(options = {})
|
19
|
+
throw ArgumentError.new('Required arguments :trigger_id missing') if options[:trigger_id].nil?
|
20
|
+
throw ArgumentError.new('Required arguments :view missing') if options[:view].nil?
|
21
|
+
if options.key?(:view)
|
22
|
+
view = options[:view]
|
23
|
+
view = JSON.dump(view) unless view.is_a?(String)
|
24
|
+
options = options.merge(view: view)
|
25
|
+
end
|
26
|
+
post('views.open', options)
|
27
|
+
end
|
28
|
+
|
29
|
+
#
|
30
|
+
# Publish a static view for a User.
|
31
|
+
#
|
32
|
+
# @option options [string] :user_id
|
33
|
+
# id of the user you want publish a view to.
|
34
|
+
# @option options [view as string] :view
|
35
|
+
# A view payload. This must be a JSON-encoded string.
|
36
|
+
# @option options [string] :hash
|
37
|
+
# A string that represents view state to protect against possible race conditions.
|
38
|
+
# @see https://api.slack.com/methods/views.publish
|
39
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/views/views.publish.json
|
40
|
+
def views_publish(options = {})
|
41
|
+
throw ArgumentError.new('Required arguments :user_id missing') if options[:user_id].nil?
|
42
|
+
throw ArgumentError.new('Required arguments :view missing') if options[:view].nil?
|
43
|
+
if options.key?(:view)
|
44
|
+
view = options[:view]
|
45
|
+
view = JSON.dump(view) unless view.is_a?(String)
|
46
|
+
options = options.merge(view: view)
|
47
|
+
end
|
48
|
+
post('views.publish', options)
|
49
|
+
end
|
50
|
+
|
51
|
+
#
|
52
|
+
# Push a view onto the stack of a root view.
|
53
|
+
#
|
54
|
+
# @option options [string] :trigger_id
|
55
|
+
# Exchange a trigger to post to the user.
|
56
|
+
# @option options [view as string] :view
|
57
|
+
# A view payload. This must be a JSON-encoded string.
|
58
|
+
# @see https://api.slack.com/methods/views.push
|
59
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/views/views.push.json
|
60
|
+
def views_push(options = {})
|
61
|
+
throw ArgumentError.new('Required arguments :trigger_id missing') if options[:trigger_id].nil?
|
62
|
+
throw ArgumentError.new('Required arguments :view missing') if options[:view].nil?
|
63
|
+
if options.key?(:view)
|
64
|
+
view = options[:view]
|
65
|
+
view = JSON.dump(view) unless view.is_a?(String)
|
66
|
+
options = options.merge(view: view)
|
67
|
+
end
|
68
|
+
post('views.push', options)
|
69
|
+
end
|
70
|
+
|
71
|
+
#
|
72
|
+
# Update an existing view.
|
73
|
+
#
|
74
|
+
# @option options [view as string] :view
|
75
|
+
# A view object. This must be a JSON-encoded string.
|
76
|
+
# @option options [string] :external_id
|
77
|
+
# A unique identifier of the view set by the developer. Must be unique for all views on a team. Max length of 255 characters. Either view_id or external_id is required.
|
78
|
+
# @option options [string] :view_id
|
79
|
+
# A unique identifier of the view to be updated. Either view_id or external_id is required.
|
80
|
+
# @option options [string] :hash
|
81
|
+
# A string that represents view state to protect against possible race conditions.
|
82
|
+
# @see https://api.slack.com/methods/views.update
|
83
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/views/views.update.json
|
84
|
+
def views_update(options = {})
|
85
|
+
throw ArgumentError.new('Required arguments :view missing') if options[:view].nil?
|
86
|
+
if options.key?(:view)
|
87
|
+
view = options[:view]
|
88
|
+
view = JSON.dump(view) unless view.is_a?(String)
|
89
|
+
options = options.merge(view: view)
|
90
|
+
end
|
91
|
+
post('views.update', options)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
# This file was auto-generated by lib/tasks/web.rake
|
3
|
+
|
4
|
+
module Slack
|
5
|
+
module Web
|
6
|
+
module Api
|
7
|
+
module Endpoints
|
8
|
+
module Workflows
|
9
|
+
#
|
10
|
+
# Indicate that an app's step in a workflow completed execution.
|
11
|
+
#
|
12
|
+
# @option options [string] :workflow_step_execute_id
|
13
|
+
# Context identifier that maps to the correct workflow step execution.
|
14
|
+
# @option options [object] :outputs
|
15
|
+
# Key-value object of outputs from your step. Keys of this object reflect the configured key properties of your outputs array from your workflow_step object.
|
16
|
+
# @see https://api.slack.com/methods/workflows.stepCompleted
|
17
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/workflows/workflows.stepCompleted.json
|
18
|
+
def workflows_stepCompleted(options = {})
|
19
|
+
throw ArgumentError.new('Required arguments :workflow_step_execute_id missing') if options[:workflow_step_execute_id].nil?
|
20
|
+
post('workflows.stepCompleted', options)
|
21
|
+
end
|
22
|
+
|
23
|
+
#
|
24
|
+
# Indicate that an app's step in a workflow failed to execute.
|
25
|
+
#
|
26
|
+
# @option options [object] :error
|
27
|
+
# A JSON-based object with a message property that should contain a human readable error message.
|
28
|
+
# @option options [string] :workflow_step_execute_id
|
29
|
+
# Context identifier that maps to the correct workflow step execution.
|
30
|
+
# @see https://api.slack.com/methods/workflows.stepFailed
|
31
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/workflows/workflows.stepFailed.json
|
32
|
+
def workflows_stepFailed(options = {})
|
33
|
+
throw ArgumentError.new('Required arguments :error missing') if options[:error].nil?
|
34
|
+
throw ArgumentError.new('Required arguments :workflow_step_execute_id missing') if options[:workflow_step_execute_id].nil?
|
35
|
+
post('workflows.stepFailed', options)
|
36
|
+
end
|
37
|
+
|
38
|
+
#
|
39
|
+
# Update the configuration for a workflow step.
|
40
|
+
#
|
41
|
+
# @option options [string] :workflow_step_edit_id
|
42
|
+
# A context identifier provided with view_submission payloads used to call back to workflows.updateStep.
|
43
|
+
# @option options [object] :inputs
|
44
|
+
# A JSON key-value map of inputs required from a user during configuration. This is the data your app expects to receive when the workflow step starts. Please note: the embedded variable format is set and replaced by the workflow system. You cannot create custom variables that will be replaced at runtime. Read more about variables in workflow steps here.
|
45
|
+
# @option options [array] :outputs
|
46
|
+
# An JSON array of output objects used during step execution. This is the data your app agrees to provide when your workflow step was executed.
|
47
|
+
# @option options [string] :step_image_url
|
48
|
+
# An optional field that can be used to override app image that is shown in the Workflow Builder.
|
49
|
+
# @option options [string] :step_name
|
50
|
+
# An optional field that can be used to override the step name that is shown in the Workflow Builder.
|
51
|
+
# @see https://api.slack.com/methods/workflows.updateStep
|
52
|
+
# @see https://github.com/slack-ruby/slack-api-ref/blob/master/methods/workflows/workflows.updateStep.json
|
53
|
+
def workflows_updateStep(options = {})
|
54
|
+
throw ArgumentError.new('Required arguments :workflow_step_edit_id missing') if options[:workflow_step_edit_id].nil?
|
55
|
+
post('workflows.updateStep', options)
|
56
|
+
end
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
@@ -1,48 +1,121 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
# This file was auto-generated by lib/tasks/web.rake
|
2
3
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
4
|
+
require_relative 'endpoints/admin_analytics'
|
5
|
+
require_relative 'endpoints/admin_apps'
|
6
|
+
require_relative 'endpoints/admin_apps_approved'
|
7
|
+
require_relative 'endpoints/admin_apps_requests'
|
8
|
+
require_relative 'endpoints/admin_apps_restricted'
|
9
|
+
require_relative 'endpoints/admin_auth_policy'
|
10
|
+
require_relative 'endpoints/admin_barriers'
|
11
|
+
require_relative 'endpoints/admin_conversations'
|
12
|
+
require_relative 'endpoints/admin_conversations_ekm'
|
13
|
+
require_relative 'endpoints/admin_conversations_restrictAccess'
|
14
|
+
require_relative 'endpoints/admin_emoji'
|
15
|
+
require_relative 'endpoints/admin_inviteRequests'
|
16
|
+
require_relative 'endpoints/admin_inviteRequests_approved'
|
17
|
+
require_relative 'endpoints/admin_inviteRequests_denied'
|
18
|
+
require_relative 'endpoints/admin_teams'
|
19
|
+
require_relative 'endpoints/admin_teams_admins'
|
20
|
+
require_relative 'endpoints/admin_teams_owners'
|
21
|
+
require_relative 'endpoints/admin_teams_settings'
|
22
|
+
require_relative 'endpoints/admin_usergroups'
|
23
|
+
require_relative 'endpoints/admin_users'
|
24
|
+
require_relative 'endpoints/admin_users_session'
|
25
|
+
require_relative 'endpoints/api'
|
26
|
+
require_relative 'endpoints/apps'
|
27
|
+
require_relative 'endpoints/apps_connections'
|
28
|
+
require_relative 'endpoints/apps_event_authorizations'
|
29
|
+
require_relative 'endpoints/apps_manifest'
|
30
|
+
require_relative 'endpoints/auth'
|
31
|
+
require_relative 'endpoints/auth_teams'
|
32
|
+
require_relative 'endpoints/bots'
|
33
|
+
require_relative 'endpoints/calls'
|
34
|
+
require_relative 'endpoints/calls_participants'
|
35
|
+
require_relative 'endpoints/chat'
|
36
|
+
require_relative 'endpoints/chat_scheduledMessages'
|
37
|
+
require_relative 'endpoints/conversations'
|
38
|
+
require_relative 'endpoints/dialog'
|
39
|
+
require_relative 'endpoints/dnd'
|
40
|
+
require_relative 'endpoints/emoji'
|
41
|
+
require_relative 'endpoints/files'
|
42
|
+
require_relative 'endpoints/files_comments'
|
43
|
+
require_relative 'endpoints/files_remote'
|
44
|
+
require_relative 'endpoints/migration'
|
45
|
+
require_relative 'endpoints/oauth'
|
46
|
+
require_relative 'endpoints/oauth_v2'
|
47
|
+
require_relative 'endpoints/openid_connect'
|
48
|
+
require_relative 'endpoints/pins'
|
49
|
+
require_relative 'endpoints/reactions'
|
50
|
+
require_relative 'endpoints/reminders'
|
51
|
+
require_relative 'endpoints/rtm'
|
52
|
+
require_relative 'endpoints/search'
|
53
|
+
require_relative 'endpoints/stars'
|
54
|
+
require_relative 'endpoints/team'
|
55
|
+
require_relative 'endpoints/team_billing'
|
56
|
+
require_relative 'endpoints/team_preferences'
|
57
|
+
require_relative 'endpoints/team_profile'
|
58
|
+
require_relative 'endpoints/tooling_tokens'
|
59
|
+
require_relative 'endpoints/usergroups'
|
60
|
+
require_relative 'endpoints/usergroups_users'
|
61
|
+
require_relative 'endpoints/users'
|
62
|
+
require_relative 'endpoints/users_admin'
|
63
|
+
require_relative 'endpoints/users_prefs'
|
64
|
+
require_relative 'endpoints/users_profile'
|
65
|
+
require_relative 'endpoints/views'
|
66
|
+
require_relative 'endpoints/workflows'
|
25
67
|
|
26
68
|
module Slack
|
27
69
|
module Web
|
28
70
|
module Api
|
29
71
|
module Endpoints
|
30
|
-
include Slack::Web::Api::Mixins::
|
72
|
+
include Slack::Web::Api::Mixins::Conversations
|
31
73
|
include Slack::Web::Api::Mixins::Users
|
32
|
-
include Slack::Web::Api::Mixins::Groups
|
33
74
|
|
75
|
+
include AdminAnalytics
|
76
|
+
include AdminApps
|
77
|
+
include AdminAppsApproved
|
78
|
+
include AdminAppsRequests
|
79
|
+
include AdminAppsRestricted
|
80
|
+
include AdminAuthPolicy
|
81
|
+
include AdminBarriers
|
82
|
+
include AdminConversations
|
83
|
+
include AdminConversationsEkm
|
84
|
+
include AdminConversationsRestrictaccess
|
85
|
+
include AdminEmoji
|
86
|
+
include AdminInviterequests
|
87
|
+
include AdminInviterequestsApproved
|
88
|
+
include AdminInviterequestsDenied
|
89
|
+
include AdminTeams
|
90
|
+
include AdminTeamsAdmins
|
91
|
+
include AdminTeamsOwners
|
92
|
+
include AdminTeamsSettings
|
93
|
+
include AdminUsergroups
|
94
|
+
include AdminUsers
|
95
|
+
include AdminUsersSession
|
34
96
|
include Api
|
97
|
+
include Apps
|
98
|
+
include AppsConnections
|
99
|
+
include AppsEventAuthorizations
|
100
|
+
include AppsManifest
|
35
101
|
include Auth
|
36
|
-
include
|
102
|
+
include AuthTeams
|
103
|
+
include Bots
|
104
|
+
include Calls
|
105
|
+
include CallsParticipants
|
37
106
|
include Chat
|
107
|
+
include ChatScheduledmessages
|
108
|
+
include Conversations
|
109
|
+
include Dialog
|
38
110
|
include Dnd
|
39
111
|
include Emoji
|
40
|
-
include FilesComments
|
41
112
|
include Files
|
42
|
-
include
|
43
|
-
include
|
44
|
-
include
|
113
|
+
include FilesComments
|
114
|
+
include FilesRemote
|
115
|
+
include Migration
|
45
116
|
include Oauth
|
117
|
+
include OauthV2
|
118
|
+
include OpenidConnect
|
46
119
|
include Pins
|
47
120
|
include Reactions
|
48
121
|
include Reminders
|
@@ -50,9 +123,18 @@ module Slack
|
|
50
123
|
include Search
|
51
124
|
include Stars
|
52
125
|
include Team
|
126
|
+
include TeamBilling
|
127
|
+
include TeamPreferences
|
128
|
+
include TeamProfile
|
129
|
+
include ToolingTokens
|
53
130
|
include Usergroups
|
54
131
|
include UsergroupsUsers
|
55
132
|
include Users
|
133
|
+
include UsersAdmin
|
134
|
+
include UsersPrefs
|
135
|
+
include UsersProfile
|
136
|
+
include Views
|
137
|
+
include Workflows
|
56
138
|
end
|
57
139
|
end
|
58
140
|
end
|
data/lib/slack/web/api/error.rb
CHANGED
@@ -1,14 +1,8 @@
|
|
1
|
+
# frozen_string_literal: true
|
1
2
|
module Slack
|
2
3
|
module Web
|
3
4
|
module Api
|
4
|
-
|
5
|
-
attr_reader :response
|
6
|
-
|
7
|
-
def initialize(message, response = nil)
|
8
|
-
@response = response
|
9
|
-
super message
|
10
|
-
end
|
11
|
-
end
|
5
|
+
Error = Errors::SlackError
|
12
6
|
end
|
13
7
|
end
|
14
8
|
end
|