pub struct CreateFollowup<'a> { /* private fields */ }
Expand description

Create a followup message to an interaction, by its token.

The message must include at least one of attachments, components, content, or embeds.

This endpoint is not bound to the application’s global rate limit.

§Examples

use std::env;
use twilight_http::Client;
use twilight_model::id::Id;

let client = Client::new(env::var("DISCORD_TOKEN")?);
let application_id = Id::new(1);

client
    .interaction(application_id)
    .create_followup("webhook token")
    .content("Pinkie...")
    .await?;

Implementations§

source§

impl<'a> CreateFollowup<'a>

source

pub fn allowed_mentions( self, allowed_mentions: Option<&'a AllowedMentions> ) -> Self

Specify the AllowedMentions for the message.

Unless otherwise called, the request will use the client’s default allowed mentions. Set to None to ignore this default.

source

pub fn attachments(self, attachments: &'a [Attachment]) -> Self

Attach multiple files to the message.

Calling this method will clear any previous calls.

§Errors

Returns an error of type AttachmentDescriptionTooLarge if the attachments’s description is too large.

Returns an error of type AttachmentFilename if any filename is invalid.

source

pub fn components(self, components: &'a [Component]) -> Self

Add multiple Components to a message.

Calling this method multiple times will clear previous calls.

§Errors

Refer to the errors section of twilight_validate::component::component for a list of errors that may be returned as a result of validating each provided component.

source

pub fn content(self, content: &'a str) -> Self

Set the message’s content.

The maximum length is 2000 UTF-16 characters.

§Errors

Returns an error of type ContentInvalid if the content length is too long.

source

pub fn embeds(self, embeds: &'a [Embed]) -> Self

Set the message’s list of embeds.

Calling this method will clear previous calls.

The amount of embeds must not exceed EMBED_COUNT_LIMIT. The total character length of each embed must not exceed EMBED_TOTAL_LENGTH characters. Additionally, the internal fields also have character limits. Refer to Discord Docs/Embed Limits for more information.

§Errors

Returns an error of type TooManyEmbeds if there are too many embeds.

Otherwise, refer to the errors section of twilight_validate::embed::embed for a list of errors that may occur.

source

pub fn flags(self, flags: MessageFlags) -> Self

Set the message’s flags.

The only supported flags are EPHEMERAL and SUPPRESS_EMBEDS.

source

pub fn payload_json(self, payload_json: &'a [u8]) -> Self

JSON encoded body of any additional request fields.

If this method is called, all other fields are ignored, except for attachments. See Discord Docs/Uploading Files.

§Examples

See ExecuteWebhook::payload_json for examples.

source

pub fn tts(self, tts: bool) -> Self

Specify true if the message is TTS.

Trait Implementations§

source§

impl IntoFuture for CreateFollowup<'_>

§

type Output = Result<Response<Message>, Error>

The output that the future will produce on completion.
§

type IntoFuture = ResponseFuture<Message>

Which kind of future are we turning this into?
source§

fn into_future(self) -> Self::IntoFuture

Creates a future from a value. Read more
source§

impl TryIntoRequest for CreateFollowup<'_>

source§

fn try_into_request(self) -> Result<Request, Error>

Try to convert a request builder into a raw Request. Read more

Auto Trait Implementations§

§

impl<'a> Freeze for CreateFollowup<'a>

§

impl<'a> !RefUnwindSafe for CreateFollowup<'a>

§

impl<'a> Send for CreateFollowup<'a>

§

impl<'a> Sync for CreateFollowup<'a>

§

impl<'a> Unpin for CreateFollowup<'a>

§

impl<'a> !UnwindSafe for CreateFollowup<'a>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

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

fn in_current_span(self) -> Instrumented<Self>

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

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

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

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more