Class: Btce::API
- Inherits:
-
Object
- Object
- Btce::API
- Defined in:
- lib/btce/api.rb
Constant Summary collapse
- BTCE_DOMAIN =
"btc-e.com"
- CURRENCY_PAIRS =
%w(btc_eur btc_rur btc_usd dsh_btc eth_btc eth_ltc eth_rur eth_usd eur_rur eur_usd ltc_btc ltc_eur ltc_rur ltc_usd nmc_btc nmc_usd nvc_btc nvc_usd ppc_btc ppc_usd usd_rur)
- CURRENCIES =
CURRENCY_PAIRS.map {|pair| pair.split("_")}.flatten.uniq.sort
- MAX_DIGITS =
{ 'btc_eur' => 5, 'btc_rur' => 5, 'btc_usd' => 3, 'dsh_btc' => 5, 'eth_btc' => 5, 'eth_ltc' => 5, 'eth_rur' => 5, 'eth_usd' => 5, 'eur_rur' => 5, 'eur_usd' => 5, 'ltc_btc' => 5, 'ltc_eur' => 3, 'ltc_rur' => 5, 'ltc_usd' => 6, 'nmc_btc' => 5, 'nmc_usd' => 3, 'nvc_btc' => 5, 'nvc_usd' => 3, 'ppc_btc' => 5, 'ppc_usd' => 3, 'usd_rur' => 5 }
Class Method Summary collapse
Class Method Details
.get_https(opts = {}) ⇒ Object
87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 |
# File 'lib/btce/api.rb', line 87 def get_https(opts={}) raise ArgumentError if not opts[:url].is_a? String uri = URI.parse opts[:url] http = Net::HTTP.new uri.host, uri.port http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE if opts[:params].nil? request = Net::HTTP::Get.new uri.request_uri else # If sending params, then we want a post request for authentication. request = Net::HTTP::Post.new uri.request_uri request.add_field "Key", opts[:key] request.add_field "Sign", opts[:signed] request.set_form_data opts[:params] end response = http.request request response.body end |
.get_json(opts = {}) ⇒ Object
106 107 108 109 110 111 112 |
# File 'lib/btce/api.rb', line 106 def get_json(opts={}) result = get_https(opts) if not result.is_a? String or not result.valid_json? raise RuntimeError, "Server returned invalid data." end JSON.load result end |