lnd-client 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/.rubocop.yml +15 -0
- data/Gemfile +16 -0
- data/Gemfile.lock +62 -0
- data/LICENSE +21 -0
- data/README.md +107 -0
- data/Rakefile +10 -0
- data/components/grpc/autopilotrpc/autopilot_pb.rb +48 -0
- data/components/grpc/autopilotrpc/autopilot_services_pb.rb +40 -0
- data/components/grpc/chainrpc/chainkit_pb.rb +36 -0
- data/components/grpc/chainrpc/chainkit_services_pb.rb +34 -0
- data/components/grpc/chainrpc/chainnotifier_pb.rb +69 -0
- data/components/grpc/chainrpc/chainnotifier_services_pb.rb +53 -0
- data/components/grpc/devrpc/dev_pb.rb +17 -0
- data/components/grpc/devrpc/dev_services_pb.rb +25 -0
- data/components/grpc/invoicesrpc/invoices_pb.rb +66 -0
- data/components/grpc/invoicesrpc/invoices_services_pb.rb +45 -0
- data/components/grpc/lightning_pb.rb +1621 -0
- data/components/grpc/lightning_services_pb.rb +441 -0
- data/components/grpc/lnclipb/lncli_pb.rb +19 -0
- data/components/grpc/neutrinorpc/neutrino_pb.rb +106 -0
- data/components/grpc/neutrinorpc/neutrino_services_pb.rb +51 -0
- data/components/grpc/peersrpc/peers_pb.rb +48 -0
- data/components/grpc/peersrpc/peers_services_pb.rb +27 -0
- data/components/grpc/routerrpc/router_pb.rb +299 -0
- data/components/grpc/routerrpc/router_services_pb.rb +115 -0
- data/components/grpc/signrpc/signer_pb.rb +172 -0
- data/components/grpc/signrpc/signer_services_pb.rb +134 -0
- data/components/grpc/stateservice_pb.rb +35 -0
- data/components/grpc/stateservice_services_pb.rb +46 -0
- data/components/grpc/verrpc/verrpc_pb.rb +27 -0
- data/components/grpc/verrpc/verrpc_services_pb.rb +27 -0
- data/components/grpc/walletrpc/walletkit_pb.rb +328 -0
- data/components/grpc/walletrpc/walletkit_services_pb.rb +230 -0
- data/components/grpc/walletunlocker_pb.rb +75 -0
- data/components/grpc/walletunlocker_services_pb.rb +72 -0
- data/components/grpc/watchtowerrpc/watchtower_pb.rb +21 -0
- data/components/grpc/watchtowerrpc/watchtower_services_pb.rb +28 -0
- data/components/grpc/wtclientrpc/wtclient_pb.rb +83 -0
- data/components/grpc/wtclientrpc/wtclient_services_pb.rb +43 -0
- data/components/grpc.rb +9 -0
- data/controllers/client.rb +31 -0
- data/controllers/config.rb +35 -0
- data/controllers/documentation.rb +45 -0
- data/controllers/grpc_generator.rb +80 -0
- data/controllers/service.rb +35 -0
- data/lnd-client.gemspec +35 -0
- data/logic/string.rb +11 -0
- data/ports/dsl/lnd-client.rb +14 -0
- data/static/spec.rb +13 -0
- metadata +110 -0
@@ -0,0 +1,441 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# Source: lightning.proto for package 'lnrpc'
|
3
|
+
|
4
|
+
require 'grpc'
|
5
|
+
require_relative 'lightning_pb'
|
6
|
+
|
7
|
+
module Lnrpc
|
8
|
+
module Lightning
|
9
|
+
#
|
10
|
+
# Comments in this file will be directly parsed into the API
|
11
|
+
# Documentation as descriptions of the associated method, message, or field.
|
12
|
+
# These descriptions should go right above the definition of the object, and
|
13
|
+
# can be in either block or // comment format.
|
14
|
+
#
|
15
|
+
# An RPC method can be matched to an lncli command by placing a line in the
|
16
|
+
# beginning of the description in exactly the following format:
|
17
|
+
# lncli: `methodname`
|
18
|
+
#
|
19
|
+
# Failure to specify the exact name of the command will cause documentation
|
20
|
+
# generation to fail.
|
21
|
+
#
|
22
|
+
# More information on how exactly the gRPC documentation is generated from
|
23
|
+
# this proto file can be found here:
|
24
|
+
# https://github.com/lightninglabs/lightning-api
|
25
|
+
#
|
26
|
+
# Lightning is the main RPC server of the daemon.
|
27
|
+
class Service
|
28
|
+
|
29
|
+
include ::GRPC::GenericService
|
30
|
+
|
31
|
+
self.marshal_class_method = :encode
|
32
|
+
self.unmarshal_class_method = :decode
|
33
|
+
self.service_name = 'lnrpc.Lightning'
|
34
|
+
|
35
|
+
# lncli: `walletbalance`
|
36
|
+
# WalletBalance returns total unspent outputs(confirmed and unconfirmed), all
|
37
|
+
# confirmed unspent outputs and all unconfirmed unspent outputs under control
|
38
|
+
# of the wallet.
|
39
|
+
rpc :WalletBalance, ::Lnrpc::WalletBalanceRequest, ::Lnrpc::WalletBalanceResponse
|
40
|
+
# lncli: `channelbalance`
|
41
|
+
# ChannelBalance returns a report on the total funds across all open channels,
|
42
|
+
# categorized in local/remote, pending local/remote and unsettled local/remote
|
43
|
+
# balances.
|
44
|
+
rpc :ChannelBalance, ::Lnrpc::ChannelBalanceRequest, ::Lnrpc::ChannelBalanceResponse
|
45
|
+
# lncli: `listchaintxns`
|
46
|
+
# GetTransactions returns a list describing all the known transactions
|
47
|
+
# relevant to the wallet.
|
48
|
+
rpc :GetTransactions, ::Lnrpc::GetTransactionsRequest, ::Lnrpc::TransactionDetails
|
49
|
+
# lncli: `estimatefee`
|
50
|
+
# EstimateFee asks the chain backend to estimate the fee rate and total fees
|
51
|
+
# for a transaction that pays to multiple specified outputs.
|
52
|
+
#
|
53
|
+
# When using REST, the `AddrToAmount` map type can be set by appending
|
54
|
+
# `&AddrToAmount[<address>]=<amount_to_send>` to the URL. Unfortunately this
|
55
|
+
# map type doesn't appear in the REST API documentation because of a bug in
|
56
|
+
# the grpc-gateway library.
|
57
|
+
rpc :EstimateFee, ::Lnrpc::EstimateFeeRequest, ::Lnrpc::EstimateFeeResponse
|
58
|
+
# lncli: `sendcoins`
|
59
|
+
# SendCoins executes a request to send coins to a particular address. Unlike
|
60
|
+
# SendMany, this RPC call only allows creating a single output at a time. If
|
61
|
+
# neither target_conf, or sat_per_vbyte are set, then the internal wallet will
|
62
|
+
# consult its fee model to determine a fee for the default confirmation
|
63
|
+
# target.
|
64
|
+
rpc :SendCoins, ::Lnrpc::SendCoinsRequest, ::Lnrpc::SendCoinsResponse
|
65
|
+
# lncli: `listunspent`
|
66
|
+
# Deprecated, use walletrpc.ListUnspent instead.
|
67
|
+
#
|
68
|
+
# ListUnspent returns a list of all utxos spendable by the wallet with a
|
69
|
+
# number of confirmations between the specified minimum and maximum.
|
70
|
+
rpc :ListUnspent, ::Lnrpc::ListUnspentRequest, ::Lnrpc::ListUnspentResponse
|
71
|
+
#
|
72
|
+
# SubscribeTransactions creates a uni-directional stream from the server to
|
73
|
+
# the client in which any newly discovered transactions relevant to the
|
74
|
+
# wallet are sent over.
|
75
|
+
rpc :SubscribeTransactions, ::Lnrpc::GetTransactionsRequest, stream(::Lnrpc::Transaction)
|
76
|
+
# lncli: `sendmany`
|
77
|
+
# SendMany handles a request for a transaction that creates multiple specified
|
78
|
+
# outputs in parallel. If neither target_conf, or sat_per_vbyte are set, then
|
79
|
+
# the internal wallet will consult its fee model to determine a fee for the
|
80
|
+
# default confirmation target.
|
81
|
+
rpc :SendMany, ::Lnrpc::SendManyRequest, ::Lnrpc::SendManyResponse
|
82
|
+
# lncli: `newaddress`
|
83
|
+
# NewAddress creates a new address under control of the local wallet.
|
84
|
+
rpc :NewAddress, ::Lnrpc::NewAddressRequest, ::Lnrpc::NewAddressResponse
|
85
|
+
# lncli: `signmessage`
|
86
|
+
# SignMessage signs a message with this node's private key. The returned
|
87
|
+
# signature string is `zbase32` encoded and pubkey recoverable, meaning that
|
88
|
+
# only the message digest and signature are needed for verification.
|
89
|
+
rpc :SignMessage, ::Lnrpc::SignMessageRequest, ::Lnrpc::SignMessageResponse
|
90
|
+
# lncli: `verifymessage`
|
91
|
+
# VerifyMessage verifies a signature over a msg. The signature must be
|
92
|
+
# zbase32 encoded and signed by an active node in the resident node's
|
93
|
+
# channel database. In addition to returning the validity of the signature,
|
94
|
+
# VerifyMessage also returns the recovered pubkey from the signature.
|
95
|
+
rpc :VerifyMessage, ::Lnrpc::VerifyMessageRequest, ::Lnrpc::VerifyMessageResponse
|
96
|
+
# lncli: `connect`
|
97
|
+
# ConnectPeer attempts to establish a connection to a remote peer. This is at
|
98
|
+
# the networking level, and is used for communication between nodes. This is
|
99
|
+
# distinct from establishing a channel with a peer.
|
100
|
+
rpc :ConnectPeer, ::Lnrpc::ConnectPeerRequest, ::Lnrpc::ConnectPeerResponse
|
101
|
+
# lncli: `disconnect`
|
102
|
+
# DisconnectPeer attempts to disconnect one peer from another identified by a
|
103
|
+
# given pubKey. In the case that we currently have a pending or active channel
|
104
|
+
# with the target peer, then this action will be not be allowed.
|
105
|
+
rpc :DisconnectPeer, ::Lnrpc::DisconnectPeerRequest, ::Lnrpc::DisconnectPeerResponse
|
106
|
+
# lncli: `listpeers`
|
107
|
+
# ListPeers returns a verbose listing of all currently active peers.
|
108
|
+
rpc :ListPeers, ::Lnrpc::ListPeersRequest, ::Lnrpc::ListPeersResponse
|
109
|
+
#
|
110
|
+
# SubscribePeerEvents creates a uni-directional stream from the server to
|
111
|
+
# the client in which any events relevant to the state of peers are sent
|
112
|
+
# over. Events include peers going online and offline.
|
113
|
+
rpc :SubscribePeerEvents, ::Lnrpc::PeerEventSubscription, stream(::Lnrpc::PeerEvent)
|
114
|
+
# lncli: `getinfo`
|
115
|
+
# GetInfo returns general information concerning the lightning node including
|
116
|
+
# it's identity pubkey, alias, the chains it is connected to, and information
|
117
|
+
# concerning the number of open+pending channels.
|
118
|
+
rpc :GetInfo, ::Lnrpc::GetInfoRequest, ::Lnrpc::GetInfoResponse
|
119
|
+
# * lncli: `getrecoveryinfo`
|
120
|
+
# GetRecoveryInfo returns information concerning the recovery mode including
|
121
|
+
# whether it's in a recovery mode, whether the recovery is finished, and the
|
122
|
+
# progress made so far.
|
123
|
+
rpc :GetRecoveryInfo, ::Lnrpc::GetRecoveryInfoRequest, ::Lnrpc::GetRecoveryInfoResponse
|
124
|
+
# TODO(roasbeef): merge with below with bool?
|
125
|
+
#
|
126
|
+
# lncli: `pendingchannels`
|
127
|
+
# PendingChannels returns a list of all the channels that are currently
|
128
|
+
# considered "pending". A channel is pending if it has finished the funding
|
129
|
+
# workflow and is waiting for confirmations for the funding txn, or is in the
|
130
|
+
# process of closure, either initiated cooperatively or non-cooperatively.
|
131
|
+
rpc :PendingChannels, ::Lnrpc::PendingChannelsRequest, ::Lnrpc::PendingChannelsResponse
|
132
|
+
# lncli: `listchannels`
|
133
|
+
# ListChannels returns a description of all the open channels that this node
|
134
|
+
# is a participant in.
|
135
|
+
rpc :ListChannels, ::Lnrpc::ListChannelsRequest, ::Lnrpc::ListChannelsResponse
|
136
|
+
#
|
137
|
+
# SubscribeChannelEvents creates a uni-directional stream from the server to
|
138
|
+
# the client in which any updates relevant to the state of the channels are
|
139
|
+
# sent over. Events include new active channels, inactive channels, and closed
|
140
|
+
# channels.
|
141
|
+
rpc :SubscribeChannelEvents, ::Lnrpc::ChannelEventSubscription, stream(::Lnrpc::ChannelEventUpdate)
|
142
|
+
# lncli: `closedchannels`
|
143
|
+
# ClosedChannels returns a description of all the closed channels that
|
144
|
+
# this node was a participant in.
|
145
|
+
rpc :ClosedChannels, ::Lnrpc::ClosedChannelsRequest, ::Lnrpc::ClosedChannelsResponse
|
146
|
+
#
|
147
|
+
# OpenChannelSync is a synchronous version of the OpenChannel RPC call. This
|
148
|
+
# call is meant to be consumed by clients to the REST proxy. As with all
|
149
|
+
# other sync calls, all byte slices are intended to be populated as hex
|
150
|
+
# encoded strings.
|
151
|
+
rpc :OpenChannelSync, ::Lnrpc::OpenChannelRequest, ::Lnrpc::ChannelPoint
|
152
|
+
# lncli: `openchannel`
|
153
|
+
# OpenChannel attempts to open a singly funded channel specified in the
|
154
|
+
# request to a remote peer. Users are able to specify a target number of
|
155
|
+
# blocks that the funding transaction should be confirmed in, or a manual fee
|
156
|
+
# rate to us for the funding transaction. If neither are specified, then a
|
157
|
+
# lax block confirmation target is used. Each OpenStatusUpdate will return
|
158
|
+
# the pending channel ID of the in-progress channel. Depending on the
|
159
|
+
# arguments specified in the OpenChannelRequest, this pending channel ID can
|
160
|
+
# then be used to manually progress the channel funding flow.
|
161
|
+
rpc :OpenChannel, ::Lnrpc::OpenChannelRequest, stream(::Lnrpc::OpenStatusUpdate)
|
162
|
+
# lncli: `batchopenchannel`
|
163
|
+
# BatchOpenChannel attempts to open multiple single-funded channels in a
|
164
|
+
# single transaction in an atomic way. This means either all channel open
|
165
|
+
# requests succeed at once or all attempts are aborted if any of them fail.
|
166
|
+
# This is the safer variant of using PSBTs to manually fund a batch of
|
167
|
+
# channels through the OpenChannel RPC.
|
168
|
+
rpc :BatchOpenChannel, ::Lnrpc::BatchOpenChannelRequest, ::Lnrpc::BatchOpenChannelResponse
|
169
|
+
#
|
170
|
+
# FundingStateStep is an advanced funding related call that allows the caller
|
171
|
+
# to either execute some preparatory steps for a funding workflow, or
|
172
|
+
# manually progress a funding workflow. The primary way a funding flow is
|
173
|
+
# identified is via its pending channel ID. As an example, this method can be
|
174
|
+
# used to specify that we're expecting a funding flow for a particular
|
175
|
+
# pending channel ID, for which we need to use specific parameters.
|
176
|
+
# Alternatively, this can be used to interactively drive PSBT signing for
|
177
|
+
# funding for partially complete funding transactions.
|
178
|
+
rpc :FundingStateStep, ::Lnrpc::FundingTransitionMsg, ::Lnrpc::FundingStateStepResp
|
179
|
+
#
|
180
|
+
# ChannelAcceptor dispatches a bi-directional streaming RPC in which
|
181
|
+
# OpenChannel requests are sent to the client and the client responds with
|
182
|
+
# a boolean that tells LND whether or not to accept the channel. This allows
|
183
|
+
# node operators to specify their own criteria for accepting inbound channels
|
184
|
+
# through a single persistent connection.
|
185
|
+
rpc :ChannelAcceptor, stream(::Lnrpc::ChannelAcceptResponse), stream(::Lnrpc::ChannelAcceptRequest)
|
186
|
+
# lncli: `closechannel`
|
187
|
+
# CloseChannel attempts to close an active channel identified by its channel
|
188
|
+
# outpoint (ChannelPoint). The actions of this method can additionally be
|
189
|
+
# augmented to attempt a force close after a timeout period in the case of an
|
190
|
+
# inactive peer. If a non-force close (cooperative closure) is requested,
|
191
|
+
# then the user can specify either a target number of blocks until the
|
192
|
+
# closure transaction is confirmed, or a manual fee rate. If neither are
|
193
|
+
# specified, then a default lax, block confirmation target is used.
|
194
|
+
rpc :CloseChannel, ::Lnrpc::CloseChannelRequest, stream(::Lnrpc::CloseStatusUpdate)
|
195
|
+
# lncli: `abandonchannel`
|
196
|
+
# AbandonChannel removes all channel state from the database except for a
|
197
|
+
# close summary. This method can be used to get rid of permanently unusable
|
198
|
+
# channels due to bugs fixed in newer versions of lnd. This method can also be
|
199
|
+
# used to remove externally funded channels where the funding transaction was
|
200
|
+
# never broadcast. Only available for non-externally funded channels in dev
|
201
|
+
# build.
|
202
|
+
rpc :AbandonChannel, ::Lnrpc::AbandonChannelRequest, ::Lnrpc::AbandonChannelResponse
|
203
|
+
# lncli: `sendpayment`
|
204
|
+
# Deprecated, use routerrpc.SendPaymentV2. SendPayment dispatches a
|
205
|
+
# bi-directional streaming RPC for sending payments through the Lightning
|
206
|
+
# Network. A single RPC invocation creates a persistent bi-directional
|
207
|
+
# stream allowing clients to rapidly send payments through the Lightning
|
208
|
+
# Network with a single persistent connection.
|
209
|
+
rpc :SendPayment, stream(::Lnrpc::SendRequest), stream(::Lnrpc::SendResponse)
|
210
|
+
#
|
211
|
+
# SendPaymentSync is the synchronous non-streaming version of SendPayment.
|
212
|
+
# This RPC is intended to be consumed by clients of the REST proxy.
|
213
|
+
# Additionally, this RPC expects the destination's public key and the payment
|
214
|
+
# hash (if any) to be encoded as hex strings.
|
215
|
+
rpc :SendPaymentSync, ::Lnrpc::SendRequest, ::Lnrpc::SendResponse
|
216
|
+
# lncli: `sendtoroute`
|
217
|
+
# Deprecated, use routerrpc.SendToRouteV2. SendToRoute is a bi-directional
|
218
|
+
# streaming RPC for sending payment through the Lightning Network. This
|
219
|
+
# method differs from SendPayment in that it allows users to specify a full
|
220
|
+
# route manually. This can be used for things like rebalancing, and atomic
|
221
|
+
# swaps.
|
222
|
+
rpc :SendToRoute, stream(::Lnrpc::SendToRouteRequest), stream(::Lnrpc::SendResponse)
|
223
|
+
#
|
224
|
+
# SendToRouteSync is a synchronous version of SendToRoute. It Will block
|
225
|
+
# until the payment either fails or succeeds.
|
226
|
+
rpc :SendToRouteSync, ::Lnrpc::SendToRouteRequest, ::Lnrpc::SendResponse
|
227
|
+
# lncli: `addinvoice`
|
228
|
+
# AddInvoice attempts to add a new invoice to the invoice database. Any
|
229
|
+
# duplicated invoices are rejected, therefore all invoices *must* have a
|
230
|
+
# unique payment preimage.
|
231
|
+
rpc :AddInvoice, ::Lnrpc::Invoice, ::Lnrpc::AddInvoiceResponse
|
232
|
+
# lncli: `listinvoices`
|
233
|
+
# ListInvoices returns a list of all the invoices currently stored within the
|
234
|
+
# database. Any active debug invoices are ignored. It has full support for
|
235
|
+
# paginated responses, allowing users to query for specific invoices through
|
236
|
+
# their add_index. This can be done by using either the first_index_offset or
|
237
|
+
# last_index_offset fields included in the response as the index_offset of the
|
238
|
+
# next request. By default, the first 100 invoices created will be returned.
|
239
|
+
# Backwards pagination is also supported through the Reversed flag.
|
240
|
+
rpc :ListInvoices, ::Lnrpc::ListInvoiceRequest, ::Lnrpc::ListInvoiceResponse
|
241
|
+
# lncli: `lookupinvoice`
|
242
|
+
# LookupInvoice attempts to look up an invoice according to its payment hash.
|
243
|
+
# The passed payment hash *must* be exactly 32 bytes, if not, an error is
|
244
|
+
# returned.
|
245
|
+
rpc :LookupInvoice, ::Lnrpc::PaymentHash, ::Lnrpc::Invoice
|
246
|
+
#
|
247
|
+
# SubscribeInvoices returns a uni-directional stream (server -> client) for
|
248
|
+
# notifying the client of newly added/settled invoices. The caller can
|
249
|
+
# optionally specify the add_index and/or the settle_index. If the add_index
|
250
|
+
# is specified, then we'll first start by sending add invoice events for all
|
251
|
+
# invoices with an add_index greater than the specified value. If the
|
252
|
+
# settle_index is specified, the next, we'll send out all settle events for
|
253
|
+
# invoices with a settle_index greater than the specified value. One or both
|
254
|
+
# of these fields can be set. If no fields are set, then we'll only send out
|
255
|
+
# the latest add/settle events.
|
256
|
+
rpc :SubscribeInvoices, ::Lnrpc::InvoiceSubscription, stream(::Lnrpc::Invoice)
|
257
|
+
# lncli: `decodepayreq`
|
258
|
+
# DecodePayReq takes an encoded payment request string and attempts to decode
|
259
|
+
# it, returning a full description of the conditions encoded within the
|
260
|
+
# payment request.
|
261
|
+
rpc :DecodePayReq, ::Lnrpc::PayReqString, ::Lnrpc::PayReq
|
262
|
+
# lncli: `listpayments`
|
263
|
+
# ListPayments returns a list of all outgoing payments.
|
264
|
+
rpc :ListPayments, ::Lnrpc::ListPaymentsRequest, ::Lnrpc::ListPaymentsResponse
|
265
|
+
#
|
266
|
+
# DeletePayment deletes an outgoing payment from DB. Note that it will not
|
267
|
+
# attempt to delete an In-Flight payment, since that would be unsafe.
|
268
|
+
rpc :DeletePayment, ::Lnrpc::DeletePaymentRequest, ::Lnrpc::DeletePaymentResponse
|
269
|
+
#
|
270
|
+
# DeleteAllPayments deletes all outgoing payments from DB. Note that it will
|
271
|
+
# not attempt to delete In-Flight payments, since that would be unsafe.
|
272
|
+
rpc :DeleteAllPayments, ::Lnrpc::DeleteAllPaymentsRequest, ::Lnrpc::DeleteAllPaymentsResponse
|
273
|
+
# lncli: `describegraph`
|
274
|
+
# DescribeGraph returns a description of the latest graph state from the
|
275
|
+
# point of view of the node. The graph information is partitioned into two
|
276
|
+
# components: all the nodes/vertexes, and all the edges that connect the
|
277
|
+
# vertexes themselves. As this is a directed graph, the edges also contain
|
278
|
+
# the node directional specific routing policy which includes: the time lock
|
279
|
+
# delta, fee information, etc.
|
280
|
+
rpc :DescribeGraph, ::Lnrpc::ChannelGraphRequest, ::Lnrpc::ChannelGraph
|
281
|
+
# lncli: `getnodemetrics`
|
282
|
+
# GetNodeMetrics returns node metrics calculated from the graph. Currently
|
283
|
+
# the only supported metric is betweenness centrality of individual nodes.
|
284
|
+
rpc :GetNodeMetrics, ::Lnrpc::NodeMetricsRequest, ::Lnrpc::NodeMetricsResponse
|
285
|
+
# lncli: `getchaninfo`
|
286
|
+
# GetChanInfo returns the latest authenticated network announcement for the
|
287
|
+
# given channel identified by its channel ID: an 8-byte integer which
|
288
|
+
# uniquely identifies the location of transaction's funding output within the
|
289
|
+
# blockchain.
|
290
|
+
rpc :GetChanInfo, ::Lnrpc::ChanInfoRequest, ::Lnrpc::ChannelEdge
|
291
|
+
# lncli: `getnodeinfo`
|
292
|
+
# GetNodeInfo returns the latest advertised, aggregated, and authenticated
|
293
|
+
# channel information for the specified node identified by its public key.
|
294
|
+
rpc :GetNodeInfo, ::Lnrpc::NodeInfoRequest, ::Lnrpc::NodeInfo
|
295
|
+
# lncli: `queryroutes`
|
296
|
+
# QueryRoutes attempts to query the daemon's Channel Router for a possible
|
297
|
+
# route to a target destination capable of carrying a specific amount of
|
298
|
+
# satoshis. The returned route contains the full details required to craft and
|
299
|
+
# send an HTLC, also including the necessary information that should be
|
300
|
+
# present within the Sphinx packet encapsulated within the HTLC.
|
301
|
+
#
|
302
|
+
# When using REST, the `dest_custom_records` map type can be set by appending
|
303
|
+
# `&dest_custom_records[<record_number>]=<record_data_base64_url_encoded>`
|
304
|
+
# to the URL. Unfortunately this map type doesn't appear in the REST API
|
305
|
+
# documentation because of a bug in the grpc-gateway library.
|
306
|
+
rpc :QueryRoutes, ::Lnrpc::QueryRoutesRequest, ::Lnrpc::QueryRoutesResponse
|
307
|
+
# lncli: `getnetworkinfo`
|
308
|
+
# GetNetworkInfo returns some basic stats about the known channel graph from
|
309
|
+
# the point of view of the node.
|
310
|
+
rpc :GetNetworkInfo, ::Lnrpc::NetworkInfoRequest, ::Lnrpc::NetworkInfo
|
311
|
+
# lncli: `stop`
|
312
|
+
# StopDaemon will send a shutdown request to the interrupt handler, triggering
|
313
|
+
# a graceful shutdown of the daemon.
|
314
|
+
rpc :StopDaemon, ::Lnrpc::StopRequest, ::Lnrpc::StopResponse
|
315
|
+
#
|
316
|
+
# SubscribeChannelGraph launches a streaming RPC that allows the caller to
|
317
|
+
# receive notifications upon any changes to the channel graph topology from
|
318
|
+
# the point of view of the responding node. Events notified include: new
|
319
|
+
# nodes coming online, nodes updating their authenticated attributes, new
|
320
|
+
# channels being advertised, updates in the routing policy for a directional
|
321
|
+
# channel edge, and when channels are closed on-chain.
|
322
|
+
rpc :SubscribeChannelGraph, ::Lnrpc::GraphTopologySubscription, stream(::Lnrpc::GraphTopologyUpdate)
|
323
|
+
# lncli: `debuglevel`
|
324
|
+
# DebugLevel allows a caller to programmatically set the logging verbosity of
|
325
|
+
# lnd. The logging can be targeted according to a coarse daemon-wide logging
|
326
|
+
# level, or in a granular fashion to specify the logging for a target
|
327
|
+
# sub-system.
|
328
|
+
rpc :DebugLevel, ::Lnrpc::DebugLevelRequest, ::Lnrpc::DebugLevelResponse
|
329
|
+
# lncli: `feereport`
|
330
|
+
# FeeReport allows the caller to obtain a report detailing the current fee
|
331
|
+
# schedule enforced by the node globally for each channel.
|
332
|
+
rpc :FeeReport, ::Lnrpc::FeeReportRequest, ::Lnrpc::FeeReportResponse
|
333
|
+
# lncli: `updatechanpolicy`
|
334
|
+
# UpdateChannelPolicy allows the caller to update the fee schedule and
|
335
|
+
# channel policies for all channels globally, or a particular channel.
|
336
|
+
rpc :UpdateChannelPolicy, ::Lnrpc::PolicyUpdateRequest, ::Lnrpc::PolicyUpdateResponse
|
337
|
+
# lncli: `fwdinghistory`
|
338
|
+
# ForwardingHistory allows the caller to query the htlcswitch for a record of
|
339
|
+
# all HTLCs forwarded within the target time range, and integer offset
|
340
|
+
# within that time range, for a maximum number of events. If no maximum number
|
341
|
+
# of events is specified, up to 100 events will be returned. If no time-range
|
342
|
+
# is specified, then events will be returned in the order that they occured.
|
343
|
+
#
|
344
|
+
# A list of forwarding events are returned. The size of each forwarding event
|
345
|
+
# is 40 bytes, and the max message size able to be returned in gRPC is 4 MiB.
|
346
|
+
# As a result each message can only contain 50k entries. Each response has
|
347
|
+
# the index offset of the last entry. The index offset can be provided to the
|
348
|
+
# request to allow the caller to skip a series of records.
|
349
|
+
rpc :ForwardingHistory, ::Lnrpc::ForwardingHistoryRequest, ::Lnrpc::ForwardingHistoryResponse
|
350
|
+
# lncli: `exportchanbackup`
|
351
|
+
# ExportChannelBackup attempts to return an encrypted static channel backup
|
352
|
+
# for the target channel identified by it channel point. The backup is
|
353
|
+
# encrypted with a key generated from the aezeed seed of the user. The
|
354
|
+
# returned backup can either be restored using the RestoreChannelBackup
|
355
|
+
# method once lnd is running, or via the InitWallet and UnlockWallet methods
|
356
|
+
# from the WalletUnlocker service.
|
357
|
+
rpc :ExportChannelBackup, ::Lnrpc::ExportChannelBackupRequest, ::Lnrpc::ChannelBackup
|
358
|
+
#
|
359
|
+
# ExportAllChannelBackups returns static channel backups for all existing
|
360
|
+
# channels known to lnd. A set of regular singular static channel backups for
|
361
|
+
# each channel are returned. Additionally, a multi-channel backup is returned
|
362
|
+
# as well, which contains a single encrypted blob containing the backups of
|
363
|
+
# each channel.
|
364
|
+
rpc :ExportAllChannelBackups, ::Lnrpc::ChanBackupExportRequest, ::Lnrpc::ChanBackupSnapshot
|
365
|
+
#
|
366
|
+
# VerifyChanBackup allows a caller to verify the integrity of a channel backup
|
367
|
+
# snapshot. This method will accept either a packed Single or a packed Multi.
|
368
|
+
# Specifying both will result in an error.
|
369
|
+
rpc :VerifyChanBackup, ::Lnrpc::ChanBackupSnapshot, ::Lnrpc::VerifyChanBackupResponse
|
370
|
+
# lncli: `restorechanbackup`
|
371
|
+
# RestoreChannelBackups accepts a set of singular channel backups, or a
|
372
|
+
# single encrypted multi-chan backup and attempts to recover any funds
|
373
|
+
# remaining within the channel. If we are able to unpack the backup, then the
|
374
|
+
# new channel will be shown under listchannels, as well as pending channels.
|
375
|
+
rpc :RestoreChannelBackups, ::Lnrpc::RestoreChanBackupRequest, ::Lnrpc::RestoreBackupResponse
|
376
|
+
#
|
377
|
+
# SubscribeChannelBackups allows a client to sub-subscribe to the most up to
|
378
|
+
# date information concerning the state of all channel backups. Each time a
|
379
|
+
# new channel is added, we return the new set of channels, along with a
|
380
|
+
# multi-chan backup containing the backup info for all channels. Each time a
|
381
|
+
# channel is closed, we send a new update, which contains new new chan back
|
382
|
+
# ups, but the updated set of encrypted multi-chan backups with the closed
|
383
|
+
# channel(s) removed.
|
384
|
+
rpc :SubscribeChannelBackups, ::Lnrpc::ChannelBackupSubscription, stream(::Lnrpc::ChanBackupSnapshot)
|
385
|
+
# lncli: `bakemacaroon`
|
386
|
+
# BakeMacaroon allows the creation of a new macaroon with custom read and
|
387
|
+
# write permissions. No first-party caveats are added since this can be done
|
388
|
+
# offline.
|
389
|
+
rpc :BakeMacaroon, ::Lnrpc::BakeMacaroonRequest, ::Lnrpc::BakeMacaroonResponse
|
390
|
+
# lncli: `listmacaroonids`
|
391
|
+
# ListMacaroonIDs returns all root key IDs that are in use.
|
392
|
+
rpc :ListMacaroonIDs, ::Lnrpc::ListMacaroonIDsRequest, ::Lnrpc::ListMacaroonIDsResponse
|
393
|
+
# lncli: `deletemacaroonid`
|
394
|
+
# DeleteMacaroonID deletes the specified macaroon ID and invalidates all
|
395
|
+
# macaroons derived from that ID.
|
396
|
+
rpc :DeleteMacaroonID, ::Lnrpc::DeleteMacaroonIDRequest, ::Lnrpc::DeleteMacaroonIDResponse
|
397
|
+
# lncli: `listpermissions`
|
398
|
+
# ListPermissions lists all RPC method URIs and their required macaroon
|
399
|
+
# permissions to access them.
|
400
|
+
rpc :ListPermissions, ::Lnrpc::ListPermissionsRequest, ::Lnrpc::ListPermissionsResponse
|
401
|
+
#
|
402
|
+
# CheckMacaroonPermissions checks whether a request follows the constraints
|
403
|
+
# imposed on the macaroon and that the macaroon is authorized to follow the
|
404
|
+
# provided permissions.
|
405
|
+
rpc :CheckMacaroonPermissions, ::Lnrpc::CheckMacPermRequest, ::Lnrpc::CheckMacPermResponse
|
406
|
+
#
|
407
|
+
# RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A
|
408
|
+
# gRPC middleware is software component external to lnd that aims to add
|
409
|
+
# additional business logic to lnd by observing/intercepting/validating
|
410
|
+
# incoming gRPC client requests and (if needed) replacing/overwriting outgoing
|
411
|
+
# messages before they're sent to the client. When registering the middleware
|
412
|
+
# must identify itself and indicate what custom macaroon caveats it wants to
|
413
|
+
# be responsible for. Only requests that contain a macaroon with that specific
|
414
|
+
# custom caveat are then sent to the middleware for inspection. The other
|
415
|
+
# option is to register for the read-only mode in which all requests/responses
|
416
|
+
# are forwarded for interception to the middleware but the middleware is not
|
417
|
+
# allowed to modify any responses. As a security measure, _no_ middleware can
|
418
|
+
# modify responses for requests made with _unencumbered_ macaroons!
|
419
|
+
rpc :RegisterRPCMiddleware, stream(::Lnrpc::RPCMiddlewareResponse), stream(::Lnrpc::RPCMiddlewareRequest)
|
420
|
+
# lncli: `sendcustom`
|
421
|
+
# SendCustomMessage sends a custom peer message.
|
422
|
+
rpc :SendCustomMessage, ::Lnrpc::SendCustomMessageRequest, ::Lnrpc::SendCustomMessageResponse
|
423
|
+
# lncli: `subscribecustom`
|
424
|
+
# SubscribeCustomMessages subscribes to a stream of incoming custom peer
|
425
|
+
# messages.
|
426
|
+
#
|
427
|
+
# To include messages with type outside of the custom range (>= 32768) lnd
|
428
|
+
# needs to be compiled with the `dev` build tag, and the message type to
|
429
|
+
# override should be specified in lnd's experimental protocol configuration.
|
430
|
+
rpc :SubscribeCustomMessages, ::Lnrpc::SubscribeCustomMessagesRequest, stream(::Lnrpc::CustomMessage)
|
431
|
+
# lncli: `listaliases`
|
432
|
+
# ListAliases returns the set of all aliases that have ever existed with
|
433
|
+
# their confirmed SCID (if it exists) and/or the base SCID (in the case of
|
434
|
+
# zero conf).
|
435
|
+
rpc :ListAliases, ::Lnrpc::ListAliasesRequest, ::Lnrpc::ListAliasesResponse
|
436
|
+
rpc :LookupHtlc, ::Lnrpc::LookupHtlcRequest, ::Lnrpc::LookupHtlcResponse
|
437
|
+
end
|
438
|
+
|
439
|
+
Stub = Service.rpc_stub_class
|
440
|
+
end
|
441
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# source: lnclipb/lncli.proto
|
3
|
+
|
4
|
+
require 'google/protobuf'
|
5
|
+
|
6
|
+
require_relative 'verrpc/verrpc_pb'
|
7
|
+
|
8
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
9
|
+
add_file("lnclipb/lncli.proto", :syntax => :proto3) do
|
10
|
+
add_message "lnclipb.VersionResponse" do
|
11
|
+
optional :lncli, :message, 1, "verrpc.Version"
|
12
|
+
optional :lnd, :message, 2, "verrpc.Version"
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
module Lnclipb
|
18
|
+
VersionResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("lnclipb.VersionResponse").msgclass
|
19
|
+
end
|
@@ -0,0 +1,106 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# source: neutrinorpc/neutrino.proto
|
3
|
+
|
4
|
+
require 'google/protobuf'
|
5
|
+
|
6
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
7
|
+
add_file("neutrinorpc/neutrino.proto", :syntax => :proto3) do
|
8
|
+
add_message "neutrinorpc.StatusRequest" do
|
9
|
+
end
|
10
|
+
add_message "neutrinorpc.StatusResponse" do
|
11
|
+
optional :active, :bool, 1
|
12
|
+
optional :synced, :bool, 2
|
13
|
+
optional :block_height, :int32, 3
|
14
|
+
optional :block_hash, :string, 4
|
15
|
+
repeated :peers, :string, 5
|
16
|
+
end
|
17
|
+
add_message "neutrinorpc.AddPeerRequest" do
|
18
|
+
optional :peer_addrs, :string, 1
|
19
|
+
end
|
20
|
+
add_message "neutrinorpc.AddPeerResponse" do
|
21
|
+
end
|
22
|
+
add_message "neutrinorpc.DisconnectPeerRequest" do
|
23
|
+
optional :peer_addrs, :string, 1
|
24
|
+
end
|
25
|
+
add_message "neutrinorpc.DisconnectPeerResponse" do
|
26
|
+
end
|
27
|
+
add_message "neutrinorpc.IsBannedRequest" do
|
28
|
+
optional :peer_addrs, :string, 1
|
29
|
+
end
|
30
|
+
add_message "neutrinorpc.IsBannedResponse" do
|
31
|
+
optional :banned, :bool, 1
|
32
|
+
end
|
33
|
+
add_message "neutrinorpc.GetBlockHeaderRequest" do
|
34
|
+
optional :hash, :string, 1
|
35
|
+
end
|
36
|
+
add_message "neutrinorpc.GetBlockHeaderResponse" do
|
37
|
+
optional :hash, :string, 1
|
38
|
+
optional :confirmations, :int64, 2
|
39
|
+
optional :stripped_size, :int64, 3
|
40
|
+
optional :size, :int64, 4
|
41
|
+
optional :weight, :int64, 5
|
42
|
+
optional :height, :int32, 6
|
43
|
+
optional :version, :int32, 7
|
44
|
+
optional :version_hex, :string, 8
|
45
|
+
optional :merkleroot, :string, 9
|
46
|
+
optional :time, :int64, 10
|
47
|
+
optional :nonce, :uint32, 11
|
48
|
+
optional :bits, :string, 12
|
49
|
+
optional :ntx, :int32, 13
|
50
|
+
optional :previous_block_hash, :string, 14
|
51
|
+
optional :raw_hex, :bytes, 15
|
52
|
+
end
|
53
|
+
add_message "neutrinorpc.GetBlockRequest" do
|
54
|
+
optional :hash, :string, 1
|
55
|
+
end
|
56
|
+
add_message "neutrinorpc.GetBlockResponse" do
|
57
|
+
optional :hash, :string, 1
|
58
|
+
optional :confirmations, :int64, 2
|
59
|
+
optional :stripped_size, :int64, 3
|
60
|
+
optional :size, :int64, 4
|
61
|
+
optional :weight, :int64, 5
|
62
|
+
optional :height, :int32, 6
|
63
|
+
optional :version, :int32, 7
|
64
|
+
optional :version_hex, :string, 8
|
65
|
+
optional :merkleroot, :string, 9
|
66
|
+
repeated :tx, :string, 10
|
67
|
+
optional :time, :int64, 11
|
68
|
+
optional :nonce, :uint32, 12
|
69
|
+
optional :bits, :string, 13
|
70
|
+
optional :ntx, :int32, 14
|
71
|
+
optional :previous_block_hash, :string, 15
|
72
|
+
optional :raw_hex, :bytes, 16
|
73
|
+
end
|
74
|
+
add_message "neutrinorpc.GetCFilterRequest" do
|
75
|
+
optional :hash, :string, 1
|
76
|
+
end
|
77
|
+
add_message "neutrinorpc.GetCFilterResponse" do
|
78
|
+
optional :filter, :bytes, 1
|
79
|
+
end
|
80
|
+
add_message "neutrinorpc.GetBlockHashRequest" do
|
81
|
+
optional :height, :int32, 1
|
82
|
+
end
|
83
|
+
add_message "neutrinorpc.GetBlockHashResponse" do
|
84
|
+
optional :hash, :string, 1
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
module Neutrinorpc
|
90
|
+
StatusRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.StatusRequest").msgclass
|
91
|
+
StatusResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.StatusResponse").msgclass
|
92
|
+
AddPeerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.AddPeerRequest").msgclass
|
93
|
+
AddPeerResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.AddPeerResponse").msgclass
|
94
|
+
DisconnectPeerRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.DisconnectPeerRequest").msgclass
|
95
|
+
DisconnectPeerResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.DisconnectPeerResponse").msgclass
|
96
|
+
IsBannedRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.IsBannedRequest").msgclass
|
97
|
+
IsBannedResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.IsBannedResponse").msgclass
|
98
|
+
GetBlockHeaderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.GetBlockHeaderRequest").msgclass
|
99
|
+
GetBlockHeaderResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.GetBlockHeaderResponse").msgclass
|
100
|
+
GetBlockRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.GetBlockRequest").msgclass
|
101
|
+
GetBlockResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.GetBlockResponse").msgclass
|
102
|
+
GetCFilterRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.GetCFilterRequest").msgclass
|
103
|
+
GetCFilterResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.GetCFilterResponse").msgclass
|
104
|
+
GetBlockHashRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.GetBlockHashRequest").msgclass
|
105
|
+
GetBlockHashResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("neutrinorpc.GetBlockHashResponse").msgclass
|
106
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# Source: neutrinorpc/neutrino.proto for package 'neutrinorpc'
|
3
|
+
|
4
|
+
require 'grpc'
|
5
|
+
require_relative 'neutrinorpc/neutrino_pb'
|
6
|
+
|
7
|
+
module Neutrinorpc
|
8
|
+
module NeutrinoKit
|
9
|
+
# NeutrinoKit is a service that can be used to get information about the
|
10
|
+
# current state of the neutrino instance, fetch blocks and add/remove peers.
|
11
|
+
class Service
|
12
|
+
|
13
|
+
include ::GRPC::GenericService
|
14
|
+
|
15
|
+
self.marshal_class_method = :encode
|
16
|
+
self.unmarshal_class_method = :decode
|
17
|
+
self.service_name = 'neutrinorpc.NeutrinoKit'
|
18
|
+
|
19
|
+
#
|
20
|
+
# Status returns the status of the light client neutrino instance,
|
21
|
+
# along with height and hash of the best block, and a list of connected
|
22
|
+
# peers.
|
23
|
+
rpc :Status, ::Neutrinorpc::StatusRequest, ::Neutrinorpc::StatusResponse
|
24
|
+
#
|
25
|
+
# AddPeer adds a new peer that has already been connected to the server.
|
26
|
+
rpc :AddPeer, ::Neutrinorpc::AddPeerRequest, ::Neutrinorpc::AddPeerResponse
|
27
|
+
#
|
28
|
+
# DisconnectPeer disconnects a peer by target address. Both outbound and
|
29
|
+
# inbound nodes will be searched for the target node. An error message will
|
30
|
+
# be returned if the peer was not found.
|
31
|
+
rpc :DisconnectPeer, ::Neutrinorpc::DisconnectPeerRequest, ::Neutrinorpc::DisconnectPeerResponse
|
32
|
+
#
|
33
|
+
# IsBanned returns true if the peer is banned, otherwise false.
|
34
|
+
rpc :IsBanned, ::Neutrinorpc::IsBannedRequest, ::Neutrinorpc::IsBannedResponse
|
35
|
+
#
|
36
|
+
# GetBlockHeader returns a block header with a particular block hash.
|
37
|
+
rpc :GetBlockHeader, ::Neutrinorpc::GetBlockHeaderRequest, ::Neutrinorpc::GetBlockHeaderResponse
|
38
|
+
#
|
39
|
+
# GetBlock returns a block with a particular block hash.
|
40
|
+
rpc :GetBlock, ::Neutrinorpc::GetBlockRequest, ::Neutrinorpc::GetBlockResponse
|
41
|
+
#
|
42
|
+
# GetCFilter returns a compact filter from a block.
|
43
|
+
rpc :GetCFilter, ::Neutrinorpc::GetCFilterRequest, ::Neutrinorpc::GetCFilterResponse
|
44
|
+
#
|
45
|
+
# GetBlockHash returns the header hash of a block at a given height.
|
46
|
+
rpc :GetBlockHash, ::Neutrinorpc::GetBlockHashRequest, ::Neutrinorpc::GetBlockHashResponse
|
47
|
+
end
|
48
|
+
|
49
|
+
Stub = Service.rpc_stub_class
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,48 @@
|
|
1
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
2
|
+
# source: peersrpc/peers.proto
|
3
|
+
|
4
|
+
require 'google/protobuf'
|
5
|
+
|
6
|
+
require_relative 'lightning_pb'
|
7
|
+
|
8
|
+
Google::Protobuf::DescriptorPool.generated_pool.build do
|
9
|
+
add_file("peersrpc/peers.proto", :syntax => :proto3) do
|
10
|
+
add_message "peersrpc.UpdateAddressAction" do
|
11
|
+
optional :action, :enum, 1, "peersrpc.UpdateAction"
|
12
|
+
optional :address, :string, 2
|
13
|
+
end
|
14
|
+
add_message "peersrpc.UpdateFeatureAction" do
|
15
|
+
optional :action, :enum, 1, "peersrpc.UpdateAction"
|
16
|
+
optional :feature_bit, :enum, 2, "lnrpc.FeatureBit"
|
17
|
+
end
|
18
|
+
add_message "peersrpc.NodeAnnouncementUpdateRequest" do
|
19
|
+
repeated :feature_updates, :message, 1, "peersrpc.UpdateFeatureAction"
|
20
|
+
optional :color, :string, 2
|
21
|
+
optional :alias, :string, 3
|
22
|
+
repeated :address_updates, :message, 4, "peersrpc.UpdateAddressAction"
|
23
|
+
end
|
24
|
+
add_message "peersrpc.NodeAnnouncementUpdateResponse" do
|
25
|
+
repeated :ops, :message, 1, "lnrpc.Op"
|
26
|
+
end
|
27
|
+
add_enum "peersrpc.UpdateAction" do
|
28
|
+
value :ADD, 0
|
29
|
+
value :REMOVE, 1
|
30
|
+
end
|
31
|
+
add_enum "peersrpc.FeatureSet" do
|
32
|
+
value :SET_INIT, 0
|
33
|
+
value :SET_LEGACY_GLOBAL, 1
|
34
|
+
value :SET_NODE_ANN, 2
|
35
|
+
value :SET_INVOICE, 3
|
36
|
+
value :SET_INVOICE_AMP, 4
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
module Peersrpc
|
42
|
+
UpdateAddressAction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("peersrpc.UpdateAddressAction").msgclass
|
43
|
+
UpdateFeatureAction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("peersrpc.UpdateFeatureAction").msgclass
|
44
|
+
NodeAnnouncementUpdateRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("peersrpc.NodeAnnouncementUpdateRequest").msgclass
|
45
|
+
NodeAnnouncementUpdateResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("peersrpc.NodeAnnouncementUpdateResponse").msgclass
|
46
|
+
UpdateAction = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("peersrpc.UpdateAction").enummodule
|
47
|
+
FeatureSet = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("peersrpc.FeatureSet").enummodule
|
48
|
+
end
|