pub enum MessageSendEvent {
Show 20 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,
},
SendChannelReady {
node_id: PublicKey,
msg: ChannelReady,
},
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,
},
SendGossipTimestampFilter {
node_id: PublicKey,
msg: GossipTimestampFilter,
},
}
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
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
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
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
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.
SendChannelReady
Fields
msg: ChannelReady
The channel_ready message which should be sent.
Used to indicate that a channel_ready message should be sent to the peer with the given node_id.
SendAnnouncementSignatures
Fields
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
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
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
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
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
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
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
action: ErrorAction
The action which should be taken.
Broadcast an error downstream to be handled
SendChannelRangeQuery
Fields
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
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
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.
SendGossipTimestampFilter
Fields
msg: GossipTimestampFilter
The gossip_timestamp_filter which should be sent.
Sends a timestamp filter for inbound gossip. This should be sent on each new connection to enable receiving gossip messages from the peer.
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 · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more