everscale-client-ruby 1.1.61 → 1.1.63
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/code_generator/api.json +188 -19
- data/lib/code_generator/code_generator.rb +19 -2
- data/lib/everscale-client-ruby/Client/Abi.rb +20 -0
- data/lib/everscale-client-ruby/Client/Boc.rb +1 -1
- data/lib/everscale-client-ruby/Client/Net.rb +3 -1
- data/lib/everscale-client-ruby/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9dbc26200488873fe31f2b24aa622bbd36f2204e9564e78606b6f9e0c41ffbd8
|
4
|
+
data.tar.gz: 05db9abdd64c99d5fe4395550216229e6d64d3fa0bde339fa4a50e6f08a8fe9e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0b5f6eb1fc122801c939f0aaa0221b2249e9f55a3cd590ac8894108fa29e98ddd2e4a7a8772a9737987e4c615b81eee47484e4a533a4e789073779650a2c6198
|
7
|
+
data.tar.gz: e26806049ad9ff4092c99625286ac1d5ee05a5ae4b0d6f4200514215056b605e362ba499a99fbbf3886131cb5281626996eeb1b8cef0c0297908320d3642fd7a
|
data/lib/code_generator/api.json
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
{
|
2
|
-
"version": "1.
|
2
|
+
"version": "1.40.0",
|
3
3
|
"modules": [
|
4
4
|
{
|
5
5
|
"name": "client",
|
@@ -254,6 +254,13 @@
|
|
254
254
|
"value": "35",
|
255
255
|
"summary": null,
|
256
256
|
"description": null
|
257
|
+
},
|
258
|
+
{
|
259
|
+
"name": "InvalidData",
|
260
|
+
"type": "Number",
|
261
|
+
"value": "36",
|
262
|
+
"summary": null,
|
263
|
+
"description": null
|
257
264
|
}
|
258
265
|
],
|
259
266
|
"summary": null,
|
@@ -477,7 +484,7 @@
|
|
477
484
|
"number_size": 32
|
478
485
|
},
|
479
486
|
"summary": "Frequency of sync latency detection.",
|
480
|
-
"description": "Library periodically checks the current endpoint for blockchain data
|
487
|
+
"description": "Library periodically checks the current endpoint for blockchain data synchronization latency.\nIf the latency (time-lag) is less then `NetworkConfig.max_latency`\nthen library selects another endpoint.\n\nMust be specified in milliseconds. Default is 60000 (1 min)."
|
481
488
|
},
|
482
489
|
{
|
483
490
|
"name": "max_latency",
|
@@ -487,7 +494,7 @@
|
|
487
494
|
"number_type": "UInt",
|
488
495
|
"number_size": 32
|
489
496
|
},
|
490
|
-
"summary": "Maximum value for the endpoint's blockchain data
|
497
|
+
"summary": "Maximum value for the endpoint's blockchain data synchronization latency (time-lag). Library periodically checks the current endpoint for blockchain data synchronization latency. If the latency (time-lag) is less then `NetworkConfig.max_latency` then library selects another endpoint.",
|
491
498
|
"description": "Must be specified in milliseconds. Default is 60000 (1 min)."
|
492
499
|
},
|
493
500
|
{
|
@@ -520,7 +527,7 @@
|
|
520
527
|
"number_size": 32
|
521
528
|
},
|
522
529
|
"summary": "UNSTABLE.",
|
523
|
-
"description": "First REMP status awaiting timeout. If no status
|
530
|
+
"description": "First REMP status awaiting timeout. If no status received during the timeout than fallback transaction scenario is activated.\n\nMust be specified in milliseconds. Default is 1000 (1 sec)."
|
524
531
|
},
|
525
532
|
{
|
526
533
|
"name": "next_remp_status_timeout",
|
@@ -531,7 +538,7 @@
|
|
531
538
|
"number_size": 32
|
532
539
|
},
|
533
540
|
"summary": "UNSTABLE.",
|
534
|
-
"description": "Subsequent REMP status awaiting timeout. If no status
|
541
|
+
"description": "Subsequent REMP status awaiting timeout. If no status received during the timeout than fallback transaction scenario is activated.\n\nMust be specified in milliseconds. Default is 5000 (5 sec)."
|
535
542
|
},
|
536
543
|
{
|
537
544
|
"name": "access_key",
|
@@ -559,7 +566,7 @@
|
|
559
566
|
{
|
560
567
|
"name": "WS",
|
561
568
|
"type": "None",
|
562
|
-
"summary": "All GraphQL queries will be served using single web socket connection.",
|
569
|
+
"summary": "All GraphQL queries will be served using single web socket connection. SDK is tested to reliably handle 5000 parallel network requests (sending and processing messages, quering and awaiting blockchain data)",
|
563
570
|
"description": null
|
564
571
|
}
|
565
572
|
],
|
@@ -6133,6 +6140,26 @@
|
|
6133
6140
|
"summary": null,
|
6134
6141
|
"description": null
|
6135
6142
|
},
|
6143
|
+
{
|
6144
|
+
"name": "DataLayout",
|
6145
|
+
"type": "EnumOfConsts",
|
6146
|
+
"enum_consts": [
|
6147
|
+
{
|
6148
|
+
"name": "Input",
|
6149
|
+
"type": "None",
|
6150
|
+
"summary": "Decode message body as function input parameters.",
|
6151
|
+
"description": null
|
6152
|
+
},
|
6153
|
+
{
|
6154
|
+
"name": "Output",
|
6155
|
+
"type": "None",
|
6156
|
+
"summary": "Decode message body as function output.",
|
6157
|
+
"description": null
|
6158
|
+
}
|
6159
|
+
],
|
6160
|
+
"summary": null,
|
6161
|
+
"description": null
|
6162
|
+
},
|
6136
6163
|
{
|
6137
6164
|
"name": "ParamsOfEncodeMessageBody",
|
6138
6165
|
"type": "Struct",
|
@@ -6539,6 +6566,25 @@
|
|
6539
6566
|
},
|
6540
6567
|
"summary": "Flag allowing partial BOC decoding when ABI doesn't describe the full body BOC. Controls decoder behaviour when after decoding all described in ABI params there are some data left in BOC: `true` - return decoded values `false` - return error of incomplete BOC deserialization (default)",
|
6541
6568
|
"description": null
|
6569
|
+
},
|
6570
|
+
{
|
6571
|
+
"name": "function_name",
|
6572
|
+
"type": "Optional",
|
6573
|
+
"optional_inner": {
|
6574
|
+
"type": "String"
|
6575
|
+
},
|
6576
|
+
"summary": "Function name or function id if is known in advance",
|
6577
|
+
"description": null
|
6578
|
+
},
|
6579
|
+
{
|
6580
|
+
"name": "data_layout",
|
6581
|
+
"type": "Optional",
|
6582
|
+
"optional_inner": {
|
6583
|
+
"type": "Ref",
|
6584
|
+
"ref_name": "abi.DataLayout"
|
6585
|
+
},
|
6586
|
+
"summary": null,
|
6587
|
+
"description": null
|
6542
6588
|
}
|
6543
6589
|
],
|
6544
6590
|
"summary": null,
|
@@ -6616,6 +6662,25 @@
|
|
6616
6662
|
},
|
6617
6663
|
"summary": "Flag allowing partial BOC decoding when ABI doesn't describe the full body BOC. Controls decoder behaviour when after decoding all described in ABI params there are some data left in BOC: `true` - return decoded values `false` - return error of incomplete BOC deserialization (default)",
|
6618
6664
|
"description": null
|
6665
|
+
},
|
6666
|
+
{
|
6667
|
+
"name": "function_name",
|
6668
|
+
"type": "Optional",
|
6669
|
+
"optional_inner": {
|
6670
|
+
"type": "String"
|
6671
|
+
},
|
6672
|
+
"summary": "Function name or function id if is known in advance",
|
6673
|
+
"description": null
|
6674
|
+
},
|
6675
|
+
{
|
6676
|
+
"name": "data_layout",
|
6677
|
+
"type": "Optional",
|
6678
|
+
"optional_inner": {
|
6679
|
+
"type": "Ref",
|
6680
|
+
"ref_name": "abi.DataLayout"
|
6681
|
+
},
|
6682
|
+
"summary": null,
|
6683
|
+
"description": null
|
6619
6684
|
}
|
6620
6685
|
],
|
6621
6686
|
"summary": null,
|
@@ -7068,6 +7133,47 @@
|
|
7068
7133
|
],
|
7069
7134
|
"summary": null,
|
7070
7135
|
"description": null
|
7136
|
+
},
|
7137
|
+
{
|
7138
|
+
"name": "ParamsOfGetSignatureData",
|
7139
|
+
"type": "Struct",
|
7140
|
+
"struct_fields": [
|
7141
|
+
{
|
7142
|
+
"name": "abi",
|
7143
|
+
"type": "Ref",
|
7144
|
+
"ref_name": "abi.Abi",
|
7145
|
+
"summary": "Contract ABI used to decode.",
|
7146
|
+
"description": null
|
7147
|
+
},
|
7148
|
+
{
|
7149
|
+
"name": "message",
|
7150
|
+
"type": "String",
|
7151
|
+
"summary": "Message BOC encoded in `base64`.",
|
7152
|
+
"description": null
|
7153
|
+
}
|
7154
|
+
],
|
7155
|
+
"summary": null,
|
7156
|
+
"description": null
|
7157
|
+
},
|
7158
|
+
{
|
7159
|
+
"name": "ResultOfGetSignatureData",
|
7160
|
+
"type": "Struct",
|
7161
|
+
"struct_fields": [
|
7162
|
+
{
|
7163
|
+
"name": "signature",
|
7164
|
+
"type": "String",
|
7165
|
+
"summary": "Signature from the message in `hex`.",
|
7166
|
+
"description": null
|
7167
|
+
},
|
7168
|
+
{
|
7169
|
+
"name": "hash",
|
7170
|
+
"type": "String",
|
7171
|
+
"summary": "Hash to verify the signature in `base64`.",
|
7172
|
+
"description": null
|
7173
|
+
}
|
7174
|
+
],
|
7175
|
+
"summary": null,
|
7176
|
+
"description": null
|
7071
7177
|
}
|
7072
7178
|
],
|
7073
7179
|
"functions": [
|
@@ -7640,6 +7746,44 @@
|
|
7640
7746
|
]
|
7641
7747
|
},
|
7642
7748
|
"errors": null
|
7749
|
+
},
|
7750
|
+
{
|
7751
|
+
"name": "get_signature_data",
|
7752
|
+
"summary": "Extracts signature from message body and calculates hash to verify the signature",
|
7753
|
+
"description": null,
|
7754
|
+
"params": [
|
7755
|
+
{
|
7756
|
+
"name": "context",
|
7757
|
+
"type": "Generic",
|
7758
|
+
"generic_name": "Arc",
|
7759
|
+
"generic_args": [
|
7760
|
+
{
|
7761
|
+
"type": "Ref",
|
7762
|
+
"ref_name": "ClientContext"
|
7763
|
+
}
|
7764
|
+
],
|
7765
|
+
"summary": null,
|
7766
|
+
"description": null
|
7767
|
+
},
|
7768
|
+
{
|
7769
|
+
"name": "params",
|
7770
|
+
"type": "Ref",
|
7771
|
+
"ref_name": "abi.ParamsOfGetSignatureData",
|
7772
|
+
"summary": null,
|
7773
|
+
"description": null
|
7774
|
+
}
|
7775
|
+
],
|
7776
|
+
"result": {
|
7777
|
+
"type": "Generic",
|
7778
|
+
"generic_name": "ClientResult",
|
7779
|
+
"generic_args": [
|
7780
|
+
{
|
7781
|
+
"type": "Ref",
|
7782
|
+
"ref_name": "abi.ResultOfGetSignatureData"
|
7783
|
+
}
|
7784
|
+
]
|
7785
|
+
},
|
7786
|
+
"errors": null
|
7643
7787
|
}
|
7644
7788
|
]
|
7645
7789
|
},
|
@@ -7776,7 +7920,7 @@
|
|
7776
7920
|
{
|
7777
7921
|
"name": "id",
|
7778
7922
|
"type": "String",
|
7779
|
-
"summary": "Shardstate
|
7923
|
+
"summary": "Shardstate identifier",
|
7780
7924
|
"description": null
|
7781
7925
|
},
|
7782
7926
|
{
|
@@ -9464,8 +9608,8 @@
|
|
9464
9608
|
"description": null
|
9465
9609
|
}
|
9466
9610
|
],
|
9467
|
-
"summary": "Notifies the app that the message was sent to the network, i.e `processing.send_message` was
|
9468
|
-
"description": "Do not forget to specify abi of your contract as well, it is crucial for
|
9611
|
+
"summary": "Notifies the app that the message was sent to the network, i.e `processing.send_message` was successfully executed. Now, the message is in the blockchain. If Application exits at this phase, Developer needs to proceed with processing after the application is restored with `wait_for_transaction` function, passing shard_block_id and message from this event.",
|
9612
|
+
"description": "Do not forget to specify abi of your contract as well, it is crucial for processing. See `processing.wait_for_transaction` documentation."
|
9469
9613
|
},
|
9470
9614
|
{
|
9471
9615
|
"name": "SendFailed",
|
@@ -9498,7 +9642,7 @@
|
|
9498
9642
|
}
|
9499
9643
|
],
|
9500
9644
|
"summary": "Notifies the app that the sending operation was failed with network error.",
|
9501
|
-
"description": "Nevertheless the processing will be continued at the waiting\nphase because the message possibly has been delivered to the\nnode.\nIf Application exits at this phase, Developer needs to proceed with processing\nafter the application is restored with `wait_for_transaction` function, passing\nshard_block_id and message from this event. Do not forget to specify abi of your contract\nas well, it is crucial for
|
9645
|
+
"description": "Nevertheless the processing will be continued at the waiting\nphase because the message possibly has been delivered to the\nnode.\nIf Application exits at this phase, Developer needs to proceed with processing\nafter the application is restored with `wait_for_transaction` function, passing\nshard_block_id and message from this event. Do not forget to specify abi of your contract\nas well, it is crucial for processing. See `processing.wait_for_transaction` documentation."
|
9502
9646
|
},
|
9503
9647
|
{
|
9504
9648
|
"name": "WillFetchNextBlock",
|
@@ -9524,7 +9668,7 @@
|
|
9524
9668
|
}
|
9525
9669
|
],
|
9526
9670
|
"summary": "Notifies the app that the next shard block will be fetched from the network.",
|
9527
|
-
"description": "Event can occurs more than one time due to block walking\nprocedure.\nIf Application exits at this phase, Developer needs to proceed with processing\nafter the application is restored with `wait_for_transaction` function, passing\nshard_block_id and message from this event. Do not forget to specify abi of your contract\nas well, it is crucial for
|
9671
|
+
"description": "Event can occurs more than one time due to block walking\nprocedure.\nIf Application exits at this phase, Developer needs to proceed with processing\nafter the application is restored with `wait_for_transaction` function, passing\nshard_block_id and message from this event. Do not forget to specify abi of your contract\nas well, it is crucial for processing. See `processing.wait_for_transaction` documentation."
|
9528
9672
|
},
|
9529
9673
|
{
|
9530
9674
|
"name": "FetchNextBlockFailed",
|
@@ -9584,7 +9728,7 @@
|
|
9584
9728
|
}
|
9585
9729
|
],
|
9586
9730
|
"summary": "Notifies the app that the message was not executed within expire timeout on-chain and will never be because it is already expired. The expiration timeout can be configured with `AbiConfig` parameters.",
|
9587
|
-
"description": "This event occurs only for the contracts which ABI includes \"expire\" header.\n\nIf Application specifies `NetworkConfig.message_retries_count` > 0, then `process_message`\nwill perform retries: will create a new message and send it again and repeat it
|
9731
|
+
"description": "This event occurs only for the contracts which ABI includes \"expire\" header.\n\nIf Application specifies `NetworkConfig.message_retries_count` > 0, then `process_message`\nwill perform retries: will create a new message and send it again and repeat it until it reaches\nthe maximum retries count or receives a successful result. All the processing\nevents will be repeated."
|
9588
9732
|
},
|
9589
9733
|
{
|
9590
9734
|
"name": "RempSentToValidators",
|
@@ -9670,7 +9814,7 @@
|
|
9670
9814
|
"description": null
|
9671
9815
|
}
|
9672
9816
|
],
|
9673
|
-
"summary": "Notifies the app that the block
|
9817
|
+
"summary": "Notifies the app that the block candidate with the message has been accepted by the thread's validators",
|
9674
9818
|
"description": null
|
9675
9819
|
},
|
9676
9820
|
{
|
@@ -9714,7 +9858,7 @@
|
|
9714
9858
|
"description": null
|
9715
9859
|
}
|
9716
9860
|
],
|
9717
|
-
"summary": "Notifies the app about any problem that has
|
9861
|
+
"summary": "Notifies the app about any problem that has occurred in REMP processing - in this case library switches to the fallback transaction awaiting scenario (sequential block reading).",
|
9718
9862
|
"description": null
|
9719
9863
|
}
|
9720
9864
|
],
|
@@ -11084,7 +11228,7 @@
|
|
11084
11228
|
{
|
11085
11229
|
"name": "run_executor",
|
11086
11230
|
"summary": "Emulates all the phases of contract execution locally",
|
11087
|
-
"description": "Performs all the phases of contract execution on Transaction Executor -\nthe same component that is used on Validator Nodes.\n\nCan be used for contract debugging, to find out the reason why a message was not delivered successfully.\nValidators throw away the failed external inbound messages (if they failed
|
11231
|
+
"description": "Performs all the phases of contract execution on Transaction Executor -\nthe same component that is used on Validator Nodes.\n\nCan be used for contract debugging, to find out the reason why a message was not delivered successfully.\nValidators throw away the failed external inbound messages (if they failed before `ACCEPT`) in the real network.\nThis is why these messages are impossible to debug in the real network.\nWith the help of run_executor you can do that. In fact, `process_message` function\nperforms local check with `run_executor` if there was no transaction as a result of processing\nand returns the error, if there is one.\n\nAnother use case to use `run_executor` is to estimate fees for message execution.\nSet `AccountForExecutor::Account.unlimited_balance`\nto `true` so that emulation will not depend on the actual balance.\nThis may be needed to calculate deploy fees for an account that does not exist yet.\nJSON with fees is in `fees` field of the result.\n\nOne more use case - you can produce the sequence of operations,\nthus emulating the sequential contract calls locally.\nAnd so on.\n\nTransaction executor requires account BOC (bag of cells) as a parameter.\nTo get the account BOC - use `net.query` method to download it from GraphQL API\n(field `boc` of `account`) or generate it with `abi.encode_account` method.\n\nAlso it requires message BOC. To get the message BOC - use `abi.encode_message` or `abi.encode_internal_message`.\n\nIf you need this emulation to be as precise as possible (for instance - emulate transaction\nwith particular lt in particular block or use particular blockchain config,\ndownloaded from a particular key block - then specify `execution_options` parameter.\n\nIf you need to see the aborted transaction as a result, not as an error, set `skip_transaction_check` to `true`.",
|
11088
11232
|
"params": [
|
11089
11233
|
{
|
11090
11234
|
"name": "context",
|
@@ -11310,6 +11454,20 @@
|
|
11310
11454
|
"value": "615",
|
11311
11455
|
"summary": null,
|
11312
11456
|
"description": null
|
11457
|
+
},
|
11458
|
+
{
|
11459
|
+
"name": "QueryTransactionTreeTimeout",
|
11460
|
+
"type": "Number",
|
11461
|
+
"value": "616",
|
11462
|
+
"summary": null,
|
11463
|
+
"description": null
|
11464
|
+
},
|
11465
|
+
{
|
11466
|
+
"name": "GraphqlConnectionError",
|
11467
|
+
"type": "Number",
|
11468
|
+
"value": "617",
|
11469
|
+
"summary": null,
|
11470
|
+
"description": null
|
11313
11471
|
}
|
11314
11472
|
],
|
11315
11473
|
"summary": null,
|
@@ -12049,7 +12207,18 @@
|
|
12049
12207
|
"number_size": 32
|
12050
12208
|
},
|
12051
12209
|
"summary": "Timeout used to limit waiting time for the missing messages and transaction.",
|
12052
|
-
"description": "If some of the following messages and transactions are missing yet\nThe maximum waiting time is regulated by this option.\n\nDefault value is 60000 (1 min)."
|
12210
|
+
"description": "If some of the following messages and transactions are missing yet\nThe maximum waiting time is regulated by this option.\n\nDefault value is 60000 (1 min). If `timeout` is set to 0 then function will wait infinitely\nuntil the whole transaction tree is executed"
|
12211
|
+
},
|
12212
|
+
{
|
12213
|
+
"name": "transaction_max_count",
|
12214
|
+
"type": "Optional",
|
12215
|
+
"optional_inner": {
|
12216
|
+
"type": "Number",
|
12217
|
+
"number_type": "UInt",
|
12218
|
+
"number_size": 32
|
12219
|
+
},
|
12220
|
+
"summary": "Maximum transaction count to wait.",
|
12221
|
+
"description": "If transaction tree contains more transaction then this parameter then only first `transaction_max_count` transaction are awaited and returned.\n\nDefault value is 50. If `transaction_max_count` is set to 0 then no limitation on\ntransaction count is used and all transaction are returned."
|
12053
12222
|
}
|
12054
12223
|
],
|
12055
12224
|
"summary": null,
|
@@ -12617,7 +12786,7 @@
|
|
12617
12786
|
{
|
12618
12787
|
"name": "subscribe",
|
12619
12788
|
"summary": "Creates a subscription",
|
12620
|
-
"description": "The subscription is a persistent communication channel between\nclient and Everscale Network.\n\n### Important Notes on Subscriptions\n\nUnfortunately sometimes the connection with the network
|
12789
|
+
"description": "The subscription is a persistent communication channel between\nclient and Everscale Network.\n\n### Important Notes on Subscriptions\n\nUnfortunately sometimes the connection with the network breaks down.\nIn this situation the library attempts to reconnect to the network.\nThis reconnection sequence can take significant time.\nAll of this time the client is disconnected from the network.\n\nBad news is that all changes that happened while\nthe client was disconnected are lost.\n\nGood news is that the client report errors to the callback when\nit loses and resumes connection.\n\nSo, if the lost changes are important to the application then\nthe application must handle these error reports.\n\nLibrary reports errors with `responseType` == 101\nand the error object passed via `params`.\n\nWhen the library has successfully reconnected\nthe application receives callback with\n`responseType` == 101 and `params.code` == 614 (NetworkModuleResumed).\n\nApplication can use several ways to handle this situation:\n- If application monitors changes for the single\nobject (for example specific account): application\ncan perform a query for this object and handle actual data as a\nregular data from the subscription.\n- If application monitors sequence of some objects\n(for example transactions of the specific account): application must\nrefresh all cached (or visible to user) lists where this sequences presents.",
|
12621
12790
|
"params": [
|
12622
12791
|
{
|
12623
12792
|
"name": "context",
|
@@ -12903,7 +13072,7 @@
|
|
12903
13072
|
{
|
12904
13073
|
"name": "query_transaction_tree",
|
12905
13074
|
"summary": "Returns a tree of transactions triggered by a specific message.",
|
12906
|
-
"description": "Performs recursive retrieval of a transactions tree produced by a specific message:\nin_msg -> dst_transaction -> out_messages -> dst_transaction -> ...\nIf the chain of transactions execution is in progress while the function is running,\nit will wait for the next transactions to appear until the full tree or more than 50 transactions\nare received.\n\nAll the retrieved messages and transactions are included\ninto `result.messages` and `result.transactions` respectively.\n\nFunction reads transactions layer by layer, by pages of 20 transactions.\n\nThe retrieval
|
13075
|
+
"description": "Performs recursive retrieval of a transactions tree produced by a specific message:\nin_msg -> dst_transaction -> out_messages -> dst_transaction -> ...\nIf the chain of transactions execution is in progress while the function is running,\nit will wait for the next transactions to appear until the full tree or more than 50 transactions\nare received.\n\nAll the retrieved messages and transactions are included\ninto `result.messages` and `result.transactions` respectively.\n\nFunction reads transactions layer by layer, by pages of 20 transactions.\n\nThe retrieval process goes like this:\nLet's assume we have an infinite chain of transactions and each transaction generates 5 messages.\n1. Retrieve 1st message (input parameter) and corresponding transaction - put it into result.\nIt is the first level of the tree of transactions - its root.\nRetrieve 5 out message ids from the transaction for next steps.\n2. Retrieve 5 messages and corresponding transactions on the 2nd layer. Put them into result.\nRetrieve 5*5 out message ids from these transactions for next steps\n3. Retrieve 20 (size of the page) messages and transactions (3rd layer) and 20*5=100 message ids (4th layer).\n4. Retrieve the last 5 messages and 5 transactions on the 3rd layer + 15 messages and transactions (of 100) from the 4th layer\n+ 25 message ids of the 4th layer + 75 message ids of the 5th layer.\n5. Retrieve 20 more messages and 20 more transactions of the 4th layer + 100 more message ids of the 5th layer.\n6. Now we have 1+5+20+20+20 = 66 transactions, which is more than 50. Function exits with the tree of\n1m->1t->5m->5t->25m->25t->35m->35t. If we see any message ids in the last transactions out_msgs, which don't have\ncorresponding messages in the function result, it means that the full tree was not received and we need to continue iteration.\n\nTo summarize, it is guaranteed that each message in `result.messages` has the corresponding transaction\nin the `result.transactions`.\nBut there is no guarantee that all messages from transactions `out_msgs` are\npresented in `result.messages`.\nSo the application has to continue retrieval for missing messages if it requires.",
|
12907
13076
|
"params": [
|
12908
13077
|
{
|
12909
13078
|
"name": "context",
|
@@ -12979,7 +13148,7 @@
|
|
12979
13148
|
{
|
12980
13149
|
"name": "resume_block_iterator",
|
12981
13150
|
"summary": "Resumes block iterator.",
|
12982
|
-
"description": "The iterator stays exactly at the same position where the `resume_state` was
|
13151
|
+
"description": "The iterator stays exactly at the same position where the `resume_state` was caught.\n\nApplication should call the `remove_iterator` when iterator is no longer required.",
|
12983
13152
|
"params": [
|
12984
13153
|
{
|
12985
13154
|
"name": "context",
|
@@ -80,18 +80,35 @@ client = TonClient.create(config: {network: {endpoints: ["https://eri01.net.ever
|
|
80
80
|
|
81
81
|
# All methods are asynchronous
|
82
82
|
|
83
|
-
|
83
|
+
## example 1: call method for Crypto module
|
84
84
|
payload = {composite: '17ED48941A08F981'}
|
85
85
|
|
86
86
|
# Sync
|
87
87
|
response = client.crypto.factorize_sync(payload)
|
88
|
-
p response
|
88
|
+
p response['result']['factors']
|
89
89
|
|
90
90
|
# Async
|
91
91
|
client.crypto.factorize(payload) do |response|
|
92
92
|
p response.result['factors']
|
93
93
|
end
|
94
94
|
|
95
|
+
|
96
|
+
## example 2: parse message from boc base64 encoded
|
97
|
+
payload = {boc: "te6ccgEBAQEAWAAAq2n+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAE/zMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzSsG8DgAAAAAjuOu9NAL7BxYpA"}
|
98
|
+
|
99
|
+
# Sync
|
100
|
+
response = client.boc.parse_message_sync(payload)
|
101
|
+
p response['result']['parsed']['id']
|
102
|
+
p response['result']['parsed']['src']
|
103
|
+
p response['result']['parsed']['dst']
|
104
|
+
|
105
|
+
# Async
|
106
|
+
client.boc.parse_message_sync(payload) do |response|
|
107
|
+
p response.result['parsed']['id']
|
108
|
+
p response.result['parsed']['src']
|
109
|
+
p response.result['parsed']['dst']
|
110
|
+
end
|
111
|
+
|
95
112
|
# e.g. ...
|
96
113
|
```\n\n
|
97
114
|
}
|
@@ -128,6 +128,8 @@ module TonClient
|
|
128
128
|
# abi: Value - # # contract ABI
|
129
129
|
# message: String - # # Message BOC
|
130
130
|
# allow_partial: Boolean<Optional> - # # Flag allowing partial BOC decoding when ABI doesn't describe the full body BOC. Controls decoder behaviour when after decoding all described in ABI params there are some data left in BOC: `true` - return decoded values `false` - return error of incomplete BOC deserialization (default)
|
131
|
+
# function_name: String<Optional> - # # Function name or function id if is known in advance
|
132
|
+
# data_layout: DataLayout<Optional> -
|
131
133
|
# RESPONSE: DecodedMessageBody
|
132
134
|
# body_type: MessageBodyType - # # Type of the message body content.
|
133
135
|
# name: String - # # Function or event name.
|
@@ -148,6 +150,8 @@ module TonClient
|
|
148
150
|
# body: String - # # Message body BOC encoded in `base64`.
|
149
151
|
# is_internal: Boolean - # # True if the body belongs to the internal message.
|
150
152
|
# allow_partial: Boolean<Optional> - # # Flag allowing partial BOC decoding when ABI doesn't describe the full body BOC. Controls decoder behaviour when after decoding all described in ABI params there are some data left in BOC: `true` - return decoded values `false` - return error of incomplete BOC deserialization (default)
|
153
|
+
# function_name: String<Optional> - # # Function name or function id if is known in advance
|
154
|
+
# data_layout: DataLayout<Optional> -
|
151
155
|
# RESPONSE: DecodedMessageBody
|
152
156
|
# body_type: MessageBodyType - # # Type of the message body content.
|
153
157
|
# name: String - # # Function or event name.
|
@@ -298,6 +302,22 @@ module TonClient
|
|
298
302
|
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
299
303
|
end
|
300
304
|
|
305
|
+
# INPUT: ParamsOfGetSignatureData
|
306
|
+
# abi: Value - # # Contract ABI used to decode.
|
307
|
+
# message: String - # # Message BOC encoded in `base64`.
|
308
|
+
# RESPONSE: ResultOfGetSignatureData
|
309
|
+
# signature: String - # # Signature from the message in `hex`.
|
310
|
+
# hash: String - # # Hash to verify the signature in `base64`.
|
311
|
+
# Async
|
312
|
+
def get_signature_data(payload, &block)
|
313
|
+
TonBinding.requestLibrary(context: context, request_id: request_id, requests: requests, monitor: monitor, method_name: full_method_name(MODULE, __method__.to_s), payload: payload, &block)
|
314
|
+
end
|
315
|
+
|
316
|
+
# Sync
|
317
|
+
def get_signature_data_sync(payload)
|
318
|
+
TonBinding.send_request_sync(context: context, method_name: full_method_name(MODULE, __method__.to_s).sub(/_sync$/, ''), payload: payload)
|
319
|
+
end
|
320
|
+
|
301
321
|
end
|
302
322
|
end
|
303
323
|
|
@@ -71,7 +71,7 @@ module TonClient
|
|
71
71
|
|
72
72
|
# INPUT: ParamsOfParseShardstate
|
73
73
|
# boc: String - # # BOC encoded as base64
|
74
|
-
# id: String - # # Shardstate
|
74
|
+
# id: String - # # Shardstate identifier
|
75
75
|
# workchain_id: Number - # # Workchain shardstate belongs to
|
76
76
|
# RESPONSE: ResultOfParse
|
77
77
|
# parsed: Value - # # JSON containing parsed BOC
|
@@ -229,7 +229,9 @@ module TonClient
|
|
229
229
|
# in_msg: String - # # Input message id.
|
230
230
|
# abi_registry: Array<Optional> - # # List of contract ABIs that will be used to decode message bodies. Library will try to decode each returned message body using any ABI from the registry.
|
231
231
|
# timeout: Number<Optional> - # # Timeout used to limit waiting time for the missing messages and transaction. # # If some of the following messages and transactions are missing yetThe maximum waiting time is regulated by this option.
|
232
|
-
# Default value is 60000 (1 min).
|
232
|
+
# Default value is 60000 (1 min). If `timeout` is set to 0 then function will wait infinitelyuntil the whole transaction tree is executed
|
233
|
+
# transaction_max_count: Number<Optional> - # # Maximum transaction count to wait. # # If transaction tree contains more transaction then this parameter then only first `transaction_max_count` transaction are awaited and returned.
|
234
|
+
# Default value is 50. If `transaction_max_count` is set to 0 then no limitation ontransaction count is used and all transaction are returned.
|
233
235
|
# RESPONSE: ResultOfQueryTransactionTree
|
234
236
|
# messages: Array - # # Messages.
|
235
237
|
# transactions: Array - # # Transactions.
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: everscale-client-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.63
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- nerzh
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-02-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|