SendVoice

Struct SendVoice 

Source
pub struct SendVoice {
    pub chat_id: ChatId,
    pub voice: InputFileVariant,
    pub duration: Option<u32>,
    pub caption: Option<String>,
    pub parse_mode: Option<ParseMode>,
    pub caption_entities: Option<Vec<MessageEntity>>,
    pub disable_notification: Option<bool>,
    pub reply_to_message_id: Option<i64>,
    pub allow_sending_without_reply: Option<bool>,
    pub reply_markup: Option<ReplyMarkup>,
    pub protect_content: Option<bool>,
}
Expand description

Use this method to send audio files, if you want Telegram clients to display the file as a playable voice message. For this to work, your audio must be in an .OGG file encoded with OPUS (other formats may be sent as Audio or Document). On success, the sent Message is returned. Bots can currently send video files of up to 50 MB in size, this limit may be changed in the future.

Fields§

§chat_id: ChatId

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

§voice: InputFileVariant

Audio 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 video from the Internet, or upload a new video using multipart/form-data. More info on Sending Files »

§duration: Option<u32>

Duration of the voice message in seconds

§caption: Option<String>

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

§parse_mode: Option<ParseMode>

Mode for parsing entities in the message text. See formatting options for more details.

§caption_entities: Option<Vec<MessageEntity>>

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

§disable_notification: Option<bool>

Sends the message silently. Users will receive a notification with no sound.

§reply_to_message_id: Option<i64>

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.

§protect_content: Option<bool>

Protects the contents of the sent message from forwarding and saving

Implementations§

Source§

impl SendVoice

Source

pub fn new( chat_id: impl Into<ChatId>, voice: impl Into<InputFileVariant>, ) -> Self

Create a new sendVoice request

Source

pub fn with_duration(self, duration: u32) -> Self

Set duration

Source

pub fn with_caption(self, caption: impl Into<String>) -> Self

Set caption

Source

pub fn with_parse_mode(self, parse_mode: ParseMode) -> Self

Set parse mode

Source

pub fn with_entities(self, entities: Vec<MessageEntity>) -> Self

Set caption entities

Source

pub fn with_entity(self, entity: MessageEntity) -> Self

Add one entity

Source

pub fn disable_notification(self) -> Self

Disable notification

Source

pub fn reply_to(self, message_id: i64) -> Self

Reply to message

Source

pub fn allow_sending_without_reply(self) -> Self

Allow sending message even if the replying message isn’t present

Source

pub fn with_reply_markup(self, markup: impl Into<ReplyMarkup>) -> Self

Set reply markup

Source

pub fn protect_content(self) -> Self

Protect content

Trait Implementations§

Source§

impl Clone for SendVoice

Source§

fn clone(&self) -> SendVoice

Returns a duplicate 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 FileMethod for SendVoice

Source§

impl Serialize for SendVoice

Source§

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

Serialize this value into the given Serde serializer. Read more
Source§

impl TelegramMethod for SendVoice

Source§

type Response = Message

Source§

fn name() -> &'static str

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for T
where T: Clone,

Source§

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 T
where U: Into<T>,

Source§

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>,

Source§

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.