pipedrive_rs/models/
add_call_log_request.rs1#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
15pub struct AddCallLogRequest {
16 #[serde(rename = "user_id", skip_serializing_if = "Option::is_none")]
18 pub user_id: Option<i32>,
19 #[serde(rename = "activity_id", skip_serializing_if = "Option::is_none")]
21 pub activity_id: Option<i32>,
22 #[serde(rename = "subject", skip_serializing_if = "Option::is_none")]
24 pub subject: Option<String>,
25 #[serde(rename = "duration", skip_serializing_if = "Option::is_none")]
27 pub duration: Option<String>,
28 #[serde(rename = "outcome")]
30 pub outcome: Outcome,
31 #[serde(rename = "from_phone_number", skip_serializing_if = "Option::is_none")]
33 pub from_phone_number: Option<String>,
34 #[serde(rename = "to_phone_number")]
36 pub to_phone_number: String,
37 #[serde(rename = "start_time")]
39 pub start_time: String,
40 #[serde(rename = "end_time")]
42 pub end_time: String,
43 #[serde(rename = "person_id", skip_serializing_if = "Option::is_none")]
45 pub person_id: Option<i32>,
46 #[serde(rename = "org_id", skip_serializing_if = "Option::is_none")]
48 pub org_id: Option<i32>,
49 #[serde(rename = "deal_id", skip_serializing_if = "Option::is_none")]
51 pub deal_id: Option<i32>,
52 #[serde(rename = "note", skip_serializing_if = "Option::is_none")]
54 pub note: Option<String>,
55}
56
57impl AddCallLogRequest {
58 pub fn new(outcome: Outcome, to_phone_number: String, start_time: String, end_time: String) -> AddCallLogRequest {
59 AddCallLogRequest {
60 user_id: None,
61 activity_id: None,
62 subject: None,
63 duration: None,
64 outcome,
65 from_phone_number: None,
66 to_phone_number,
67 start_time,
68 end_time,
69 person_id: None,
70 org_id: None,
71 deal_id: None,
72 note: None,
73 }
74 }
75}
76
77#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
79pub enum Outcome {
80 #[serde(rename = "connected")]
81 Connected,
82 #[serde(rename = "no_answer")]
83 NoAnswer,
84 #[serde(rename = "left_message")]
85 LeftMessage,
86 #[serde(rename = "left_voicemail")]
87 LeftVoicemail,
88 #[serde(rename = "wrong_number")]
89 WrongNumber,
90 #[serde(rename = "busy")]
91 Busy,
92}
93
94impl Default for Outcome {
95 fn default() -> Outcome {
96 Self::Connected
97 }
98}
99