use crate::gen::manager::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct SpeechToTextApplicationSettings {
#[serde(rename = "flowEndApplication", skip_serializing_if = "Option::is_none")]
pub flow_end_application: Option<Box<models::ResourceReference>>,
#[serde(rename = "prompts", skip_serializing_if = "Option::is_none")]
pub prompts: Option<Vec<models::ApplicationPrompt>>,
#[serde(rename = "model")]
pub model: String,
#[serde(rename = "language")]
pub language: String,
#[serde(rename = "industryNaicsCode", skip_serializing_if = "Option::is_none")]
pub industry_naics_code: Option<String>,
#[serde(rename = "pattern", skip_serializing_if = "Option::is_none")]
pub pattern: Option<String>,
#[serde(rename = "numeric", skip_serializing_if = "Option::is_none")]
pub numeric: Option<bool>,
#[serde(rename = "enableDtmf", skip_serializing_if = "Option::is_none")]
pub enable_dtmf: Option<bool>,
#[serde(rename = "template", skip_serializing_if = "Option::is_none")]
pub template: Option<Template>,
}
impl SpeechToTextApplicationSettings {
pub fn new(model: String, language: String) -> SpeechToTextApplicationSettings {
SpeechToTextApplicationSettings {
flow_end_application: None,
prompts: None,
model,
language,
industry_naics_code: None,
pattern: None,
numeric: None,
enable_dtmf: None,
template: None,
}
}
}
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Template {
#[serde(rename = "confirmation")]
Confirmation,
}
impl Default for Template {
fn default() -> Template {
Self::Confirmation
}
}