telegram_bots_api/api/structs/
inline_query_result_video.rs

1use crate::api::enums::input_message_content::InputMessageContent;
2use crate::api::structs::inline_keyboard_markup::InlineKeyboardMarkup;
3use crate::api::structs::message_entity::MessageEntity;
4use serde::{Deserialize, Serialize};
5
6/// <https://core.telegram.org/bots/api#inlinequeryresultvideo>
7/// Represents a link to a page containing an embedded video player or a video file. By default, this video file will be sent by the user with an optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the video.
8/// If an InlineQueryResultVideo message contains an embedded video (e.g., YouTube), you must replace its content using input_message_content.
9#[derive(Debug, Clone, Serialize, Deserialize, Default, PartialEq)]
10pub struct InlineQueryResultVideo {
11    #[serde(rename(serialize = "type", deserialize = "type"))]
12    pub kind: String,
13    pub id: String,
14    pub video_url: String,
15    pub mime_type: String,
16    pub thumbnail_url: String,
17    pub title: String,
18    #[serde(skip_serializing_if = "Option::is_none")]
19    pub caption: Option<String>,
20    #[serde(skip_serializing_if = "Option::is_none")]
21    pub parse_mode: Option<String>,
22    #[serde(skip_serializing_if = "Option::is_none")]
23    pub caption_entities: Option<Vec<MessageEntity>>,
24    #[serde(skip_serializing_if = "Option::is_none")]
25    pub video_width: Option<i64>,
26    #[serde(skip_serializing_if = "Option::is_none")]
27    pub video_height: Option<i64>,
28    #[serde(skip_serializing_if = "Option::is_none")]
29    pub video_duration: Option<i64>,
30    #[serde(skip_serializing_if = "Option::is_none")]
31    pub description: Option<String>,
32    #[serde(skip_serializing_if = "Option::is_none")]
33    pub reply_markup: Option<InlineKeyboardMarkup>,
34    #[serde(skip_serializing_if = "Option::is_none")]
35    pub input_message_content: Option<InputMessageContent>,
36    #[serde(skip_serializing_if = "Option::is_none")]
37    pub show_caption_above_media: Option<bool>,
38}