messaging_api_line/models/
flex_message.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct FlexMessage {
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 = "altText")]
24 pub alt_text: String,
25 #[serde(rename = "contents")]
26 pub contents: Box<models::FlexContainer>,
27}
28
29impl FlexMessage {
30 pub fn new(r#type: String, alt_text: String, contents: models::FlexContainer) -> FlexMessage {
31 FlexMessage {
32 r#type: Some(r#type),
33 quick_reply: None,
34 sender: None,
35 alt_text,
36 contents: Box::new(contents),
37 }
38 }
39}