radiator 0.4.6 → 0.4.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.md +27 -12
- data/Rakefile +53 -23
- data/lib/radiator.rb +3 -1
- data/lib/radiator/api.rb +111 -16
- data/lib/radiator/bridge.rb +34 -0
- data/lib/radiator/broadcast_operations.json +7 -7
- data/lib/radiator/chain.rb +1 -1
- data/lib/radiator/chain_config.rb +9 -2
- data/lib/radiator/database_api.rb +1 -1
- data/lib/radiator/error_parser.rb +1 -1
- data/lib/radiator/follow_api.rb +1 -1
- data/lib/radiator/market_history_api.rb +1 -1
- data/lib/radiator/mixins/acts_as_poster.rb +4 -4
- data/lib/radiator/operation.rb +3 -2
- data/lib/radiator/operation_types.rb +43 -27
- data/lib/radiator/ssc/base_steem_smart_contract_rpc.rb +1 -1
- data/lib/radiator/stream.rb +21 -8
- data/lib/radiator/transaction.rb +43 -3
- data/lib/radiator/type/amount.rb +8 -50
- data/lib/radiator/type/beneficiaries.rb +8 -1
- data/lib/radiator/type/price.rb +2 -2
- data/lib/radiator/version.rb +1 -1
- data/radiator.gemspec +17 -13
- data/test/fixtures/empty.json +1 -0
- data/test/fixtures/error.json +29 -0
- data/test/fixtures/follow_api_get_followers.json +1 -0
- data/test/fixtures/get_account.json +165 -0
- data/test/fixtures/get_account_count.json +1 -0
- data/test/fixtures/get_account_references.json +1 -0
- data/test/fixtures/get_block.json +193 -0
- data/test/fixtures/get_dynamic_global_properties.json +32 -0
- data/test/fixtures/get_feed_history.json +684 -0
- data/test/fixtures/get_hardfork_version.json +1 -0
- data/test/fixtures/get_key_references.json +14 -0
- data/test/fixtures/get_stats_for_time.json +57 -0
- data/test/fixtures/get_vesting_delegation.json +936 -0
- data/test/fixtures/golos_get_dynamic_global_properties.json +32 -0
- data/test/fixtures/market_history_api_get_market_history_buckets.json +1 -0
- data/test/fixtures/market_history_api_get_order_book.json +109 -0
- data/test/fixtures/market_history_api_get_recent_trades.json +55 -0
- data/test/fixtures/market_history_api_get_ticker.json +11 -0
- data/test/fixtures/market_history_api_get_volume.json +1 -0
- data/test/fixtures/null.json +1 -0
- data/test/fixtures/vcr_cassettes/account_by_key_api_all_methods.yml +1465 -0
- data/test/fixtures/vcr_cassettes/account_by_key_api_jsonrpc.yml +199 -0
- data/test/fixtures/vcr_cassettes/api_all_methods.yml +13802 -0
- data/test/fixtures/vcr_cassettes/api_jsonrpc.yml +53 -0
- data/test/fixtures/vcr_cassettes/base_per_debt.yml +11068 -0
- data/test/fixtures/vcr_cassettes/base_per_mvest.yml +6024 -0
- data/test/fixtures/vcr_cassettes/block_time.yml +5368 -0
- data/test/fixtures/vcr_cassettes/broadcast_transaction.yml +1723 -0
- data/test/fixtures/vcr_cassettes/chain_stats_api_jsonrpc.yml +51 -0
- data/test/fixtures/vcr_cassettes/condenser_all_all_methods.yml +13770 -0
- data/test/fixtures/vcr_cassettes/condenser_api_jsonrpc.yml +103 -0
- data/test/fixtures/vcr_cassettes/expiration_initialize.yml +16108 -0
- data/test/fixtures/vcr_cassettes/find_account.yml +5732 -0
- data/test/fixtures/vcr_cassettes/find_block.yml +5322 -0
- data/test/fixtures/vcr_cassettes/find_comment.yml +16386 -0
- data/test/fixtures/vcr_cassettes/follow_api_jsonrpc.yml +99 -0
- data/test/fixtures/vcr_cassettes/get_account_count.yml +783 -0
- data/test/fixtures/vcr_cassettes/get_account_references.yml +773 -0
- data/test/fixtures/vcr_cassettes/get_accounts.yml +918 -0
- data/test/fixtures/vcr_cassettes/get_accounts_no_argument.yml +773 -0
- data/test/fixtures/vcr_cassettes/get_dynamic_global_properties.yml +893 -0
- data/test/fixtures/vcr_cassettes/get_feed_history.yml +1432 -0
- data/test/fixtures/vcr_cassettes/get_hardfork_version.yml +835 -0
- data/test/fixtures/vcr_cassettes/get_key_references.yml +1571 -0
- data/test/fixtures/vcr_cassettes/get_market_history.yml +1563 -0
- data/test/fixtures/vcr_cassettes/get_market_history_buckets.yml +1665 -0
- data/test/fixtures/vcr_cassettes/get_order_book.yml +1459 -0
- data/test/fixtures/vcr_cassettes/get_recent_trades.yml +1459 -0
- data/test/fixtures/vcr_cassettes/get_ticker.yml +1563 -0
- data/test/fixtures/vcr_cassettes/get_trade_history.yml +1459 -0
- data/test/fixtures/vcr_cassettes/get_vesting_delegations.yml +731 -0
- data/test/fixtures/vcr_cassettes/get_volume.yml +1561 -0
- data/test/fixtures/vcr_cassettes/get_witness_by_account.yml +835 -0
- data/test/fixtures/vcr_cassettes/look_up_witnesses.yml +831 -0
- data/test/fixtures/vcr_cassettes/market_history_api_all_methods.yml +10191 -0
- data/test/fixtures/vcr_cassettes/market_history_api_jsonrpc.yml +51 -0
- data/test/fixtures/vcr_cassettes/network_broadcast_api_all_methods.yml +2455 -0
- data/test/fixtures/vcr_cassettes/network_broadcast_api_jsonrpc.yml +51 -0
- data/test/fixtures/vcr_cassettes/properties.yml +5551 -0
- data/test/fixtures/vcr_cassettes/recover_transaction.yml +1815 -0
- data/test/fixtures/vcr_cassettes/ssc_blockchain_block_info.yml +90 -0
- data/test/fixtures/vcr_cassettes/ssc_blockchain_block_info_invalid.yml +88 -0
- data/test/fixtures/vcr_cassettes/ssc_blockchain_latest_block_info.yml +90 -0
- data/test/fixtures/vcr_cassettes/ssc_blockchain_transaction_info.yml +90 -0
- data/test/fixtures/vcr_cassettes/ssc_contracts_contract.yml +364 -0
- data/test/fixtures/vcr_cassettes/ssc_contracts_find.yml +89 -0
- data/test/fixtures/vcr_cassettes/ssc_contracts_find_one.yml +87 -0
- data/test/fixtures/vcr_cassettes/stream_jsonrpc.yml +27502 -0
- data/test/fixtures/vcr_cassettes/tag_api_jsonrpc.yml +155 -0
- data/test/fixtures/vcr_cassettes/transaction_expiration_initialize_nil.yml +17597 -0
- data/test/fixtures/vcr_cassettes/transaction_jsonrpc.yml +61 -0
- data/test/fixtures/vcr_cassettes/unknown_chain_id.yml +13038 -0
- data/test/fixtures/vcr_cassettes/valid_chains.yml +11450 -0
- data/test/radiator/account_by_key_api_test.rb +46 -0
- data/test/radiator/api_test.rb +135 -0
- data/test/radiator/chain_stats_api_test.rb +49 -0
- data/test/radiator/chain_test.rb +153 -0
- data/test/radiator/condenser_api_test.rb +48 -0
- data/test/radiator/follow_api_test.rb +48 -0
- data/test/radiator/market_history_api_test.rb +100 -0
- data/test/radiator/network_broadcast_api_test.rb +48 -0
- data/test/radiator/operation_test.rb +116 -0
- data/test/radiator/ssc/blockchain_test.rb +58 -0
- data/test/radiator/ssc/contracts_test.rb +65 -0
- data/test/radiator/stream_test.rb +48 -0
- data/test/radiator/tag_api_test.rb +40 -0
- data/test/radiator/transaction_test.rb +755 -0
- data/test/test_helper.rb +66 -0
- metadata +187 -79
- data/.codeclimate.yml +0 -19
- data/.gitignore +0 -52
- data/.travis.yml +0 -23
- data/gource.sh +0 -8
- data/images/Anthony Martin.png +0 -0
- data/images/Marvin Hofmann.jpg +0 -0
- data/images/Marvin Hofmann.png +0 -0
- data/lib/steem.rb +0 -17
data/lib/radiator/transaction.rb
CHANGED
@@ -25,10 +25,10 @@ module Radiator
|
|
25
25
|
end
|
26
26
|
end
|
27
27
|
|
28
|
-
@
|
28
|
+
@url = options[:url] || url
|
29
|
+
@chain ||= 'hive'
|
29
30
|
@chain = @chain.to_sym
|
30
31
|
@chain_id = chain_id options[:chain_id]
|
31
|
-
@url = options[:url] || url
|
32
32
|
@operations = options[:operations] || []
|
33
33
|
|
34
34
|
@self_logger = false
|
@@ -81,6 +81,11 @@ module Radiator
|
|
81
81
|
|
82
82
|
case chain.to_s.downcase.to_sym
|
83
83
|
when :steem then NETWORKS_STEEM_CHAIN_ID
|
84
|
+
when :hive
|
85
|
+
database_api = Hive::DatabaseApi.new(url: @url)
|
86
|
+
database_api.get_config do |config|
|
87
|
+
config['HIVE_CHAIN_ID']
|
88
|
+
end rescue nil || NETWORKS_HIVE_CHAIN_ID
|
84
89
|
when :test then NETWORKS_TEST_CHAIN_ID
|
85
90
|
end
|
86
91
|
end
|
@@ -88,6 +93,7 @@ module Radiator
|
|
88
93
|
def url
|
89
94
|
case chain.to_s.downcase.to_sym
|
90
95
|
when :steem then NETWORKS_STEEM_DEFAULT_NODE
|
96
|
+
when :hive then NETWORKS_HIVE_DEFAULT_NODE
|
91
97
|
when :test then NETWORKS_TEST_DEFAULT_NODE
|
92
98
|
end
|
93
99
|
end
|
@@ -114,6 +120,26 @@ module Radiator
|
|
114
120
|
else
|
115
121
|
self
|
116
122
|
end
|
123
|
+
rescue OperationError => e
|
124
|
+
trx_builder, network_api = case @chain.to_sym
|
125
|
+
when :steem then [
|
126
|
+
Steem::TransactionBuilder.new(wif: @wif),
|
127
|
+
Steem::NetworkBroadcastApi.new(url: @url)
|
128
|
+
]
|
129
|
+
when :hive then [
|
130
|
+
Hive::TransactionBuilder.new(wif: @wif),
|
131
|
+
Hive::NetworkBroadcastApi.new(url: @url)
|
132
|
+
]
|
133
|
+
end
|
134
|
+
|
135
|
+
raise e if trx_builder.nil?
|
136
|
+
|
137
|
+
@operations.each do |op|
|
138
|
+
type = op.delete(:type)
|
139
|
+
trx_builder.put({type => op})
|
140
|
+
end
|
141
|
+
|
142
|
+
network_api.broadcast_transaction_synchronous(trx_builder.transaction)
|
117
143
|
ensure
|
118
144
|
shutdown
|
119
145
|
end
|
@@ -122,7 +148,7 @@ module Radiator
|
|
122
148
|
@operations = @operations.map do |op|
|
123
149
|
case op
|
124
150
|
when Operation then op
|
125
|
-
else; Operation.new(op)
|
151
|
+
else; Operation.new(op.merge(chain: @chain))
|
126
152
|
end
|
127
153
|
end
|
128
154
|
end
|
@@ -147,6 +173,19 @@ module Radiator
|
|
147
173
|
def use_condenser_namespace?
|
148
174
|
!!@use_condenser_namespace
|
149
175
|
end
|
176
|
+
|
177
|
+
def inspect
|
178
|
+
properties = %w(
|
179
|
+
url ref_block_num ref_block_prefix expiration chain
|
180
|
+
use_condenser_namespace immutable_expiration payload
|
181
|
+
).map do |prop|
|
182
|
+
if !!(v = instance_variable_get("@#{prop}"))
|
183
|
+
"@#{prop}=#{v}"
|
184
|
+
end
|
185
|
+
end.compact.join(', ')
|
186
|
+
|
187
|
+
"#<#{self.class.name} [#{properties}]>"
|
188
|
+
end
|
150
189
|
private
|
151
190
|
def broadcast_payload(payload)
|
152
191
|
if use_condenser_namespace?
|
@@ -238,6 +277,7 @@ module Radiator
|
|
238
277
|
bytes << op.to_bytes
|
239
278
|
end
|
240
279
|
|
280
|
+
# FIXME Should pakC(0) instead?
|
241
281
|
bytes << 0x00 # extensions
|
242
282
|
|
243
283
|
bytes
|
data/lib/radiator/type/amount.rb
CHANGED
@@ -1,57 +1,15 @@
|
|
1
|
+
# @deprecated Using Radiator::Type::Amount class provided is deprecated. Please use: Hive::Type::Amount
|
1
2
|
module Radiator
|
2
3
|
module Type
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
when ::Array
|
11
|
-
a, p, t = value
|
12
|
-
@asset = case t
|
13
|
-
when '@@000000013' then 'SBD'
|
14
|
-
when '@@000000021' then 'STEEM'
|
15
|
-
when '@@000000037' then 'VESTS'
|
16
|
-
else; raise TypeError, "Asset #{@asset} unknown."
|
17
|
-
end
|
18
|
-
@precision = p
|
19
|
-
@amount = "%.#{p}f" % (a.to_f / 10 ** p)
|
20
|
-
else
|
21
|
-
@amount, @asset = value.strip.split(' ')
|
22
|
-
@precision = case @asset
|
23
|
-
when 'STEEM' then 3
|
24
|
-
when 'VESTS' then 6
|
25
|
-
when 'SBD' then 3
|
26
|
-
when 'CORE' then 3
|
27
|
-
when 'CESTS' then 6
|
28
|
-
when 'TEST' then 3
|
29
|
-
else; raise TypeError, "Asset #{@asset} unknown."
|
30
|
-
end
|
4
|
+
class Amount < Hive::Type::Amount
|
5
|
+
def initialize(options = {})
|
6
|
+
unless defined? @@deprecated_warning_shown
|
7
|
+
warn "[DEPRECATED] Using Radiator::Type::Amount class provided is deprecated. Please use: Hive::Type::Amount"
|
8
|
+
@@deprecated_warning_shown = true
|
9
|
+
|
10
|
+
super(options.merge(chain: :hive))
|
31
11
|
end
|
32
12
|
end
|
33
|
-
|
34
|
-
def to_bytes
|
35
|
-
asset = @asset.ljust(7, "\x00")
|
36
|
-
amount = (@amount.to_f * 10 ** @precision).round
|
37
|
-
|
38
|
-
[amount].pack('q') +
|
39
|
-
[@precision].pack('c') +
|
40
|
-
asset
|
41
|
-
end
|
42
|
-
|
43
|
-
def to_a
|
44
|
-
case @asset
|
45
|
-
when 'STEEM' then [(@amount.to_f * 1000).to_i.to_s, 3, '@@000000021']
|
46
|
-
when 'VESTS' then [(@amount.to_f * 1000000).to_i.to_s, 6, '@@000000037']
|
47
|
-
when 'SBD' then [(@amount.to_f * 1000).to_i.to_s, 3, '@@000000013']
|
48
|
-
else; raise TypeError, "Asset #{@asset} unknown."
|
49
|
-
end
|
50
|
-
end
|
51
|
-
|
52
|
-
def to_s
|
53
|
-
"#{@amount} #{@asset}"
|
54
|
-
end
|
55
13
|
end
|
56
14
|
end
|
57
15
|
end
|
@@ -7,7 +7,14 @@ module Radiator
|
|
7
7
|
end
|
8
8
|
|
9
9
|
def to_bytes
|
10
|
-
|
10
|
+
#set sz 1, op type 0, see
|
11
|
+
#https://github.com/steemit/steem-js/blob/733332d09582e95c0ea868a6ac5b6ee8a1f115ee/src/auth/serializer/src/operations.js#L355
|
12
|
+
varint(1) + varint(0) + varint(@value.size) + @value.map do |b|
|
13
|
+
case b
|
14
|
+
when ::Array then pakStr(b.first.to_s) + pakS(b.last)
|
15
|
+
else; pakStr(b.keys.first.to_s) + pakS(b.values.first)
|
16
|
+
end
|
17
|
+
end.join
|
11
18
|
end
|
12
19
|
|
13
20
|
def to_h
|
data/lib/radiator/type/price.rb
CHANGED
@@ -5,8 +5,8 @@ module Radiator
|
|
5
5
|
def initialize(value)
|
6
6
|
super(:price, value)
|
7
7
|
|
8
|
-
@base = Amount.new(@value[:base])
|
9
|
-
@quote = Amount.new(@value[:quote])
|
8
|
+
@base = Hive::Type::Amount.new(@value[:base])
|
9
|
+
@quote = Hive::Type::Amount.new(@value[:quote])
|
10
10
|
end
|
11
11
|
|
12
12
|
def to_bytes
|
data/lib/radiator/version.rb
CHANGED
data/radiator.gemspec
CHANGED
@@ -9,34 +9,38 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ['Anthony Martin']
|
10
10
|
spec.email = ['radiator@martin-studio.com']
|
11
11
|
|
12
|
-
spec.summary = %q{
|
13
|
-
spec.description = %q{Client for accessing the
|
12
|
+
spec.summary = %q{Hive/Steem RPC Ruby Client}
|
13
|
+
spec.description = %q{Client for accessing the Hive/Steem blockchain.}
|
14
14
|
spec.homepage = 'https://github.com/inertia186/radiator'
|
15
15
|
spec.license = 'CC0-1.0'
|
16
16
|
|
17
|
-
spec.files =
|
17
|
+
spec.files = Dir['lib/**/*', 'test/**/*', 'Gemfile', 'LICENSE', 'Rakefile', 'README.md', 'radiator.gemspec']
|
18
18
|
spec.require_paths = ['lib']
|
19
19
|
|
20
20
|
spec.add_development_dependency 'bundler', '~> 2.0', '>= 2.0.1'
|
21
|
-
spec.add_development_dependency 'rake', '~>
|
21
|
+
spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.1'
|
22
22
|
spec.add_development_dependency 'minitest', '~> 5.10', '>= 5.10.3'
|
23
23
|
spec.add_development_dependency 'minitest-line', '~> 0.6.3'
|
24
24
|
spec.add_development_dependency 'minitest-proveit', '~> 1.0', '>= 1.0.0'
|
25
|
-
spec.add_development_dependency 'webmock', '~> 3.
|
26
|
-
spec.add_development_dependency 'simplecov', '~> 0.
|
27
|
-
spec.add_development_dependency 'vcr', '~>
|
28
|
-
spec.add_development_dependency 'yard', '~> 0.9.
|
25
|
+
spec.add_development_dependency 'webmock', '~> 3.6', '>= 3.6.0'
|
26
|
+
spec.add_development_dependency 'simplecov', '~> 0.19.0'
|
27
|
+
spec.add_development_dependency 'vcr', '~> 6.0', '>= 6.0.0'
|
28
|
+
spec.add_development_dependency 'yard', '~> 0.9.20'
|
29
29
|
spec.add_development_dependency 'pry', '~> 0.11', '>= 0.11.3'
|
30
30
|
spec.add_development_dependency 'rb-readline', '~> 0.5', '>= 0.5.5'
|
31
|
-
spec.add_development_dependency 'irb', '~> 1.
|
31
|
+
spec.add_development_dependency 'irb', '~> 1.2', '>= 1.2.1'
|
32
32
|
|
33
33
|
# net-http-persistent has an open-ended dependency because radiator directly
|
34
|
-
# supports net-http-persistent-
|
34
|
+
# supports net-http-persistent-4.0.0 as well as net-http-persistent-2.5.2.
|
35
35
|
spec.add_dependency('net-http-persistent', '>= 2.5.2')
|
36
|
+
spec.add_dependency('steem-ruby', '~> 0.9', '>= 0.9.5')
|
37
|
+
spec.add_dependency('hive-ruby', '~> 1.0', '>= 1.0.2')
|
36
38
|
spec.add_dependency('json', '~> 2.0', '>= 2.0.2')
|
37
39
|
spec.add_dependency('logging', '~> 2.2', '>= 2.2.0')
|
38
|
-
|
39
|
-
|
40
|
-
spec.add_dependency('
|
40
|
+
# hashie is floating because we prefer 4.1 or higher, but the official
|
41
|
+
# steem-ruby-0.9.4 gem is stuck on hashie-3.5.7.
|
42
|
+
spec.add_dependency('hashie', '>= 3.5')
|
43
|
+
spec.add_dependency('bitcoin-ruby', '0.0.20') # (was 0.0.19)
|
44
|
+
spec.add_dependency('ffi', '~> 1.9', '>= 1.9.18') # (was 1.11.2)
|
41
45
|
spec.add_dependency('awesome_print', '~> 1.7', '>= 1.7.0')
|
42
46
|
end
|
@@ -0,0 +1 @@
|
|
1
|
+
{"id":1,"result":[]}
|
@@ -0,0 +1,29 @@
|
|
1
|
+
{
|
2
|
+
"id":1,
|
3
|
+
"error":{
|
4
|
+
"code":1,
|
5
|
+
"message":"10 assert_exception: Assert Exception\na0 != e: too few arguments passed to method\n {}\n th_a api_connection.hpp:165 call_generic",
|
6
|
+
"data":{
|
7
|
+
"code":10,
|
8
|
+
"name":"assert_exception",
|
9
|
+
"message":"Assert Exception",
|
10
|
+
"stack":[
|
11
|
+
{
|
12
|
+
"context":{
|
13
|
+
"level":"error",
|
14
|
+
"file":"api_connection.hpp",
|
15
|
+
"line":165,
|
16
|
+
"method":"call_generic",
|
17
|
+
"hostname":"",
|
18
|
+
"thread_name":"th_a",
|
19
|
+
"timestamp":"2016-08-20T18:15:07"
|
20
|
+
},
|
21
|
+
"format":"a0 != e: too few arguments passed to method",
|
22
|
+
"data":{
|
23
|
+
|
24
|
+
}
|
25
|
+
}
|
26
|
+
]
|
27
|
+
}
|
28
|
+
}
|
29
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"id":1,"result":[{"id":"8.0.92583","follower":"a11at","following":"inertia","what":["blog"]},{"id":"8.0.39686","follower":"abarefootpoet","following":"inertia","what":["blog"]},{"id":"8.0.104952","follower":"abit","following":"inertia","what":["blog"]},{"id":"8.0.81725","follower":"alexgr","following":"inertia","what":["blog"]},{"id":"8.0.55176","follower":"alexoz","following":"inertia","what":["blog"]},{"id":"8.0.99137","follower":"andressilvera","following":"inertia","what":["blog"]},{"id":"8.0.141035","follower":"applecrisp","following":"inertia","what":["blog"]},{"id":"8.0.11607","follower":"arrowj","following":"inertia","what":["blog"]},{"id":"8.0.12425","follower":"artificial","following":"inertia","what":["blog"]},{"id":"8.0.145212","follower":"ash","following":"inertia","what":["blog"]},{"id":"8.0.12966","follower":"ausbitbank","following":"inertia","what":["blog"]},{"id":"8.0.32102","follower":"beachbum","following":"inertia","what":["blog"]},{"id":"8.0.93711","follower":"ben99","following":"inertia","what":["blog"]},{"id":"8.0.120952","follower":"benadapt","following":"inertia","what":["blog"]},{"id":"8.0.28247","follower":"bimmerhead","following":"inertia","what":["blog"]},{"id":"8.0.95505","follower":"bleepcoin","following":"inertia","what":["blog"]},{"id":"8.0.15571","follower":"bondor","following":"inertia","what":["blog"]},{"id":"8.0.57400","follower":"cashbandicoot","following":"inertia","what":["blog"]},{"id":"8.0.100127","follower":"cian.dafe","following":"inertia","what":["blog"]},{"id":"8.0.116778","follower":"condra","following":"inertia","what":["blog"]},{"id":"8.0.5965","follower":"cousteau","following":"inertia","what":["blog"]},{"id":"8.0.161981","follower":"cryptojoy.com","following":"inertia","what":["blog"]},{"id":"8.0.102614","follower":"dajohns1420","following":"inertia","what":["blog"]},{"id":"8.0.148670","follower":"davidbrogan","following":"inertia","what":["blog"]},{"id":"8.0.117953","follower":"dennygalindo","following":"inertia","what":["blog"]},{"id":"8.0.111506","follower":"digitalhound","following":"inertia","what":["blog"]},{"id":"8.0.152965","follower":"discombobulated","following":"inertia","what":["blog"]},{"id":"8.0.118278","follower":"domavila","following":"inertia","what":["blog"]},{"id":"8.0.133707","follower":"donnie","following":"inertia","what":["blog"]},{"id":"8.0.51439","follower":"e-dubby","following":"inertia","what":["blog"]},{"id":"8.0.51539","follower":"edtorrez","following":"inertia","what":["blog"]},{"id":"8.0.107246","follower":"elfremzy1985","following":"inertia","what":["blog"]},{"id":"8.0.52564","follower":"envisionva","following":"inertia","what":["blog"]},{"id":"8.0.9107","follower":"fkn","following":"inertia","what":["blog"]},{"id":"8.0.72587","follower":"forrestwillie","following":"inertia","what":["blog"]},{"id":"8.0.160223","follower":"foxxycat","following":"inertia","what":["blog"]},{"id":"8.0.150777","follower":"freshgoals","following":"inertia","what":["blog"]},{"id":"8.0.26187","follower":"future24","following":"inertia","what":["blog"]},{"id":"8.0.106860","follower":"fyrstikken","following":"inertia","what":["blog"]},{"id":"8.0.67648","follower":"gardenlady","following":"inertia","what":["blog"]},{"id":"8.0.16173","follower":"georgedonnelly","following":"inertia","what":["blog"]},{"id":"8.0.102115","follower":"gir88","following":"inertia","what":["blog"]},{"id":"8.0.24887","follower":"gonzotron","following":"inertia","what":["blog"]},{"id":"8.0.67993","follower":"greenman","following":"inertia","what":["blog"]},{"id":"8.0.133792","follower":"harand","following":"inertia","what":["blog"]},{"id":"8.0.40891","follower":"harveywoods","following":"inertia","what":["blog"]},{"id":"8.0.72866","follower":"hdphotography","following":"inertia","what":["blog"]},{"id":"8.0.154487","follower":"heretickitten","following":"inertia","what":["blog"]},{"id":"8.0.48008","follower":"inkha","following":"inertia","what":["blog"]},{"id":"8.0.129474","follower":"ivanba12","following":"inertia","what":["blog"]},{"id":"8.0.10884","follower":"jaimejean","following":"inertia","what":["blog"]},{"id":"8.0.88324","follower":"jennamarbles","following":"inertia","what":["blog"]},{"id":"8.0.80271","follower":"joelinux","following":"inertia","what":["blog"]},{"id":"8.0.91828","follower":"joseph","following":"inertia","what":["blog"]},{"id":"8.0.168035","follower":"jtstreetman","following":"inertia","what":["blog"]},{"id":"8.0.26704","follower":"juicyg","following":"inertia","what":["blog"]},{"id":"8.0.90991","follower":"kirby1","following":"inertia","what":["blog"]},{"id":"8.0.133797","follower":"klye","following":"inertia","what":["blog"]},{"id":"8.0.93961","follower":"konti","following":"inertia","what":["blog"]},{"id":"8.0.51073","follower":"kooshikoo","following":"inertia","what":["blog"]},{"id":"8.0.124737","follower":"kristina011891","following":"inertia","what":["blog"]},{"id":"8.0.78450","follower":"kryptik","following":"inertia","what":["blog"]},{"id":"8.0.73220","follower":"lapingvino","following":"inertia","what":["blog"]},{"id":"8.0.71722","follower":"liberosist","following":"inertia","what":["blog"]},{"id":"8.0.104773","follower":"lovejoy","following":"inertia","what":["blog"]},{"id":"8.0.92561","follower":"macartem","following":"inertia","what":["blog"]},{"id":"8.0.123946","follower":"malxdrakon","following":"inertia","what":["blog"]},{"id":"8.0.118475","follower":"mark-waser","following":"inertia","what":["blog"]},{"id":"8.0.51734","follower":"matherly","following":"inertia","what":["blog"]},{"id":"8.0.6855","follower":"mctiller","following":"inertia","what":["blog"]},{"id":"8.0.58118","follower":"meesterboom","following":"inertia","what":["blog"]},{"id":"8.0.90293","follower":"melawanarus","following":"inertia","what":["blog"]},{"id":"8.0.118346","follower":"mikehere","following":"inertia","what":["blog"]},{"id":"8.0.145767","follower":"mosab","following":"inertia","what":["blog"]},{"id":"8.0.7027","follower":"nastrom","following":"inertia","what":["blog"]},{"id":"8.0.95044","follower":"naturalista","following":"inertia","what":["blog"]},{"id":"8.0.51819","follower":"nexusvortex616","following":"inertia","what":["blog"]},{"id":"8.0.32354","follower":"nonlinearone","following":"inertia","what":["blog"]},{"id":"8.0.35308","follower":"patrice","following":"inertia","what":["blog"]},{"id":"8.0.143273","follower":"penguinpablo","following":"inertia","what":["blog"]},{"id":"8.0.51014","follower":"pjheinz","following":"inertia","what":["blog"]},{"id":"8.0.145072","follower":"politicasan2","following":"inertia","what":["blog"]},{"id":"8.0.90973","follower":"powmonkey","following":"inertia","what":["blog"]},{"id":"8.0.35805","follower":"randyclemens","following":"inertia","what":["blog"]},{"id":"8.0.53874","follower":"razvanelulmarin","following":"inertia","what":["blog"]},{"id":"8.0.78276","follower":"repholder","following":"inertia","what":["blog"]},{"id":"8.0.9005","follower":"ridji","following":"inertia","what":["blog"]},{"id":"8.0.150998","follower":"rook","following":"inertia","what":["blog"]},{"id":"8.0.102282","follower":"royaltiffany","following":"inertia","what":["blog"]},{"id":"8.0.70032","follower":"samupaha","following":"inertia","what":["blog"]},{"id":"8.0.5660","follower":"seb","following":"inertia","what":["blog"]},{"id":"8.0.87906","follower":"shadowspub","following":"inertia","what":["blog"]},{"id":"8.0.116079","follower":"skapaneas","following":"inertia","what":["blog"]},{"id":"8.0.163256","follower":"skyefox","following":"inertia","what":["blog"]},{"id":"8.0.106050","follower":"spookypooky","following":"inertia","what":["blog"]},{"id":"8.0.50974","follower":"steemitqa","following":"inertia","what":["blog"]},{"id":"8.0.79981","follower":"steemlinks","following":"inertia","what":["blog"]},{"id":"8.0.137698","follower":"steemreporter","following":"inertia","what":["blog"]},{"id":"8.0.78917","follower":"steemychicken1","following":"inertia","what":["blog"]},{"id":"8.0.82309","follower":"steemzine","following":"inertia","what":["blog"]}]}
|
@@ -0,0 +1,165 @@
|
|
1
|
+
{
|
2
|
+
"id":1,
|
3
|
+
"result":[
|
4
|
+
{
|
5
|
+
"id":19155,
|
6
|
+
"name":"inertia",
|
7
|
+
"owner":{
|
8
|
+
"weight_threshold":1,
|
9
|
+
"account_auths":[
|
10
|
+
|
11
|
+
],
|
12
|
+
"key_auths":[
|
13
|
+
[
|
14
|
+
"STM7T5DRhNkp5RpiFrarPfLGXEnU6yk5jLFokfmyJThgRwtLpJuKM",
|
15
|
+
1
|
16
|
+
]
|
17
|
+
]
|
18
|
+
},
|
19
|
+
"active":{
|
20
|
+
"weight_threshold":1,
|
21
|
+
"account_auths":[
|
22
|
+
|
23
|
+
],
|
24
|
+
"key_auths":[
|
25
|
+
[
|
26
|
+
"STM8Vj2LTHrZabhxsMDfWnquBf7212YRBpkjEmhGEQ9JQpEUtcr6P",
|
27
|
+
1
|
28
|
+
]
|
29
|
+
]
|
30
|
+
},
|
31
|
+
"posting":{
|
32
|
+
"weight_threshold":1,
|
33
|
+
"account_auths":[
|
34
|
+
[
|
35
|
+
"streemian",
|
36
|
+
1
|
37
|
+
]
|
38
|
+
],
|
39
|
+
"key_auths":[
|
40
|
+
[
|
41
|
+
"STM5iR38ZUVWhrsSsggfCwhetnffJkDZ6b1Px9XiG4woF4DxrwVHj",
|
42
|
+
1
|
43
|
+
]
|
44
|
+
]
|
45
|
+
},
|
46
|
+
"memo_key":"STM6hNw2oxZLAERBBArbLkgquM2mtpiGZoJ49Ya5267NzpoSs4NrT",
|
47
|
+
"json_metadata":"{\"git\":{\"radiator\":{\"https\":{\"type\":\"https\",\"name\":\"radiator\",\"value\":\"https://github.com/inertia186/radiator\",\"projecturl\":\"radiator\"}}},\"squeek\":{\"profilePicture\":\"https://img1.steemit.com/0x0/http://i.imgur.com/LbTz5yg.jpg\"},\"version\":\"0.0.1\",\"profile\":{\"email\":\"steemit@martin-studio.com\",\"location\":\"California\",\"timezone\":\"-7\",\"locale\":\"en_US\",\"languages\":[\"en\"],\"profile_image\":\"https://img1.steemit.com/0x0/http://i.imgur.com/LbTz5yg.jpg\",\"cover_image\":\"https://img1.steemit.com/0x0/https://i.imgur.com/0ccC6UH.png\",\"name\":\"inertia Ⓐ³\",\"about\":\"non-guru\",\"website\":\"http://inertia.freedom-blogs.com/\"}}",
|
48
|
+
"proxy":"",
|
49
|
+
"last_owner_update":"2016-10-20T21:49:27",
|
50
|
+
"last_account_update":"2016-12-02T22:31:21",
|
51
|
+
"created":"2016-07-13T06:44:33",
|
52
|
+
"mined":false,
|
53
|
+
"owner_challenged":false,
|
54
|
+
"active_challenged":false,
|
55
|
+
"last_owner_proved":"1970-01-01T00:00:00",
|
56
|
+
"last_active_proved":"1970-01-01T00:00:00",
|
57
|
+
"recovery_account":"steem",
|
58
|
+
"last_account_recovery":"2016-07-21T05:49:33",
|
59
|
+
"reset_account":"null",
|
60
|
+
"comment_count":0,
|
61
|
+
"lifetime_vote_count":0,
|
62
|
+
"post_count":1489,
|
63
|
+
"can_vote":true,
|
64
|
+
"voting_power":9929,
|
65
|
+
"last_vote_time":"2017-04-26T15:34:21",
|
66
|
+
"balance":"0.000 STEEM",
|
67
|
+
"savings_balance":"0.000 STEEM",
|
68
|
+
"sbd_balance":"0.000 SBD",
|
69
|
+
"sbd_seconds":"10232004279",
|
70
|
+
"sbd_seconds_last_update":"2017-04-25T22:10:48",
|
71
|
+
"sbd_last_interest_payment":"2017-04-21T06:16:57",
|
72
|
+
"savings_sbd_balance":"0.000 SBD",
|
73
|
+
"savings_sbd_seconds":"6420926232",
|
74
|
+
"savings_sbd_seconds_last_update":"2016-12-22T20:28:03",
|
75
|
+
"savings_sbd_last_interest_payment":"2016-12-12T06:49:42",
|
76
|
+
"savings_withdraw_requests":0,
|
77
|
+
"reward_sbd_balance":"0.248 SBD",
|
78
|
+
"reward_steem_balance":"0.000 STEEM",
|
79
|
+
"reward_vesting_balance":"423736.309617 VESTS",
|
80
|
+
"reward_vesting_steem":"204.084 STEEM",
|
81
|
+
"vesting_shares":"51666407.059646 VESTS",
|
82
|
+
"delegated_vesting_shares":"855000.000000 VESTS",
|
83
|
+
"received_vesting_shares":"3441788.425745 VESTS",
|
84
|
+
"vesting_withdraw_rate":"0.000000 VESTS",
|
85
|
+
"next_vesting_withdrawal":"1969-12-31T23:59:59",
|
86
|
+
"withdrawn":0,
|
87
|
+
"to_withdraw":0,
|
88
|
+
"withdraw_routes":0,
|
89
|
+
"curation_rewards":878595,
|
90
|
+
"posting_rewards":10115584,
|
91
|
+
"proxied_vsf_votes":[
|
92
|
+
"9981561512772",
|
93
|
+
0,
|
94
|
+
0,
|
95
|
+
0
|
96
|
+
],
|
97
|
+
"witnesses_voted_for":27,
|
98
|
+
"average_bandwidth":272926088,
|
99
|
+
"lifetime_bandwidth":"4400517000000",
|
100
|
+
"last_bandwidth_update":"2017-03-30T14:12:48",
|
101
|
+
"average_market_bandwidth":126680736,
|
102
|
+
"last_market_bandwidth_update":"2017-03-29T16:23:42",
|
103
|
+
"last_post":"2017-04-26T05:20:42",
|
104
|
+
"last_root_post":"2017-04-25T17:48:21",
|
105
|
+
"post_bandwidth":13323,
|
106
|
+
"new_average_bandwidth":"70551028916",
|
107
|
+
"new_average_market_bandwidth":"27734050257",
|
108
|
+
"vesting_balance":"0.000 STEEM",
|
109
|
+
"reputation":"85159144509014",
|
110
|
+
"transfer_history":[
|
111
|
+
|
112
|
+
],
|
113
|
+
"market_history":[
|
114
|
+
|
115
|
+
],
|
116
|
+
"post_history":[
|
117
|
+
|
118
|
+
],
|
119
|
+
"vote_history":[
|
120
|
+
|
121
|
+
],
|
122
|
+
"other_history":[
|
123
|
+
|
124
|
+
],
|
125
|
+
"witness_votes":[
|
126
|
+
"abit",
|
127
|
+
"anyx",
|
128
|
+
"bacchist",
|
129
|
+
"bitcoiner",
|
130
|
+
"bitcoinparadise",
|
131
|
+
"boatymcboatface",
|
132
|
+
"busy.witness",
|
133
|
+
"chainsquad.com",
|
134
|
+
"charlieshrem",
|
135
|
+
"codydeeds",
|
136
|
+
"complexring",
|
137
|
+
"furion",
|
138
|
+
"fyrst-witness",
|
139
|
+
"good-karma",
|
140
|
+
"gtg",
|
141
|
+
"jesta",
|
142
|
+
"klye",
|
143
|
+
"masteryoda",
|
144
|
+
"pfunk",
|
145
|
+
"pharesim",
|
146
|
+
"proctologic",
|
147
|
+
"riverhead",
|
148
|
+
"roadscape",
|
149
|
+
"roelandp",
|
150
|
+
"smooth.witness",
|
151
|
+
"someguy123",
|
152
|
+
"teamsteem"
|
153
|
+
],
|
154
|
+
"tags_usage":[
|
155
|
+
|
156
|
+
],
|
157
|
+
"guest_bloggers":[
|
158
|
+
|
159
|
+
],
|
160
|
+
"blog_category":{
|
161
|
+
|
162
|
+
}
|
163
|
+
}
|
164
|
+
]
|
165
|
+
}
|