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

/// SettingsAppIntegrations : The app-scope `integrations` settings.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct SettingsAppIntegrations {
    /// Integration that backs conversation task creation.
    #[serde(rename = "taskIntegration", deserialize_with = "Option::deserialize")]
    pub task_integration: Option<String>,
    /// Action key used to create a task for a conversation.
    #[serde(
        rename = "conversationTaskKey",
        deserialize_with = "Option::deserialize"
    )]
    pub conversation_task_key: Option<String>,
    /// Integration that backs agent scripting.
    #[serde(
        rename = "scriptingIntegration",
        deserialize_with = "Option::deserialize"
    )]
    pub scripting_integration: Option<String>,
    /// Action key used to fetch a conversation script.
    #[serde(
        rename = "conversationScriptKey",
        deserialize_with = "Option::deserialize"
    )]
    pub conversation_script_key: Option<String>,
    /// Action key used to fetch a campaign script.
    #[serde(
        rename = "conversationScriptCampaignKey",
        deserialize_with = "Option::deserialize"
    )]
    pub conversation_script_campaign_key: Option<String>,
}

impl SettingsAppIntegrations {
    /// The app-scope `integrations` settings.
    pub fn new(
        task_integration: Option<String>,
        conversation_task_key: Option<String>,
        scripting_integration: Option<String>,
        conversation_script_key: Option<String>,
        conversation_script_campaign_key: Option<String>,
    ) -> SettingsAppIntegrations {
        SettingsAppIntegrations {
            task_integration,
            conversation_task_key,
            scripting_integration,
            conversation_script_key,
            conversation_script_campaign_key,
        }
    }
}