cal-jambonz 0.1.72

Jambonz Verbs
Documentation
use serde::{Deserialize, Serialize};
#[derive(Serialize, Deserialize, Clone)]
#[serde(rename_all = "camelCase")]
pub struct BargeIn {
    pub input: Vec<String>,

    #[serde(skip_serializing_if = "Option::is_none")]
    pub enable: Option<bool>,

    #[serde(skip_serializing_if = "Option::is_none")]
    pub sticky: Option<bool>,

    #[serde(skip_serializing_if = "Option::is_none")]
    pub action_hook: Option<String>,

    #[serde(skip_serializing_if = "Option::is_none")]
    pub finish_on_key: Option<String>,

    #[serde(skip_serializing_if = "Option::is_none")]
    pub num_digits: Option<u8>,

    #[serde(skip_serializing_if = "Option::is_none")]
    pub min_digits: Option<u8>,

    #[serde(skip_serializing_if = "Option::is_none")]
    pub max_digits: Option<u8>,

    #[serde(skip_serializing_if = "Option::is_none")]
    pub inter_digit_timeout: Option<u8>,
}

impl BargeIn {
    pub fn new(input: Vec<String>) -> Self {
        BargeIn {
            input,
            enable: None,
            sticky: None,
            action_hook: None,
            finish_on_key: None,
            num_digits: None,
            min_digits: None,
            max_digits: None,
            inter_digit_timeout: None,
        }
    }
    
    pub fn enable(&mut self, enable: Option<bool>) -> &mut BargeIn {
        self.enable = enable;
        self
    }
    
    pub fn sticky(&mut self, sticky: Option<bool>) -> &mut BargeIn {
        self.sticky = sticky;
        self
    }
    
    pub fn action_hook(&mut self, action_hook: Option<String>) -> &mut BargeIn {
        self.action_hook = action_hook;
        self
    }
    
    pub fn finish_on_key(&mut self, finish_on_key: Option<String>) -> &mut BargeIn {
        self.finish_on_key = finish_on_key;
        self
    }
    
    pub fn num_digits(&mut self, num_digits: Option<u8>) -> &mut BargeIn {
        self.num_digits = num_digits;
        self
    }
    
    pub fn min_digits(&mut self, min_digits: Option<u8>) -> &mut BargeIn {
        self.min_digits = min_digits;
        self
    }
    
    pub fn max_digits(&mut self, max_digits: Option<u8>) -> &mut BargeIn {
        self.max_digits = max_digits;
        self
    }
    
    pub fn inter_digit_timeout(&mut self, inter_digit_timeout: Option<u8>) -> &mut BargeIn {
        self.inter_digit_timeout = inter_digit_timeout;
        self
    }
}