elefeely 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 766237173c702bf151276bb1c81e809705637266
4
- data.tar.gz: 6c505069b426420067b7c816386823673a1edf99
3
+ metadata.gz: dc38f1893ec436162d700bcabb27abc1a3b5acb6
4
+ data.tar.gz: 7949e36804432447b39a41b1ddcb5ac4de75f917
5
5
  SHA512:
6
- metadata.gz: a9095e9455221205b0b9720f7c0def542b390480b2c1b64a7a049d1fce6bbba216e263e20376657de03cf473e605c8ab8ff9fe4c7b671b4fc82bf3c24b6f9930
7
- data.tar.gz: 634c3e0be2878efd92bc972fc04ca999cfe1a490bc010e66039ab076aabb39391c4a026cbebc2d5c445e1f0d9fa5c0f170d61c77fd7bd7a47bd2d781a51347aa
6
+ metadata.gz: 583b82ba317187116f62e6f60a186c2dddf9e4539f490046abc3b71add19f347f15c32c696ac95971ddb06e65cfcd9576452dba67545ce67ab28f4b13c2ad247
7
+ data.tar.gz: ea8c27ba8cb7110dd946839b03d3a1dbdbaa6c04348f7b1ce8f4fd63c443d473f28d9283244e1d8ccc55b56fffcf873af580755aa0966e3c29eb4ec65ff90af3
data/README.md CHANGED
@@ -27,7 +27,8 @@ Configure the gem with:
27
27
 
28
28
  ```ruby
29
29
  Elefeely.configure(source_key: YOUR SOURCE KEY,
30
- source_secret: YOUR SOURCE SECRET)
30
+ source_secret: YOUR SOURCE SECRET,
31
+ api_host: 'http://elefeely-api.herokuapp.com')
31
32
  ```
32
33
 
33
34
  That's it! You're ready to talk to Elefeely.
data/lib/elefeely.rb CHANGED
@@ -26,16 +26,20 @@ module Elefeely
26
26
 
27
27
  private
28
28
 
29
+ def self.api_directory
30
+ @api_directory ||= request(:get, api_host)
31
+ end
32
+
29
33
  def self.phone_numbers_uri
30
- uri '/phones'
34
+ signed_url(api_directory['phones_url'])
31
35
  end
32
36
 
33
37
  def self.feelings_uri
34
- uri '/feelings'
38
+ signed_url(api_directory['feelings_url'])
35
39
  end
36
40
 
37
41
  def self.phone_number_uri(phone_number)
38
- uri "/phones/#{phone_number}"
42
+ signed_url(api_directory['phone_url'].gsub('{number}', phone_number))
39
43
  end
40
44
 
41
45
  def self.request(verb, *params)
@@ -57,15 +61,14 @@ private
57
61
  end
58
62
  end
59
63
 
60
- def self.uri(path)
61
- uri = "http://elefeely-api.herokuapp.com"
62
- uri << "#{path}?source_key=#{source_key}&timestamp=#{Time.now.to_i}"
63
- uri << "&signature=#{signature(uri)}"
64
+ def self.signed_url(url)
65
+ url << "?source_key=#{source_key}&timestamp=#{Time.now.to_i}"
66
+ url << "&signature=#{signature(url)}"
64
67
  end
65
68
 
66
- def self.signature(uri)
69
+ def self.signature(url)
67
70
  validate_credentials!
68
71
 
69
- OpenSSL::HMAC.hexdigest(OpenSSL::Digest::Digest.new('sha512'), source_secret, uri)
72
+ OpenSSL::HMAC.hexdigest(OpenSSL::Digest::Digest.new('sha512'), source_secret, url)
70
73
  end
71
74
  end
@@ -1,11 +1,13 @@
1
1
  module Elefeely
2
2
  module Configurable
3
3
  attr_accessor :source_key,
4
- :source_secret
4
+ :source_secret,
5
+ :api_host
5
6
 
6
7
  def configure(params)
7
8
  self.source_key = params[:source_key]
8
9
  self.source_secret = params[:source_secret]
10
+ self.api_host = params[:api_host]
9
11
 
10
12
  validate_credentials!
11
13
  end
@@ -1,3 +1,3 @@
1
1
  module Elefeely
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: elefeely
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Raphael Weiner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-06-04 00:00:00.000000000 Z
11
+ date: 2013-06-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler