slack-ruby-client 0.11.0 → 2.7.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/.coveralls.yml +2 -0
- data/.github/FUNDING.yml +2 -0
- data/.github/dependabot.yml +6 -0
- data/.github/workflows/integration_test.yml +45 -0
- data/.github/workflows/lint.yml +14 -0
- data/.github/workflows/pr_lint.yml +21 -0
- data/.github/workflows/test.yml +56 -0
- data/.github/workflows/update_api.yml +81 -0
- data/.gitignore +7 -3
- data/.rubocop.yml +40 -2
- data/.rubocop_todo.yml +209 -55
- data/.ruby-version +1 -0
- data/CHANGELOG.md +257 -30
- data/CONTRIBUTING.md +44 -29
- data/Dangerfile +2 -0
- data/Gemfile +28 -6
- data/Gemfile.danger +6 -0
- data/LICENSE.md +1 -1
- data/README.md +473 -134
- data/RELEASING.md +2 -2
- data/Rakefile +2 -1
- data/SECURITY.md +9 -0
- data/UPGRADING.md +117 -3
- data/bin/commands/admin_analytics.rb +22 -0
- data/bin/commands/admin_apps.rb +57 -0
- data/bin/commands/admin_apps_activities.rb +32 -0
- data/bin/commands/admin_apps_approved.rb +24 -0
- data/bin/commands/admin_apps_config.rb +31 -0
- data/bin/commands/admin_apps_requests.rb +35 -0
- data/bin/commands/admin_apps_restricted.rb +24 -0
- data/bin/commands/admin_audit_anomaly_allow.rb +29 -0
- data/bin/commands/admin_auth_policy.rb +45 -0
- data/bin/commands/admin_barriers.rb +53 -0
- data/bin/commands/admin_conversations.rb +260 -0
- data/bin/commands/admin_conversations_ekm.rb +23 -0
- data/bin/commands/admin_conversations_restrictAccess.rb +43 -0
- data/bin/commands/admin_emoji.rb +60 -0
- data/bin/commands/admin_functions.rb +23 -0
- data/bin/commands/admin_functions_permissions.rb +31 -0
- data/bin/commands/admin_inviteRequests.rb +42 -0
- data/bin/commands/admin_inviteRequests_approved.rb +22 -0
- data/bin/commands/admin_inviteRequests_denied.rb +22 -0
- data/bin/commands/admin_roles.rb +46 -0
- data/bin/commands/admin_teams.rb +33 -0
- data/bin/commands/admin_teams_admins.rb +22 -0
- data/bin/commands/admin_teams_owners.rb +22 -0
- data/bin/commands/admin_teams_settings.rb +70 -0
- data/bin/commands/admin_usergroups.rb +54 -0
- data/bin/commands/admin_users.rb +106 -0
- data/bin/commands/admin_users_session.rb +84 -0
- data/bin/commands/admin_users_unsupportedVersions.rb +21 -0
- data/bin/commands/admin_workflows.rb +42 -0
- data/bin/commands/admin_workflows_collaborators.rb +31 -0
- data/bin/commands/admin_workflows_permissions.rb +21 -0
- data/bin/commands/admin_workflows_triggers_types_permissions.rb +31 -0
- data/bin/commands/api.rb +15 -9
- data/bin/commands/apps.rb +21 -0
- data/bin/commands/apps_activities.rb +32 -0
- data/bin/commands/apps_auth_external.rb +32 -0
- data/bin/commands/apps_connections.rb +19 -0
- data/bin/commands/apps_datastore.rb +116 -0
- data/bin/commands/apps_event_authorizations.rb +22 -0
- data/bin/commands/apps_manifest.rb +58 -0
- data/bin/commands/assistant_search.rb +27 -0
- data/bin/commands/assistant_threads.rb +45 -0
- data/bin/commands/auth.rb +22 -15
- data/bin/commands/auth_teams.rb +22 -0
- data/bin/commands/bookmarks.rb +60 -0
- data/bin/commands/bots.rb +16 -8
- data/bin/commands/calls.rb +58 -0
- data/bin/commands/calls_participants.rb +31 -0
- data/bin/commands/canvases.rb +41 -0
- data/bin/commands/canvases_access.rb +34 -0
- data/bin/commands/canvases_sections.rb +21 -0
- data/bin/commands/chat.rb +158 -99
- data/bin/commands/chat_scheduledMessages.rb +25 -0
- data/bin/commands/conversations.rb +241 -157
- data/bin/commands/conversations_canvases.rb +22 -0
- data/bin/commands/conversations_externalInvitePermissions.rb +22 -0
- data/bin/commands/conversations_requestSharedInvite.rb +48 -0
- data/bin/commands/dialog.rb +16 -9
- data/bin/commands/dnd.rb +47 -38
- data/bin/commands/emoji.rb +15 -7
- data/bin/commands/files.rb +113 -87
- data/bin/commands/files_comments.rb +16 -30
- data/bin/commands/files_remote.rb +84 -0
- data/bin/commands/functions.rb +31 -0
- data/bin/commands/functions_distributions_permissions.rb +61 -0
- data/bin/commands/functions_workflows_steps.rb +23 -0
- data/bin/commands/functions_workflows_steps_responses.rb +23 -0
- data/bin/commands/migration.rb +17 -9
- data/bin/commands/oauth.rb +19 -24
- data/bin/commands/oauth_v2.rb +35 -0
- data/bin/commands/openid_connect.rb +33 -0
- data/bin/commands/pins.rb +33 -30
- data/bin/commands/reactions.rb +53 -45
- data/bin/commands/reminders.rb +54 -41
- data/bin/commands/rtm.rb +16 -22
- data/bin/commands/search.rb +44 -33
- data/bin/commands/stars.rb +39 -29
- data/bin/commands/team.rb +50 -34
- data/bin/commands/team_billing.rb +19 -0
- data/bin/commands/team_externalTeams.rb +35 -0
- data/bin/commands/team_preferences.rb +19 -0
- data/bin/commands/team_profile.rb +15 -8
- data/bin/commands/tooling_tokens.rb +20 -0
- data/bin/commands/usergroups.rb +69 -53
- data/bin/commands/usergroups_users.rb +30 -19
- data/bin/commands/users.rb +114 -84
- data/bin/commands/users_admin.rb +29 -22
- data/bin/commands/users_discoverableContacts.rb +20 -0
- data/bin/commands/users_prefs.rb +14 -7
- data/bin/commands/users_profile.rb +27 -20
- data/bin/commands/views.rb +56 -0
- data/bin/commands/workflows.rb +44 -0
- data/bin/commands/workflows_triggers_permissions.rb +60 -0
- data/bin/slack +50 -46
- data/examples/files_upload_v2/.env.example +1 -0
- data/examples/{hi_real_time → files_upload_v2}/Gemfile +2 -2
- data/examples/files_upload_v2/README.md +13 -0
- data/examples/files_upload_v2/files_upload_v2.rb +45 -0
- 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_eventmachine → 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/examples/oauth_v2/.env.example +4 -0
- data/examples/oauth_v2/Gemfile +7 -0
- data/examples/oauth_v2/README.md +33 -0
- data/examples/oauth_v2/oauth_v2.rb +60 -0
- data/lib/slack/config.rb +2 -2
- data/lib/slack/events/config.rb +32 -0
- data/lib/slack/events/request.rb +76 -0
- data/lib/slack/logger.rb +6 -5
- data/lib/slack/messages/formatting.rb +66 -1
- data/lib/slack/messages/message.rb +1 -4
- data/lib/slack/real_time/api/message.rb +6 -3
- data/lib/slack/real_time/api/message_id.rb +1 -0
- data/lib/slack/real_time/api/ping.rb +5 -2
- data/lib/slack/real_time/api/templates/event_handler.erb +5 -1
- data/lib/slack/real_time/api/typing.rb +5 -2
- data/lib/slack/real_time/client.rb +117 -54
- data/lib/slack/real_time/concurrency/async.rb +142 -0
- data/lib/slack/real_time/concurrency.rb +2 -2
- data/lib/slack/real_time/config.rb +12 -13
- data/lib/slack/real_time/models/base.rb +1 -4
- data/lib/slack/real_time/models/bot.rb +1 -0
- data/lib/slack/real_time/models/channel.rb +5 -0
- data/lib/slack/real_time/models/im.rb +1 -0
- data/lib/slack/real_time/models/{group.rb → mpim.rb} +2 -1
- data/lib/slack/real_time/models/team.rb +1 -0
- data/lib/slack/real_time/models/user.rb +1 -0
- data/lib/slack/real_time/models.rb +3 -1
- data/lib/slack/real_time/socket.rb +49 -17
- data/lib/slack/real_time/stores/base.rb +28 -14
- data/lib/slack/real_time/stores/starter.rb +325 -287
- data/lib/slack/real_time/stores/store.rb +271 -186
- data/lib/slack/real_time/stores.rb +2 -7
- data/lib/slack/utils/security.rb +44 -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_activities.rb +53 -0
- data/lib/slack/web/api/endpoints/admin_apps_approved.rb +37 -0
- data/lib/slack/web/api/endpoints/admin_apps_config.rb +40 -0
- data/lib/slack/web/api/endpoints/admin_apps_requests.rb +53 -0
- data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +37 -0
- data/lib/slack/web/api/endpoints/admin_audit_anomaly_allow.rb +34 -0
- data/lib/slack/web/api/endpoints/admin_auth_policy.rb +72 -0
- data/lib/slack/web/api/endpoints/admin_barriers.rb +82 -0
- data/lib/slack/web/api/endpoints/admin_conversations.rb +397 -0
- data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +35 -0
- data/lib/slack/web/api/endpoints/admin_conversations_restrictAccess.rb +61 -0
- data/lib/slack/web/api/endpoints/admin_emoji.rb +88 -0
- data/lib/slack/web/api/endpoints/admin_functions.rb +36 -0
- data/lib/slack/web/api/endpoints/admin_functions_permissions.rb +41 -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_roles.rb +73 -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 +167 -0
- data/lib/slack/web/api/endpoints/admin_users_session.rb +121 -0
- data/lib/slack/web/api/endpoints/admin_users_unsupportedVersions.rb +25 -0
- data/lib/slack/web/api/endpoints/admin_workflows.rb +67 -0
- data/lib/slack/web/api/endpoints/admin_workflows_collaborators.rb +42 -0
- data/lib/slack/web/api/endpoints/admin_workflows_permissions.rb +26 -0
- data/lib/slack/web/api/endpoints/admin_workflows_triggers_types_permissions.rb +41 -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_activities.rb +54 -0
- data/lib/slack/web/api/endpoints/apps_auth_external.rb +41 -0
- data/lib/slack/web/api/endpoints/apps_connections.rb +21 -0
- data/lib/slack/web/api/endpoints/apps_datastore.rb +181 -0
- data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +34 -0
- data/lib/slack/web/api/endpoints/apps_manifest.rb +79 -0
- data/lib/slack/web/api/endpoints/assistant_search.rb +44 -0
- data/lib/slack/web/api/endpoints/assistant_threads.rb +68 -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 +90 -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/canvases.rb +54 -0
- data/lib/slack/web/api/endpoints/canvases_access.rb +47 -0
- data/lib/slack/web/api/endpoints/canvases_sections.rb +27 -0
- data/lib/slack/web/api/endpoints/chat.rb +172 -87
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +40 -0
- data/lib/slack/web/api/endpoints/conversations.rb +190 -64
- data/lib/slack/web/api/endpoints/conversations_canvases.rb +28 -0
- data/lib/slack/web/api/endpoints/conversations_externalInvitePermissions.rb +31 -0
- data/lib/slack/web/api/endpoints/conversations_requestSharedInvite.rb +73 -0
- data/lib/slack/web/api/endpoints/dialog.rb +6 -10
- data/lib/slack/web/api/endpoints/dnd.rb +11 -5
- data/lib/slack/web/api/endpoints/emoji.rb +3 -0
- data/lib/slack/web/api/endpoints/files.rb +85 -36
- 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/functions.rb +43 -0
- data/lib/slack/web/api/endpoints/functions_distributions_permissions.rb +84 -0
- data/lib/slack/web/api/endpoints/functions_workflows_steps.rb +30 -0
- data/lib/slack/web/api/endpoints/functions_workflows_steps_responses.rb +30 -0
- data/lib/slack/web/api/endpoints/migration.rb +6 -3
- data/lib/slack/web/api/endpoints/oauth.rb +10 -32
- data/lib/slack/web/api/endpoints/oauth_v2.rb +48 -0
- data/lib/slack/web/api/endpoints/openid_connect.rb +42 -0
- data/lib/slack/web/api/endpoints/pins.rb +11 -18
- data/lib/slack/web/api/endpoints/reactions.rb +31 -20
- data/lib/slack/web/api/endpoints/reminders.rb +25 -12
- data/lib/slack/web/api/endpoints/rtm.rb +4 -22
- data/lib/slack/web/api/endpoints/search.rb +33 -18
- data/lib/slack/web/api/endpoints/stars.rb +23 -10
- data/lib/slack/web/api/endpoints/team.rb +38 -7
- data/lib/slack/web/api/endpoints/team_billing.rb +21 -0
- data/lib/slack/web/api/endpoints/team_externalTeams.rb +53 -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 +44 -25
- data/lib/slack/web/api/endpoints/usergroups_users.rb +23 -14
- data/lib/slack/web/api/endpoints/users.rb +57 -18
- data/lib/slack/web/api/endpoints/users_admin.rb +5 -2
- data/lib/slack/web/api/endpoints/users_discoverableContacts.rb +24 -0
- data/lib/slack/web/api/endpoints/users_prefs.rb +2 -0
- data/lib/slack/web/api/endpoints/users_profile.rb +11 -9
- data/lib/slack/web/api/endpoints/views.rb +86 -0
- data/lib/slack/web/api/endpoints/workflows.rb +63 -0
- data/lib/slack/web/api/endpoints/workflows_triggers_permissions.rb +87 -0
- data/lib/slack/web/api/endpoints.rb +136 -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 +1396 -0
- data/lib/slack/web/api/helpers/files.rb +97 -0
- data/lib/slack/web/api/helpers.rb +13 -0
- data/lib/slack/web/api/mixins/conversations.id.rb +47 -0
- data/lib/slack/web/api/mixins/ids.id.rb +4 -3
- data/lib/slack/web/api/mixins/users.id.rb +18 -4
- data/lib/slack/web/api/mixins/users.search.rb +3 -1
- data/lib/slack/web/api/mixins.rb +2 -2
- data/lib/slack/web/api/options.rb +26 -0
- data/lib/slack/web/api/patches/.gitkeep +0 -0
- data/lib/slack/web/api/templates/command.erb +19 -12
- 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 +23 -3
- data/lib/slack/web/api/templates/method_spec.erb +40 -3
- data/lib/slack/web/client.rb +4 -1
- data/lib/slack/web/config.rb +9 -2
- data/lib/slack/web/faraday/connection.rb +11 -20
- data/lib/slack/web/faraday/options.rb +24 -0
- data/lib/slack/web/faraday/request.rb +6 -1
- data/lib/slack/web/faraday/response/raise_error.rb +14 -8
- 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 +18 -6
- data/lib/slack.rb +1 -0
- data/lib/slack_ruby_client.rb +1 -0
- data/lib/tasks/git.rake +1 -0
- data/lib/tasks/real_time.rake +51 -21
- data/lib/tasks/update.rake +1 -0
- data/lib/tasks/web.rake +43 -17
- data/slack-ruby-client.gemspec +10 -14
- metadata +191 -307
- data/.travis.yml +0 -30
- data/bin/commands/apps_permissions.rb +0 -22
- data/bin/commands/channels.rb +0 -175
- data/bin/commands/groups.rb +0 -172
- data/bin/commands/im.rb +0 -67
- data/bin/commands/mpim.rb +0 -63
- data/bin/commands.rb +0 -33
- data/examples/hi_real_time/hi.gif +0 -0
- data/examples/hi_real_time/hi.rb +0 -37
- data/examples/hi_real_time_async_celluloid/Gemfile +0 -6
- data/examples/hi_real_time_async_celluloid/hi.rb +0 -36
- data/examples/hi_real_time_async_eventmachine/Procfile +0 -2
- 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/endpoints/apps_permissions.rb +0 -35
- data/lib/slack/web/api/endpoints/channels.rb +0 -265
- data/lib/slack/web/api/endpoints/groups.rb +0 -255
- data/lib/slack/web/api/endpoints/im.rb +0 -113
- data/lib/slack/web/api/endpoints/mpim.rb +0 -98
- data/lib/slack/web/api/endpoints/presence.rb +0 -23
- data/lib/slack/web/api/mixins/channels.id.json +0 -20
- data/lib/slack/web/api/mixins/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 -21
- data/lib/slack/web/api/patches/chat.4.postEphemeral-attachments-support.patch +0 -17
- data/lib/slack/web/api/patches/dialog.1.open-json-support.patch +0 -17
- data/lib/slack/web/api/templates/commands.erb +0 -5
- data/screenshots/register-bot.png +0 -0
- data/spec/fixtures/slack/web/429_error.yml +0 -85
- data/spec/fixtures/slack/web/auth_test_error.yml +0 -48
- data/spec/fixtures/slack/web/auth_test_success.yml +0 -57
- data/spec/fixtures/slack/web/channels_info.yml +0 -46
- data/spec/fixtures/slack/web/groups_info.yml +0 -43
- data/spec/fixtures/slack/web/paginated_users_list.yml +0 -181
- data/spec/fixtures/slack/web/rtm_connect.yml +0 -70
- data/spec/fixtures/slack/web/rtm_start.yml +0 -104
- data/spec/fixtures/slack/web/users_info.yml +0 -130
- data/spec/fixtures/slack/web/users_list.yml +0 -72
- data/spec/integration/integration_spec.rb +0 -139
- data/spec/slack/config_spec.rb +0 -14
- data/spec/slack/messages/formatting_spec.rb +0 -43
- data/spec/slack/real_time/api/message_spec.rb +0 -15
- data/spec/slack/real_time/api/ping_spec.rb +0 -15
- data/spec/slack/real_time/api/typing_spec.rb +0 -15
- data/spec/slack/real_time/client_spec.rb +0 -425
- 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/real_time/concurrency/it_behaves_like_a_realtime_socket.rb +0 -19
- data/spec/slack/real_time/event_handlers/bot_spec.rb +0 -44
- data/spec/slack/real_time/event_handlers/channel_spec.rb +0 -116
- data/spec/slack/real_time/event_handlers/event_handlers_spec.rb +0 -15
- data/spec/slack/real_time/event_handlers/group_spec.rb +0 -90
- data/spec/slack/real_time/event_handlers/im_spec.rb +0 -47
- data/spec/slack/real_time/event_handlers/team_spec.rb +0 -62
- data/spec/slack/real_time/event_handlers/user_spec.rb +0 -63
- data/spec/slack/real_time/rtm_connect_spec.rb +0 -13
- data/spec/slack/real_time/rtm_start_spec.rb +0 -13
- data/spec/slack/real_time/store_spec.rb +0 -11
- data/spec/slack/slack_spec.rb +0 -58
- data/spec/slack/version_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/api_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/apps_permissions_spec.rb +0 -15
- data/spec/slack/web/api/endpoints/bots_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/conversations_spec.rb +0 -100
- data/spec/slack/web/api/endpoints/custom_specs/auth_spec.rb +0 -25
- data/spec/slack/web/api/endpoints/custom_specs/channels_spec.rb +0 -11
- data/spec/slack/web/api/endpoints/custom_specs/chat_spec.rb +0 -105
- data/spec/slack/web/api/endpoints/custom_specs/dialog_spec.rb +0 -28
- data/spec/slack/web/api/endpoints/custom_specs/groups_spec.rb +0 -11
- data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +0 -33
- data/spec/slack/web/api/endpoints/dnd_spec.rb +0 -12
- data/spec/slack/web/api/endpoints/emoji_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/files_comments_spec.rb +0 -34
- data/spec/slack/web/api/endpoints/files_spec.rb +0 -43
- data/spec/slack/web/api/endpoints/im_spec.rb +0 -38
- data/spec/slack/web/api/endpoints/migration_spec.rb +0 -12
- data/spec/slack/web/api/endpoints/mpim_spec.rb +0 -38
- data/spec/slack/web/api/endpoints/oauth_spec.rb +0 -29
- data/spec/slack/web/api/endpoints/pins_spec.rb +0 -22
- data/spec/slack/web/api/endpoints/reactions_spec.rb +0 -17
- data/spec/slack/web/api/endpoints/reminders_spec.rb +0 -30
- data/spec/slack/web/api/endpoints/rtm_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/search_spec.rb +0 -22
- data/spec/slack/web/api/endpoints/stars_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/team_profile_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/team_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/usergroups_spec.rb +0 -27
- data/spec/slack/web/api/endpoints/usergroups_users_spec.rb +0 -20
- data/spec/slack/web/api/endpoints/users_admin_spec.rb +0 -17
- data/spec/slack/web/api/endpoints/users_prefs_spec.rb +0 -7
- data/spec/slack/web/api/endpoints/users_profile_spec.rb +0 -7
- data/spec/slack/web/api/error_spec.rb +0 -14
- data/spec/slack/web/api/errors/slack_error_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
- data/spec/slack/web/api/mixins/users_spec.rb +0 -39
- data/spec/slack/web/api/pagination/cursor_spec.rb +0 -70
- data/spec/slack/web/client_spec.rb +0 -174
- data/spec/spec_helper.rb +0 -14
- data/spec/support/queue_with_timeout.rb +0 -34
- data/spec/support/real_time/concurrency/mock.rb +0 -30
- data/spec/support/real_time/connected_client.rb +0 -21
- data/spec/support/real_time/event.rb +0 -11
- data/spec/support/token.rb +0 -10
- data/spec/support/vcr.rb +0 -9
- /data/examples/{hi_real_time_async_celluloid → hi_real_time_async_async}/Procfile +0 -0
data/.travis.yml
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
|
3
|
-
cache: bundler
|
4
|
-
|
5
|
-
rvm:
|
6
|
-
- 2.2
|
7
|
-
- 2.1
|
8
|
-
- 2.3.4
|
9
|
-
- ruby-head
|
10
|
-
- jruby-head
|
11
|
-
|
12
|
-
matrix:
|
13
|
-
include:
|
14
|
-
- rvm: 2.4.1
|
15
|
-
script:
|
16
|
-
- bundle exec danger
|
17
|
-
- rvm: 2.4.1
|
18
|
-
env: CONCURRENCY=celluloid-io
|
19
|
-
- rvm: 2.4.1
|
20
|
-
env: CONCURRENCY=faye-websocket
|
21
|
-
allow_failures:
|
22
|
-
- rvm: ruby-head
|
23
|
-
- rvm: jruby-head
|
24
|
-
|
25
|
-
git:
|
26
|
-
submodules: false
|
27
|
-
|
28
|
-
before_install:
|
29
|
-
- gem update bundler
|
30
|
-
- gem update --system
|
@@ -1,22 +0,0 @@
|
|
1
|
-
# This file was auto-generated by lib/tasks/web.rake
|
2
|
-
|
3
|
-
desc 'AppsPermissions methods.'
|
4
|
-
command 'apps_permissions' do |g|
|
5
|
-
g.desc 'Returns list of permissions this app has on a team.'
|
6
|
-
g.long_desc %( Returns list of permissions this app has on a team. )
|
7
|
-
g.command 'info' do |c|
|
8
|
-
c.action do |_global_options, options, _args|
|
9
|
-
puts JSON.dump($client.apps_permissions_info(options))
|
10
|
-
end
|
11
|
-
end
|
12
|
-
|
13
|
-
g.desc 'Allows an app to request additional scopes'
|
14
|
-
g.long_desc %( Allows an app to request additional scopes )
|
15
|
-
g.command 'request' do |c|
|
16
|
-
c.flag 'scopes', desc: 'A comma separated list of scopes to request for.'
|
17
|
-
c.flag 'trigger_id', desc: 'Token used to trigger the permissions API.'
|
18
|
-
c.action do |_global_options, options, _args|
|
19
|
-
puts JSON.dump($client.apps_permissions_request(options))
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
data/bin/commands/channels.rb
DELETED
@@ -1,175 +0,0 @@
|
|
1
|
-
# This file was auto-generated by lib/tasks/web.rake
|
2
|
-
|
3
|
-
desc "Get info on your team's Slack channels, create or archive channels, invite users, set the topic and purpose, and mark a channel as read."
|
4
|
-
command 'channels' do |g|
|
5
|
-
g.desc 'Archives a channel.'
|
6
|
-
g.long_desc %( Archives a channel. )
|
7
|
-
g.command 'archive' do |c|
|
8
|
-
c.flag 'channel', desc: 'Channel to archive.'
|
9
|
-
c.action do |_global_options, options, _args|
|
10
|
-
puts JSON.dump($client.channels_archive(options))
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
g.desc 'Creates a channel.'
|
15
|
-
g.long_desc %( Creates a channel. )
|
16
|
-
g.command 'create' do |c|
|
17
|
-
c.flag 'name', desc: 'Name of channel to create.'
|
18
|
-
c.flag 'validate', desc: 'Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.'
|
19
|
-
c.action do |_global_options, options, _args|
|
20
|
-
puts JSON.dump($client.channels_create(options))
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
g.desc 'Delete a channel (undocumented)'
|
25
|
-
g.long_desc %( Delete a channel )
|
26
|
-
g.command 'delete' do |c|
|
27
|
-
c.flag 'channel', desc: 'Channel to delete.'
|
28
|
-
c.action do |_global_options, options, _args|
|
29
|
-
puts JSON.dump($client.channels_delete(options))
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
g.desc 'Fetches history of messages and events from a channel.'
|
34
|
-
g.long_desc %( Fetches history of messages and events from a channel. )
|
35
|
-
g.command 'history' do |c|
|
36
|
-
c.flag 'channel', desc: 'Channel to fetch history for.'
|
37
|
-
c.flag 'inclusive', desc: 'Include messages with latest or oldest timestamp in results.'
|
38
|
-
c.flag 'latest', desc: 'End of time range of messages to include in results.'
|
39
|
-
c.flag 'oldest', desc: 'Start of time range of messages to include in results.'
|
40
|
-
c.flag 'unreads', desc: 'Include unread_count_display in the output?.'
|
41
|
-
c.action do |_global_options, options, _args|
|
42
|
-
puts JSON.dump($client.channels_history(options))
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
g.desc 'This method returns the ID of a team channel.'
|
47
|
-
g.long_desc %( This method returns the ID of a team channel. )
|
48
|
-
g.command 'id' do |c|
|
49
|
-
c.flag 'channel', desc: 'Channel to get ID for, prefixed with #.'
|
50
|
-
c.action do |_global_options, options, _args|
|
51
|
-
puts JSON.dump($client.channels_id(options))
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
g.desc 'Gets information about a channel.'
|
56
|
-
g.long_desc %( Gets information about a channel. )
|
57
|
-
g.command 'info' do |c|
|
58
|
-
c.flag 'channel', desc: 'Channel to get info on.'
|
59
|
-
c.flag 'include_locale', desc: 'Set this to true to receive the locale for this channel. Defaults to false.'
|
60
|
-
c.action do |_global_options, options, _args|
|
61
|
-
puts JSON.dump($client.channels_info(options))
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
g.desc 'Invites a user to a channel.'
|
66
|
-
g.long_desc %( Invites a user to a channel. )
|
67
|
-
g.command 'invite' do |c|
|
68
|
-
c.flag 'channel', desc: 'Channel to invite user to.'
|
69
|
-
c.flag 'user', desc: 'User to invite to channel.'
|
70
|
-
c.action do |_global_options, options, _args|
|
71
|
-
puts JSON.dump($client.channels_invite(options))
|
72
|
-
end
|
73
|
-
end
|
74
|
-
|
75
|
-
g.desc 'Joins a channel, creating it if needed.'
|
76
|
-
g.long_desc %( Joins a channel, creating it if needed. )
|
77
|
-
g.command 'join' do |c|
|
78
|
-
c.flag 'name', desc: 'Name of channel to join.'
|
79
|
-
c.flag 'validate', desc: 'Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.'
|
80
|
-
c.action do |_global_options, options, _args|
|
81
|
-
puts JSON.dump($client.channels_join(options))
|
82
|
-
end
|
83
|
-
end
|
84
|
-
|
85
|
-
g.desc 'Removes a user from a channel.'
|
86
|
-
g.long_desc %( Removes a user from a channel. )
|
87
|
-
g.command 'kick' do |c|
|
88
|
-
c.flag 'channel', desc: 'Channel to remove user from.'
|
89
|
-
c.flag 'user', desc: 'User to remove from channel.'
|
90
|
-
c.action do |_global_options, options, _args|
|
91
|
-
puts JSON.dump($client.channels_kick(options))
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
|
-
g.desc 'Leaves a channel.'
|
96
|
-
g.long_desc %( Leaves a channel. )
|
97
|
-
g.command 'leave' do |c|
|
98
|
-
c.flag 'channel', desc: 'Channel to leave.'
|
99
|
-
c.action do |_global_options, options, _args|
|
100
|
-
puts JSON.dump($client.channels_leave(options))
|
101
|
-
end
|
102
|
-
end
|
103
|
-
|
104
|
-
g.desc 'Lists all channels in a Slack team.'
|
105
|
-
g.long_desc %( Lists all channels in a Slack team. )
|
106
|
-
g.command 'list' do |c|
|
107
|
-
c.flag 'cursor', desc: "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."
|
108
|
-
c.flag 'exclude_archived', desc: 'Exclude archived channels from the list.'
|
109
|
-
c.flag 'exclude_members', desc: 'Exclude the members collection from each channel.'
|
110
|
-
c.flag 'limit', desc: "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."
|
111
|
-
c.action do |_global_options, options, _args|
|
112
|
-
puts JSON.dump($client.channels_list(options))
|
113
|
-
end
|
114
|
-
end
|
115
|
-
|
116
|
-
g.desc 'Sets the read cursor in a channel.'
|
117
|
-
g.long_desc %( Sets the read cursor in a channel. )
|
118
|
-
g.command 'mark' do |c|
|
119
|
-
c.flag 'channel', desc: 'Channel to set reading cursor in.'
|
120
|
-
c.flag 'ts', desc: 'Timestamp of the most recently seen message.'
|
121
|
-
c.action do |_global_options, options, _args|
|
122
|
-
puts JSON.dump($client.channels_mark(options))
|
123
|
-
end
|
124
|
-
end
|
125
|
-
|
126
|
-
g.desc 'Renames a channel.'
|
127
|
-
g.long_desc %( Renames a channel. )
|
128
|
-
g.command 'rename' do |c|
|
129
|
-
c.flag 'channel', desc: 'Channel to rename.'
|
130
|
-
c.flag 'name', desc: 'New name for channel.'
|
131
|
-
c.flag 'validate', desc: 'Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.'
|
132
|
-
c.action do |_global_options, options, _args|
|
133
|
-
puts JSON.dump($client.channels_rename(options))
|
134
|
-
end
|
135
|
-
end
|
136
|
-
|
137
|
-
g.desc 'Retrieve a thread of messages posted to a channel'
|
138
|
-
g.long_desc %( Retrieve a thread of messages posted to a channel )
|
139
|
-
g.command 'replies' do |c|
|
140
|
-
c.flag 'channel', desc: 'Channel to fetch thread from.'
|
141
|
-
c.flag 'thread_ts', desc: "Unique identifier of a thread's parent message."
|
142
|
-
c.action do |_global_options, options, _args|
|
143
|
-
puts JSON.dump($client.channels_replies(options))
|
144
|
-
end
|
145
|
-
end
|
146
|
-
|
147
|
-
g.desc 'Sets the purpose for a channel.'
|
148
|
-
g.long_desc %( Sets the purpose for a channel. )
|
149
|
-
g.command 'setPurpose' do |c|
|
150
|
-
c.flag 'channel', desc: 'Channel to set the purpose of.'
|
151
|
-
c.flag 'purpose', desc: 'The new purpose.'
|
152
|
-
c.action do |_global_options, options, _args|
|
153
|
-
puts JSON.dump($client.channels_setPurpose(options))
|
154
|
-
end
|
155
|
-
end
|
156
|
-
|
157
|
-
g.desc 'Sets the topic for a channel.'
|
158
|
-
g.long_desc %( Sets the topic for a channel. )
|
159
|
-
g.command 'setTopic' do |c|
|
160
|
-
c.flag 'channel', desc: 'Channel to set the topic of.'
|
161
|
-
c.flag 'topic', desc: 'The new topic.'
|
162
|
-
c.action do |_global_options, options, _args|
|
163
|
-
puts JSON.dump($client.channels_setTopic(options))
|
164
|
-
end
|
165
|
-
end
|
166
|
-
|
167
|
-
g.desc 'Unarchives a channel.'
|
168
|
-
g.long_desc %( Unarchives a channel. )
|
169
|
-
g.command 'unarchive' do |c|
|
170
|
-
c.flag 'channel', desc: 'Channel to unarchive.'
|
171
|
-
c.action do |_global_options, options, _args|
|
172
|
-
puts JSON.dump($client.channels_unarchive(options))
|
173
|
-
end
|
174
|
-
end
|
175
|
-
end
|
data/bin/commands/groups.rb
DELETED
@@ -1,172 +0,0 @@
|
|
1
|
-
# This file was auto-generated by lib/tasks/web.rake
|
2
|
-
|
3
|
-
desc "Get info on your team's private channels."
|
4
|
-
command 'groups' do |g|
|
5
|
-
g.desc 'Archives a private channel.'
|
6
|
-
g.long_desc %( Archives a private channel. )
|
7
|
-
g.command 'archive' do |c|
|
8
|
-
c.flag 'channel', desc: 'Private channel to archive.'
|
9
|
-
c.action do |_global_options, options, _args|
|
10
|
-
puts JSON.dump($client.groups_archive(options))
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
g.desc 'Creates a private channel.'
|
15
|
-
g.long_desc %( Creates a private channel. )
|
16
|
-
g.command 'create' do |c|
|
17
|
-
c.flag 'name', desc: 'Name of private channel to create.'
|
18
|
-
c.flag 'validate', desc: 'Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.'
|
19
|
-
c.action do |_global_options, options, _args|
|
20
|
-
puts JSON.dump($client.groups_create(options))
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
g.desc 'Clones and archives a private channel.'
|
25
|
-
g.long_desc %( Clones and archives a private channel. )
|
26
|
-
g.command 'createChild' do |c|
|
27
|
-
c.flag 'channel', desc: 'Private channel to clone and archive.'
|
28
|
-
c.action do |_global_options, options, _args|
|
29
|
-
puts JSON.dump($client.groups_createChild(options))
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
g.desc 'Fetches history of messages and events from a private channel.'
|
34
|
-
g.long_desc %( Fetches history of messages and events from a private channel. )
|
35
|
-
g.command 'history' do |c|
|
36
|
-
c.flag 'channel', desc: 'Private channel to fetch history for.'
|
37
|
-
c.flag 'inclusive', desc: 'Include messages with latest or oldest timestamp in results.'
|
38
|
-
c.flag 'latest', desc: 'End of time range of messages to include in results.'
|
39
|
-
c.flag 'oldest', desc: 'Start of time range of messages to include in results.'
|
40
|
-
c.flag 'unreads', desc: 'Include unread_count_display in the output?.'
|
41
|
-
c.action do |_global_options, options, _args|
|
42
|
-
puts JSON.dump($client.groups_history(options))
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
g.desc 'This method returns the ID of a group.'
|
47
|
-
g.long_desc %( This method returns the ID of a group. )
|
48
|
-
g.command 'id' do |c|
|
49
|
-
c.flag 'channel', desc: 'Group channel to get ID for, prefixed with #.'
|
50
|
-
c.action do |_global_options, options, _args|
|
51
|
-
puts JSON.dump($client.groups_id(options))
|
52
|
-
end
|
53
|
-
end
|
54
|
-
|
55
|
-
g.desc 'Gets information about a private channel.'
|
56
|
-
g.long_desc %( Gets information about a private channel. )
|
57
|
-
g.command 'info' do |c|
|
58
|
-
c.flag 'channel', desc: 'Private channel to get info on.'
|
59
|
-
c.flag 'include_locale', desc: 'Set this to true to receive the locale for this group. Defaults to false.'
|
60
|
-
c.action do |_global_options, options, _args|
|
61
|
-
puts JSON.dump($client.groups_info(options))
|
62
|
-
end
|
63
|
-
end
|
64
|
-
|
65
|
-
g.desc 'Invites a user to a private channel.'
|
66
|
-
g.long_desc %( Invites a user to a private channel. )
|
67
|
-
g.command 'invite' do |c|
|
68
|
-
c.flag 'channel', desc: 'Private channel to invite user to.'
|
69
|
-
c.flag 'user', desc: 'User to invite.'
|
70
|
-
c.action do |_global_options, options, _args|
|
71
|
-
puts JSON.dump($client.groups_invite(options))
|
72
|
-
end
|
73
|
-
end
|
74
|
-
|
75
|
-
g.desc 'Removes a user from a private channel.'
|
76
|
-
g.long_desc %( Removes a user from a private channel. )
|
77
|
-
g.command 'kick' do |c|
|
78
|
-
c.flag 'channel', desc: 'Private channel to remove user from.'
|
79
|
-
c.flag 'user', desc: 'User to remove from private channel.'
|
80
|
-
c.action do |_global_options, options, _args|
|
81
|
-
puts JSON.dump($client.groups_kick(options))
|
82
|
-
end
|
83
|
-
end
|
84
|
-
|
85
|
-
g.desc 'Leaves a private channel.'
|
86
|
-
g.long_desc %( Leaves a private channel. )
|
87
|
-
g.command 'leave' do |c|
|
88
|
-
c.flag 'channel', desc: 'Private channel to leave.'
|
89
|
-
c.action do |_global_options, options, _args|
|
90
|
-
puts JSON.dump($client.groups_leave(options))
|
91
|
-
end
|
92
|
-
end
|
93
|
-
|
94
|
-
g.desc 'Lists private channels that the calling user has access to.'
|
95
|
-
g.long_desc %( Lists private channels that the calling user has access to. )
|
96
|
-
g.command 'list' do |c|
|
97
|
-
c.flag 'exclude_archived', desc: "Don't return archived private channels."
|
98
|
-
c.flag 'exclude_members', desc: 'Exclude the members from each group.'
|
99
|
-
c.action do |_global_options, options, _args|
|
100
|
-
puts JSON.dump($client.groups_list(options))
|
101
|
-
end
|
102
|
-
end
|
103
|
-
|
104
|
-
g.desc 'Sets the read cursor in a private channel.'
|
105
|
-
g.long_desc %( Sets the read cursor in a private channel. )
|
106
|
-
g.command 'mark' do |c|
|
107
|
-
c.flag 'channel', desc: 'Private channel to set reading cursor in.'
|
108
|
-
c.flag 'ts', desc: 'Timestamp of the most recently seen message.'
|
109
|
-
c.action do |_global_options, options, _args|
|
110
|
-
puts JSON.dump($client.groups_mark(options))
|
111
|
-
end
|
112
|
-
end
|
113
|
-
|
114
|
-
g.desc 'Opens a private channel.'
|
115
|
-
g.long_desc %( Opens a private channel. )
|
116
|
-
g.command 'open' do |c|
|
117
|
-
c.flag 'channel', desc: 'Private channel to open.'
|
118
|
-
c.action do |_global_options, options, _args|
|
119
|
-
puts JSON.dump($client.groups_open(options))
|
120
|
-
end
|
121
|
-
end
|
122
|
-
|
123
|
-
g.desc 'Renames a private channel.'
|
124
|
-
g.long_desc %( Renames a private channel. )
|
125
|
-
g.command 'rename' do |c|
|
126
|
-
c.flag 'channel', desc: 'Private channel to rename.'
|
127
|
-
c.flag 'name', desc: 'New name for private channel.'
|
128
|
-
c.flag 'validate', desc: 'Whether to return errors on invalid channel name instead of modifying it to meet the specified criteria.'
|
129
|
-
c.action do |_global_options, options, _args|
|
130
|
-
puts JSON.dump($client.groups_rename(options))
|
131
|
-
end
|
132
|
-
end
|
133
|
-
|
134
|
-
g.desc 'Retrieve a thread of messages posted to a private channel'
|
135
|
-
g.long_desc %( Retrieve a thread of messages posted to a private channel )
|
136
|
-
g.command 'replies' do |c|
|
137
|
-
c.flag 'channel', desc: 'Private channel to fetch thread from.'
|
138
|
-
c.flag 'thread_ts', desc: "Unique identifier of a thread's parent message."
|
139
|
-
c.action do |_global_options, options, _args|
|
140
|
-
puts JSON.dump($client.groups_replies(options))
|
141
|
-
end
|
142
|
-
end
|
143
|
-
|
144
|
-
g.desc 'Sets the purpose for a private channel.'
|
145
|
-
g.long_desc %( Sets the purpose for a private channel. )
|
146
|
-
g.command 'setPurpose' do |c|
|
147
|
-
c.flag 'channel', desc: 'Private channel to set the purpose of.'
|
148
|
-
c.flag 'purpose', desc: 'The new purpose.'
|
149
|
-
c.action do |_global_options, options, _args|
|
150
|
-
puts JSON.dump($client.groups_setPurpose(options))
|
151
|
-
end
|
152
|
-
end
|
153
|
-
|
154
|
-
g.desc 'Sets the topic for a private channel.'
|
155
|
-
g.long_desc %( Sets the topic for a private channel. )
|
156
|
-
g.command 'setTopic' do |c|
|
157
|
-
c.flag 'channel', desc: 'Private channel to set the topic of.'
|
158
|
-
c.flag 'topic', desc: 'The new topic.'
|
159
|
-
c.action do |_global_options, options, _args|
|
160
|
-
puts JSON.dump($client.groups_setTopic(options))
|
161
|
-
end
|
162
|
-
end
|
163
|
-
|
164
|
-
g.desc 'Unarchives a private channel.'
|
165
|
-
g.long_desc %( Unarchives a private channel. )
|
166
|
-
g.command 'unarchive' do |c|
|
167
|
-
c.flag 'channel', desc: 'Private channel to unarchive.'
|
168
|
-
c.action do |_global_options, options, _args|
|
169
|
-
puts JSON.dump($client.groups_unarchive(options))
|
170
|
-
end
|
171
|
-
end
|
172
|
-
end
|
data/bin/commands/im.rb
DELETED
@@ -1,67 +0,0 @@
|
|
1
|
-
# This file was auto-generated by lib/tasks/web.rake
|
2
|
-
|
3
|
-
desc 'Get info on your direct messages.'
|
4
|
-
command 'im' do |g|
|
5
|
-
g.desc 'Close a direct message channel.'
|
6
|
-
g.long_desc %( Close a direct message channel. )
|
7
|
-
g.command 'close' do |c|
|
8
|
-
c.flag 'channel', desc: 'Direct message channel to close.'
|
9
|
-
c.action do |_global_options, options, _args|
|
10
|
-
puts JSON.dump($client.im_close(options))
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
g.desc 'Fetches history of messages and events from direct message channel.'
|
15
|
-
g.long_desc %( Fetches history of messages and events from direct message channel. )
|
16
|
-
g.command 'history' do |c|
|
17
|
-
c.flag 'channel', desc: 'Direct message channel to fetch history for.'
|
18
|
-
c.flag 'inclusive', desc: 'Include messages with latest or oldest timestamp in results.'
|
19
|
-
c.flag 'latest', desc: 'End of time range of messages to include in results.'
|
20
|
-
c.flag 'oldest', desc: 'Start of time range of messages to include in results.'
|
21
|
-
c.flag 'unreads', desc: 'Include unread_count_display in the output?.'
|
22
|
-
c.action do |_global_options, options, _args|
|
23
|
-
puts JSON.dump($client.im_history(options))
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
g.desc 'Lists direct message channels for the calling user.'
|
28
|
-
g.long_desc %( Lists direct message channels for the calling user. )
|
29
|
-
g.command 'list' do |c|
|
30
|
-
c.flag 'cursor', desc: "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."
|
31
|
-
c.flag 'limit', desc: "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."
|
32
|
-
c.action do |_global_options, options, _args|
|
33
|
-
puts JSON.dump($client.im_list(options))
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
g.desc 'Sets the read cursor in a direct message channel.'
|
38
|
-
g.long_desc %( Sets the read cursor in a direct message channel. )
|
39
|
-
g.command 'mark' do |c|
|
40
|
-
c.flag 'channel', desc: 'Direct message channel to set reading cursor in.'
|
41
|
-
c.flag 'ts', desc: 'Timestamp of the most recently seen message.'
|
42
|
-
c.action do |_global_options, options, _args|
|
43
|
-
puts JSON.dump($client.im_mark(options))
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
g.desc 'Opens a direct message channel.'
|
48
|
-
g.long_desc %( Opens a direct message channel. )
|
49
|
-
g.command 'open' do |c|
|
50
|
-
c.flag 'user', desc: 'User to open a direct message channel with.'
|
51
|
-
c.flag 'include_locale', desc: 'Set this to true to receive the locale for this im. Defaults to false.'
|
52
|
-
c.flag 'return_im', desc: 'Boolean, indicates you want the full IM channel definition in the response.'
|
53
|
-
c.action do |_global_options, options, _args|
|
54
|
-
puts JSON.dump($client.im_open(options))
|
55
|
-
end
|
56
|
-
end
|
57
|
-
|
58
|
-
g.desc 'Retrieve a thread of messages posted to a direct message conversation'
|
59
|
-
g.long_desc %( Retrieve a thread of messages posted to a direct message conversation )
|
60
|
-
g.command 'replies' do |c|
|
61
|
-
c.flag 'channel', desc: 'Direct message channel to fetch thread from.'
|
62
|
-
c.flag 'thread_ts', desc: "Unique identifier of a thread's parent message."
|
63
|
-
c.action do |_global_options, options, _args|
|
64
|
-
puts JSON.dump($client.im_replies(options))
|
65
|
-
end
|
66
|
-
end
|
67
|
-
end
|
data/bin/commands/mpim.rb
DELETED
@@ -1,63 +0,0 @@
|
|
1
|
-
# This file was auto-generated by lib/tasks/web.rake
|
2
|
-
|
3
|
-
desc 'Get info on your multiparty direct messages.'
|
4
|
-
command 'mpim' do |g|
|
5
|
-
g.desc 'Closes a multiparty direct message channel.'
|
6
|
-
g.long_desc %( Closes a multiparty direct message channel. )
|
7
|
-
g.command 'close' do |c|
|
8
|
-
c.flag 'channel', desc: 'MPIM to close.'
|
9
|
-
c.action do |_global_options, options, _args|
|
10
|
-
puts JSON.dump($client.mpim_close(options))
|
11
|
-
end
|
12
|
-
end
|
13
|
-
|
14
|
-
g.desc 'Fetches history of messages and events from a multiparty direct message.'
|
15
|
-
g.long_desc %( Fetches history of messages and events from a multiparty direct message. )
|
16
|
-
g.command 'history' do |c|
|
17
|
-
c.flag 'channel', desc: 'Multiparty direct message to fetch history for.'
|
18
|
-
c.flag 'inclusive', desc: 'Include messages with latest or oldest timestamp in results.'
|
19
|
-
c.flag 'latest', desc: 'End of time range of messages to include in results.'
|
20
|
-
c.flag 'oldest', desc: 'Start of time range of messages to include in results.'
|
21
|
-
c.flag 'unreads', desc: 'Include unread_count_display in the output?.'
|
22
|
-
c.action do |_global_options, options, _args|
|
23
|
-
puts JSON.dump($client.mpim_history(options))
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
g.desc 'Lists multiparty direct message channels for the calling user.'
|
28
|
-
g.long_desc %( Lists multiparty direct message channels for the calling user. )
|
29
|
-
g.command 'list' do |c|
|
30
|
-
c.action do |_global_options, options, _args|
|
31
|
-
puts JSON.dump($client.mpim_list(options))
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
g.desc 'Sets the read cursor in a multiparty direct message channel.'
|
36
|
-
g.long_desc %( Sets the read cursor in a multiparty direct message channel. )
|
37
|
-
g.command 'mark' do |c|
|
38
|
-
c.flag 'channel', desc: 'multiparty direct message channel to set reading cursor in.'
|
39
|
-
c.flag 'ts', desc: 'Timestamp of the most recently seen message.'
|
40
|
-
c.action do |_global_options, options, _args|
|
41
|
-
puts JSON.dump($client.mpim_mark(options))
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
g.desc 'This method opens a multiparty direct message.'
|
46
|
-
g.long_desc %( This method opens a multiparty direct message. )
|
47
|
-
g.command 'open' do |c|
|
48
|
-
c.flag 'users', desc: 'Comma separated lists of users. The ordering of the users is preserved whenever a MPIM group is returned.'
|
49
|
-
c.action do |_global_options, options, _args|
|
50
|
-
puts JSON.dump($client.mpim_open(options))
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
g.desc 'Retrieve a thread of messages posted to a direct message conversation from a multiparty direct message.'
|
55
|
-
g.long_desc %( Retrieve a thread of messages posted to a direct message conversation from a multiparty direct message. )
|
56
|
-
g.command 'replies' do |c|
|
57
|
-
c.flag 'channel', desc: 'Multiparty direct message channel to fetch thread from.'
|
58
|
-
c.flag 'thread_ts', desc: "Unique identifier of a thread's parent message."
|
59
|
-
c.action do |_global_options, options, _args|
|
60
|
-
puts JSON.dump($client.mpim_replies(options))
|
61
|
-
end
|
62
|
-
end
|
63
|
-
end
|
data/bin/commands.rb
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
# This file was auto-generated by lib/tasks/web.rake
|
2
|
-
|
3
|
-
require 'commands/api'
|
4
|
-
require 'commands/apps_permissions'
|
5
|
-
require 'commands/auth'
|
6
|
-
require 'commands/bots'
|
7
|
-
require 'commands/channels'
|
8
|
-
require 'commands/chat'
|
9
|
-
require 'commands/conversations'
|
10
|
-
require 'commands/dialog'
|
11
|
-
require 'commands/dnd'
|
12
|
-
require 'commands/emoji'
|
13
|
-
require 'commands/files'
|
14
|
-
require 'commands/files_comments'
|
15
|
-
require 'commands/groups'
|
16
|
-
require 'commands/im'
|
17
|
-
require 'commands/migration'
|
18
|
-
require 'commands/mpim'
|
19
|
-
require 'commands/oauth'
|
20
|
-
require 'commands/pins'
|
21
|
-
require 'commands/reactions'
|
22
|
-
require 'commands/reminders'
|
23
|
-
require 'commands/rtm'
|
24
|
-
require 'commands/search'
|
25
|
-
require 'commands/stars'
|
26
|
-
require 'commands/team'
|
27
|
-
require 'commands/team_profile'
|
28
|
-
require 'commands/usergroups'
|
29
|
-
require 'commands/usergroups_users'
|
30
|
-
require 'commands/users'
|
31
|
-
require 'commands/users_admin'
|
32
|
-
require 'commands/users_prefs'
|
33
|
-
require 'commands/users_profile'
|
Binary file
|
data/examples/hi_real_time/hi.rb
DELETED
@@ -1,37 +0,0 @@
|
|
1
|
-
require 'slack-ruby-client'
|
2
|
-
|
3
|
-
Slack.configure do |config|
|
4
|
-
config.token = ENV['SLACK_API_TOKEN']
|
5
|
-
config.logger = Logger.new(STDOUT)
|
6
|
-
config.logger.level = Logger::INFO
|
7
|
-
raise 'Missing ENV[SLACK_API_TOKEN]!' unless config.token
|
8
|
-
end
|
9
|
-
|
10
|
-
client = Slack::RealTime::Client.new
|
11
|
-
|
12
|
-
client.on :hello do
|
13
|
-
puts "Successfully connected, welcome '#{client.self.name}' to the '#{client.team.name}' team at https://#{client.team.domain}.slack.com."
|
14
|
-
end
|
15
|
-
|
16
|
-
client.on :message do |data|
|
17
|
-
puts data
|
18
|
-
|
19
|
-
client.typing channel: data.channel
|
20
|
-
|
21
|
-
case data.text
|
22
|
-
when 'bot hi' then
|
23
|
-
client.message channel: data.channel, text: "Hi <@#{data.user}>!"
|
24
|
-
when /^bot/ then
|
25
|
-
client.message channel: data.channel, text: "Sorry <@#{data.user}>, what?"
|
26
|
-
end
|
27
|
-
end
|
28
|
-
|
29
|
-
client.on :close do |_data|
|
30
|
-
puts 'Connection closing, exiting.'
|
31
|
-
end
|
32
|
-
|
33
|
-
client.on :closed do |_data|
|
34
|
-
puts 'Connection has been disconnected.'
|
35
|
-
end
|
36
|
-
|
37
|
-
client.start!
|
@@ -1,36 +0,0 @@
|
|
1
|
-
require 'slack-ruby-client'
|
2
|
-
|
3
|
-
raise 'Missing ENV[SLACK_API_TOKENS]!' unless ENV.key?('SLACK_API_TOKENS')
|
4
|
-
|
5
|
-
$stdout.sync = true
|
6
|
-
logger = Logger.new($stdout)
|
7
|
-
logger.level = Logger::DEBUG
|
8
|
-
|
9
|
-
ENV['SLACK_API_TOKENS'].split.each do |token|
|
10
|
-
logger.info "Starting #{token[0..12]} ..."
|
11
|
-
|
12
|
-
client = Slack::RealTime::Client.new(token: token)
|
13
|
-
|
14
|
-
client.on :hello do
|
15
|
-
logger.info "Successfully connected, welcome '#{client.self.name}' to the '#{client.team.name}' team at https://#{client.team.domain}.slack.com."
|
16
|
-
end
|
17
|
-
|
18
|
-
client.on :message do |data|
|
19
|
-
logger.info data
|
20
|
-
|
21
|
-
client.typing channel: data.channel
|
22
|
-
|
23
|
-
case data.text
|
24
|
-
when 'bot hi' then
|
25
|
-
client.message channel: data.channel, text: "Hi <@#{data.user}>!"
|
26
|
-
when /^bot/ then
|
27
|
-
client.message channel: data.channel, text: "Sorry <@#{data.user}>, what?"
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
client.start_async
|
32
|
-
end
|
33
|
-
|
34
|
-
loop do
|
35
|
-
Thread.pass
|
36
|
-
end
|