africastalking-ruby 2.1.1.beta.2 → 2.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +0 -15
- data/lib/AfricasTalking/Payments.rb +2 -46
- data/lib/AfricasTalking/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9a164a8ff23b2df6262e1618fb0410f0865fb5968371a8e84744355972c15392
|
4
|
+
data.tar.gz: f8f349b0b93e28799b008acb508f6c71e21e4611aadb08586a23a36f0585ce86
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 630d8aab1c9bf72628efacc46a51a1b40dbabe6000523c79fbbc1583859d9ccf7b3c490f31f0ba81a3a30c6b154ed1e2dd2184d9614dcf04a30a0271edf0635b
|
7
|
+
data.tar.gz: 134cea25df4acaa735d827dad03f6cc256ab67009b42b4d3b59e066a3918a1ae76285fd741145e178484e0a104d30ffaec122b90f7e3c4957d4bf4583fc115c1
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -281,7 +281,6 @@ payments.mobileCheckout options
|
|
281
281
|
- `currencyCode`: 3-digit ISO format currency code (e.g `KES`, `USD`, `UGX` etc.) `REQUIRED`
|
282
282
|
- `amount`: This is the amount. `REQUIRED`
|
283
283
|
- `metadata`: Some optional data to associate with transaction.`OPTIONAL`
|
284
|
-
- `providerChannel`: This represents the payment channel the payment will be made from. eg paybill number. The payment channel must be mapped to you. The AfricasTalking default provider channel is used if not specified.`OPTIONAL`
|
285
284
|
|
286
285
|
#### Mobile B2C
|
287
286
|
```ruby
|
@@ -333,20 +332,6 @@ payments.mobileB2B options
|
|
333
332
|
- `amount`: Payment amount. `REQUIRED`
|
334
333
|
- `metadata`: Some optional data to associate with transaction.`REQUIRED`
|
335
334
|
|
336
|
-
#### Mobile Data
|
337
|
-
```ruby
|
338
|
-
payments.mobileData options
|
339
|
-
```
|
340
|
-
- `options`
|
341
|
-
- `productName`: Your Payment Product. `REQUIRED`
|
342
|
-
- `recipients`: A list of recipients. Each recipient has:
|
343
|
-
|
344
|
-
- `phoneNumber`: Customer phone number (in international format). `REQUIRED`
|
345
|
-
- `quantity`: Mobile data amount. `REQUIRED`
|
346
|
-
- `unit`: Mobile data unit. Can either be `MB` or `GB`. `REQUIRED`
|
347
|
-
- `validity`: How long the mobile data is valid for. Must be one of `Daily`, `Weekly` and `Monthly`. `REQUIRED`
|
348
|
-
- `metadata`: Additional data to associate with the transaction. `REQUIRED`
|
349
|
-
|
350
335
|
#### Wallet Transfer
|
351
336
|
```ruby
|
352
337
|
payments.walletTransfer options
|
@@ -111,33 +111,6 @@ class Payments
|
|
111
111
|
raise AfricasTalkingException, response
|
112
112
|
end
|
113
113
|
|
114
|
-
def mobileData options
|
115
|
-
validateParamsPresence? options, %w(productName)
|
116
|
-
recipients = options['recipients'].each{|item|
|
117
|
-
validateParamsPresence? item, %w(phoneNumber quantity unit validity metadata)
|
118
|
-
}
|
119
|
-
parameters = {
|
120
|
-
'username' => @username,
|
121
|
-
'productName' => options['productName'],
|
122
|
-
'recipients' => recipients,
|
123
|
-
}
|
124
|
-
url = getMobileDataUrl()
|
125
|
-
response = sendJSONRequest(url, parameters)
|
126
|
-
if (@response_code == HTTP_CREATED)
|
127
|
-
resultObj = JSON.parse(response, :quirky_mode =>true)
|
128
|
-
if (resultObj['entries'].length > 0)
|
129
|
-
results = resultObj['entries'].collect{ |data|
|
130
|
-
MobileDataResponse.new data['phoneNumber'], data['provider'], data['status'], data['transactionId'], data['value'], data['errorMessage']
|
131
|
-
}
|
132
|
-
#
|
133
|
-
return results
|
134
|
-
end
|
135
|
-
|
136
|
-
raise AfricasTalkingException, resultObj['errorMessage']
|
137
|
-
end
|
138
|
-
raise AfricasTalkingException, response
|
139
|
-
end
|
140
|
-
|
141
114
|
def bankCheckoutCharge options
|
142
115
|
validateParamsPresence? options, %w(bankAccount productName currencyCode amount narration metadata)
|
143
116
|
parameters = {
|
@@ -408,10 +381,6 @@ class Payments
|
|
408
381
|
return getPaymentHost() + "/mobile/b2c/request"
|
409
382
|
end
|
410
383
|
|
411
|
-
def getMobileDataUrl()
|
412
|
-
return getPaymentHost() + "/mobile/data/request"
|
413
|
-
end
|
414
|
-
|
415
384
|
def getMobilePaymentB2BUrl()
|
416
385
|
return getPaymentHost() + "/mobile/b2b/request"
|
417
386
|
end
|
@@ -484,20 +453,7 @@ class MobileB2CResponse
|
|
484
453
|
@transactionId = transactionId_
|
485
454
|
@errorMessage = errorMessage_
|
486
455
|
end
|
487
|
-
end
|
488
|
-
|
489
|
-
class MobileDataResponse
|
490
|
-
attr_reader :phoneNumber, :provider, :status, :transactionId, :value, :errorMessage
|
491
|
-
|
492
|
-
def initialize phoneNumber_, provider_, status_, transactionId_, value_, errorMessage_
|
493
|
-
@phoneNumber = phoneNumber_
|
494
|
-
@provider = provider_
|
495
|
-
@status = status_
|
496
|
-
@transactionId = transactionId_
|
497
|
-
@value = value_
|
498
|
-
@errorMessage = errorMessage_
|
499
|
-
end
|
500
|
-
end
|
456
|
+
end
|
501
457
|
|
502
458
|
class MobileB2BResponse
|
503
459
|
attr_reader :status, :transactionId, :transactionFee, :providerChannel, :errorMessage
|
@@ -682,4 +638,4 @@ class TransactionData
|
|
682
638
|
@transactionId = transactionId_
|
683
639
|
@creationTime = creationTime_
|
684
640
|
end
|
685
|
-
end
|
641
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: africastalking-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.1.1
|
4
|
+
version: 2.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Mwirigi
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-10-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -149,9 +149,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
149
149
|
version: '0'
|
150
150
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
151
151
|
requirements:
|
152
|
-
- - "
|
152
|
+
- - ">="
|
153
153
|
- !ruby/object:Gem::Version
|
154
|
-
version:
|
154
|
+
version: '0'
|
155
155
|
requirements: []
|
156
156
|
rubyforge_project:
|
157
157
|
rubygems_version: 2.7.7
|