messaging_api_line/models/
video_message.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct VideoMessage {
16 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
18 pub r#type: Option<String>,
19 #[serde(rename = "quickReply", skip_serializing_if = "Option::is_none")]
20 pub quick_reply: Option<Box<models::QuickReply>>,
21 #[serde(rename = "sender", skip_serializing_if = "Option::is_none")]
22 pub sender: Option<Box<models::Sender>>,
23 #[serde(rename = "originalContentUrl")]
24 pub original_content_url: String,
25 #[serde(rename = "previewImageUrl")]
26 pub preview_image_url: String,
27 #[serde(rename = "trackingId", skip_serializing_if = "Option::is_none")]
28 pub tracking_id: Option<String>,
29}
30
31impl VideoMessage {
32 pub fn new(
33 r#type: String,
34 original_content_url: String,
35 preview_image_url: String,
36 ) -> VideoMessage {
37 VideoMessage {
38 r#type: Some(r#type),
39 quick_reply: None,
40 sender: None,
41 original_content_url,
42 preview_image_url,
43 tracking_id: None,
44 }
45 }
46}