class Apns::Persistent::FeedbackClient
Public Class Methods
gateway_uri(sandbox)
click to toggle source
# File lib/apns/persistent/feedback_client.rb, line 33 def self.gateway_uri(sandbox) sandbox ? "apn://feedback.sandbox.push.apple.com:2196" : "apn://feedback.push.apple.com:2196" end
unregistered_device_tokens_once(certificate: , sandbox: true)
click to toggle source
# File lib/apns/persistent/feedback_client.rb, line 12 def self.unregistered_device_tokens_once(certificate: , sandbox: true) FeedbackClient.unregistered_devices_once(certificate: certificate, sandbox: sandbox).collect { |device| device[:token] } end
unregistered_devices_once(certificate: , sandbox: true)
click to toggle source
# File lib/apns/persistent/feedback_client.rb, line 4 def self.unregistered_devices_once(certificate: , sandbox: true) client = Apns::Persistent::FeedbackClient.new(certificate: certificate, sandbox: sandbox) client.open devices = client.unregistered_devices client.close devices end
Public Instance Methods
unregistered_device_tokens()
click to toggle source
# File lib/apns/persistent/feedback_client.rb, line 29 def unregistered_device_tokens unregistered_devices.collect { |device| device[:token] } end
unregistered_devices()
click to toggle source
# File lib/apns/persistent/feedback_client.rb, line 16 def unregistered_devices raise 'please open' if closed? devices = [] while line = @connection.read(38) feedback = line.unpack('N1n1H140') timestamp = feedback[0] token = feedback[2].scan(/.{0,8}/).join(' ').strip devices << {token: token, timestamp: timestamp} if token && timestamp end devices end