[][src]Struct lightning::ln::channelmanager::ChannelDetails

pub struct ChannelDetails {
    pub channel_id: [u8; 32],
    pub short_channel_id: Option<u64>,
    pub remote_network_id: PublicKey,
    pub counterparty_features: InitFeatures,
    pub channel_value_satoshis: u64,
    pub user_id: u64,
    pub outbound_capacity_msat: u64,
    pub inbound_capacity_msat: u64,
    pub is_live: bool,
}

Details of a channel, as returned by ChannelManager::list_channels and ChannelManager::list_usable_channels

Fields

channel_id: [u8; 32]

The channel's ID (prior to funding transaction generation, this is a random 32 bytes, thereafter this is the txid of the funding transaction xor the funding transaction output). Note that this means this value is not persistent - it can change once during the lifetime of the channel.

short_channel_id: Option<u64>

The position of the funding transaction in the chain. None if the funding transaction has not yet been confirmed and the channel fully opened.

remote_network_id: PublicKey

The node_id of our counterparty

counterparty_features: InitFeatures

The Features the channel counterparty provided upon last connection. Useful for routing as it is the most up-to-date copy of the counterparty's features and many routing-relevant features are present in the init context.

channel_value_satoshis: u64

The value, in satoshis, of this channel as appears in the funding output

user_id: u64

The user_id passed in to create_channel, or 0 if the channel was inbound.

outbound_capacity_msat: u64

The available outbound capacity for sending HTLCs to the remote peer. This does not include any pending HTLCs which are not yet fully resolved (and, thus, who's balance is not available for inclusion in new outbound HTLCs). This further does not include any pending outgoing HTLCs which are awaiting some other resolution to be sent.

inbound_capacity_msat: u64

The available inbound capacity for the remote peer to send HTLCs to us. This does not include any pending HTLCs which are not yet fully resolved (and, thus, who's balance is not available for inclusion in new inbound HTLCs). Note that there are some corner cases not fully handled here, so the actual available inbound capacity may be slightly higher than this.

is_live: bool

True if the channel is (a) confirmed and funding_locked messages have been exchanged, (b) the peer is connected, and (c) no monitor update failure is pending resolution.

Trait Implementations

impl Clone for ChannelDetails[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.