diff --git a/lib/.DS_Store b/lib/.DS_Store new file mode 100644 index 00000000..082e5362 Binary files /dev/null and b/lib/.DS_Store differ diff --git a/lib/channel.rb b/lib/channel.rb new file mode 100644 index 00000000..c2d4ce57 --- /dev/null +++ b/lib/channel.rb @@ -0,0 +1,30 @@ +require "httparty" +require "dotenv" +require "pry" +Dotenv.load + +class Channel + # attr_reader :name, :topic, :member_count, :id + BASE_URL = "https://slack.com/api/channels.list" + SLACK_TOKEN = ENV["SLACK_TOKEN"] + + def self.list + query_param = { + token: SLACK_TOKEN, + } + response = HTTParty.get(BASE_URL, query: query_param) + + list = [] + response["channels"].each do |channel| + channel_info = [] + channel_info << channel["name"] + channel_info << channel["topic"]["value"] + channel_info << channel["num_members"] + channel_info << channel["id"] + + list << channel_info + end + + return list + end +end diff --git a/lib/dont_use_recipient.rb b/lib/dont_use_recipient.rb new file mode 100644 index 00000000..7967400d --- /dev/null +++ b/lib/dont_use_recipient.rb @@ -0,0 +1,62 @@ +require "httparty" +require "dotenv" +Dotenv.load + +class Recipient + attr_reader :slack_id, :name + BASE_URL = "https://slack.com/api/chat.postMessage" + SLACK_TOKEN = ENV["SLACK_TOKEN"] + + def initialize(slack_id) + @slack_id = slack_id + @name = name + end + + # class SlackApiError < StandardError + # raise SlackApiError, "This id does not exist" + # end + + def send_message(message, user: true) + SlackApi::self_message(message, slack_id) + # query_param = { + # token: SLACK_TOKEN, + # channel: slack_id, + # text: message, + # as_user: user, + # } + + # response = HTTParty.post( + # "#{BASE_URL}", + # body: { + # token: SLACK_TOKEN, + # text: message, + # channel: slack_id, + # }, + # ) + + # if !response.code == 200 && response.parsed_response["ok"] + # raise SlackApiError, "Oops something went wrong" + # end + + # return response.code == 200 && response.parsed_response["ok"] + + # if response.code != 200 raise SlackApiError, "This user/channel does not exist" + + end + + def self.get(url, params) + # SLACK_TOKEN = ENV["SLACK_TOKEN"] + # param = { + # token: SLACK_TOKEN, + # } + # response = HTTParty.get(url, query: param) + end + + private + + def details + end + + def self.list + end +end diff --git a/lib/recipient.rb b/lib/recipient.rb new file mode 100644 index 00000000..caad6195 --- /dev/null +++ b/lib/recipient.rb @@ -0,0 +1,65 @@ +require "httparty" +require "dotenv" +require_relative "workspace" +require_relative "user" +require_relative "channel" + +Dotenv.load + +module SlackApi + BASE_URL = "https://slack.com/api/chat.postMessage" + SLACK_TOKEN = ENV["SLACK_TOKEN"] + + class SlackApiError < StandardError; end + + def self.send_message(message, user) + user_name = User.list.map do |user_list| + user_list[0] + end + # array of all channel names + channel_name = Channel.list.map do |channel| + channel[0] + end + + #### TODO: CHANGE VARIABLE NAME + practice = [] + User.list.each do |user_name_list| + if user_name_list[0] == user + practice << user_name_list[2] + end + end + + test_workspace = Workspace.new + if channel_name.include?(user) + response = HTTParty.post( + "#{BASE_URL}", + headers: { "Content-Type" => "application/x-www-form-urlencoded" }, + body: { + token: SLACK_TOKEN, + text: message, + channel: test_workspace.select_channel(user), #.select_user(chose_user) + as_user: true, + }, + ) + elsif user_name.include?(user) + response = HTTParty.post( + "#{BASE_URL}", + headers: { "Content-Type" => "application/x-www-form-urlencoded" }, + body: { + token: SLACK_TOKEN, + text: message, + channel: practice[0], + as_user: true, + }, + ) + else + raise SlackApiError, "The input #{user} is not included in our channels." + end + + if response["ok"] + return true + else + raise SlackApiError, "Error when posting #{message} to #{user}, error: #{response["error"]}" + end + end +end diff --git a/lib/slack.rb b/lib/slack.rb index 960cf2f7..5c32d3bf 100755 --- a/lib/slack.rb +++ b/lib/slack.rb @@ -1,11 +1,104 @@ #!/usr/bin/env ruby +require "dotenv" +require_relative "user" +require_relative "channel" +require_relative "workspace" +require_relative "recipient" + +def display_options + options = ["1. List Users", + "2. List Channels", + "3. Select User", + "4. Select Channel", + "5. Details", + "6. Send Message", + "7. Quit"] + options.each do |one_option| + puts one_option + end +end def main + channel_name = Channel.list.map do |channel| + channel[0] + end + user_name = User.list.map do |user| + user[0] + end puts "Welcome to the Ada Slack CLI!" + puts "We currently have '#{User.list.length}' members and '#{Channel.list.length} channels.'" + puts "" + puts "Please choose one of the the following options" + display_options + selection = gets.chomp.downcase + until selection == "quit" + case selection + when "list users" + puts "Here is the list of users and their details:" + User.list.each do |user| + puts "Username: #{user[0]}" + puts "Real Name: #{user[1]}" + puts "Slack_ID: #{user[2]}" + puts "" + end + puts "What would you like to do next? " + display_options + selection = gets.chomp.downcase + when "list channels" + puts "Here is the list of channels and their details: " + Channel.list.each do |channel| + puts "Name: #{channel[0]}" + puts "Topic: #{channel[1]}" + puts "Member Count: #{channel[2]}" + puts "Slack_ID: #{channel[3]}" + puts "" + end + puts "What would you like to do next? " + display_options + selection = gets.chomp.downcase + when "select user" + puts "Here are all the members' user names: #{user_name}" + chose = gets.chomp.downcase #chose_user + workspace = Workspace.new + details = workspace.select_user(chose) + puts "You just selected #{details}" + puts "What would you like to do next? " + display_options + selection = gets.chomp.downcase + when "select channel" + puts "Here are all the channels' names: #{channel_name}" + chose = gets.chomp.downcase #chose_channel + workspace = Workspace.new + details = workspace.select_channel(chose) + puts "You just selected #{details}" + puts "What would you like to do next? " + display_options + selection = gets.chomp.downcase + when "details" + if details == nil + puts "You must select user or channel first." + else + puts workspace.show_details(details) + end + puts "What would you like to do next? " + selection = gets.chomp.downcase + when "send message" + if details == nil + puts "You must select user or channel first." + else + puts "Please input your message:" + message = gets.chomp.downcase - # TODO project + SlackApi.send_message(message, chose) + end + puts "What would you like to do next? " + display_options + selection = gets.chomp.downcase + end + end puts "Thank you for using the Ada Slack CLI" end -main if __FILE__ == $PROGRAM_NAME \ No newline at end of file +main if __FILE__ == $PROGRAM_NAME +# main diff --git a/lib/user.rb b/lib/user.rb new file mode 100644 index 00000000..d9fbe0cb --- /dev/null +++ b/lib/user.rb @@ -0,0 +1,27 @@ +require "httparty" +require "dotenv" +Dotenv.load + +class User + BASE_URL = "https://slack.com/api/users.list" + SLACK_TOKEN = ENV["SLACK_TOKEN"] + + def self.list + query_param = { + token: SLACK_TOKEN, + } + response = HTTParty.get(BASE_URL, query: query_param) + + list = [] + response["members"].each do |member| + member_info = [] + member_info << member["name"] + member_info << member["real_name"] + member_info << member["id"] + + list << member_info + end + + return list + end +end diff --git a/lib/workspace.rb b/lib/workspace.rb new file mode 100644 index 00000000..490f3eb3 --- /dev/null +++ b/lib/workspace.rb @@ -0,0 +1,47 @@ +require "dotenv" +require "httparty" +require_relative "user" +require_relative "channel" +Dotenv.load + +class Workspace + attr_reader :user, :channel + attr_accessor :selected + + class SlackApiError < StandardError; end + + def select_channel(selected) + selected + end + + def select_user(selected) + selected + end + + def show_details(selected) + user_name = User.list.map do |user| + user[0] + end + channel_name = Channel.list.map do |channel| + channel[0] + end + + if channel_name.include?(selected) + Channel.list.each do |instance| + if selected == instance[0] + return instance + end + end + elsif user_name.include?(selected) + User.list.each do |instance| + if selected == instance[0] + return instance + end + end + end + + if selected == "" + raise SlackApiError, "No user of channel was selected!" + end + end +end diff --git a/practice.rb b/practice.rb new file mode 100644 index 00000000..b03b96c1 --- /dev/null +++ b/practice.rb @@ -0,0 +1,33 @@ +# puts "Welcome to the Ada Slack CLI!" +# puts "We currently have #{User.list.length} members and #{Channel.list.length} channels." + +puts "" +puts "Please choose one of the the following number options" +puts "1. List Users" +puts "2. List Channels" +puts "3. Select User" +puts "4. Select Channel" +puts "5. Quit" + +selection = gets.chomp + +loop do + case selection + when "1" + puts "Here is the list of users:" + # puts User.list + when "2" + puts "Here is the list of channels: " + # puts Channel.list + when "3" + chose_user = gets.chomp + workspace = Workspace.new + # puts workspace.show_details_user(chose_user) + when "4" + chose_channel = gets.chomp + workspace = Workspace.new + # puts workspace.show_details_channel(chose_channel) + when "5" + break + end +end diff --git a/specs/.DS_Store b/specs/.DS_Store new file mode 100644 index 00000000..cbe5a12b Binary files /dev/null and b/specs/.DS_Store differ diff --git a/specs/channel_spec.rb b/specs/channel_spec.rb new file mode 100644 index 00000000..f9ef9ba1 --- /dev/null +++ b/specs/channel_spec.rb @@ -0,0 +1,28 @@ +require_relative "test_helper" +require "pry" +describe "returning channel lists" do + it "API returns as a hash and its channel returns as an array" do + VCR.use_cassette("slack_channels") do + Channel.new + + expect(Channel.list).must_be_kind_of Array + expect(Channel.list.first).must_be_kind_of Array + end + end + + it "make sure there are 3 member count in the list" do + VCR.use_cassette("slack_channels") do + Channel.new + + expect(Channel.list.length).must_equal 3 + end + end + + it "lists correct Channel name" do + VCR.use_cassette("slack_channels") do + Channel.new + + expect(Channel.list[0][0]).must_equal "everyone" + end + end +end diff --git a/specs/dont_use_recipient_spec.rb b/specs/dont_use_recipient_spec.rb new file mode 100644 index 00000000..f7c91f94 --- /dev/null +++ b/specs/dont_use_recipient_spec.rb @@ -0,0 +1,23 @@ +require_relative "test_helper" +require "pry" +# describe do +# # it "will raise an error when given an invalid channel" do +# # error = Recipient.new(ES38768) + +# # VCR.use_cassette("slack-posts") do +# # exception = expect { +# # error.send_message("This post should not work", "invalid-channel") +# # }.must_raise SlackApiError + +# # expect(exception.message).must_equal "Oops something went wrong" +# # end +# # end + +# # verify that it sends a message + +# # what happens with invalid text + +# # what happends with invalid token + +# # look at required and option, and how program should respond +# end diff --git a/specs/recipient_spec.rb b/specs/recipient_spec.rb new file mode 100644 index 00000000..d8c30034 --- /dev/null +++ b/specs/recipient_spec.rb @@ -0,0 +1,35 @@ +require_relative "test_helper" +require "pry" + +describe SlackApi do + it "can send a valid message" do + VCR.use_cassette("slack_message2") do + # test_workspace = SlackApi::Workspace.new + return_value = SlackApi.send_message("It's gonna work!", + "marshallscm") + + return_value2 = SlackApi.send_message("It's gonna work!", + "everyone") + expect(return_value).must_equal true + expect(return_value2).must_equal true + end + end + + it "generates an error if given an invalid channel" do + VCR.use_cassette("slack_message") do + expect { + SlackApi.send_message("Test message", + "bogus") + }.must_raise SlackApi::SlackApiError + end + end + + it "will raise an error if given an empty message" do + VCR.use_cassette("slack_message") do + expect { + SlackApi.send_message("", + "angela.ohh") + }.must_raise SlackApi::SlackApiError + end + end +end diff --git a/specs/test_helper.rb b/specs/test_helper.rb index 81ccd06b..74ffa02b 100644 --- a/specs/test_helper.rb +++ b/specs/test_helper.rb @@ -1,15 +1,39 @@ -require 'simplecov' +require "simplecov" SimpleCov.start -require 'minitest' -require 'minitest/autorun' -require 'minitest/reporters' -require 'minitest/skip_dsl' -require 'vcr' +require "minitest" +require "minitest/autorun" +require "minitest/reporters" +require "webmock/minitest" +require "minitest/skip_dsl" +require "vcr" +require "dotenv" Minitest::Reporters.use! Minitest::Reporters::SpecReporter.new +Dotenv.load + VCR.configure do |config| - config.cassette_library_dir = "specs/cassettes" - config.hook_into :webmock -end \ No newline at end of file + config.cassette_library_dir = "test/cassettes" # folder where casettes will be located + config.hook_into :webmock # tie into this other tool called webmock + config.default_cassette_options = { + :record => :new_episodes, # record new data when we don't have it yet + :match_requests_on => [:method, :uri, :body], # The http method, URI and body of a request all need to match + } + # Don't leave our Slack token lying around in a cassette file. + config.filter_sensitive_data("") do + ENV["SLACK_TOKEN"] + end +end + +require_relative "../lib/user" +require_relative "../lib/channel" +require_relative "../lib/workspace" +require_relative "../lib/recipient" +# require_relative "../lib/slack_api_wrapper" + +# What would you like to test +# test for 200 status and message - different +# length of members +# id +# raise error if channel or user doesn't exist diff --git a/specs/user_spec.rb b/specs/user_spec.rb new file mode 100644 index 00000000..fa93dc67 --- /dev/null +++ b/specs/user_spec.rb @@ -0,0 +1,28 @@ +require_relative "test_helper" + +describe "returning user lists" do + it "API returns as a hash and its members return as an array" do + VCR.use_cassette("slack_users") do + User.new + + expect(User.list).must_be_kind_of Array + expect(User.list.first).must_be_kind_of Array + end + end + + it "make sure there are 3 members in the list" do + VCR.use_cassette("slack_users") do + User.new + + expect(User.list.length).must_equal 3 + end + end + + it "lists correct username" do + VCR.use_cassette("slack_users") do + User.new + + expect(User.list[0][0]).must_equal "slackbot" + end + end +end diff --git a/specs/workspace_spec.rb b/specs/workspace_spec.rb new file mode 100644 index 00000000..b600194a --- /dev/null +++ b/specs/workspace_spec.rb @@ -0,0 +1,26 @@ +require_relative "test_helper" +require "pry" +describe "show details method" do + it "gives details for a specific instance of Channel" do + VCR.use_cassette("slack_channels") do + test_workspace = Workspace.new + channel_test_1 = Channel.list[0][0] + user_test_1 = User.list[0][0] + + expect(test_workspace.show_details(channel_test_1)).must_equal ["everyone", "Company-wide announcements and work-based matters", 2, "CH0E8S9UY"] + expect(test_workspace.show_details(user_test_1)).must_equal ["slackbot", "Slackbot", "USLACKBOT"] + end + end + + it "raises SlackApiError if list is nil" do + VCR.use_cassette("slack_channels") do + User.list + test_workspace = Workspace.new + test_workspace.select_user("") + test_workspace.select_channel("") + + expect { test_workspace.show_details(test_workspace.select_user("")) }.must_raise Workspace::SlackApiError + expect { test_workspace.show_details(test_workspace.select_channel("")) }.must_raise Workspace::SlackApiError + end + end +end diff --git a/test/cassettes/slack_channels.yml b/test/cassettes/slack_channels.yml new file mode 100644 index 00000000..fe778a59 --- /dev/null +++ b/test/cassettes/slack_channels.yml @@ -0,0 +1,674 @@ +--- +http_interactions: +- request: + method: get + uri: https://slack.com/api/channels.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '549' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 21:13:35 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 42197208-7395-4982-8d7c-b90c6f9322e3 + X-Oauth-Scopes: + - identify,channels:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-526b + X-Cache: + - Miss from cloudfront + Via: + - 1.1 3236cbfeb05b5e6a80bfe05dfc656559.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - e8cbf_71J1M828BlcnyywB-9bY-oEZSa0vxX9q3uVtWSvr1vp64Ozw== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"everyone","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"random","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"api-slack","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 21:13:35 GMT +- request: + method: get + uri: https://slack.com/api/conversations.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '594' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 21:15:40 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 5df02575-a618-4a31-9aa1-1da7a8d58c2b + X-Oauth-Scopes: + - identify,channels:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read,groups:read,mpim:read,im:read,read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-d8v + X-Cache: + - Miss from cloudfront + Via: + - 1.1 c0098ca8d6549ce8db6f28ee0b22a4ce.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - VmOlHEB5Ea8sXlfLS7EyVUYbt0N189ANc-jC3G7Xiwdi_VDi2TFU_Q== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"is_group":false,"is_im":false,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"name_normalized":"everyone","is_shared":false,"parent_conversation":null,"creator":"UH2S78AHY","is_ext_shared":false,"is_org_shared":false,"shared_team_ids":["TH49RSM8W"],"pending_shared":[],"is_pending_ext_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"is_group":false,"is_im":false,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"name_normalized":"random","is_shared":false,"parent_conversation":null,"creator":"UH2S78AHY","is_ext_shared":false,"is_org_shared":false,"shared_team_ids":["TH49RSM8W"],"pending_shared":[],"is_pending_ext_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"is_group":false,"is_im":false,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"name_normalized":"api-slack","is_shared":false,"parent_conversation":null,"creator":"UH2S78AHY","is_ext_shared":false,"is_org_shared":false,"shared_team_ids":["TH49RSM8W"],"pending_shared":[],"is_pending_ext_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 21:15:40 GMT +- request: + method: get + uri: https://slack.com/api/channels.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '549' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 21:22:01 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - d06cbad1-2f3c-4955-81e0-2e0309571b41 + X-Oauth-Scopes: + - identify,channels:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-1mjm + X-Cache: + - Miss from cloudfront + Via: + - 1.1 3e5a2f6c5b1171dae267d5a9344f95e8.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - x-VhMBoqLbIa8m1uBIzF8-1PCgtQZfcx0kvUH5YAGoCGuMs9minyQA== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"everyone","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"random","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"api-slack","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 21:22:01 GMT +- request: + method: get + uri: https://slack.com/api/channels.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '549' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 21:22:01 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 7295de91-1596-4fdb-828d-046cfbc529f7 + X-Oauth-Scopes: + - identify,channels:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-fx2r + X-Cache: + - Miss from cloudfront + Via: + - 1.1 5da5773a6acab8f3aabf385b38683f20.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - 5wtsYhGhCRGUOf7JONBekIGmtDDW0pvNNs2MGN1IxBUejp7D7GnFHw== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"everyone","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"random","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"api-slack","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 21:22:01 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '891' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 23:11:30 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 391492ff-529a-45ea-9cce-7b392eb03b11 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-xhix + X-Cache: + - Miss from cloudfront + Via: + - 1.1 b6280aaedffb702d5f35b330c5f557c7.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - u0QkZXD3-GX4ggsVCX5l8RiWlw-qh3VLw70b_7oj2Nze88HDU1XcgA== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"gb87774d9533","image_24":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552952011,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553037090,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 23:10:28 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '891' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 23:11:30 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 56c96777-f1e1-465a-b763-f9a8ee0329c8 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-xhix + X-Cache: + - Miss from cloudfront + Via: + - 1.1 ccbc918e3ddfbe40c4d786475a6e7606.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - gWTOQZzWPwY9AMyTehshAxCY96UtPbbdTJOw5quii0T8aIEpQzhriA== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"gb87774d9533","image_24":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552952011,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553037090,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 23:10:28 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '891' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 23:11:31 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - cbb8da99-7669-4e40-9674-6916ba6e5b54 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-c3y1 + X-Cache: + - Miss from cloudfront + Via: + - 1.1 9544538048b67636eed3ec04c11d909b.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - X34Qn_Urk6m9eARW2XoEikYanbvbj-tKRdD8LahBJ4AlhB6TNLQYrw== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"gb87774d9533","image_24":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552952011,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553037091,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 23:10:28 GMT +- request: + method: get + uri: https://slack.com/api/channels.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '549' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 21:21:29 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 5cfa1401-3f98-4059-b658-a6d8573bc832 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-5iyg + X-Cache: + - Miss from cloudfront + Via: + - 1.1 010086e284fd9714db3b3e3d1d295b60.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - 77dEXSc7j1JfrMk1GkN57utb8rXlKq2UswSvB8CudwWFzQIAwgZgFQ== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"everyone","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"random","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"api-slack","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 21:20:07 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '964' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 21:21:29 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - eb6c41a6-1e7d-4682-a387-9f41b471e52b + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-i1os + X-Cache: + - Miss from cloudfront + Via: + - 1.1 e9a9022a4b078c3e041bab2045f5beef.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - yQlaP1MlZ3CbNDjB5yG1Kdkin9WFKSfXFiVOV_x-P52mhUYTiAGU7w== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553203289,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 21:20:08 GMT +recorded_with: VCR 4.0.0 diff --git a/test/cassettes/slack_message.yml b/test/cassettes/slack_message.yml new file mode 100644 index 00000000..df436d5f --- /dev/null +++ b/test/cassettes/slack_message.yml @@ -0,0 +1,776 @@ +--- +http_interactions: +- request: + method: post + uri: https://slack.com/api/chat.postMessage + body: + encoding: UTF-8 + string: token=&text=Test%20message&channel=CH0E8S9UY + headers: + Content-Type: + - application/x-www-form-urlencoded + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Date: + - Wed, 20 Mar 2019 20:37:03 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 41ad3fb3-177f-49cb-a670-07236f567555 + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - chat:write:bot + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-saap + X-Cache: + - Miss from cloudfront + Via: + - 1.1 1c0b9f2790e77d82d7169b1fa7d0f9cc.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - hvpGfu3pzOoWtag7003c5KR9JFarSyOMBIhZBYOCyIyUzGYxtP8pfA== + body: + encoding: UTF-8 + string: '{"ok":true,"channel":"CH0E8S9UY","ts":"1553114223.000100","message":{"type":"message","subtype":"bot_message","text":"Test + message","ts":"1553114223.000100","username":"Ports - Shamira - API Project","bot_id":"BH2RK7F9S"}}' + http_version: + recorded_at: Wed, 20 Mar 2019 20:37:03 GMT +- request: + method: post + uri: https://slack.com/api/chat.postMessage + body: + encoding: UTF-8 + string: token=&text=Test%20message&channel=bogus + headers: + Content-Type: + - application/x-www-form-urlencoded + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Date: + - Wed, 20 Mar 2019 20:37:03 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - c591a373-2156-428a-aa4c-5b6fe8db61a5 + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - chat:write:bot + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-jogu + X-Cache: + - Miss from cloudfront + Via: + - 1.1 ccbc918e3ddfbe40c4d786475a6e7606.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - K2K1uIUC7L6YG1XcqrY8mCPWt5rYpFpE57GqivqB4puqlQR2kSfqKw== + body: + encoding: UTF-8 + string: '{"ok":false,"error":"channel_not_found"}' + http_version: + recorded_at: Wed, 20 Mar 2019 20:37:03 GMT +- request: + method: post + uri: https://slack.com/api/chat.postMessage + body: + encoding: UTF-8 + string: token=&text=It%27s%20gonna%20work%21&channel=CH0E8S9UY + headers: + Content-Type: + - application/x-www-form-urlencoded + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Date: + - Wed, 20 Mar 2019 20:38:10 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - a652ec9a-0e4d-4d30-94ad-224a0127acc3 + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - chat:write:bot + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-risl + X-Cache: + - Miss from cloudfront + Via: + - 1.1 3e5a2f6c5b1171dae267d5a9344f95e8.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - IIjH_Itn-MU-s1jGyqIRosgRlNyKrLhkKR_A_J9BeaCurgMHU77NCA== + body: + encoding: UTF-8 + string: '{"ok":true,"channel":"CH0E8S9UY","ts":"1553114290.000200","message":{"type":"message","subtype":"bot_message","text":"It''s + gonna work!","ts":"1553114290.000200","username":"Ports - Shamira - API Project","bot_id":"BH2RK7F9S"}}' + http_version: + recorded_at: Wed, 20 Mar 2019 20:38:10 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '964' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 21:16:48 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 9698383c-8c39-4fcc-a2d7-9d18452dcf01 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-b5y2 + X-Cache: + - Miss from cloudfront + Via: + - 1.1 44914fa6421b789193cec8998428f8bd.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - LS-HsDokakZUO0INJK5YQEz_IycA3K2kFXBBcY6xGA0HoYVqxbCZ_Q== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553203008,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 21:15:27 GMT +- request: + method: get + uri: https://slack.com/api/channels.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '549' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 21:16:49 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 75de4f25-9391-4fd4-bda7-8ef3c2e03506 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-s1yq + X-Cache: + - Miss from cloudfront + Via: + - 1.1 3e5a2f6c5b1171dae267d5a9344f95e8.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - nksaZ46XBGAX0PQkhstWRKypgMt5okH7m3QttCwuNIEa4kEV9GRHlA== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"everyone","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"random","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"api-slack","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 21:15:27 GMT +- request: + method: post + uri: https://slack.com/api/chat.postMessage + body: + encoding: UTF-8 + string: token=&text=It%27s%20gonna%20work%21&channel=marshallscm&as_user=true + headers: + Content-Type: + - application/x-www-form-urlencoded + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 21:22:05 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - b84cbe1b-40d0-4e43-bcaf-acc87bdb6bc9 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - chat:write:user + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-6ur8 + X-Cache: + - Miss from cloudfront + Via: + - 1.1 3a3b6c95360356dea16e73abeac4acfb.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - eP8jG74llIep7XP-Oe9BiC3qtATSNlXMi_DAcGF7t8NuidISThAhoA== + body: + encoding: UTF-8 + string: '{"ok":false,"error":"channel_not_found"}' + http_version: + recorded_at: Thu, 21 Mar 2019 21:20:43 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '962' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 22:06:21 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 69797b0a-3ec7-4f35-b886-943e8a0c6494 + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-7r9s + X-Cache: + - Miss from cloudfront + Via: + - 1.1 e9485f60105658dfd8d6d4dbc070260a.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - oP9dytJ-MPjnBVfXiOFL4zT8MyWFGrVPf0aLSz_SKSHvM0wjKE9GXw== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939}],"cache_ts":1553205981,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 22:06:21 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '962' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 22:17:32 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 021b80f6-6829-42bd-b77e-a03aae7f17f9 + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-46vh + X-Cache: + - Miss from cloudfront + Via: + - 1.1 7430a54821bbaeddfc77b56ba1b84eae.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - OHvZ5-9ATTIOhZzjeeQYDkFNzcyGvE85zL6QY8Avl6gzIJsjWkIfBA== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939}],"cache_ts":1553206652,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 22:17:32 GMT +- request: + method: get + uri: https://slack.com/api/channels.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '549' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 22:17:32 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 79468c17-ca1a-4c66-a412-3a2da0421722 + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-1gfy + X-Cache: + - Miss from cloudfront + Via: + - 1.1 7fe3163daf2d65b2899c9b0772889524.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - bIV5lEdaA7fN9c50q9tqyVOJ7O_DJ3yylWgBikmtOiDfHXLwOeNkVg== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"everyone","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"random","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"api-slack","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 22:17:32 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '962' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 22:17:32 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 4d7b6748-abbe-47cf-98fd-9968a5a5b20e + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-yqz7 + X-Cache: + - Miss from cloudfront + Via: + - 1.1 3a3b6c95360356dea16e73abeac4acfb.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - HkEZCJEr8fI2ATq4nyr0adxw93kBmPApwOZO0BmsXILO61MPqECLpA== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939}],"cache_ts":1553206652,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 22:17:32 GMT +- request: + method: post + uri: https://slack.com/api/chat.postMessage + body: + encoding: UTF-8 + string: token=&text=&channel=UH2S78AHY&as_user=true + headers: + Content-Type: + - application/x-www-form-urlencoded + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Date: + - Fri, 22 Mar 2019 17:04:55 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - cfef10d4-0a8b-4706-8767-770f0bef791c + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - chat:write:user + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-ia6a + X-Cache: + - Miss from cloudfront + Via: + - 1.1 e9dbb62af8eec6cb13379a137374c506.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - hddm3i5Us5qaWcVdAd5K8bwM3ZWmbe7eQKzWB9JPVzJvn0tb8bhNtw== + body: + encoding: UTF-8 + string: '{"ok":false,"error":"no_text"}' + http_version: + recorded_at: Fri, 22 Mar 2019 17:03:24 GMT +recorded_with: VCR 4.0.0 diff --git a/test/cassettes/slack_message2.yml b/test/cassettes/slack_message2.yml new file mode 100644 index 00000000..71f6859b --- /dev/null +++ b/test/cassettes/slack_message2.yml @@ -0,0 +1,646 @@ +--- +http_interactions: +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '964' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 21:31:17 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 653eb101-9438-47df-a891-08dfaf8e2548 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-imty + X-Cache: + - Miss from cloudfront + Via: + - 1.1 c0098ca8d6549ce8db6f28ee0b22a4ce.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - K-myWzOG7CHneXnlSeLbiKrHSOOeZyp5HYqgm26s1BWEq2q7ibaNUQ== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553203877,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 21:29:55 GMT +- request: + method: get + uri: https://slack.com/api/channels.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '549' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 21:31:17 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 75efc898-d7ae-41bb-a53a-bb82905ed47d + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-tufr + X-Cache: + - Miss from cloudfront + Via: + - 1.1 cb7132faa45d3b1ff4d65185f2d36d27.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - USkiqTfXB_f884bOClkZfJaQWs5SZp20eegiz0HYMiKL6J96yFz-Ww== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"everyone","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"random","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"api-slack","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 21:29:56 GMT +- request: + method: post + uri: https://slack.com/api/chat.postMessage + body: + encoding: UTF-8 + string: token=&text=It%27s%20gonna%20work%21&channel=marshallscm&as_user=true + headers: + Content-Type: + - application/x-www-form-urlencoded + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 21:31:18 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - ffaeb739-cb7c-4765-8e4d-d06c7771f725 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - chat:write:user + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-d8v + X-Cache: + - Miss from cloudfront + Via: + - 1.1 33a89f27becabefce49116de5fab23d8.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - rJchDWBkGxFE7HCAgus8k4GSw6zFgS3CybZwQVaLv-U-NAjvUudvXw== + body: + encoding: UTF-8 + string: '{"ok":false,"error":"channel_not_found"}' + http_version: + recorded_at: Thu, 21 Mar 2019 21:29:56 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '962' + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 22:07:28 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - d0fcae61-6ce2-4a8b-86b2-e4b2a064fd21 + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-sqce + X-Cache: + - Miss from cloudfront + Via: + - 1.1 3a3b6c95360356dea16e73abeac4acfb.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - vVhbEkyzBFCGGj7b1424kylOPd78se0a7gVOrbAUq7fwQtmRQwVrOw== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939}],"cache_ts":1553206048,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Thu, 21 Mar 2019 22:07:28 GMT +- request: + method: post + uri: https://slack.com/api/chat.postMessage + body: + encoding: UTF-8 + string: token=&text=It%27s%20gonna%20work%21&channel=UH2RALWR2&as_user=true + headers: + Content-Type: + - application/x-www-form-urlencoded + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Date: + - Thu, 21 Mar 2019 22:07:28 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 01c96752-e190-441b-8d81-76ab475c7f95 + X-Oauth-Scopes: + - identify,channels:read,im:read,users:read,users.profile:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - chat:write:user + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-c1so + X-Cache: + - Miss from cloudfront + Via: + - 1.1 36cc224d7812baa70145cc1e6b92b8a5.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - ndqdveb66Wx16JALVqY7f3oGccUFTvfobuWdIopykvsBi4a4qWG7yw== + body: + encoding: UTF-8 + string: '{"ok":true,"channel":"DH2S81ANN","ts":"1553206048.000100","message":{"bot_id":"BH2RK7F9S","type":"message","text":"It''s + gonna work!","user":"UH2RALWR2","ts":"1553206048.000100"}}' + http_version: + recorded_at: Thu, 21 Mar 2019 22:07:28 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '965' + Connection: + - keep-alive + Date: + - Fri, 22 Mar 2019 18:13:38 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 8f851f69-85de-4155-932b-880b90c74664 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-myy5 + X-Cache: + - Miss from cloudfront + Via: + - 1.1 3fcd7d0200438e7af0ce180cc71925ad.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - nGF0Ap5q6pp00nOcq37Ucq1QM1o3c9ZU0Iz5M5KSBJ8Oc9T_jwLiHQ== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553278418,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Fri, 22 Mar 2019 18:12:07 GMT +- request: + method: get + uri: https://slack.com/api/channels.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '549' + Connection: + - keep-alive + Date: + - Fri, 22 Mar 2019 18:13:38 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - e5f35bf6-e946-4c31-9a96-b900035d4fe7 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - channels:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-unfa + X-Cache: + - Miss from cloudfront + Via: + - 1.1 ccbc918e3ddfbe40c4d786475a6e7606.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - fnMrpAv39niaM81HMUh-zhLLWHXEETfWh1aYi5cKpT6lFABSAW9KQw== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"channels":[{"id":"CH0E8S9UY","name":"everyone","is_channel":true,"created":1552951939,"is_archived":false,"is_general":true,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"everyone","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Company-wide + announcements and work-based matters","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"This + channel is for workspace-wide communication and announcements. All members + are in this channel.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH0E8SBA4","name":"random","is_channel":true,"created":1552951939,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"random","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"Non-work + banter and water cooler conversation","creator":"UH2S78AHY","last_set":1552951939},"purpose":{"value":"A + place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber + you''d prefer to keep out of more focused work-related channels.","creator":"UH2S78AHY","last_set":1552951939},"previous_names":[],"num_members":2},{"id":"CH2R9UGCU","name":"api-slack","is_channel":true,"created":1552951940,"is_archived":false,"is_general":false,"unlinked":0,"creator":"UH2S78AHY","name_normalized":"api-slack","is_shared":false,"is_org_shared":false,"is_member":true,"is_private":false,"is_mpim":false,"members":["UH2RALWR2","UH2S78AHY"],"topic":{"value":"","creator":"","last_set":0},"purpose":{"value":"","creator":"","last_set":0},"previous_names":[],"num_members":2}],"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Fri, 22 Mar 2019 18:12:07 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '965' + Connection: + - keep-alive + Date: + - Fri, 22 Mar 2019 18:13:38 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - b4c5f10b-118c-4760-9589-3faf8252d7e9 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-bjjw + X-Cache: + - Miss from cloudfront + Via: + - 1.1 33a89f27becabefce49116de5fab23d8.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - 9vZKgw7UZm40mXYjAeNC8GWhKofjlpEib2J-qJXt5v6ryWy0zsDIeA== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"7608f9ef4784","image_original":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_original.jpg","first_name":"Shamira","last_name":"Marshall","image_24":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_24.jpg","image_32":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_32.jpg","image_48":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_48.jpg","image_72":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_72.jpg","image_192":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_192.jpg","image_512":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_512.jpg","image_1024":"https:\/\/avatars.slack-edge.com\/2019-03-20\/582916660435_7608f9ef47843f20290c_1024.jpg","status_text_canonical":"","team":"TH49RSM8W","is_custom_image":true},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1553100291,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553278418,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Fri, 22 Mar 2019 18:12:07 GMT +- request: + method: post + uri: https://slack.com/api/chat.postMessage + body: + encoding: UTF-8 + string: token=&text=It%27s%20gonna%20work%21&channel=everyone&as_user=true + headers: + Content-Type: + - application/x-www-form-urlencoded + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Transfer-Encoding: + - chunked + Connection: + - keep-alive + Date: + - Fri, 22 Mar 2019 18:13:38 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - a4462ce0-e018-4844-9159-46db6b0b3041 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:user,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - chat:write:user + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-shy + X-Cache: + - Miss from cloudfront + Via: + - 1.1 44914fa6421b789193cec8998428f8bd.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - zk19TDO88OKRvjehWhLruIGPt2MHIeF9lpmOYTWsLfQ7IRLES6pi7A== + body: + encoding: UTF-8 + string: '{"ok":true,"channel":"CH0E8S9UY","ts":"1553278418.000100","message":{"bot_id":"BH371BS5T","type":"message","text":"It''s + gonna work!","user":"UH2S78AHY","ts":"1553278418.000100"}}' + http_version: + recorded_at: Fri, 22 Mar 2019 18:12:08 GMT +recorded_with: VCR 4.0.0 diff --git a/test/cassettes/slack_users.yml b/test/cassettes/slack_users.yml new file mode 100644 index 00000000..49e9a0bf --- /dev/null +++ b/test/cassettes/slack_users.yml @@ -0,0 +1,151 @@ +--- +http_interactions: +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '891' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 20:45:47 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - d754c042-33d1-4a84-84da-11149ca6a1bf + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-4v6y + X-Cache: + - Miss from cloudfront + Via: + - 1.1 64a11a52a1b20918fec274138dd1ba05.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - rsALn42vDvl-6cFExIyK9DiexjwJFbcwAlD0o60y5akANvGi35uoVQ== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"gb87774d9533","image_24":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552952011,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553028347,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 20:44:44 GMT +- request: + method: get + uri: https://slack.com/api/users.list?token= + body: + encoding: US-ASCII + string: '' + headers: + Accept-Encoding: + - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 + Accept: + - "*/*" + User-Agent: + - Ruby + response: + status: + code: 200 + message: OK + headers: + Content-Type: + - application/json; charset=utf-8 + Content-Length: + - '891' + Connection: + - keep-alive + Date: + - Tue, 19 Mar 2019 20:45:47 GMT + Server: + - Apache + X-Content-Type-Options: + - nosniff + X-Slack-Req-Id: + - 07acc638-f205-4086-a52a-23965d5fe543 + X-Oauth-Scopes: + - identify,channels:read,users:read,chat:write:bot + Expires: + - Mon, 26 Jul 1997 05:00:00 GMT + Cache-Control: + - private, no-cache, no-store, must-revalidate + Access-Control-Expose-Headers: + - x-slack-req-id + X-Xss-Protection: + - '0' + X-Accepted-Oauth-Scopes: + - users:read + Vary: + - Accept-Encoding + Pragma: + - no-cache + Access-Control-Allow-Headers: + - slack-route, x-slack-version-ts + Strict-Transport-Security: + - max-age=31536000; includeSubDomains; preload + Referrer-Policy: + - no-referrer + Access-Control-Allow-Origin: + - "*" + X-Via: + - haproxy-www-t91r + X-Cache: + - Miss from cloudfront + Via: + - 1.1 36cc224d7812baa70145cc1e6b92b8a5.cloudfront.net (CloudFront) + X-Amz-Cf-Id: + - I8EaLOVhYhm1MTPnL7J9VBqHfAC17--7uLCum41Qz2IvJAXUQ-vlpQ== + body: + encoding: ASCII-8BIT + string: '{"ok":true,"members":[{"id":"USLACKBOT","team_id":"TH49RSM8W","name":"slackbot","deleted":false,"color":"757575","real_name":"Slackbot","tz":null,"tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Slackbot","real_name_normalized":"Slackbot","display_name":"Slackbot","display_name_normalized":"Slackbot","fields":null,"status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"sv41d8cd98f0","always_active":true,"first_name":"slackbot","last_name":"","image_24":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_24.png","image_32":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_32.png","image_48":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_48.png","image_72":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_72.png","image_192":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_192.png","image_512":"https:\/\/a.slack-edge.com\/16510\/img\/slackbot_512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":0},{"id":"UH2RALWR2","team_id":"TH49RSM8W","name":"marshallscm","deleted":false,"color":"4bbe2e","real_name":"Shamira + Marshall","tz":"America\/Los_Angeles","tz_label":"Pacific Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"Shamira + Marshall","real_name_normalized":"Shamira Marshall","display_name":"Shamira + Marshall","display_name_normalized":"Shamira Marshall","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"gb87774d9533","image_24":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/b87774d953381c22c0620b06eee32887.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0023-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":false,"is_owner":false,"is_primary_owner":false,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552952011,"has_2fa":false},{"id":"UH2S78AHY","team_id":"TH49RSM8W","name":"angela.ohh","deleted":false,"color":"9f69e7","real_name":"angela.ohh","tz":"America\/Los_Angeles","tz_label":"Pacific + Daylight Time","tz_offset":-25200,"profile":{"title":"","phone":"","skype":"","real_name":"angela.ohh","real_name_normalized":"angela.ohh","display_name":"","display_name_normalized":"","status_text":"","status_emoji":"","status_expiration":0,"avatar_hash":"ge9c24d2cfc6","image_24":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-24.png","image_32":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-32.png","image_48":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-48.png","image_72":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-72.png","image_192":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0001-192.png","image_512":"https:\/\/secure.gravatar.com\/avatar\/e9c24d2cfc6d69108ae65335301d1be8.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2F00b63%2Fimg%2Favatars%2Fava_0026-512.png","status_text_canonical":"","team":"TH49RSM8W"},"is_admin":true,"is_owner":true,"is_primary_owner":true,"is_restricted":false,"is_ultra_restricted":false,"is_bot":false,"is_app_user":false,"updated":1552951939,"has_2fa":false}],"cache_ts":1553028347,"response_metadata":{"next_cursor":""}}' + http_version: + recorded_at: Tue, 19 Mar 2019 20:44:44 GMT +recorded_with: VCR 4.0.0