babelforce-manager-sdk 0.44.0

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};

/// SettingsAppConversations : The app-scope `conversations` settings.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct SettingsAppConversations {
    /// Which conversations an agent may see — their own, their group's, or all.
    #[serde(rename = "conversationScope")]
    pub conversation_scope: ConversationScope,
    /// Automatically close a conversation when its call ends.
    #[serde(rename = "autoClose")]
    pub auto_close: bool,
}

impl SettingsAppConversations {
    /// The app-scope `conversations` settings.
    pub fn new(
        conversation_scope: ConversationScope,
        auto_close: bool,
    ) -> SettingsAppConversations {
        SettingsAppConversations {
            conversation_scope,
            auto_close,
        }
    }
}
/// Which conversations an agent may see — their own, their group's, or all.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ConversationScope {
    #[serde(rename = "OWN")]
    Own,
    #[serde(rename = "GROUP")]
    Group,
    #[serde(rename = "ALL")]
    All,
}

impl Default for ConversationScope {
    fn default() -> ConversationScope {
        Self::Own
    }
}