[][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 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

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.

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, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = !

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.