class Urbanairship::Devices::NamedUser
Attributes
named_user_id[RW]
Public Class Methods
new(client: required('client'))
click to toggle source
# File lib/urbanairship/devices/named_user.rb, line 10 def initialize(client: required('client')) @client = client @named_user_id = nil end
Public Instance Methods
associate(channel_id: required('channel_id'), device_type: nil)
click to toggle source
# File lib/urbanairship/devices/named_user.rb, line 26 def associate(channel_id: required('channel_id'), device_type: nil) fail ArgumentError, 'named_user_id is required for association' if @named_user_id.nil? payload = {} payload['channel_id'] = channel_id payload['device_type'] = device_type unless device_type.nil? payload['named_user_id'] = @named_user_id.to_s response = @client.send_request( method: 'POST', body: JSON.dump(payload), path: named_users_path('associate'), content_type: CONTENT_TYPE ) logger.info { "Associated channel_id #{channel_id} with named_user #{@named_user_id}" } response end
disassociate(channel_id: required('channel_id'), device_type: nil)
click to toggle source
# File lib/urbanairship/devices/named_user.rb, line 45 def disassociate(channel_id: required('channel_id'), device_type: nil) payload = {} payload['channel_id'] = channel_id payload['device_type'] = device_type unless device_type.nil? payload['named_user_id'] = @named_user_id unless @named_user_id.nil? response = @client.send_request( method: 'POST', body: JSON.dump(payload), path: named_users_path('disassociate'), content_type: CONTENT_TYPE ) logger.info { "Dissociated channel_id #{channel_id}" } response end
lookup()
click to toggle source
# File lib/urbanairship/devices/named_user.rb, line 60 def lookup fail ArgumentError, 'named_user_id is required for lookup' if @named_user_id.nil? response = @client.send_request( method: 'GET', path: named_users_path('?id=' + @named_user_id), ) logger.info { "Retrieved information on named_user_id #{@named_user_id}" } response end
update_attributes(attributes: required('attributes'))
click to toggle source
# File lib/urbanairship/devices/named_user.rb, line 15 def update_attributes(attributes: required('attributes')) response = @client.send_request( method: 'POST', body: Urbanairship::Attributes.new(attributes).payload.to_json, path: named_users_path("#{@named_user_id}/attributes"), content_type: CONTENT_TYPE, ) logger.info { "Updated attributes for named_user #{@named_user_id}" } response end