pub struct DeviceStruct {Show 40 fields
pub id: String,
pub device_type: DeviceType,
pub name: String,
pub extension: u16,
pub tags: Vec<DeviceTag>,
pub start_route: Option<InboundFlow>,
pub regex_route: Option<OutboundFlow>,
pub app_route: Option<AppFlow>,
pub number_plan: Option<DigitRouter>,
pub ani_router: Option<ANIRouter>,
pub dnis_router: Option<DNISRouter>,
pub zone_router: Option<ZoneRouter>,
pub tag_router: Option<TagRouter>,
pub time_range_router: Option<TimeRangeRouter>,
pub day_of_week_router: Option<DayOfWeekRouter>,
pub date_range_router: Option<DateRangeRouter>,
pub hunt_group: Option<HuntGroup>,
pub client: Option<Client>,
pub teams: Option<Teams>,
pub sip_extension: Option<SipExtension>,
pub sip_gateway: Option<SipGateway>,
pub remote: Option<Remote>,
pub voice_mail: Option<VoiceMail>,
pub queue: Option<Queue>,
pub plugin: Option<Plugin>,
pub service: Option<Service>,
pub play: Option<Play>,
pub say: Option<Say>,
pub script: Option<Script>,
pub email: Option<Email>,
pub sms: Option<Sms>,
pub tag: Option<Tag>,
pub event: Option<Event>,
pub whats_app_flow: Option<WhatsAppFlow>,
pub message_plugin: Option<MessagePlugin>,
pub message_text: Option<MessageText>,
pub message_buttons: Option<MessageButtons>,
pub message_template: Option<MessageTemplate>,
pub message_ani_router: Option<MessageAniRouter>,
pub message_dnis_router: Option<MessageDnisRouter>,
}
Expand description
Complete device configuration structure
Fields§
§id: String
Unique device identifier
device_type: DeviceType
Type of device
name: String
Display name for the device
extension: u16
Extension number
Tags associated with the device
start_route: Option<InboundFlow>
Inbound flow configuration
regex_route: Option<OutboundFlow>
Outbound flow configuration
app_route: Option<AppFlow>
Application flow configuration
number_plan: Option<DigitRouter>
Digit router configuration
ani_router: Option<ANIRouter>
ANI router configuration
dnis_router: Option<DNISRouter>
DNIS router configuration
zone_router: Option<ZoneRouter>
Zone router configuration
tag_router: Option<TagRouter>
Tag router configuration
time_range_router: Option<TimeRangeRouter>
Time range router configuration
day_of_week_router: Option<DayOfWeekRouter>
Day of week router configuration
date_range_router: Option<DateRangeRouter>
Date range router configuration
hunt_group: Option<HuntGroup>
Hunt group configuration
client: Option<Client>
Client device configuration
teams: Option<Teams>
Teams integration configuration
sip_extension: Option<SipExtension>
SIP extension configuration
sip_gateway: Option<SipGateway>
SIP gateway configuration
remote: Option<Remote>
Remote endpoint configuration
voice_mail: Option<VoiceMail>
Voicemail configuration
queue: Option<Queue>
Queue configuration
plugin: Option<Plugin>
Plugin configuration
service: Option<Service>
Service configuration
play: Option<Play>
Play audio configuration
say: Option<Say>
Text-to-speech configuration
script: Option<Script>
Script configuration
email: Option<Email>
Email configuration
sms: Option<Sms>
SMS configuration
tag: Option<Tag>
Tag configuration
event: Option<Event>
Event configuration
whats_app_flow: Option<WhatsAppFlow>
WhatsApp flow configuration
message_plugin: Option<MessagePlugin>
Message plugin configuration
message_text: Option<MessageText>
Message text configuration
Message buttons configuration
message_template: Option<MessageTemplate>
Message template configuration
message_ani_router: Option<MessageAniRouter>
Message ANI router configuration
message_dnis_router: Option<MessageDnisRouter>
Message DNIS router configuration
Implementations§
Source§impl DeviceStruct
impl DeviceStruct
Sourcepub fn record_options(&self) -> Option<RecordOptions>
pub fn record_options(&self) -> Option<RecordOptions>
Get recording options based on device type
Sourcepub fn transcribe_options(&self) -> Option<TranscribeOptions>
pub fn transcribe_options(&self) -> Option<TranscribeOptions>
Get transcription options based on device type
Sourcepub fn is_device_type(&self, device_type: DeviceType) -> bool
pub fn is_device_type(&self, device_type: DeviceType) -> bool
Check if device is of the given type
Sourcepub fn match_device(&self, str: &str) -> bool
pub fn match_device(&self, str: &str) -> bool
Match device by various identifiers
Sourcepub fn match_outbound_flow(&self) -> bool
pub fn match_outbound_flow(&self) -> bool
Check if this is an outbound flow device
Sourcepub fn is_connector(&self) -> bool
pub fn is_connector(&self) -> bool
Check if device acts as a connector
Sourcepub fn is_call_handler(&self) -> bool
pub fn is_call_handler(&self) -> bool
Check if device handles calls
Trait Implementations§
Source§impl Clone for DeviceStruct
impl Clone for DeviceStruct
Source§fn clone(&self) -> DeviceStruct
fn clone(&self) -> DeviceStruct
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for DeviceStruct
impl Debug for DeviceStruct
Source§impl<'de> Deserialize<'de> for DeviceStruct
impl<'de> Deserialize<'de> for DeviceStruct
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>,
Auto Trait Implementations§
impl Freeze for DeviceStruct
impl RefUnwindSafe for DeviceStruct
impl Send for DeviceStruct
impl Sync for DeviceStruct
impl Unpin for DeviceStruct
impl UnwindSafe for DeviceStruct
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FmtForward for T
impl<T> FmtForward for T
Source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
self
to use its Binary
implementation when Debug
-formatted.Source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
self
to use its Display
implementation when
Debug
-formatted.Source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
self
to use its LowerExp
implementation when
Debug
-formatted.Source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
self
to use its LowerHex
implementation when
Debug
-formatted.Source§fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
fn fmt_octal(self) -> FmtOctal<Self>where
Self: Octal,
self
to use its Octal
implementation when Debug
-formatted.Source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
self
to use its Pointer
implementation when
Debug
-formatted.Source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
self
to use its UpperExp
implementation when
Debug
-formatted.Source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
self
to use its UpperHex
implementation when
Debug
-formatted.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>
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>
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 moreSource§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
Source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
Source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moreSource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> R
Source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R,
) -> R
fn pipe_borrow_mut<'a, B, R>( &'a mut self, func: impl FnOnce(&'a mut B) -> R, ) -> R
Source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> R
self
, then passes self.as_ref()
into the pipe function.Source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> R
self
, then passes self.as_mut()
into the pipe
function.Source§fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
fn pipe_deref<'a, T, R>(&'a self, func: impl FnOnce(&'a T) -> R) -> R
self
, then passes self.deref()
into the pipe function.Source§impl<T> Tap for T
impl<T> Tap for T
Source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Self
Borrow<B>
of a value. Read moreSource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Self
BorrowMut<B>
of a value. Read moreSource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Self
AsRef<R>
view of a value. Read moreSource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Self
AsMut<R>
view of a value. Read moreSource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Self
Deref::Target
of a value. Read moreSource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.Source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Self
.tap_borrow()
only in debug builds, and is erased in release
builds.Source§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Self
.tap_borrow_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Self
.tap_ref()
only in debug builds, and is erased in release
builds.Source§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Self
.tap_ref_mut()
only in debug builds, and is erased in release
builds.Source§fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
fn tap_deref_dbg<T>(self, func: impl FnOnce(&T)) -> Self
.tap_deref()
only in debug builds, and is erased in release
builds.