class Pushr::Daemon::Apns2Support::Token

Constants

ALGORITHM

Public Class Methods

new(configuration) click to toggle source
# File lib/pushr/daemon/apns2_support/token.rb, line 7
def initialize(configuration)
  @configuration = configuration
end

Public Instance Methods

generate() click to toggle source
# File lib/pushr/daemon/apns2_support/token.rb, line 11
def generate
  JWT.encode(payload, ec_key, ALGORITHM, header_fields)
end

Private Instance Methods

ec_key() click to toggle source
# File lib/pushr/daemon/apns2_support/token.rb, line 17
def ec_key
  OpenSSL::PKey::EC.new(@configuration.private_key)
end
header_fields() click to toggle source
# File lib/pushr/daemon/apns2_support/token.rb, line 25
def header_fields
  { kid: @configuration.key_id }
end
payload() click to toggle source
# File lib/pushr/daemon/apns2_support/token.rb, line 21
def payload
  { iss: @configuration.team_id, iat: Time.now.to_i }
end