pub struct SendDocument {
Show 13 fields pub chat_id: Recipient, pub document: InputFile, pub message_thread_id: Option<i32>, pub thumb: Option<InputFile>, pub caption: Option<String>, pub parse_mode: Option<ParseMode>, pub caption_entities: Option<Vec<MessageEntity, Global>>, pub disable_content_type_detection: Option<bool>, pub disable_notification: Option<bool>, pub protect_content: Option<bool>, pub reply_to_message_id: Option<MessageId>, pub allow_sending_without_reply: Option<bool>, pub reply_markup: Option<ReplyMarkup>,
}
Expand description

Use this method to send general files. On success, the sent Message is returned. Bots can currently send files of any type of up to 50 MB in size, this limit may be changed in the future.

Fields§

§chat_id: Recipient

Unique identifier for the target chat or username of the target channel (in the format @channelusername)

§document: InputFile

File to send. Pass a file_id as String to send a file that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one using multipart/form-data. More info on Sending Files »

§message_thread_id: Option<i32>

Unique identifier for the target message thread (topic) of the forum; for forum supergroups only

§thumb: Option<InputFile>

Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail’s width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can’t be reused and can be only uploaded as a new file, so you can pass “attach://<file_attach_name>” if the thumbnail was uploaded using multipart/form-data under <file_attach_name>. More info on Sending Files »

§caption: Option<String>

Document caption (may also be used when resending documents by file_id), 0-1024 characters after entities parsing

§parse_mode: Option<ParseMode>

Mode for parsing entities in the audio caption. See formatting options for more details.

§caption_entities: Option<Vec<MessageEntity, Global>>

List of special entities that appear in the photo caption, which can be specified instead of parse_mode

§disable_content_type_detection: Option<bool>

Disables automatic server-side content type detection for files uploaded using multipart/form-data.

§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

§reply_to_message_id: Option<MessageId>

If the message is a reply, ID of the original message

§allow_sending_without_reply: Option<bool>

Pass True, if the message should be sent even if the specified replied-to message is not found

§reply_markup: Option<ReplyMarkup>

Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove reply keyboard or to force a reply from the user.

Implementations§

source§

impl SendDocument

source

pub fn new(chat_id: impl Into<Recipient>, document: InputFile) -> SendDocument

Trait Implementations§

source§

impl Clone for SendDocument

source§

fn clone(&self) -> SendDocument

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for SendDocument

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl MultipartPayload for SendDocument

source§

fn copy_files(&self, into: &mut dyn FnMut(InputFile))

source§

fn move_files(&mut self, into: &mut dyn FnMut(InputFile))

source§

impl Payload for SendDocument

§

type Output = Message

The return type of a Telegram method. Read more
source§

const NAME: &'static str = "SendDocument"

Name of a Telegram method. Read more
source§

fn timeout_hint(&self) -> Option<Duration>

If this payload may take long time to execute (e.g. GetUpdates with big timeout), the minimum timeout that should be used.
source§

impl Serialize for SendDocument

source§

fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

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

const: unstable · source§

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

Mutably borrows from an owned value. Read more
§

impl<T> Erasable for T

§

unsafe fn unerase(this: NonNull<Erased>) -> NonNull<T>

Unerase this erased pointer. Read more
§

const ACK_1_1_0: bool = true

Available on non-enforce_1_1_0_semantics only.
Whether this implementor has acknowledged the 1.1.0 update to unerase’s documented implementation requirements. Read more
§

fn erase(this: NonNull<Self>) -> NonNull<Erased>

Turn this erasable pointer into an erased pointer. Read more
source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for Twhere T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
source§

impl<P> HasPayload for Pwhere P: Payload,

§

type Payload = P

The type of the payload contained.
source§

fn payload_mut(&mut self) -> &mut <P as HasPayload>::Payload

Gain mutable access to the underlying payload.
source§

fn payload_ref(&self) -> &<P as HasPayload>::Payload

Gain immutable access to the underlying payload.
source§

fn with_payload_mut<F>(self, f: F) -> Selfwhere Self: Sized, F: FnOnce(&mut Self::Payload),

Update payload with a function
source§

impl<T> Instrument for T

source§

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

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

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 Twhere U: From<T>,

const: unstable · 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<P> SendDocumentSetters for Pwhere P: HasPayload<Payload = SendDocument>,

source§

fn chat_id<T>(self, value: T) -> Selfwhere T: Into<Recipient>,

Setter for chat_id field.
source§

fn document(self, value: InputFile) -> Self

Setter for document field.
source§

fn message_thread_id(self, value: i32) -> Self

Setter for message_thread_id field.
source§

fn thumb(self, value: InputFile) -> Self

Setter for thumb field.
source§

fn caption<T>(self, value: T) -> Selfwhere T: Into<String>,

Setter for caption field.
source§

fn parse_mode(self, value: ParseMode) -> Self

Setter for parse_mode field.
source§

fn caption_entities<T>(self, value: T) -> Selfwhere T: IntoIterator<Item = <Vec<MessageEntity, Global> as IntoIterator>::Item>,

Setter for caption_entities field.
source§

fn disable_content_type_detection(self, value: bool) -> Self

source§

fn disable_notification(self, value: bool) -> Self

Setter for disable_notification field.
source§

fn protect_content(self, value: bool) -> Self

Setter for protect_content field.
source§

fn reply_to_message_id(self, value: MessageId) -> Self

Setter for reply_to_message_id field.
source§

fn allow_sending_without_reply(self, value: bool) -> Self

Setter for allow_sending_without_reply field.
source§

fn reply_markup<T>(self, value: T) -> Selfwhere T: Into<ReplyMarkup>,

Setter for reply_markup field.
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

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

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
source§

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

§

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

The type returned in the event of a conversion error.
const: unstable · source§

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

Performs the conversion.
§

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

§

fn vzip(self) -> V

source§

impl<T> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

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