pub enum MessageSendEvent {
Show 19 variants
SendAcceptChannel {
node_id: PublicKey,
msg: AcceptChannel,
},
SendOpenChannel {
node_id: PublicKey,
msg: OpenChannel,
},
SendFundingCreated {
node_id: PublicKey,
msg: FundingCreated,
},
SendFundingSigned {
node_id: PublicKey,
msg: FundingSigned,
},
SendFundingLocked {
node_id: PublicKey,
msg: FundingLocked,
},
SendAnnouncementSignatures {
node_id: PublicKey,
msg: AnnouncementSignatures,
},
UpdateHTLCs {
node_id: PublicKey,
updates: CommitmentUpdate,
},
SendRevokeAndACK {
node_id: PublicKey,
msg: RevokeAndACK,
},
SendClosingSigned {
node_id: PublicKey,
msg: ClosingSigned,
},
SendShutdown {
node_id: PublicKey,
msg: Shutdown,
},
SendChannelReestablish {
node_id: PublicKey,
msg: ChannelReestablish,
},
BroadcastChannelAnnouncement {
msg: ChannelAnnouncement,
update_msg: ChannelUpdate,
},
BroadcastNodeAnnouncement {
msg: NodeAnnouncement,
},
BroadcastChannelUpdate {
msg: ChannelUpdate,
},
SendChannelUpdate {
node_id: PublicKey,
msg: ChannelUpdate,
},
HandleError {
node_id: PublicKey,
action: ErrorAction,
},
SendChannelRangeQuery {
node_id: PublicKey,
msg: QueryChannelRange,
},
SendShortIdsQuery {
node_id: PublicKey,
msg: QueryShortChannelIds,
},
SendReplyChannelRange {
node_id: PublicKey,
msg: ReplyChannelRange,
},
}
Expand description
An event generated by ChannelManager which indicates a message should be sent to a peer (or broadcast to most peers). These events are handled by PeerManager::process_events if you are using a PeerManager.
Variants
SendAcceptChannel
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: AcceptChannel
The message which should be sent.
Used to indicate that we’ve accepted a channel open and should send the accept_channel message provided to the given peer.
SendOpenChannel
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: OpenChannel
The message which should be sent.
Used to indicate that we’ve initiated a channel open and should send the open_channel message provided to the given peer.
SendFundingCreated
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: FundingCreated
The message which should be sent.
Used to indicate that a funding_created message should be sent to the peer with the given node_id.
SendFundingSigned
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: FundingSigned
The message which should be sent.
Used to indicate that a funding_signed message should be sent to the peer with the given node_id.
SendFundingLocked
Fields
node_id: PublicKey
The node_id of the node which should receive these message(s)
msg: FundingLocked
The funding_locked message which should be sent.
Used to indicate that a funding_locked message should be sent to the peer with the given node_id.
SendAnnouncementSignatures
Fields
node_id: PublicKey
The node_id of the node which should receive these message(s)
msg: AnnouncementSignatures
The announcement_signatures message which should be sent.
Used to indicate that an announcement_signatures message should be sent to the peer with the given node_id.
UpdateHTLCs
Fields
node_id: PublicKey
The node_id of the node which should receive these message(s)
updates: CommitmentUpdate
The update messages which should be sent. ALL messages in the struct should be sent!
Used to indicate that a series of HTLC update messages, as well as a commitment_signed message should be sent to the peer with the given node_id.
SendRevokeAndACK
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: RevokeAndACK
The message which should be sent.
Used to indicate that a revoke_and_ack message should be sent to the peer with the given node_id.
SendClosingSigned
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: ClosingSigned
The message which should be sent.
Used to indicate that a closing_signed message should be sent to the peer with the given node_id.
SendShutdown
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: Shutdown
The message which should be sent.
Used to indicate that a shutdown message should be sent to the peer with the given node_id.
SendChannelReestablish
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: ChannelReestablish
The message which should be sent.
Used to indicate that a channel_reestablish message should be sent to the peer with the given node_id.
BroadcastChannelAnnouncement
Fields
msg: ChannelAnnouncement
The channel_announcement which should be sent.
update_msg: ChannelUpdate
The followup channel_update which should be sent.
Used to indicate that a channel_announcement and channel_update should be broadcast to all peers (except the peer with node_id either msg.contents.node_id_1 or msg.contents.node_id_2).
Note that after doing so, you very likely (unless you did so very recently) want to call ChannelManager::broadcast_node_announcement to trigger a BroadcastNodeAnnouncement event. This ensures that any nodes which see our channel_announcement also have a relevant node_announcement, including relevant feature flags which may be important for routing through or to us.
BroadcastNodeAnnouncement
Fields
msg: NodeAnnouncement
The node_announcement which should be sent.
Used to indicate that a node_announcement should be broadcast to all peers.
BroadcastChannelUpdate
Fields
msg: ChannelUpdate
The channel_update which should be sent.
Used to indicate that a channel_update should be broadcast to all peers.
SendChannelUpdate
Fields
node_id: PublicKey
The node_id of the node which should receive this message
msg: ChannelUpdate
The channel_update which should be sent.
Used to indicate that a channel_update should be sent to a single peer.
In contrast to Self::BroadcastChannelUpdate
, this is used when the channel is a
private channel and we shouldn’t be informing all of our peers of channel parameters.
HandleError
Fields
node_id: PublicKey
The node_id of the node which should receive this message
action: ErrorAction
The action which should be taken.
Broadcast an error downstream to be handled
SendChannelRangeQuery
Fields
node_id: PublicKey
The node_id of this message recipient
msg: QueryChannelRange
The query_channel_range which should be sent.
Query a peer for channels with funding transaction UTXOs in a block range.
SendShortIdsQuery
Fields
node_id: PublicKey
The node_id of this message recipient
msg: QueryShortChannelIds
The query_short_channel_ids which should be sent.
Request routing gossip messages from a peer for a list of channels identified by their short_channel_ids.
SendReplyChannelRange
Fields
node_id: PublicKey
The node_id of this message recipient
msg: ReplyChannelRange
The reply_channel_range which should be sent.
Sends a reply to a channel range query. This may be one of several SendReplyChannelRange events emitted during processing of the query.
Trait Implementations
sourceimpl Clone for MessageSendEvent
impl Clone for MessageSendEvent
sourcefn clone(&self) -> MessageSendEvent
fn clone(&self) -> MessageSendEvent
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl RefUnwindSafe for MessageSendEvent
impl Send for MessageSendEvent
impl Sync for MessageSendEvent
impl Unpin for MessageSendEvent
impl UnwindSafe for MessageSendEvent
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more