btc_ticker 1.0.2 → 1.1.1
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 +4 -4
- data/.gitignore +10 -0
- data/.travis.yml +2 -1
- data/CHANGELOG.md +1 -0
- data/README.md +15 -16
- data/btc_ticker.gemspec +8 -7
- data/lib/btc_ticker.rb +2 -0
- data/lib/btc_ticker/bitstamp.rb +10 -15
- data/lib/btc_ticker/errors.rb +6 -0
- data/lib/btc_ticker/http_client.rb +15 -0
- data/lib/btc_ticker/version.rb +1 -1
- metadata +15 -27
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 38749fbb568ae9dc661c98edde94052368f4c356
|
4
|
+
data.tar.gz: 479a502190503cd9f2717fc77cdc8912b744ab38
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f3ec692574c504ee7f7f20f704a205ca815f786e8a913f7fe0b614ca33faf0c114fc2a7323caeb3c41d19621433eb0eaee989a63f794565ab3e84e5af91dd208
|
7
|
+
data.tar.gz: 0aa9287ca28b458901cc731d00c1b01d6d630b5f86bdde4b781fd1249a36d75e56b1f9e719b427a454a041e6f29353ecb9ca0dc1ba80f2bfb3f3921c9ae8eb8f
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# BTCTicker
|
1
|
+
# BTCTicker
|
2
2
|
|
3
3
|
[](https://badge.fury.io/rb/btc_ticker)
|
4
4
|
[](https://travis-ci.org/ironbyte/btc_ticker)
|
@@ -7,20 +7,6 @@
|
|
7
7
|
|
8
8
|
A Ruby wrapper for the Bitstamp Ticker API.
|
9
9
|
|
10
|
-
#### Bitstamp Ticker API response
|
11
|
-
Attribute | Description
|
12
|
-
------------|----------------------------------------------------
|
13
|
-
last | Last BTC price.
|
14
|
-
high | Last 24 hours price high.
|
15
|
-
low | Last 24 hours price low.
|
16
|
-
vwap | Last 24 hours volume weighted average price.
|
17
|
-
volume | Last 24 hours volume.
|
18
|
-
bid | Highest buy order.
|
19
|
-
ask | Lowest sell order.
|
20
|
-
timestamp | Unix timestamp date and time.
|
21
|
-
open | First price of the day.
|
22
|
-
----------------------------------------------------------------
|
23
|
-
|
24
10
|
## Installation
|
25
11
|
|
26
12
|
Add this line to your application's Gemfile:
|
@@ -50,8 +36,21 @@ p ticker.keys #=> ["high", "last", "timestamp", "bid", "vwap", "volume", "low",
|
|
50
36
|
|
51
37
|
current_btc_usd_price = ticker["last"]
|
52
38
|
```
|
39
|
+
#### Bitstamp Ticker API response
|
40
|
+
|
41
|
+
Attribute | Description
|
42
|
+
------------|----------------------------------------------------
|
43
|
+
last | Last BTC price.
|
44
|
+
high | Last 24 hours price high.
|
45
|
+
low | Last 24 hours price low.
|
46
|
+
vwap | Last 24 hours volume weighted average price.
|
47
|
+
volume | Last 24 hours volume.
|
48
|
+
bid | Highest buy order.
|
49
|
+
ask | Lowest sell order.
|
50
|
+
timestamp | Unix timestamp date and time.
|
51
|
+
open | First price of the day.
|
52
|
+
----------------------------------------------------------------
|
53
53
|
|
54
54
|
## License
|
55
55
|
|
56
56
|
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
57
|
-
|
data/btc_ticker.gemspec
CHANGED
@@ -9,21 +9,22 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["ironbyte"]
|
10
10
|
spec.email = ["illusivespectre@gmail.com"]
|
11
11
|
|
12
|
-
spec.summary = %q{
|
13
|
-
spec.description =
|
12
|
+
spec.summary = %q{A Ruby wrapper for the Bitstamp Ticker API}
|
13
|
+
spec.description = spec.summary
|
14
14
|
spec.homepage = "https://github.com/ironbyte/btc_ticker"
|
15
15
|
spec.license = "MIT"
|
16
16
|
|
17
|
+
spec.required_ruby_version = '>= 2.0.0'
|
18
|
+
|
17
19
|
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
18
20
|
f.match(%r{^(test|spec|features)/})
|
19
21
|
end
|
20
22
|
spec.executables = ["console"]
|
21
23
|
spec.require_paths = ["lib"]
|
22
24
|
|
23
|
-
spec.
|
24
|
-
spec.add_development_dependency "rake", "~> 10.0"
|
25
|
-
spec.add_development_dependency "rspec", "~> 3.0"
|
26
|
-
spec.add_development_dependency "webmock", "~> 2.3"
|
25
|
+
spec.add_runtime_dependency "rest-client", '~> 2.0'
|
27
26
|
|
28
|
-
spec.
|
27
|
+
spec.add_development_dependency "rake", "~> 12.0"
|
28
|
+
spec.add_development_dependency "rspec", "~> 3.0"
|
29
|
+
spec.add_development_dependency "webmock", "~> 3.0"
|
29
30
|
end
|
data/lib/btc_ticker.rb
CHANGED
data/lib/btc_ticker/bitstamp.rb
CHANGED
@@ -1,31 +1,26 @@
|
|
1
|
-
require '
|
1
|
+
require 'json'
|
2
2
|
|
3
3
|
module BTCTicker
|
4
4
|
module Bitstamp
|
5
|
-
|
6
|
-
include HTTParty
|
7
|
-
|
8
|
-
base_uri 'https://www.bitstamp.net/api'
|
9
|
-
headers({"User-Agent"=>'BTCTicker-Ruby'})
|
5
|
+
APIBASE = 'https://www.bitstamp.net/api/v2'
|
10
6
|
|
7
|
+
class Ticker
|
11
8
|
def self.get_info(pair)
|
12
9
|
case pair
|
13
10
|
when :btc_usd
|
14
|
-
|
11
|
+
json_response(pair)
|
15
12
|
when :btc_eur
|
16
|
-
|
13
|
+
json_response(pair)
|
17
14
|
else
|
18
|
-
raise ArgumentError, "
|
15
|
+
raise ArgumentError, "Please specify either :btc_usd or :btc_eur"
|
19
16
|
end
|
20
17
|
end
|
21
18
|
|
22
19
|
private
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
raise HTTPError, 'response.code.to_s' unless response.code == 200
|
27
|
-
response
|
20
|
+
def self.json_response(pair)
|
21
|
+
p = pair.id2name.gsub('_', '')
|
22
|
+
JSON.parse(HTTPClient.get_http_response("#{APIBASE}/ticker/#{p}/").body)
|
28
23
|
end
|
29
24
|
end
|
30
25
|
end
|
31
|
-
end
|
26
|
+
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require 'rest-client'
|
2
|
+
|
3
|
+
module BTCTicker
|
4
|
+
class HTTPClient
|
5
|
+
def self.get_http_response(uri)
|
6
|
+
begin
|
7
|
+
response = RestClient.get(uri, :user_agent => 'ruby-btc_ticker')
|
8
|
+
rescue RestClient::ExceptionWithResponse => err
|
9
|
+
raise Errors::HTTPError, "#{err.http_code}"
|
10
|
+
else
|
11
|
+
response
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
data/lib/btc_ticker/version.rb
CHANGED
metadata
CHANGED
@@ -1,43 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: btc_ticker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- ironbyte
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-05-
|
11
|
+
date: 2017-05-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
|
-
name:
|
14
|
+
name: rest-client
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
20
|
-
type: :
|
19
|
+
version: '2.0'
|
20
|
+
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '2.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - "~>"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '12.0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - "~>"
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '12.0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: rspec
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -58,28 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '3.0'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: httparty
|
71
|
-
requirement: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "~>"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: 0.14.0
|
76
|
-
type: :runtime
|
77
|
-
prerelease: false
|
78
|
-
version_requirements: !ruby/object:Gem::Requirement
|
79
|
-
requirements:
|
80
|
-
- - "~>"
|
81
|
-
- !ruby/object:Gem::Version
|
82
|
-
version: 0.14.0
|
68
|
+
version: '3.0'
|
83
69
|
description: A Ruby wrapper for the Bitstamp Ticker API
|
84
70
|
email:
|
85
71
|
- illusivespectre@gmail.com
|
@@ -100,6 +86,8 @@ files:
|
|
100
86
|
- btc_ticker.gemspec
|
101
87
|
- lib/btc_ticker.rb
|
102
88
|
- lib/btc_ticker/bitstamp.rb
|
89
|
+
- lib/btc_ticker/errors.rb
|
90
|
+
- lib/btc_ticker/http_client.rb
|
103
91
|
- lib/btc_ticker/version.rb
|
104
92
|
homepage: https://github.com/ironbyte/btc_ticker
|
105
93
|
licenses:
|
@@ -113,7 +101,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
113
101
|
requirements:
|
114
102
|
- - ">="
|
115
103
|
- !ruby/object:Gem::Version
|
116
|
-
version:
|
104
|
+
version: 2.0.0
|
117
105
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
118
106
|
requirements:
|
119
107
|
- - ">="
|
@@ -121,8 +109,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
121
109
|
version: '0'
|
122
110
|
requirements: []
|
123
111
|
rubyforge_project:
|
124
|
-
rubygems_version: 2.6.
|
112
|
+
rubygems_version: 2.6.12
|
125
113
|
signing_key:
|
126
114
|
specification_version: 4
|
127
|
-
summary:
|
115
|
+
summary: A Ruby wrapper for the Bitstamp Ticker API
|
128
116
|
test_files: []
|