pub struct ActionExecution {
    pub guild_id: GuildId,
    pub action: Action,
    pub rule_id: RuleId,
    pub trigger_type: TriggerType,
    pub user_id: UserId,
    pub channel_id: Option<ChannelId>,
    pub message_id: Option<MessageId>,
    pub alert_system_message_id: Option<MessageId>,
    pub content: String,
    pub matched_keyword: Option<String>,
    pub matched_content: Option<String>,
}
Expand description

Gateway event payload sent when a rule is triggered and an action is executed (e.g. message is blocked).

Discord docs

Fields

guild_id: GuildId

ID of the guild in which the action was executed.

action: Action

Action which was executed.

rule_id: RuleId

ID of the rule which action belongs to.

trigger_type: TriggerType

Trigger type of rule which was triggered.

user_id: UserId

ID of the user which generated the content which triggered the rule.

channel_id: Option<ChannelId>

ID of the channel in which user content was posted.

message_id: Option<MessageId>

ID of any user message which content belongs to.

Will be None if message was blocked by automod or content was not part of any message.

alert_system_message_id: Option<MessageId>

ID of any system auto moderation messages posted as a result of this action.

Will be None if this event does not correspond to an action with type Action::Alert.

content: String

User generated text content.

Requires GatewayIntents::MESSAGE_CONTENT to receive non-empty values.

matched_keyword: Option<String>

Word or phrase configured in the rule that triggered the rule.

matched_content: Option<String>

Substring in content that triggered the rule.

Requires GatewayIntents::MESSAGE_CONTENT to receive non-empty values.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Deserialize this value from the given Serde deserializer. Read more

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

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