Class: Vend::Television

Inherits:
Base
  • Object
show all
Defined in:
lib/airvend/airvend_objects/television.rb

Instance Method Summary collapse

Methods inherited from Base

#connect, #get_plans, #initialize, #mno_id, #power_id, #produce_error, #provider_id, #rename_hash, #tv_id, #underscorelize, #verify_customer

Constructor Details

This class inherits a constructor from Base

Instance Method Details

#buy(payload) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/airvend/airvend_objects/television.rb', line 6

def buy(payload)
  params_hash = { 'ref'=> payload[:ref], 'account'=> payload[:account], 'type'=> tv_id(payload[:provider]), 'amount'=> payload[:amount], 'customernumber'=> payload[:customernumber], 'invoicePeriod'=>"1" }
details = {}
details.merge!({ 'details'=>params_hash })
api_hash = @airvendObj.hash_req(details)
resp = vendAdapter(api_hash, details)
if resp.status == 200
    hash = rename_hash(JSON.parse(response.body, { symbolize_names: true }))
    rename_hash(hash[:details])
    hash
  else
    produce_error(response)
  end
end

#plans(provider) ⇒ Object



25
26
27
28
# File 'lib/airvend/airvend_objects/television.rb', line 25

def plans(provider)
  plans = get_plans("", tv_id(provider))[:details][:message]
  new_plans = plans.each { |p| p.delete(:descrition); p[:description] = p.delete :name; p[:amount] = p[:amount].to_s}
end

#verify(payload) ⇒ Object



21
22
23
# File 'lib/airvend/airvend_objects/television.rb', line 21

def verify(payload)
  verify_customer(tv_id(payload[:provider]), payload[:account])[:details][:message]
end