pub struct SendMediaGroup {
pub chat_id: Recipient,
pub media: Vec<InputMedia>,
pub business_connection_id: Option<BusinessConnectionId>,
pub message_thread_id: Option<ThreadId>,
pub direct_messages_topic_id: Option<TopicId>,
pub disable_notification: Option<bool>,
pub protect_content: Option<bool>,
pub allow_paid_broadcast: Option<bool>,
pub message_effect_id: Option<EffectId>,
pub reply_parameters: Option<ReplyParameters>,
}Expand description
Use this method to send a group of photos, videos, documents or audios as an album. Documents and audio files can be only grouped in an album with messages of the same type. On success, an array of Messages that were sent is returned.
§Captions
You may want to set a “global” caption which renders in the message, underneath the set of media. However, global captions for a media group are not part of the Telegram API. They result from how the official clients (at least) render a media group where only one InputMedia has a caption set. That captioned InputMedia may be in any position of the group.
In order to set a “global” caption of a media group, set a caption for a single InputMedia in the group with the contents you wish to display underneath all media.
If multiple InputMedia have captions, including identical ones, the official clients will not render a global caption underneath the group. Each individual media will keep its own caption however, which can be shown by the client when viewing the media individually, or by separating the media in its own message (for example by forwarding a single media from the media group).
Fields§
§chat_id: RecipientUnique identifier for the target chat or username of the target channel (in the format @channelusername)
media: Vec<InputMedia>A JSON-serialized array describing messages to be sent, must include 2-10 items
business_connection_id: Option<BusinessConnectionId>Unique identifier of the business connection on behalf of which the message will be sent
message_thread_id: Option<ThreadId>Unique identifier for the target message thread (topic) of the forum; for forum supergroups only
direct_messages_topic_id: Option<TopicId>Identifier of the direct messages topic to which the message will be sent; required if the message is sent to a direct messages chat
disable_notification: Option<bool>Sends the message silently. Users will receive a notification with no sound.
protect_content: Option<bool>Protects the contents of sent messages from forwarding and saving
allow_paid_broadcast: Option<bool>Pass true to allow up to 1000 messages per second, ignoring broadcasting limits for a fee of 0.1 Telegram Stars per message. The relevant Stars will be withdrawn from the bot’s balance
message_effect_id: Option<EffectId>Unique identifier of the message effect to be added to the message; for private chats only
reply_parameters: Option<ReplyParameters>Description of the message to reply to
Implementations§
Source§impl SendMediaGroup
impl SendMediaGroup
pub fn new( chat_id: impl Into<Recipient>, media: impl IntoIterator<Item = InputMedia>, ) -> Self
Trait Implementations§
Source§impl Clone for SendMediaGroup
impl Clone for SendMediaGroup
Source§impl Debug for SendMediaGroup
impl Debug for SendMediaGroup
Source§impl MultipartPayload for SendMediaGroup
impl MultipartPayload for SendMediaGroup
fn copy_files(&self, into: &mut dyn FnMut(InputFile))
fn move_files(&mut self, into: &mut dyn FnMut(InputFile))
Source§impl Payload for SendMediaGroup
impl Payload for SendMediaGroup
Source§fn timeout_hint(&self) -> Option<Duration>
fn timeout_hint(&self) -> Option<Duration>
GetUpdates with
big timeout), the minimum timeout that should be used.Auto Trait Implementations§
impl !RefUnwindSafe for SendMediaGroup
impl !UnwindSafe for SendMediaGroup
impl Forget for SendMediaGroup
impl Freeze for SendMediaGroup
impl Send for SendMediaGroup
impl Sync for SendMediaGroup
impl Unpin for SendMediaGroup
impl UnsafeUnpin for SendMediaGroup
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Erasable for T
impl<T> Erasable for T
Source§impl<P> HasPayload for Pwhere
P: Payload,
impl<P> HasPayload for Pwhere
P: Payload,
Source§fn payload_mut(&mut self) -> &mut <P as HasPayload>::Payload
fn payload_mut(&mut self) -> &mut <P as HasPayload>::Payload
Source§fn payload_ref(&self) -> &<P as HasPayload>::Payload
fn payload_ref(&self) -> &<P as HasPayload>::Payload
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<P> SendMediaGroupSetters for Pwhere
P: HasPayload<Payload = SendMediaGroup>,
impl<P> SendMediaGroupSetters for Pwhere
P: HasPayload<Payload = SendMediaGroup>,
Source§fn media<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = InputMedia>,
fn media<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = InputMedia>,
media field.Source§fn business_connection_id(self, value: BusinessConnectionId) -> Self
fn business_connection_id(self, value: BusinessConnectionId) -> Self
business_connection_id field.Source§fn message_thread_id(self, value: ThreadId) -> Self
fn message_thread_id(self, value: ThreadId) -> Self
message_thread_id field.Source§fn direct_messages_topic_id(self, value: TopicId) -> Self
fn direct_messages_topic_id(self, value: TopicId) -> Self
direct_messages_topic_id field.Source§fn disable_notification(self, value: bool) -> Self
fn disable_notification(self, value: bool) -> Self
disable_notification field.Source§fn protect_content(self, value: bool) -> Self
fn protect_content(self, value: bool) -> Self
protect_content field.Source§fn allow_paid_broadcast(self, value: bool) -> Self
fn allow_paid_broadcast(self, value: bool) -> Self
allow_paid_broadcast field.Source§fn message_effect_id(self, value: EffectId) -> Self
fn message_effect_id(self, value: EffectId) -> Self
message_effect_id field.Source§fn reply_parameters(self, value: ReplyParameters) -> Self
fn reply_parameters(self, value: ReplyParameters) -> Self
reply_parameters field.