slack-ruby-client 0.17.0 → 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 +4 -4
- data/.rubocop.yml +5 -0
- data/.rubocop_todo.yml +65 -31
- data/.travis.yml +1 -0
- data/CHANGELOG.md +10 -0
- data/CONTRIBUTING.md +3 -3
- data/README.md +5 -5
- data/RELEASING.md +1 -1
- data/UPGRADING.md +42 -0
- data/bin/commands/admin_apps.rb +11 -0
- data/bin/commands/admin_apps_requests.rb +1 -0
- data/bin/commands/admin_auth_policy.rb +39 -0
- data/bin/commands/admin_conversations.rb +10 -0
- data/bin/commands/admin_conversations_restrictAccess.rb +1 -1
- data/bin/commands/admin_users.rb +1 -0
- data/bin/commands/admin_users_session.rb +40 -0
- data/bin/commands/apps_manifest.rb +51 -0
- data/bin/commands/chat.rb +9 -6
- data/bin/commands/conversations.rb +59 -2
- data/bin/commands/dnd.rb +1 -1
- data/bin/commands/files.rb +2 -1
- data/bin/commands/oauth.rb +0 -13
- data/bin/commands/oauth_v2.rb +13 -1
- data/bin/commands/openid_connect.rb +27 -0
- data/bin/commands/pins.rb +2 -2
- data/bin/commands/reminders.rb +6 -0
- data/bin/commands/rtm.rb +2 -2
- data/bin/commands/search.rb +2 -1
- data/bin/commands/stars.rb +7 -6
- data/bin/commands/team_billing.rb +13 -0
- data/bin/commands/team_preferences.rb +13 -0
- data/bin/commands/tooling_tokens.rb +14 -0
- data/bin/commands/usergroups.rb +1 -1
- data/bin/commands/users.rb +1 -1
- data/bin/commands/views.rb +1 -1
- data/bin/commands.rb +6 -8
- data/lib/slack/config.rb +1 -2
- data/lib/slack/events/request.rb +3 -1
- data/lib/slack/real_time/client.rb +4 -5
- data/lib/slack/real_time/concurrency/async.rb +6 -8
- data/lib/slack/real_time/socket.rb +1 -2
- data/lib/slack/real_time/stores/base.rb +1 -6
- data/lib/slack/real_time/stores/starter.rb +6 -3
- data/lib/slack/real_time/stores/store.rb +5 -0
- data/lib/slack/version.rb +1 -1
- data/lib/slack/web/api/endpoints/admin_analytics.rb +3 -3
- data/lib/slack/web/api/endpoints/admin_apps.rb +21 -5
- data/lib/slack/web/api/endpoints/admin_apps_approved.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_apps_requests.rb +4 -2
- data/lib/slack/web/api/endpoints/admin_apps_restricted.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_auth_policy.rb +72 -0
- data/lib/slack/web/api/endpoints/admin_barriers.rb +6 -6
- data/lib/slack/web/api/endpoints/admin_conversations.rb +38 -24
- data/lib/slack/web/api/endpoints/admin_conversations_ekm.rb +4 -4
- data/lib/slack/web/api/endpoints/admin_emoji.rb +9 -9
- data/lib/slack/web/api/endpoints/admin_inviteRequests.rb +7 -7
- data/lib/slack/web/api/endpoints/admin_inviteRequests_approved.rb +3 -3
- data/lib/slack/web/api/endpoints/admin_inviteRequests_denied.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_teams.rb +6 -6
- data/lib/slack/web/api/endpoints/admin_teams_admins.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_teams_owners.rb +2 -2
- data/lib/slack/web/api/endpoints/admin_teams_settings.rb +5 -5
- data/lib/slack/web/api/endpoints/admin_usergroups.rb +10 -10
- data/lib/slack/web/api/endpoints/admin_users.rb +20 -18
- data/lib/slack/web/api/endpoints/admin_users_session.rb +65 -9
- data/lib/slack/web/api/endpoints/api.rb +1 -1
- data/lib/slack/web/api/endpoints/apps.rb +2 -2
- data/lib/slack/web/api/endpoints/apps_event_authorizations.rb +3 -3
- data/lib/slack/web/api/endpoints/apps_manifest.rb +75 -0
- data/lib/slack/web/api/endpoints/auth.rb +1 -1
- data/lib/slack/web/api/endpoints/auth_teams.rb +3 -3
- data/lib/slack/web/api/endpoints/bots.rb +2 -2
- data/lib/slack/web/api/endpoints/calls.rb +15 -15
- data/lib/slack/web/api/endpoints/calls_participants.rb +4 -4
- data/lib/slack/web/api/endpoints/chat.rb +60 -54
- data/lib/slack/web/api/endpoints/chat_scheduledMessages.rb +3 -3
- data/lib/slack/web/api/endpoints/conversations.rb +115 -25
- data/lib/slack/web/api/endpoints/dialog.rb +2 -2
- data/lib/slack/web/api/endpoints/dnd.rb +4 -5
- data/lib/slack/web/api/endpoints/files.rb +16 -14
- data/lib/slack/web/api/endpoints/files_comments.rb +1 -1
- data/lib/slack/web/api/endpoints/files_remote.rb +20 -20
- data/lib/slack/web/api/endpoints/migration.rb +3 -3
- data/lib/slack/web/api/endpoints/oauth.rb +5 -27
- data/lib/slack/web/api/endpoints/oauth_v2.rb +24 -6
- data/lib/slack/web/api/endpoints/openid_connect.rb +42 -0
- data/lib/slack/web/api/endpoints/pins.rb +4 -4
- data/lib/slack/web/api/endpoints/reactions.rb +12 -12
- data/lib/slack/web/api/endpoints/reminders.rb +17 -5
- data/lib/slack/web/api/endpoints/rtm.rb +10 -10
- data/lib/slack/web/api/endpoints/search.rb +24 -16
- data/lib/slack/web/api/endpoints/stars.rb +11 -9
- data/lib/slack/web/api/endpoints/team.rb +8 -8
- 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 +1 -1
- data/lib/slack/web/api/endpoints/tooling_tokens.rb +24 -0
- data/lib/slack/web/api/endpoints/usergroups.rb +19 -19
- data/lib/slack/web/api/endpoints/usergroups_users.rb +7 -7
- data/lib/slack/web/api/endpoints/users.rb +16 -16
- data/lib/slack/web/api/endpoints/users_profile.rb +4 -4
- data/lib/slack/web/api/endpoints/views.rb +12 -12
- data/lib/slack/web/api/endpoints/workflows.rb +9 -9
- data/lib/slack/web/api/endpoints.rb +12 -18
- data/lib/slack/web/api/errors/server_error.rb +37 -0
- data/lib/slack/web/api/errors/too_many_requests_error.rb +1 -4
- data/lib/slack/web/api/errors.rb +200 -8
- data/lib/slack/web/api/mixins.rb +0 -2
- data/lib/slack/web/api/patches/chat.1.patch +1 -2
- data/lib/slack/web/api/templates/endpoints.erb +0 -2
- data/lib/slack/web/faraday/request.rb +2 -1
- data/lib/slack/web/faraday/response/raise_error.rb +1 -1
- data/lib/slack/web/faraday/response/wrap_error.rb +2 -2
- data/lib/slack/web/pagination/cursor.rb +1 -5
- data/lib/slack-ruby-client.rb +1 -1
- data/slack-ruby-client.gemspec +2 -3
- data/spec/fixtures/slack/web/429_error.yml +50 -54
- data/spec/fixtures/slack/web/auth_test_error.yml +51 -18
- data/spec/fixtures/slack/web/auth_test_success.yml +50 -26
- data/spec/fixtures/slack/web/conversations_info.yml +133 -9
- data/spec/fixtures/slack/web/conversations_setTopic.yml +42 -27
- data/spec/fixtures/slack/web/conversations_setTopic_one_page.yml +89 -59
- data/spec/fixtures/slack/web/conversations_setTopic_paginated.yml +131 -86
- data/spec/fixtures/slack/web/paginated_users_list.yml +501 -69
- data/spec/fixtures/slack/web/rtm_connect.yml +267 -30
- data/spec/fixtures/slack/web/rtm_start.yml +771 -60
- data/spec/fixtures/slack/web/users_info.yml +153 -69
- data/spec/fixtures/slack/web/users_list.yml +102 -41
- data/spec/fixtures/slack/web/views_open_error.yml +49 -42
- data/spec/slack/real_time/client_spec.rb +17 -21
- data/spec/slack/real_time/event_handlers/bot_spec.rb +1 -1
- data/spec/slack/real_time/event_handlers/channel_spec.rb +1 -1
- data/spec/slack/real_time/event_handlers/im_spec.rb +5 -5
- data/spec/slack/real_time/event_handlers/user_spec.rb +2 -2
- data/spec/slack/slack_spec.rb +3 -1
- data/spec/slack/web/api/endpoints/admin_apps_spec.rb +5 -0
- data/spec/slack/web/api/endpoints/admin_auth_policy_spec.rb +35 -0
- data/spec/slack/web/api/endpoints/admin_conversations_spec.rb +14 -9
- data/spec/slack/web/api/endpoints/admin_teams_settings_spec.rb +1 -1
- data/spec/slack/web/api/endpoints/admin_usergroups_spec.rb +6 -6
- data/spec/slack/web/api/endpoints/admin_users_session_spec.rb +22 -2
- data/spec/slack/web/api/endpoints/admin_users_spec.rb +8 -8
- data/spec/slack/web/api/endpoints/apps_manifest_spec.rb +36 -0
- data/spec/slack/web/api/endpoints/apps_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/calls_participants_spec.rb +4 -4
- data/spec/slack/web/api/endpoints/calls_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/custom_specs/auth_spec.rb +4 -6
- data/spec/slack/web/api/endpoints/custom_specs/conversations_spec.rb +1 -1
- data/spec/slack/web/api/endpoints/custom_specs/users_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/dnd_spec.rb +0 -5
- data/spec/slack/web/api/endpoints/files_comments_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/files_remote_spec.rb +3 -3
- data/spec/slack/web/api/endpoints/oauth_spec.rb +0 -11
- data/spec/slack/web/api/endpoints/oauth_v2_spec.rb +6 -3
- data/spec/slack/web/api/endpoints/{im_spec.rb → openid_connect_spec.rb} +1 -1
- data/spec/slack/web/api/endpoints/reactions_spec.rb +3 -3
- data/spec/slack/web/api/endpoints/reminders_spec.rb +2 -2
- data/spec/slack/web/api/endpoints/{mpim_spec.rb → team_billing_spec.rb} +1 -1
- data/spec/slack/web/api/endpoints/{apps_permissions_scopes_spec.rb → team_preferences_spec.rb} +1 -1
- data/spec/slack/web/api/endpoints/tooling_tokens_spec.rb +13 -0
- data/spec/slack/web/api/endpoints/usergroups_users_spec.rb +2 -2
- data/spec/slack/web/api/error_spec.rb +5 -7
- data/spec/slack/web/api/errors/slack_error_spec.rb +21 -26
- data/spec/slack/web/api/mixins/conversations_list_spec.rb +1 -1
- data/spec/slack/web/api/pagination/cursor_spec.rb +1 -3
- data/spec/slack/web/client_spec.rb +7 -6
- data/spec/slack/web/faraday/request_spec.rb +80 -0
- data/spec/slack/web/faraday/response/raise_error_spec.rb +1 -0
- data/spec/spec_helper.rb +1 -1
- data/spec/support/real_time/connected_client.rb +1 -7
- data/spec/support/vcr.rb +33 -2
- metadata +28 -144
- data/lib/slack/web/api/errors/internal_error.rb +0 -14
- data/lib/slack/web/api/mixins/channels.id.json +0 -20
- data/lib/slack/web/api/mixins/channels.id.rb +0 -25
- data/lib/slack/web/api/mixins/groups.id.json +0 -20
- data/lib/slack/web/api/mixins/groups.id.rb +0 -25
- data/spec/fixtures/slack/web/503_error.yml +0 -14
- data/spec/fixtures/slack/web/channels_info.yml +0 -139
- data/spec/slack/web/api/endpoints/apps_permissions_resources_spec.rb +0 -8
- data/spec/slack/web/api/endpoints/apps_permissions_spec.rb +0 -16
- data/spec/slack/web/api/endpoints/apps_permissions_users_spec.rb +0 -19
- data/spec/slack/web/api/endpoints/conversations_spec.rb +0 -109
- data/spec/slack/web/api/mixins/channels_spec.rb +0 -43
- data/spec/slack/web/api/mixins/groups_spec.rb +0 -43
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
module Slack
|
|
3
|
-
module Web
|
|
4
|
-
module Api
|
|
5
|
-
module Errors
|
|
6
|
-
class ServerError < InternalError; end
|
|
7
|
-
class ParsingError < ServerError; end
|
|
8
|
-
class HttpRequestError < ServerError; end
|
|
9
|
-
class TimeoutError < HttpRequestError; end
|
|
10
|
-
class UnavailableError < HttpRequestError; end
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"mixin": true,
|
|
3
|
-
"group": "channels",
|
|
4
|
-
"name": "channels.id",
|
|
5
|
-
"desc": "This method returns the ID of a team channel.",
|
|
6
|
-
"args": {
|
|
7
|
-
"channel": {
|
|
8
|
-
"required": true,
|
|
9
|
-
"example": "#general",
|
|
10
|
-
"desc": "Channel to get ID for, prefixed with #.",
|
|
11
|
-
"type": "channel"
|
|
12
|
-
}
|
|
13
|
-
},
|
|
14
|
-
"errors": {
|
|
15
|
-
"channel_not_found": "Value passed for channel was invalid.",
|
|
16
|
-
"not_authed": "No authentication token provided.",
|
|
17
|
-
"invalid_auth": "Invalid authentication token.",
|
|
18
|
-
"account_inactive": "Authentication token is for a deleted user or team."
|
|
19
|
-
}
|
|
20
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
require_relative 'ids.id'
|
|
3
|
-
|
|
4
|
-
module Slack
|
|
5
|
-
module Web
|
|
6
|
-
module Api
|
|
7
|
-
module Mixins
|
|
8
|
-
module Channels
|
|
9
|
-
include Ids
|
|
10
|
-
#
|
|
11
|
-
# This method returns a channel ID given a channel name.
|
|
12
|
-
#
|
|
13
|
-
# @option options [channel] :channel
|
|
14
|
-
# Channel to get ID for, prefixed with #.
|
|
15
|
-
def channels_id(options = {})
|
|
16
|
-
name = options[:channel]
|
|
17
|
-
throw ArgumentError.new('Required arguments :channel missing') if name.nil?
|
|
18
|
-
|
|
19
|
-
id_for :channel, name, '#', :channels_list, :channels, 'channel_not_found'
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"mixin": true,
|
|
3
|
-
"group": "groups",
|
|
4
|
-
"name": "groups.id",
|
|
5
|
-
"desc": "This method returns the ID of a group.",
|
|
6
|
-
"args": {
|
|
7
|
-
"channel": {
|
|
8
|
-
"required": true,
|
|
9
|
-
"example": "#general",
|
|
10
|
-
"desc": "Group channel to get ID for, prefixed with #.",
|
|
11
|
-
"type": "group"
|
|
12
|
-
}
|
|
13
|
-
},
|
|
14
|
-
"errors": {
|
|
15
|
-
"channel_not_found": "Value passed for group was invalid.",
|
|
16
|
-
"not_authed": "No authentication token provided.",
|
|
17
|
-
"invalid_auth": "Invalid authentication token.",
|
|
18
|
-
"account_inactive": "Authentication token is for a deleted user or team."
|
|
19
|
-
}
|
|
20
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
require_relative 'ids.id'
|
|
3
|
-
|
|
4
|
-
module Slack
|
|
5
|
-
module Web
|
|
6
|
-
module Api
|
|
7
|
-
module Mixins
|
|
8
|
-
module Groups
|
|
9
|
-
include Ids
|
|
10
|
-
#
|
|
11
|
-
# This method returns a group ID given a group name.
|
|
12
|
-
#
|
|
13
|
-
# @option options [channel] :channel
|
|
14
|
-
# Group channel to get ID for, prefixed with #.
|
|
15
|
-
def groups_id(options = {})
|
|
16
|
-
name = options[:channel]
|
|
17
|
-
throw ArgumentError.new('Required arguments :channel missing') if name.nil?
|
|
18
|
-
|
|
19
|
-
id_for :group, name, '#', :groups_list, :groups, 'channel_not_found'
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
end
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
http_interactions:
|
|
3
|
-
- request:
|
|
4
|
-
method: post
|
|
5
|
-
uri: https://slack.com/api/auth.test
|
|
6
|
-
response:
|
|
7
|
-
status:
|
|
8
|
-
code: 503
|
|
9
|
-
message: Service Unavailable
|
|
10
|
-
body:
|
|
11
|
-
encoding: US-ASCII
|
|
12
|
-
string: ''
|
|
13
|
-
http_version:
|
|
14
|
-
recorded_at: Thu, 30 Nov 2017 14:36:26 GMT
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
http_interactions:
|
|
3
|
-
- request:
|
|
4
|
-
method: post
|
|
5
|
-
uri: https://slack.com/api/conversations.list
|
|
6
|
-
body:
|
|
7
|
-
encoding: UTF-8
|
|
8
|
-
string: token=token
|
|
9
|
-
headers:
|
|
10
|
-
Accept:
|
|
11
|
-
- application/json; charset=utf-8
|
|
12
|
-
User-Agent:
|
|
13
|
-
- Slack Ruby Client/0.15.0
|
|
14
|
-
Content-Type:
|
|
15
|
-
- application/x-www-form-urlencoded
|
|
16
|
-
Accept-Encoding:
|
|
17
|
-
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
|
18
|
-
response:
|
|
19
|
-
status:
|
|
20
|
-
code: 200
|
|
21
|
-
message: OK
|
|
22
|
-
headers:
|
|
23
|
-
Date:
|
|
24
|
-
- Mon, 06 Jul 2020 14:21:41 GMT
|
|
25
|
-
Server:
|
|
26
|
-
- Apache
|
|
27
|
-
X-Slack-Req-Id:
|
|
28
|
-
- d6a36df98a9b67696d158d792698542b
|
|
29
|
-
X-Oauth-Scopes:
|
|
30
|
-
- channels:read
|
|
31
|
-
X-Accepted-Oauth-Scopes:
|
|
32
|
-
- channels:read,groups:read,mpim:read,im:read,read
|
|
33
|
-
Access-Control-Expose-Headers:
|
|
34
|
-
- x-slack-req-id, retry-after
|
|
35
|
-
X-Slack-Backend:
|
|
36
|
-
- r
|
|
37
|
-
X-Content-Type-Options:
|
|
38
|
-
- nosniff
|
|
39
|
-
Expires:
|
|
40
|
-
- Mon, 26 Jul 1997 05:00:00 GMT
|
|
41
|
-
Cache-Control:
|
|
42
|
-
- private, no-cache, no-store, must-revalidate
|
|
43
|
-
X-Xss-Protection:
|
|
44
|
-
- '0'
|
|
45
|
-
Vary:
|
|
46
|
-
- Accept-Encoding
|
|
47
|
-
Pragma:
|
|
48
|
-
- no-cache
|
|
49
|
-
Access-Control-Allow-Headers:
|
|
50
|
-
- slack-route, x-slack-version-ts, x-b3-traceid, x-b3-spanid, x-b3-parentspanid,
|
|
51
|
-
x-b3-sampled, x-b3-flags
|
|
52
|
-
Strict-Transport-Security:
|
|
53
|
-
- max-age=31536000; includeSubDomains; preload
|
|
54
|
-
Referrer-Policy:
|
|
55
|
-
- no-referrer
|
|
56
|
-
Access-Control-Allow-Origin:
|
|
57
|
-
- "*"
|
|
58
|
-
Content-Length:
|
|
59
|
-
- '616'
|
|
60
|
-
Content-Type:
|
|
61
|
-
- application/json; charset=utf-8
|
|
62
|
-
X-Via:
|
|
63
|
-
- haproxy-www-xvqc,haproxy-edge-sin-605a
|
|
64
|
-
body:
|
|
65
|
-
encoding: ASCII-8BIT
|
|
66
|
-
string: '{"ok":true,"channels":[{"id":"C016K3T7XK7","name":"random","is_channel":true,"is_group":false,"is_im":false,"created":1594044322,"is_archived":false,"is_general":false,"unlinked":0,"name_normalized":"random","is_shared":false,"parent_conversation":null,"creator":"U016LEXAH5Y","is_ext_shared":false,"is_org_shared":false,"shared_team_ids":["T016DNSRF7G"],"pending_shared":[],"pending_connected_team_ids":[],"is_pending_ext_shared":false,"is_member":false,"is_private":false,"is_mpim":false,"topic":{"value":"Non-work
|
|
67
|
-
banter and water cooler conversation","creator":"U016LEXAH5Y","last_set":1594044322},"purpose":{"value":"A
|
|
68
|
-
place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber
|
|
69
|
-
you''d prefer to keep out of more focused work-related channels.","creator":"U016LEXAH5Y","last_set":1594044322},"previous_names":[],"num_members":1},{"id":"C016Z3VRSSV","name":"general","is_channel":true,"is_group":false,"is_im":false,"created":1594044322,"is_archived":false,"is_general":true,"unlinked":0,"name_normalized":"general","is_shared":false,"parent_conversation":null,"creator":"U016LEXAH5Y","is_ext_shared":false,"is_org_shared":false,"shared_team_ids":["T016DNSRF7G"],"pending_shared":[],"pending_connected_team_ids":[],"is_pending_ext_shared":false,"is_member":false,"is_private":false,"is_mpim":false,"topic":{"value":"Company-wide
|
|
70
|
-
announcements and work-based matters","creator":"U016LEXAH5Y","last_set":1594044322},"purpose":{"value":"This
|
|
71
|
-
channel is for workspace-wide communication and announcements. All members
|
|
72
|
-
are in this channel.","creator":"U016LEXAH5Y","last_set":1594044322},"previous_names":[],"num_members":1},{"id":"C017AA3CCDN","name":"slack-ruby-client","is_channel":true,"is_group":false,"is_im":false,"created":1594044322,"is_archived":false,"is_general":false,"unlinked":0,"name_normalized":"slack-ruby-client","is_shared":false,"parent_conversation":null,"creator":"U016LEXAH5Y","is_ext_shared":false,"is_org_shared":false,"shared_team_ids":["T016DNSRF7G"],"pending_shared":[],"pending_connected_team_ids":[],"is_pending_ext_shared":false,"is_member":false,"is_private":false,"is_mpim":false,"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":1}],"response_metadata":{"next_cursor":""}}'
|
|
73
|
-
recorded_at: Mon, 06 Jul 2020 14:21:41 GMT
|
|
74
|
-
- request:
|
|
75
|
-
method: post
|
|
76
|
-
uri: https://slack.com/api/channels.info
|
|
77
|
-
body:
|
|
78
|
-
encoding: UTF-8
|
|
79
|
-
string: channel=C016Z3VRSSV&token=token
|
|
80
|
-
headers:
|
|
81
|
-
Accept:
|
|
82
|
-
- application/json; charset=utf-8
|
|
83
|
-
User-Agent:
|
|
84
|
-
- Slack Ruby Client/0.15.0
|
|
85
|
-
Content-Type:
|
|
86
|
-
- application/x-www-form-urlencoded
|
|
87
|
-
Accept-Encoding:
|
|
88
|
-
- gzip;q=1.0,deflate;q=0.6,identity;q=0.3
|
|
89
|
-
response:
|
|
90
|
-
status:
|
|
91
|
-
code: 200
|
|
92
|
-
message: OK
|
|
93
|
-
headers:
|
|
94
|
-
Date:
|
|
95
|
-
- Mon, 06 Jul 2020 14:21:42 GMT
|
|
96
|
-
Server:
|
|
97
|
-
- Apache
|
|
98
|
-
X-Content-Type-Options:
|
|
99
|
-
- nosniff
|
|
100
|
-
X-Slack-Req-Id:
|
|
101
|
-
- b7ad44601d7e0a60c5c68601e15c89c8
|
|
102
|
-
X-Oauth-Scopes:
|
|
103
|
-
- channels:read
|
|
104
|
-
Expires:
|
|
105
|
-
- Mon, 26 Jul 1997 05:00:00 GMT
|
|
106
|
-
Cache-Control:
|
|
107
|
-
- private, no-cache, no-store, must-revalidate
|
|
108
|
-
X-Xss-Protection:
|
|
109
|
-
- '0'
|
|
110
|
-
Vary:
|
|
111
|
-
- Accept-Encoding
|
|
112
|
-
Pragma:
|
|
113
|
-
- no-cache
|
|
114
|
-
Access-Control-Allow-Headers:
|
|
115
|
-
- slack-route, x-slack-version-ts, x-b3-traceid, x-b3-spanid, x-b3-parentspanid,
|
|
116
|
-
x-b3-sampled, x-b3-flags
|
|
117
|
-
Strict-Transport-Security:
|
|
118
|
-
- max-age=31536000; includeSubDomains; preload
|
|
119
|
-
Referrer-Policy:
|
|
120
|
-
- no-referrer
|
|
121
|
-
X-Slack-Backend:
|
|
122
|
-
- r
|
|
123
|
-
Access-Control-Expose-Headers:
|
|
124
|
-
- x-slack-req-id, retry-after
|
|
125
|
-
Access-Control-Allow-Origin:
|
|
126
|
-
- "*"
|
|
127
|
-
Content-Length:
|
|
128
|
-
- '222'
|
|
129
|
-
Content-Type:
|
|
130
|
-
- application/json; charset=utf-8
|
|
131
|
-
X-Via:
|
|
132
|
-
- haproxy-www-nu22,haproxy-edge-sin-p1t0
|
|
133
|
-
body:
|
|
134
|
-
encoding: ASCII-8BIT
|
|
135
|
-
string: '{"ok":false,"error":"method_deprecated","response_metadata":{"messages":["[ERROR]
|
|
136
|
-
This method is retired and can no longer be used. Please use conversations.info
|
|
137
|
-
instead. Learn more: https:\/\/api.slack.com\/changelog\/2020-01-deprecating-antecedents-to-the-conversations-api."]}}'
|
|
138
|
-
recorded_at: Mon, 06 Jul 2020 14:21:42 GMT
|
|
139
|
-
recorded_with: VCR 6.0.0
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
# This file was auto-generated by lib/tasks/web.rake
|
|
3
|
-
|
|
4
|
-
require 'spec_helper'
|
|
5
|
-
|
|
6
|
-
RSpec.describe Slack::Web::Api::Endpoints::AppsPermissions do
|
|
7
|
-
let(:client) { Slack::Web::Client.new }
|
|
8
|
-
context 'apps.permissions_request' do
|
|
9
|
-
it 'requires scopes' do
|
|
10
|
-
expect { client.apps_permissions_request(trigger_id: %q[]) }.to raise_error ArgumentError, /Required arguments :scopes missing/
|
|
11
|
-
end
|
|
12
|
-
it 'requires trigger_id' do
|
|
13
|
-
expect { client.apps_permissions_request(scopes: %q[]) }.to raise_error ArgumentError, /Required arguments :trigger_id missing/
|
|
14
|
-
end
|
|
15
|
-
end
|
|
16
|
-
end
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
# This file was auto-generated by lib/tasks/web.rake
|
|
3
|
-
|
|
4
|
-
require 'spec_helper'
|
|
5
|
-
|
|
6
|
-
RSpec.describe Slack::Web::Api::Endpoints::AppsPermissionsUsers do
|
|
7
|
-
let(:client) { Slack::Web::Client.new }
|
|
8
|
-
context 'apps.permissions.users_request' do
|
|
9
|
-
it 'requires scopes' do
|
|
10
|
-
expect { client.apps_permissions_users_request(trigger_id: %q[], user: %q[]) }.to raise_error ArgumentError, /Required arguments :scopes missing/
|
|
11
|
-
end
|
|
12
|
-
it 'requires trigger_id' do
|
|
13
|
-
expect { client.apps_permissions_users_request(scopes: %q[], user: %q[]) }.to raise_error ArgumentError, /Required arguments :trigger_id missing/
|
|
14
|
-
end
|
|
15
|
-
it 'requires user' do
|
|
16
|
-
expect { client.apps_permissions_users_request(scopes: %q[], trigger_id: %q[]) }.to raise_error ArgumentError, /Required arguments :user missing/
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
end
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
# This file was auto-generated by lib/tasks/web.rake
|
|
3
|
-
|
|
4
|
-
require 'spec_helper'
|
|
5
|
-
|
|
6
|
-
RSpec.describe Slack::Web::Api::Endpoints::Conversations do
|
|
7
|
-
let(:client) { Slack::Web::Client.new }
|
|
8
|
-
context 'conversations_archive' do
|
|
9
|
-
it 'requires channel' do
|
|
10
|
-
expect { client.conversations_archive }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
11
|
-
end
|
|
12
|
-
end
|
|
13
|
-
context 'conversations_close' do
|
|
14
|
-
it 'requires channel' do
|
|
15
|
-
expect { client.conversations_close }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
16
|
-
end
|
|
17
|
-
end
|
|
18
|
-
context 'conversations_create' do
|
|
19
|
-
it 'requires name' do
|
|
20
|
-
expect { client.conversations_create }.to raise_error ArgumentError, /Required arguments :name missing/
|
|
21
|
-
end
|
|
22
|
-
end
|
|
23
|
-
context 'conversations_history' do
|
|
24
|
-
it 'requires channel' do
|
|
25
|
-
expect { client.conversations_history }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
26
|
-
end
|
|
27
|
-
end
|
|
28
|
-
context 'conversations_info' do
|
|
29
|
-
it 'requires channel' do
|
|
30
|
-
expect { client.conversations_info }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
context 'conversations_invite' do
|
|
34
|
-
it 'requires channel' do
|
|
35
|
-
expect { client.conversations_invite(users: %q[W1234567890,U2345678901,U3456789012]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
36
|
-
end
|
|
37
|
-
it 'requires users' do
|
|
38
|
-
expect { client.conversations_invite(channel: %q[C1234567890]) }.to raise_error ArgumentError, /Required arguments :users missing/
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
context 'conversations_join' do
|
|
42
|
-
it 'requires channel' do
|
|
43
|
-
expect { client.conversations_join }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
context 'conversations_kick' do
|
|
47
|
-
it 'requires channel' do
|
|
48
|
-
expect { client.conversations_kick(user: %q[W1234567890]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
49
|
-
end
|
|
50
|
-
it 'requires user' do
|
|
51
|
-
expect { client.conversations_kick(channel: %q[C1234567890]) }.to raise_error ArgumentError, /Required arguments :user missing/
|
|
52
|
-
end
|
|
53
|
-
end
|
|
54
|
-
context 'conversations_leave' do
|
|
55
|
-
it 'requires channel' do
|
|
56
|
-
expect { client.conversations_leave }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
57
|
-
end
|
|
58
|
-
end
|
|
59
|
-
context 'conversations_mark' do
|
|
60
|
-
it 'requires channel' do
|
|
61
|
-
expect { client.conversations_mark(ts: %q[1593473566.000200]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
62
|
-
end
|
|
63
|
-
it 'requires ts' do
|
|
64
|
-
expect { client.conversations_mark(channel: %q[C012345678]) }.to raise_error ArgumentError, /Required arguments :ts missing/
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
context 'conversations_members' do
|
|
68
|
-
it 'requires channel' do
|
|
69
|
-
expect { client.conversations_members }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
70
|
-
end
|
|
71
|
-
end
|
|
72
|
-
context 'conversations_rename' do
|
|
73
|
-
it 'requires channel' do
|
|
74
|
-
expect { client.conversations_rename(name: %q[]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
75
|
-
end
|
|
76
|
-
it 'requires name' do
|
|
77
|
-
expect { client.conversations_rename(channel: %q[C1234567890]) }.to raise_error ArgumentError, /Required arguments :name missing/
|
|
78
|
-
end
|
|
79
|
-
end
|
|
80
|
-
context 'conversations_replies' do
|
|
81
|
-
it 'requires channel' do
|
|
82
|
-
expect { client.conversations_replies(ts: %q[1234567890.123456]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
83
|
-
end
|
|
84
|
-
it 'requires ts' do
|
|
85
|
-
expect { client.conversations_replies(channel: %q[C1234567890]) }.to raise_error ArgumentError, /Required arguments :ts missing/
|
|
86
|
-
end
|
|
87
|
-
end
|
|
88
|
-
context 'conversations_setPurpose' do
|
|
89
|
-
it 'requires channel' do
|
|
90
|
-
expect { client.conversations_setPurpose(purpose: %q[My More Special Purpose]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
91
|
-
end
|
|
92
|
-
it 'requires purpose' do
|
|
93
|
-
expect { client.conversations_setPurpose(channel: %q[C1234567890]) }.to raise_error ArgumentError, /Required arguments :purpose missing/
|
|
94
|
-
end
|
|
95
|
-
end
|
|
96
|
-
context 'conversations_setTopic' do
|
|
97
|
-
it 'requires channel' do
|
|
98
|
-
expect { client.conversations_setTopic(topic: %q[Apply topically for best effects]) }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
99
|
-
end
|
|
100
|
-
it 'requires topic' do
|
|
101
|
-
expect { client.conversations_setTopic(channel: %q[C1234567890]) }.to raise_error ArgumentError, /Required arguments :topic missing/
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
|
-
context 'conversations_unarchive' do
|
|
105
|
-
it 'requires channel' do
|
|
106
|
-
expect { client.conversations_unarchive }.to raise_error ArgumentError, /Required arguments :channel missing/
|
|
107
|
-
end
|
|
108
|
-
end
|
|
109
|
-
end
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
require 'spec_helper'
|
|
3
|
-
|
|
4
|
-
RSpec.describe Slack::Web::Api::Mixins::Channels do
|
|
5
|
-
subject(:channels) do
|
|
6
|
-
klass.new
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
let(:klass) do
|
|
10
|
-
Class.new do
|
|
11
|
-
include Slack::Web::Api::Mixins::Channels
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
before do
|
|
16
|
-
allow(channels).to receive(:channels_list).and_yield(
|
|
17
|
-
Slack::Messages::Message.new(
|
|
18
|
-
'channels' => [{
|
|
19
|
-
'id' => 'CDEADBEEF',
|
|
20
|
-
'name' => 'general'
|
|
21
|
-
}]
|
|
22
|
-
)
|
|
23
|
-
)
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
context '#channels_id' do
|
|
27
|
-
it 'leaves channels specified by ID alone' do
|
|
28
|
-
expect(channels.channels_id(channel: 'C123456')).to(
|
|
29
|
-
eq('ok' => true, 'channel' => { 'id' => 'C123456' })
|
|
30
|
-
)
|
|
31
|
-
end
|
|
32
|
-
it 'translates a channel that starts with a #' do
|
|
33
|
-
expect(channels.channels_id(channel: '#general')).to(
|
|
34
|
-
eq('ok' => true, 'channel' => { 'id' => 'CDEADBEEF' })
|
|
35
|
-
)
|
|
36
|
-
end
|
|
37
|
-
it 'fails with an exception' do
|
|
38
|
-
expect { channels.channels_id(channel: '#invalid') }.to(
|
|
39
|
-
raise_error(Slack::Web::Api::Errors::SlackError, 'channel_not_found')
|
|
40
|
-
)
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
end
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
# frozen_string_literal: true
|
|
2
|
-
require 'spec_helper'
|
|
3
|
-
|
|
4
|
-
RSpec.describe Slack::Web::Api::Mixins::Groups do
|
|
5
|
-
subject(:groups) do
|
|
6
|
-
klass.new
|
|
7
|
-
end
|
|
8
|
-
|
|
9
|
-
let(:klass) do
|
|
10
|
-
Class.new do
|
|
11
|
-
include Slack::Web::Api::Mixins::Groups
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
|
|
15
|
-
before do
|
|
16
|
-
allow(groups).to receive(:groups_list).and_yield(
|
|
17
|
-
Slack::Messages::Message.new(
|
|
18
|
-
'groups' => [{
|
|
19
|
-
'id' => 'CDEADBEEF',
|
|
20
|
-
'name' => 'general'
|
|
21
|
-
}]
|
|
22
|
-
)
|
|
23
|
-
)
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
context '#groups_id' do
|
|
27
|
-
it 'leaves groups specified by ID alone' do
|
|
28
|
-
expect(groups.groups_id(channel: 'C123456')).to(
|
|
29
|
-
eq('ok' => true, 'group' => { 'id' => 'C123456' })
|
|
30
|
-
)
|
|
31
|
-
end
|
|
32
|
-
it 'translates a channel that starts with a #' do
|
|
33
|
-
expect(groups.groups_id(channel: '#general')).to(
|
|
34
|
-
eq('ok' => true, 'group' => { 'id' => 'CDEADBEEF' })
|
|
35
|
-
)
|
|
36
|
-
end
|
|
37
|
-
it 'fails with an exception' do
|
|
38
|
-
expect { groups.groups_id(channel: '#invalid') }.to(
|
|
39
|
-
raise_error(Slack::Web::Api::Errors::SlackError, 'channel_not_found')
|
|
40
|
-
)
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
end
|