Sha256: f40ab3ea0d2aeae097914097c9f1d1871a4f2f06d4b91c8f5998c8c3533caf07

Contents?: true

Size: 683 Bytes

Versions: 3

Compression:

Stored size: 683 Bytes

Contents

module KwAPN
  class FeedbackReader < Connection
    
    attr_accessor :host, :port
    def initialize(host=nil, port=nil)
      @host = host || KwAPN::Config.options[:feedback_host]
      @port = port || KwAPN::Config.options[:feedback_port]
    end
    
    def read
      records ||= []
      begin
        @ssl = connect(@host, @port, KwAPN::Config.options)
        while record = @ssl.read(38)
          feedback = record.strip.unpack('NnH*')
          records << feedback[2].scan(/.{0,8}/).join(' ').strip
        end
      rescue => e
        puts "Error reading feedback channel: #{e.message}"
      ensure
        @ssl.close
      end
      return records
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
kw_apn-0.3.1 lib/feedback_reader.rb
kw_apn-0.3 lib/feedback_reader.rb
kw_apn-0.2 lib/feedback_reader.rb