monero 0.0.0.2 → 0.0.0.3
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/README.md +14 -0
- data/lib/monero.rb +0 -2
- data/lib/monero/client.rb +10 -1
- data/lib/monero/version.rb +1 -1
- data/lib/monero/wallet.rb +6 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 46d9e1f4f3fa414f5ee98f81eff0587179e7d698
|
4
|
+
data.tar.gz: abb4704507ed4f866e0f3a16e431777bdfcd5063
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7406a2206cb17cb7eb780d3a577f5cfe4f46996b777e8fc2588bbc5fb33ede0bbad0091418887c381edb53de1abf3de84b6b4683e6619ed106494f4b62eda111
|
7
|
+
data.tar.gz: adf0f08579354a7ee9bafa3655323ab63dbd2648e16270d0a1e99b431c28567a44656a5eeb56a73ad1ada3767e0fff409e080fe0a18c857d83f5aefc4e8a185f
|
data/README.md
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
*updating and testing for 0.12 soon*
|
2
|
+
|
1
3
|
# Monero Ruby Client
|
2
4
|
|
3
5
|
Ruby client to connect and use [Monero Wallet RPC](https://getmonero.org/resources/developer-guides/wallet-rpc.html).
|
@@ -67,6 +69,18 @@ To get the balance of the current wallet (we use the gem 'money')
|
|
67
69
|
Monero::Wallet.balance.format
|
68
70
|
=> "9.980629640000 XMR"
|
69
71
|
|
72
|
+
To get the unlocked balance, which is currently available
|
73
|
+
|
74
|
+
Monero::Wallet.unlocked_balance
|
75
|
+
=> #<Money fractional:10000 currency:XMR>
|
76
|
+
|
77
|
+
To get both combined
|
78
|
+
|
79
|
+
Monero::Wallet.getbalance
|
80
|
+
=> {"balance"=>9961213880000, "unlocked_balance"=>10000}
|
81
|
+
|
82
|
+
|
83
|
+
|
70
84
|
___
|
71
85
|
To get the current block height
|
72
86
|
|
data/lib/monero.rb
CHANGED
@@ -16,8 +16,6 @@ end
|
|
16
16
|
# include Monero::Model
|
17
17
|
# end
|
18
18
|
|
19
|
-
|
20
|
-
|
21
19
|
Money::Currency.register({ :priority => 1, :iso_code => "xmr", :iso_numeric => "846", :name => "Monero", :symbol => "XMR", :subunit => "", :subunit_to_unit => 1000000000000, :decimal_mark => ".", :thousands_separator => ""})
|
22
20
|
#
|
23
21
|
class XMR
|
data/lib/monero/client.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
module Monero
|
2
2
|
class Client
|
3
|
+
#class RequestError < StandardError; end
|
4
|
+
|
3
5
|
|
4
6
|
def self.close!
|
5
7
|
request("stop_wallet")
|
@@ -8,7 +10,8 @@ module Monero
|
|
8
10
|
def self.request(method, params="")
|
9
11
|
data = '{"jsonrpc":"2.0","id":"0","method": "'+method+'", "params": '+params.to_json+' }'
|
10
12
|
|
11
|
-
args = "
|
13
|
+
args = ""
|
14
|
+
args << " -s"
|
12
15
|
args << " -u #{Monero.config.username}:#{Monero.config.password} --digest"
|
13
16
|
args << " -X POST #{base_uri}/json_rpc"
|
14
17
|
args << " -d '#{data}'"
|
@@ -17,6 +20,12 @@ module Monero
|
|
17
20
|
p "curl #{args}" if Monero.config.debug
|
18
21
|
|
19
22
|
json = JSON.parse(`curl #{args}`)
|
23
|
+
|
24
|
+
# Error handling
|
25
|
+
if json["error"]
|
26
|
+
raise "#{json["error"]["message"]} | code: #{json["error"]["code"]}"
|
27
|
+
end
|
28
|
+
|
20
29
|
json["result"]
|
21
30
|
end
|
22
31
|
|
data/lib/monero/version.rb
CHANGED
data/lib/monero/wallet.rb
CHANGED
@@ -2,6 +2,10 @@ module Monero
|
|
2
2
|
|
3
3
|
class Wallet
|
4
4
|
|
5
|
+
def self.create_address(label="")
|
6
|
+
Monero::Client.request("create_address", label: label)
|
7
|
+
end
|
8
|
+
|
5
9
|
def self.getaddress
|
6
10
|
Monero::Client.request("getaddress")["address"]
|
7
11
|
end
|
@@ -93,7 +97,7 @@ module Monero
|
|
93
97
|
singleton_class.send(:alias_method, :create, :create_wallet)
|
94
98
|
|
95
99
|
# returns current balance if open successfull
|
96
|
-
def self.open_wallet(filename, password)
|
100
|
+
def self.open_wallet(filename, password="")
|
97
101
|
options = { filename: filename, password: password}
|
98
102
|
if Monero::Client.request("open_wallet", options)
|
99
103
|
balance
|
@@ -103,7 +107,7 @@ module Monero
|
|
103
107
|
end
|
104
108
|
singleton_class.send(:alias_method, :open, :open_wallet)
|
105
109
|
|
106
|
-
# stops current
|
110
|
+
# stops current RPC process!
|
107
111
|
def self.stop_wallet
|
108
112
|
Monero::Client.close!
|
109
113
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: monero
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.0.
|
4
|
+
version: 0.0.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tim Kretschmer
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-04-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|