babelforce-manager-sdk 0.42.1

Rust SDK for the babelforce manager APIs — auth, user & agent management, call reporting, metrics, and task automations.
Documentation
/*
 * Manager API
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: 0.0.0-dev
 * Contact: support@babelforce.com
 * Generated by: https://openapi-generator.tech
 */

use crate::gen::manager::models;
use serde::{Deserialize, Serialize};

/// DialStatus : The dial status of an outbound lead or call attempt
/// The dial status of an outbound lead or call attempt
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum DialStatus {
    #[serde(rename = "pending")]
    Pending,
    #[serde(rename = "new")]
    New,
    #[serde(rename = "callback_hold")]
    CallbackHold,
    #[serde(rename = "answering_machine_auto")]
    AnsweringMachineAuto,
    #[serde(rename = "busy_auto")]
    BusyAuto,
    #[serde(rename = "no_answer_auto")]
    NoAnswerAuto,
    #[serde(rename = "disconnected_number_auto")]
    DisconnectedNumberAuto,
    #[serde(rename = "dropped")]
    Dropped,
    #[serde(rename = "in_call")]
    InCall,
    #[serde(rename = "unknown")]
    Unknown,
    #[serde(rename = "picked_up")]
    PickedUp,
    #[serde(rename = "voicemail")]
    Voicemail,
    #[serde(rename = "agent_error")]
    AgentError,
    #[serde(rename = "not_viable")]
    NotViable,
    #[serde(rename = "queued")]
    Queued,
    #[serde(rename = "dispo")]
    Dispo,
    #[serde(rename = "no_answer")]
    NoAnswer,
    #[serde(rename = "disconnected_number")]
    DisconnectedNumber,
    #[serde(rename = "busy")]
    Busy,
    #[serde(rename = "callback")]
    Callback,
    #[serde(rename = "answering_machine")]
    AnsweringMachine,
    #[serde(rename = "not_interested")]
    NotInterested,
    #[serde(rename = "do_not_call")]
    DoNotCall,
    #[serde(rename = "sale")]
    Sale,
}

impl std::fmt::Display for DialStatus {
    fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
        match self {
            Self::Pending => write!(f, "pending"),
            Self::New => write!(f, "new"),
            Self::CallbackHold => write!(f, "callback_hold"),
            Self::AnsweringMachineAuto => write!(f, "answering_machine_auto"),
            Self::BusyAuto => write!(f, "busy_auto"),
            Self::NoAnswerAuto => write!(f, "no_answer_auto"),
            Self::DisconnectedNumberAuto => write!(f, "disconnected_number_auto"),
            Self::Dropped => write!(f, "dropped"),
            Self::InCall => write!(f, "in_call"),
            Self::Unknown => write!(f, "unknown"),
            Self::PickedUp => write!(f, "picked_up"),
            Self::Voicemail => write!(f, "voicemail"),
            Self::AgentError => write!(f, "agent_error"),
            Self::NotViable => write!(f, "not_viable"),
            Self::Queued => write!(f, "queued"),
            Self::Dispo => write!(f, "dispo"),
            Self::NoAnswer => write!(f, "no_answer"),
            Self::DisconnectedNumber => write!(f, "disconnected_number"),
            Self::Busy => write!(f, "busy"),
            Self::Callback => write!(f, "callback"),
            Self::AnsweringMachine => write!(f, "answering_machine"),
            Self::NotInterested => write!(f, "not_interested"),
            Self::DoNotCall => write!(f, "do_not_call"),
            Self::Sale => write!(f, "sale"),
        }
    }
}

impl Default for DialStatus {
    fn default() -> DialStatus {
        Self::Pending
    }
}