line_bot_messaging_api/entity/message/
audio.rs1use crate::message::LineMessageObject;
2use serde_derive::{Deserialize, Serialize};
3use serde_json::{json, Value};
4
5#[derive(Debug, Default, Deserialize, Serialize, Clone)]
6pub struct LineMessageAudio {
7 #[serde(rename = "type")]
8 message_type: String,
9 #[serde(rename = "originalContentUrl")]
10 original_content_url: String,
11 duration: u32,
12}
13
14impl LineMessageAudio {
15 pub fn new(original_content_url: String, duration: u32) -> Self {
16 Self {
17 message_type: "audio".to_string(),
18 original_content_url,
19 duration,
20 }
21 }
22}
23
24impl LineMessageObject for LineMessageAudio {
25 fn build(&self) -> Value {
26 json!(self)
27 }
28}