pub struct SendVoice {
pub chat_id: Recipient,
pub voice: InputFile,
pub message_thread_id: Option<i32>,
pub caption: Option<String>,
pub parse_mode: Option<ParseMode>,
pub caption_entities: Option<Vec<MessageEntity, Global>>,
pub duration: Option<u32>,
pub disable_notification: 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 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 voice messages 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
)
voice: InputFile
Audio file to send. Pass a file_id as String to send an audio file that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get an audio 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
caption: Option<String>
Voice message caption, 0-1024 characters after entities parsing
parse_mode: Option<ParseMode>
Mode for parsing entities in the voice message 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
duration: Option<u32>
Duration of the voice message in seconds
disable_notification: Option<bool>
Sends the message silently. Users will receive a notification with no sound.
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§
Trait Implementations§
source§impl MultipartPayload for SendVoice
impl MultipartPayload for SendVoice
fn copy_files(&self, into: &mut dyn FnMut(InputFile))
fn move_files(&mut self, into: &mut dyn FnMut(InputFile))
source§impl Payload for SendVoice
impl Payload for SendVoice
source§fn timeout_hint(&self) -> Option<Duration>
fn timeout_hint(&self) -> Option<Duration>
GetUpdates
with
big timeout
), the minimum timeout that should be used.source§impl Serialize for SendVoice
impl Serialize for SendVoice
source§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl !RefUnwindSafe for SendVoice
impl Send for SendVoice
impl Sync for SendVoice
impl Unpin for SendVoice
impl !UnwindSafe for SendVoice
Blanket Implementations§
§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<P> SendVoiceSetters for Pwhere
P: HasPayload<Payload = SendVoice>,
impl<P> SendVoiceSetters for Pwhere
P: HasPayload<Payload = SendVoice>,
source§fn message_thread_id(self, value: i32) -> Self
fn message_thread_id(self, value: i32) -> Self
message_thread_id
field.source§fn parse_mode(self, value: ParseMode) -> Self
fn parse_mode(self, value: ParseMode) -> Self
parse_mode
field.source§fn caption_entities<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = <Vec<MessageEntity, Global> as IntoIterator>::Item>,
fn caption_entities<T>(self, value: T) -> Selfwhere
T: IntoIterator<Item = <Vec<MessageEntity, Global> as IntoIterator>::Item>,
caption_entities
field.source§fn disable_notification(self, value: bool) -> Self
fn disable_notification(self, value: bool) -> Self
disable_notification
field.source§fn reply_to_message_id(self, value: MessageId) -> Self
fn reply_to_message_id(self, value: MessageId) -> Self
reply_to_message_id
field.source§fn allow_sending_without_reply(self, value: bool) -> Self
fn allow_sending_without_reply(self, value: bool) -> Self
allow_sending_without_reply
field.source§fn reply_markup<T>(self, value: T) -> Selfwhere
T: Into<ReplyMarkup>,
fn reply_markup<T>(self, value: T) -> Selfwhere
T: Into<ReplyMarkup>,
reply_markup
field.