lightning-openchannel_update -- Command to update a collab channel open
SYNOPSIS
openchannel_update channel_id psbt
DESCRIPTION
openchannel_update
is a low level RPC command which continues an open channel, as specified by channel_id. An updated psbt is passed in; any changes from the PSBT last returned (either from openchannel_init
or a previous call to openchannel_update
) will be communicated to the peer.
Must be called after openchannel_init
and before openchannel_signed
.
Must be called until commitments_secured is returned as true, at which point openchannel_signed
should be called with a signed version of the PSBT returned by the last call to openchannel_update
.
- channel_id (hash): Id of the channel.
- psbt (string): Updated PSBT to be sent to the peer. May be identical to the PSBT last returned by either
openchannel_init
oropenchannel_update
.
RETURN VALUE
On success, an object is returned, containing:
- channel_id (hash): The channel id of the channel.
- channel_type (object): Channel_type as negotiated with peer. (added v24.02):
- bits (array of u32s): Each bit set in this channel_type. (added v24.02):
- (u32, optional): Bit number.
- names (array of strings): Feature name for each bit set in this channel_type. Note that anchors_zero_fee_htlc_tx is a deprecated synonym for anchors. (added v24.02):
- (string, optional) (one of "static_remotekey/even", "anchor_outputs/even", "anchors_zero_fee_htlc_tx/even", "anchors/even", "scid_alias/even", "zeroconf/even"): Name of feature bit.
- bits (array of u32s): Each bit set in this channel_type. (added v24.02):
- psbt (string): The PSBT of the funding transaction.
- commitments_secured (boolean): Whether the psbt is complete (if true, sign psbt and call
openchannel_signed
to complete the channel open). - funding_outnum (u32): The index of the funding output in the psbt.
- close_to (hex, optional): Scriptpubkey which we have to close to if we mutual close.
- requires_confirmed_inputs (boolean, optional): Does peer require confirmed inputs in psbt?
If commitments_secured is true:
- channel_id (hash): The derived channel id.
- funding_outnum (u32): The index of the funding output for this channel in the funding transaction.
- close_to (hex, optional): If a
close_to
address was provided toopenchannel_init
and the peer supportsoption_upfront_shutdownscript
.
ERRORS
On error, the returned object will contain code
and message
properties,
with code
being one of the following:
- -32602: If the given parameters are wrong.
- -1: Catchall nonspecific error.
- 305: Peer is not connected.
- 309: PSBT missing required fields
- 311: Unknown channel id.
- 312: Channel in an invalid state
AUTHOR
Lisa Neigut <[email protected]> is mainly responsible.
SEE ALSO
lightning-openchannel_init(7), lightning-openchannel_signed(7), lightning-openchannel_bump(7), lightning-openchannel_abort(7), lightning-fundchannel_start(7), lightning-fundchannel_complete(7), lightning-fundchannel(7), lightning-fundpsbt(7), lightning-utxopsbt(7), lightning-multifundchannel(7)
RESOURCES
Main web site: https://github.com/ElementsProject/lightning
EXAMPLES
Example 1:
Request:
lightning-cli openchannel_update -k "channel_id"="channelid0111200111200111200111200111200111200111200111200111200" "psbt"="cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000"
{
"id": "example:openchannel_update#1",
"method": "openchannel_update",
"params": {
"channel_id": "channelid0111200111200111200111200111200111200111200111200111200",
"psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000"
}
}
Response:
{
"channel_id": "channelid0111200111200111200111200111200111200111200111200111200",
"psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000",
"channel_type": {
"bits": [
12,
22
],
"names": [
"static_remotekey/even",
"anchors/even"
]
},
"commitments_secured": true,
"funding_outnum": 1,
"close_to": "51202321a432c9022a560c7dae78bdb72c605c373961edd29c42aa98c183782d052a"
}
Example 2:
Request:
lightning-cli openchannel_update "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5" "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000"
{
"id": "example:openchannel_update#2",
"method": "openchannel_update",
"params": [
"b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5",
"cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000"
]
}
Response:
{
"channel_id": "channelid0111200111200111200111200111200111200111200111200111200",
"psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000",
"channel_type": {
"bits": [
12,
22
],
"names": [
"static_remotekey/even",
"anchors/even"
]
},
"commitments_secured": true,
"funding_outnum": 1,
"close_to": "51202321a432c9022a560c7dae78bdb72c605c373961edd29c42aa98c183782d052a"
}