stocks_exchange_api_client 2.0.0 → 2.0.1

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
  SHA256:
3
- metadata.gz: 2d0847320eac0c013dbd66653b3973d7be3c23be6e51b554ca2db079cf822746
4
- data.tar.gz: afa8667073e56d959c3a6c1e1608364c8e91164d1f99202ad18e3d7f3933f108
3
+ metadata.gz: 2374fb43161b8b961f2afdcce7872bdbfa0980467c556b8761e68f423a91c553
4
+ data.tar.gz: b5599efc2d9ee3278dfbc6096756c1f487b089e365e5faf3c2bb7d9843bf843a
5
5
  SHA512:
6
- metadata.gz: 7f220621254bc69a3d94a00842e3b411560986c43fb22d9f17192e7f6ec57f9e0ea7c996d052e275293442e7808ff99b5966e935cd443b4a41876f04ce52ba6d
7
- data.tar.gz: a8e1df7d4cd84ae62061ef0802cbab5f11d8faa58254ea7d2d3a63bc66424b5d770c45e5a652ec5823c2b10148291fe72b1043edda8fb8efde0bbd5896dbf9c2
6
+ metadata.gz: b1ebf9dcd406b0a64bfe50078a2685e6a3a8555c5dc503e968ac8610c4896931a89e1ae2cb6ad302ba8de88c8468a23b8a1ddc2f28799b23c35bfea6d61ea008
7
+ data.tar.gz: feabbd4617ff3fdaf73318e2b8fdd631e125fa893fee3ac31ac302fcb26500302a74c0d045a00ca302d7706de7cdc8af1e65da297f7b1593989191f68d518e6c
@@ -22,18 +22,18 @@ require 'stocks_exchange_api_client/configuration'
22
22
 
23
23
  module StocksExchangeApiClient
24
24
  METHOD_NAME = {
25
- get_info: 'GetInfo',
26
- active_orders: 'ActiveOrders',
27
- trade: 'Trade',
28
- cancel_order: 'CancelOrder',
29
- trade_history: 'TradeHistory',
30
- trade_register_history: 'TradeRegisterHistory',
31
- user_history: 'UserHistory',
32
- trans_history: 'TransHistory',
33
- grafic: 'Grafic',
34
- generate_wallets: 'GenerateWallets',
35
- deposit: 'Deposit',
36
- withdraw: 'Withdraw'
25
+ get_info: 'GetInfo',
26
+ active_orders: 'ActiveOrders',
27
+ trade: 'Trade',
28
+ cancel_order: 'CancelOrder',
29
+ trade_history: 'TradeHistory',
30
+ trade_register_history: 'TradeRegisterHistory',
31
+ user_history: 'UserHistory',
32
+ trans_history: 'TransHistory',
33
+ grafic: 'Grafic',
34
+ generate_wallets: 'GenerateWallets',
35
+ deposit: 'Deposit',
36
+ withdraw: 'Withdraw'
37
37
  }.freeze
38
38
 
39
39
  HEX_ALGORITHM = 'sha512'.freeze
@@ -52,43 +52,64 @@ module StocksExchangeApiClient
52
52
  encode_www_form = URI.encode_www_form(params)
53
53
  sign = OpenSSL::HMAC.hexdigest(OpenSSL::Digest.new(HEX_ALGORITHM), configuration.option[:api_secret], encode_www_form)
54
54
  response = JSON.parse(
55
- HTTParty.post(configuration.url, body: params, headers: {
56
- Sign: sign,
57
- Key: configuration.option[:api_key]
58
- }).body
55
+ HTTParty.post(configuration.url, body: params, headers: {
56
+ Sign: sign,
57
+ Key: configuration.option[:api_key]
58
+ }).body
59
59
  )
60
- response = OpenStruct.new(response)
60
+ response = OpenStruct.new(response)
61
61
  end
62
62
  if method == :get
63
- response = JSON.parse(HTTParty.get("#{configuration.url}/#{type}").body)
63
+ response = JSON.parse(HTTParty.get("#{configuration.url}/#{type}").body)
64
64
  end
65
65
  response
66
66
  end
67
67
 
68
- def make_api_request_v3(url, params = {}, method = :get, _type = :url)
68
+ def make_api_request_v3(url, params = {}, method = :get, _type = :url, auth = true)
69
69
  configuration.validate!
70
70
  post_data = URI.encode_www_form(params)
71
71
  url_full = "#{configuration.url}/#{url}#{post_data == '' ? '' : '?'}#{post_data}"
72
- if method == :post
73
- response = HTTParty.post(url_full, body: params, headers: {
74
- 'Authorization' => "Bearer #{get_token}",
75
- 'Accept' => 'application/json',
76
- 'User-Agent' => 'stocks.exchange-client'
77
- }).body
78
- end
79
- if method == :get
80
- response = HTTParty.get(url_full, headers: {
81
- 'Authorization' => "Bearer #{get_token}",
82
- 'Accept' => 'application/json',
83
- 'User-Agent' => 'stocks.exchange-client'
84
- }).body
85
- end
86
- if method == :delete
87
- response = HTTParty.delete(url_full, headers: {
88
- 'Authorization' => "Bearer #{get_token}",
89
- 'Accept' => 'application/json',
90
- 'User-Agent' => 'stocks.exchange-client'
91
- }).body
72
+ if auth
73
+ if method == :post
74
+ response = HTTParty.post(url_full, body: params, headers: {
75
+ 'Authorization' => "Bearer #{get_token}",
76
+ 'Accept' => 'application/json',
77
+ 'User-Agent' => 'stocks.exchange-client'
78
+ }).body
79
+ end
80
+ if method == :get
81
+ response = HTTParty.get(url_full, headers: {
82
+ 'Authorization' => "Bearer #{get_token}",
83
+ 'Accept' => 'application/json',
84
+ 'User-Agent' => 'stocks.exchange-client'
85
+ }).body
86
+ end
87
+ if method == :delete
88
+ response = HTTParty.delete(url_full, headers: {
89
+ 'Authorization' => "Bearer #{get_token}",
90
+ 'Accept' => 'application/json',
91
+ 'User-Agent' => 'stocks.exchange-client'
92
+ }).body
93
+ end
94
+ else
95
+ if method == :post
96
+ response = HTTParty.post(url_full, body: params, headers: {
97
+ 'Accept' => 'application/json',
98
+ 'User-Agent' => 'stocks.exchange-client'
99
+ }).body
100
+ end
101
+ if method == :get
102
+ response = HTTParty.get(url_full, headers: {
103
+ 'Accept' => 'application/json',
104
+ 'User-Agent' => 'stocks.exchange-client'
105
+ }).body
106
+ end
107
+ if method == :delete
108
+ response = HTTParty.delete(url_full, headers: {
109
+ 'Accept' => 'application/json',
110
+ 'User-Agent' => 'stocks.exchange-client'
111
+ }).body
112
+ end
92
113
  end
93
114
  response
94
115
  end
@@ -97,10 +118,10 @@ module StocksExchangeApiClient
97
118
  if File.exist?(JSON_SETTINGS)
98
119
  current_token = JSON.parse(File.read(JSON_SETTINGS))
99
120
  else
100
- current_token = { 'access_token' => configuration.option[:token_object][:access_token],
101
- 'refresh_token' => configuration.option[:token_object][:refresh_token],
102
- 'expires_in' => nil,
103
- 'expires_in_date' => nil }
121
+ current_token = {'access_token' => configuration.option[:token_object][:access_token],
122
+ 'refresh_token' => configuration.option[:token_object][:refresh_token],
123
+ 'expires_in' => nil,
124
+ 'expires_in_date' => nil}
104
125
  end
105
126
  if !current_token.nil? && !current_token['expires_in_date'].nil?
106
127
  return current_token['access_token'] if DateTime.parse(current_token['expires_in_date']).to_datetime > DateTime.now.to_datetime
@@ -2,56 +2,98 @@ module StocksExchangeApiClient
2
2
  class PublicApiV3
3
3
  class << self
4
4
  def ping
5
- StocksExchangeApiClient.make_api_request_v3('/public/ping')
5
+ StocksExchangeApiClient.make_api_request_v3('/public/ping',
6
+ {},
7
+ :get,
8
+ :url,
9
+ false)
6
10
  end
7
11
 
8
12
  def currencies
9
- StocksExchangeApiClient.make_api_request_v3('/public/currencies')
13
+ StocksExchangeApiClient.make_api_request_v3('/public/currencies',
14
+ {},
15
+ :get,
16
+ :url,
17
+ false)
10
18
  end
11
19
 
12
20
  def currencies_by_id(currency_id)
13
21
  url = "/public/currencies/#{currency_id}"
14
- StocksExchangeApiClient.make_api_request_v3(url)
22
+ StocksExchangeApiClient.make_api_request_v3(url,
23
+ {},
24
+ :get,
25
+ :url,
26
+ false)
15
27
  end
16
28
 
17
29
  def markets
18
- StocksExchangeApiClient.make_api_request_v3('/public/markets')
30
+ StocksExchangeApiClient.make_api_request_v3('/public/markets',
31
+ {},
32
+ :get,
33
+ :url,
34
+ false)
19
35
  end
20
36
 
21
37
  def pairs_list_by_code(code = 'ALL')
22
38
  url = "/public/currency_pairs/list/#{code}"
23
- StocksExchangeApiClient.make_api_request_v3(url)
39
+ StocksExchangeApiClient.make_api_request_v3(url,
40
+ {},
41
+ :get,
42
+ :url,
43
+ false)
24
44
  end
25
45
 
26
46
  def pairs_list_by_id(id)
27
47
  url = "/public/currency_pairs/#{id}"
28
- StocksExchangeApiClient.make_api_request_v3(url)
48
+ StocksExchangeApiClient.make_api_request_v3(url,
49
+ {},
50
+ :get,
51
+ :url,
52
+ false)
29
53
  end
30
54
 
31
55
  def ticker
32
- StocksExchangeApiClient.make_api_request_v3('/public/ticker')
56
+ StocksExchangeApiClient.make_api_request_v3('/public/ticker',
57
+ {},
58
+ :get,
59
+ :url,
60
+ false)
33
61
  end
34
62
 
35
63
  def ticker_by_pair_id(id)
36
64
  url = "/public/ticker/#{id}"
37
- StocksExchangeApiClient.make_api_request_v3(url)
65
+ StocksExchangeApiClient.make_api_request_v3(url,
66
+ {},
67
+ :get,
68
+ :url,
69
+ false)
38
70
  end
39
71
 
40
72
  def trades(currency_pair_id, params)
41
73
  url = "/public/trades/#{currency_pair_id}"
42
- StocksExchangeApiClient.make_api_request_v3(url, params)
74
+ StocksExchangeApiClient.make_api_request_v3(url,
75
+ params,
76
+ :get,
77
+ :url,
78
+ false)
43
79
  end
44
80
 
45
81
  def orderbook_by_pair_id(id, params)
46
82
  url = "/public/orderbook/#{id}"
47
- StocksExchangeApiClient.make_api_request_v3(url, params)
83
+ StocksExchangeApiClient.make_api_request_v3(url, params,
84
+ :get,
85
+ :url,
86
+ false)
48
87
  end
49
88
 
50
89
  def chart(currency_pair_id, time_start, time_end, params, candles_type)
51
90
  url = "/public/chart/#{currency_pair_id}/#{candles_type.nil? ? '1' : candles_type}"
52
91
  params['timeStart'] = time_start
53
92
  params['timeEnd'] = time_end
54
- StocksExchangeApiClient.make_api_request_v3(url, params)
93
+ StocksExchangeApiClient.make_api_request_v3(url, params,
94
+ :get,
95
+ :url,
96
+ false)
55
97
  end
56
98
  end
57
99
  end
@@ -1,3 +1,3 @@
1
1
  module StocksExchangeApiClient
2
- VERSION = '2.0.0'
2
+ VERSION = '2.0.1'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stocks_exchange_api_client
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.0
4
+ version: 2.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stocks Exchange
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-02-11 00:00:00.000000000 Z
11
+ date: 2019-03-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: openssl