pub struct ProxyConfig {Show 50 fields
pub modules: Option<Vec<String>>,
pub addr: String,
pub useragent: Option<String>,
pub callid_suffix: Option<String>,
pub t1_timer: Option<u64>,
pub t1x64_timer: Option<u64>,
pub ssl_private_key: Option<String>,
pub ssl_certificate: Option<String>,
pub udp_port: Option<u16>,
pub tcp_port: Option<u16>,
pub tls_port: Option<u16>,
pub ws_port: Option<u16>,
pub acl_rules: Option<Vec<String>>,
pub acl_files: Vec<String>,
pub ua_white_list: Option<Vec<String>>,
pub ua_black_list: Option<Vec<String>>,
pub max_concurrency: Option<usize>,
pub registrar_expires: Option<u32>,
pub ensure_user: Option<bool>,
pub user_backends: Vec<UserBackendConfig>,
pub locator: LocatorConfig,
pub locator_webhook: Option<LocatorWebhookConfig>,
pub media_proxy: MediaProxyMode,
pub codecs: Option<Vec<String>>,
pub frequency_limiter: Option<String>,
pub realms: Option<Vec<String>>,
pub ws_handler: Option<String>,
pub ami_path: Option<String>,
pub ice_servers_path: Option<String>,
pub http_router: Option<HttpRouterConfig>,
pub routes_files: Vec<String>,
pub routes: Option<Vec<RouteRule>>,
pub session_timer: bool,
pub session_timer_always: bool,
pub session_expires: Option<u64>,
pub queues: HashMap<String, RouteQueueConfig>,
pub queues_files: Vec<String>,
pub enable_latching: bool,
pub trunks: HashMap<String, TrunkConfig>,
pub trunks_files: Vec<String>,
pub queue_dir: Option<String>,
pub recording: Option<RecordingPolicy>,
pub generated_dir: String,
pub nat_fix: bool,
pub sip_flow_max_items: Option<usize>,
pub addons: Option<Vec<String>>,
pub passthrough_failure: bool,
pub dialog_auth_cache: Option<AuthCacheConfig>,
pub blind_transfer_use_refer: bool,
pub codec_strategy: CodecSelectionStrategy,
}Fields§
§modules: Option<Vec<String>>§addr: String§useragent: Option<String>§callid_suffix: Option<String>§t1_timer: Option<u64>§t1x64_timer: Option<u64>§ssl_private_key: Option<String>§ssl_certificate: Option<String>§udp_port: Option<u16>§tcp_port: Option<u16>§tls_port: Option<u16>§ws_port: Option<u16>§acl_rules: Option<Vec<String>>§acl_files: Vec<String>§ua_white_list: Option<Vec<String>>§ua_black_list: Option<Vec<String>>§max_concurrency: Option<usize>§registrar_expires: Option<u32>§ensure_user: Option<bool>§user_backends: Vec<UserBackendConfig>§locator: LocatorConfig§locator_webhook: Option<LocatorWebhookConfig>§media_proxy: MediaProxyMode§codecs: Option<Vec<String>>§frequency_limiter: Option<String>§realms: Option<Vec<String>>§ws_handler: Option<String>§ami_path: Option<String>§ice_servers_path: Option<String>§http_router: Option<HttpRouterConfig>§routes_files: Vec<String>§routes: Option<Vec<RouteRule>>§session_timer: bool§session_timer_always: bool§session_expires: Option<u64>§queues: HashMap<String, RouteQueueConfig>§queues_files: Vec<String>§enable_latching: bool§trunks: HashMap<String, TrunkConfig>§trunks_files: Vec<String>§queue_dir: Option<String>§recording: Option<RecordingPolicy>§generated_dir: String§nat_fix: bool§sip_flow_max_items: Option<usize>§addons: Option<Vec<String>>§passthrough_failure: bool§dialog_auth_cache: Option<AuthCacheConfig>§blind_transfer_use_refer: bool§codec_strategy: CodecSelectionStrategyCodec selection strategy for WebRTC endpoints.
performance (default): avoid transcoding, keep caller’s codecs only.
quality: prefer Opus > G729 > G722 > G711 (may require transcoding).
Implementations§
Source§impl ProxyConfig
impl ProxyConfig
pub fn session_timer_mode(&self) -> SessionTimerMode
pub fn normalize_realm(realm: &str) -> &str
pub fn select_realm(&self, request_host: &str) -> String
pub fn generated_root_dir(&self) -> PathBuf
pub fn generated_trunks_dir(&self) -> PathBuf
pub fn generated_routes_dir(&self) -> PathBuf
pub fn generated_queue_dir(&self) -> PathBuf
pub fn generated_acl_dir(&self) -> PathBuf
pub fn ensure_recording_defaults(&mut self) -> bool
Trait Implementations§
Source§impl Clone for ProxyConfig
impl Clone for ProxyConfig
Source§fn clone(&self) -> ProxyConfig
fn clone(&self) -> ProxyConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ProxyConfig
impl Debug for ProxyConfig
Source§impl Default for ProxyConfig
impl Default for ProxyConfig
Source§impl<'de> Deserialize<'de> for ProxyConfig
impl<'de> Deserialize<'de> for ProxyConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for ProxyConfig
impl RefUnwindSafe for ProxyConfig
impl Send for ProxyConfig
impl Sync for ProxyConfig
impl Unpin for ProxyConfig
impl UnsafeUnpin for ProxyConfig
impl UnwindSafe for ProxyConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more