class Stream::ReactionsClient
Public Instance Methods
add(kind, activity_id, user_id, data: nil, target_feeds: nil)
click to toggle source
# File lib/stream/reactions.rb, line 3 def add(kind, activity_id, user_id, data: nil, target_feeds: nil) data = { kind: kind, activity_id: activity_id, user_id: user_id, data: data, target_feeds: target_feeds } make_reaction_request(:post, {}, data) end
add_child(kind, parent_id, user_id, data: nil, target_feeds: nil)
click to toggle source
# File lib/stream/reactions.rb, line 33 def add_child(kind, parent_id, user_id, data: nil, target_feeds: nil) data = { kind: kind, parent: parent_id, user_id: user_id, data: data, target_feeds: target_feeds } make_reaction_request(:post, {}, data) end
create_reference(id)
click to toggle source
# File lib/stream/reactions.rb, line 67 def create_reference(id) k = id k = id['id'] if id.respond_to?(:keys) && !id['id'].nil? "SR:#{k}" end
delete(reaction_id)
click to toggle source
# File lib/stream/reactions.rb, line 28 def delete(reaction_id) uri = "/reaction/#{reaction_id}/" make_reaction_request(:delete, {}, {}, endpoint: uri) end
filter(params = {})
click to toggle source
# File lib/stream/reactions.rb, line 44 def filter(params = {}) field = '' value = '' kind = params.fetch(:kind, '') if params[:reaction_id] field = 'reaction_id' value = params[:reaction_id] elsif params[:activity_id] field = 'activity_id' value = params[:activity_id] elsif params[:user_id] field = 'user_id' value = params[:user_id] end params.delete(field.to_sym) unless field.empty? uri = if kind.nil? || kind.empty? "/reaction/#{field}/#{value}/" else "/reaction/#{field}/#{value}/#{kind}/" end make_reaction_request(:get, params, {}, endpoint: uri) end
get(reaction_id)
click to toggle source
# File lib/stream/reactions.rb, line 14 def get(reaction_id) uri = "/reaction/#{reaction_id}/" make_reaction_request(:get, {}, {}, endpoint: uri) end
update(reaction_id, data: nil, target_feeds: nil)
click to toggle source
# File lib/stream/reactions.rb, line 19 def update(reaction_id, data: nil, target_feeds: nil) data = { data: data, target_feeds: target_feeds } uri = "/reaction/#{reaction_id}/" make_reaction_request(:put, {}, data, endpoint: uri) end
Private Instance Methods
make_reaction_request(method, params, data, endpoint: '/reaction/')
click to toggle source
# File lib/stream/reactions.rb, line 75 def make_reaction_request(method, params, data, endpoint: '/reaction/') auth_token = Stream::Signer.create_jwt_token('reactions', '*', @api_secret, '*', '*') make_request(method, endpoint, auth_token, params, data) end