#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct JourneyNodeStats {
#[serde(rename = "kind", skip_serializing_if = "Option::is_none")]
pub kind: Option<KindType>,
#[serde(rename = "waiting", skip_serializing_if = "Option::is_none")]
pub waiting: Option<i32>,
#[serde(rename = "completed", skip_serializing_if = "Option::is_none")]
pub completed: Option<i32>,
#[serde(rename = "exited_early", skip_serializing_if = "Option::is_none")]
pub exited_early: Option<i32>,
#[serde(rename = "message_stats", skip_serializing_if = "Option::is_none")]
pub message_stats: Option<Box<crate::models::JourneyMessageStats>>,
}
impl JourneyNodeStats {
pub fn new() -> JourneyNodeStats {
JourneyNodeStats {
kind: None,
waiting: None,
completed: None,
exited_early: None,
message_stats: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum KindType {
#[serde(rename = "wait")]
Wait,
#[serde(rename = "time_window")]
TimeWindow,
#[serde(rename = "send_push")]
SendPush,
#[serde(rename = "send_email")]
SendEmail,
#[serde(rename = "send_sms")]
SendSms,
#[serde(rename = "send_iam")]
SendIam,
#[serde(rename = "send_webhook")]
SendWebhook,
#[serde(rename = "tag")]
Tag,
#[serde(rename = "split_range")]
SplitRange,
#[serde(rename = "yes_no")]
YesNo,
#[serde(rename = "wait_until")]
WaitUntil,
}
impl Default for KindType {
fn default() -> KindType {
Self::Wait
}
}