Struct serenity::model::interactions::message_component::MessageComponentInteraction [−][src]
#[non_exhaustive]pub struct MessageComponentInteraction {Show 13 fields
pub id: InteractionId,
pub application_id: ApplicationId,
pub kind: InteractionType,
pub data: MessageComponentInteractionData,
pub message: Message,
pub guild_id: Option<GuildId>,
pub channel_id: ChannelId,
pub member: Option<Member>,
pub user: User,
pub token: String,
pub version: u8,
pub guild_locale: Option<String>,
pub locale: String,
}
Expand description
An interaction triggered by a message component.
Fields (Non-exhaustive)
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.id: InteractionId
Id of the interaction.
application_id: ApplicationId
Id of the application this interaction is for.
kind: InteractionType
The type of interaction.
data: MessageComponentInteractionData
The data of the interaction which was triggered.
message: Message
The message this interaction was triggered by, if it is a component.
guild_id: Option<GuildId>
The guild Id this interaction was sent from, if there is one.
channel_id: ChannelId
The channel Id this interaction was sent from.
member: Option<Member>
The member
data for the invoking user.
Note: It is only present if the interaction is triggered in a guild.
user: User
The user
object for the invoking user.
token: String
A continuation token for responding to the interaction.
version: u8
Always 1
.
guild_locale: Option<String>
The guild’s preferred locale.
locale: String
The selected language of the invoking user.
Implementations
pub async fn create_interaction_response<F>(
&self,
http: impl AsRef<Http>,
f: F
) -> Result<()> where
F: FnOnce(&mut CreateInteractionResponse) -> &mut CreateInteractionResponse,
pub async fn create_interaction_response<F>(
&self,
http: impl AsRef<Http>,
f: F
) -> Result<()> where
F: FnOnce(&mut CreateInteractionResponse) -> &mut CreateInteractionResponse,
Creates a response to the interaction received.
Note: Message contents must be under 2000 unicode code points.
Errors
Returns an Error::Model
if the message content is too long.
May also return an Error::Http
if the API returns an error,
or an Error::Json
if there is an error in deserializing the
API response.
Errors
pub async fn edit_original_interaction_response<F>(
&self,
http: impl AsRef<Http>,
f: F
) -> Result<Message> where
F: FnOnce(&mut EditInteractionResponse) -> &mut EditInteractionResponse,
pub async fn edit_original_interaction_response<F>(
&self,
http: impl AsRef<Http>,
f: F
) -> Result<Message> where
F: FnOnce(&mut EditInteractionResponse) -> &mut EditInteractionResponse,
Edits the initial interaction response.
application_id
will usually be the bot’s UserId
, except in cases of bots being very old.
Refer to Discord’s docs for Edit Webhook Message for field information.
Note: Message contents must be under 2000 unicode code points, does not work on ephemeral messages.
Errors
Returns Error::Model
if the edited content is too long.
May also return Error::Http
if the API returns an error,
or an Error::Json
if there is an error deserializing the response.
Deletes the initial interaction response.
Errors
May return Error::Http
if the API returns an error.
Such as if the response was already deleted.
pub async fn create_followup_message<'a, F>(
&self,
http: impl AsRef<Http>,
f: F
) -> Result<Message> where
for<'b> F: FnOnce(&'b mut CreateInteractionResponseFollowup<'a>) -> &'b mut CreateInteractionResponseFollowup<'a>,
pub async fn create_followup_message<'a, F>(
&self,
http: impl AsRef<Http>,
f: F
) -> Result<Message> where
for<'b> F: FnOnce(&'b mut CreateInteractionResponseFollowup<'a>) -> &'b mut CreateInteractionResponseFollowup<'a>,
Creates a followup response to the response sent.
Note: Message contents must be under 2000 unicode code points.
Errors
Will return Error::Model
if the content is too long.
May also return Error::Http
if the API returns an error,
or a Error::Json
if there is an error in deserializing the response.
pub async fn edit_followup_message<'a, F, M: Into<MessageId>>(
&self,
http: impl AsRef<Http>,
message_id: M,
f: F
) -> Result<Message> where
for<'b> F: FnOnce(&'b mut CreateInteractionResponseFollowup<'a>) -> &'b mut CreateInteractionResponseFollowup<'a>,
pub async fn edit_followup_message<'a, F, M: Into<MessageId>>(
&self,
http: impl AsRef<Http>,
message_id: M,
f: F
) -> Result<Message> where
for<'b> F: FnOnce(&'b mut CreateInteractionResponseFollowup<'a>) -> &'b mut CreateInteractionResponseFollowup<'a>,
Edits a followup response to the response sent.
Note: Message contents must be under 2000 unicode code points.
Errors
Will return Error::Model
if the content is too long.
May also return Error::Http
if the API returns an error,
or a Error::Json
if there is an error in deserializing the response.
Deletes a followup message.
Errors
May return Error::Http
if the API returns an error.
Such as if the response was already deleted.
Gets a followup message.
Errors
May return Error::Http
if the API returns an error.
Such as if the response was deleted.
Helper function to defer an interaction
Errors
May also return an Error::Http
if the API returns an error,
or an Error::Json
if there is an error in deserializing the
API response.
Errors
Trait Implementations
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations
impl RefUnwindSafe for MessageComponentInteraction
impl Send for MessageComponentInteraction
impl Sync for MessageComponentInteraction
impl Unpin for MessageComponentInteraction
impl UnwindSafe for MessageComponentInteraction
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more