coolsms 0.0.5 → 0.0.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6a6dd0d12e8522db359ec7239fe77b8686c4a3a3
4
- data.tar.gz: 3cae009b0634469d5bdeab54e6e37fdfec6074cf
3
+ metadata.gz: bfde0ec85e0b54eef68495ed03e214c4c772c8c4
4
+ data.tar.gz: 8cb6ed43510d78de42a34adbb4cbb1d4469e1ec0
5
5
  SHA512:
6
- metadata.gz: 5601db2991f2fd27c182b2f829e6ac66e704aa4395084bf456f44140665de435b7caf18b01d4b667bde8cbd1f587bc366c73aba65c95de015c0fa8412bab43a6
7
- data.tar.gz: 3bfe391579c8ac3988fb9134ec99d2c1b559c3f97800e140ad276b6c5c22210e2f07ef154aac58b20b964f7ec3719449e5df097eb347cbda7f1b2adbed1e6e57
6
+ metadata.gz: 839ebd8d364e7deaeb57768c227c2dbd2f58e3807bd8643d876dd9fd83e8faa82d1578bffbeade0c60a9daf0a8a8b05688bcbfc4ad5dbf145e13f2ebd895d3cf
7
+ data.tar.gz: 4c6d61ef7b1ca98c3fb78f25b33adc487c265a52a8c9cd622620ec45664d245d48a5373d83e50b2aa7ac0c9f8f999e58e65484477f3bd3860eda2795861dae12
data/README.md CHANGED
@@ -28,6 +28,7 @@ Or install it yourself as:
28
28
 
29
29
  COOLSMS_SEND = Coolsms::SMS::Send.new( { options } )
30
30
  COOLSMS_SEND.send( from, to, text)
31
+ COOLSMS_SEND.set_field( { options} )
31
32
  Options
32
33
  - type
33
34
  - charset
@@ -45,6 +46,13 @@ Or install it yourself as:
45
46
  - send
46
47
  - set_field
47
48
 
49
+ - ####Balance
50
+
51
+ COOLSMS_BALANCE = Coolsms::SMS::Balance.new
52
+ COOLSMS_BALANCE.balance
53
+
54
+ Methods
55
+ - balance
48
56
 
49
57
  ## Coolsms Rest API Document
50
58
 
data/lib/coolsms/auth.rb CHANGED
@@ -15,7 +15,6 @@ class Auth
15
15
  def initialize
16
16
  self.api_key ||= ENV['COOLSMS_KEY']
17
17
  self.api_secret ||= ENV['COOLSMS_SECRET_KEY']
18
-
19
18
  end
20
19
 
21
20
  def signature
@@ -25,5 +24,8 @@ class Auth
25
24
  OpenSSL::HMAC.hexdigest( "md5", self.api_secret, hmac_data )
26
25
  end
27
26
 
27
+ def auth
28
+ { api_key: self.api_key, signature: self.signature, timestamp: self.timestamp, salt: self.salt }
29
+ end
28
30
 
29
31
  end
@@ -0,0 +1,14 @@
1
+ class Balance
2
+
3
+ def balance
4
+ fields = Auth.new.auth
5
+ res = Request.new.get( "balance", fields )
6
+ if res.code == "200"
7
+ body = JSON.parse( res.body )
8
+ { ret: true, message: body, code: res.code }
9
+ else
10
+ { ret: false, code: res.code }
11
+ end
12
+ end
13
+
14
+ end
@@ -7,11 +7,11 @@ class Request
7
7
  self.uri = URI("https://api.coolsms.co.kr")
8
8
  end
9
9
 
10
- def post(key, fields)
10
+ def post(key, fields = {})
11
11
  res = Net::HTTP.post_form( self.uri+"/1/#{key}", fields )
12
12
  end
13
13
 
14
- def get(key, fields)
14
+ def get(key, fields = {})
15
15
  uri = URI( self.uri+"/1/#{key}")
16
16
  uri.query = URI.encode_www_form( fields )
17
17
  res = Net::HTTP.get_response( uri )
data/lib/coolsms/send.rb CHANGED
@@ -40,8 +40,7 @@ class Send
40
40
  end
41
41
 
42
42
  def fields(*keys)
43
- auth = Auth.new
44
- field = { api_key: auth.api_key, signature: auth.signature, timestamp: auth.timestamp, salt: auth.salt}
43
+ field = Auth.new.auth
45
44
  keys.each do |key|
46
45
  if self.class.instance_methods.include? key
47
46
  field[key] = self.public_send(key)
@@ -1,3 +1,3 @@
1
1
  module Coolsms
2
- VERSION = "0.0.5"
2
+ VERSION = "0.0.6"
3
3
  end
data/lib/coolsms.rb CHANGED
@@ -5,11 +5,13 @@ require 'json'
5
5
  require_relative "coolsms/auth"
6
6
  require_relative "coolsms/request"
7
7
  require_relative 'coolsms/send'
8
+ require_relative 'coolsms/balance'
8
9
 
9
10
  module Coolsms
10
11
  class SMS
11
12
 
12
13
  Send = Class.new(Send)
14
+ Balance = Class.new(Balance)
13
15
 
14
16
  end
15
17
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: coolsms
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 0.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - JunSangPil
@@ -53,6 +53,7 @@ files:
53
53
  - coolsms.gemspec
54
54
  - lib/coolsms.rb
55
55
  - lib/coolsms/auth.rb
56
+ - lib/coolsms/balance.rb
56
57
  - lib/coolsms/request.rb
57
58
  - lib/coolsms/send.rb
58
59
  - lib/coolsms/version.rb