#[non_exhaustive]pub enum EslEventType {
Show 94 variants
Custom,
Clone,
ChannelCreate,
ChannelDestroy,
ChannelState,
ChannelCallstate,
ChannelAnswer,
ChannelHangup,
ChannelHangupComplete,
ChannelExecute,
ChannelExecuteComplete,
ChannelHold,
ChannelUnhold,
ChannelBridge,
ChannelUnbridge,
ChannelProgress,
ChannelProgressMedia,
ChannelOutgoing,
ChannelPark,
ChannelUnpark,
ChannelApplication,
ChannelOriginate,
ChannelUuid,
Api,
Log,
InboundChan,
OutboundChan,
Startup,
Shutdown,
Publish,
Unpublish,
Talk,
Notalk,
SessionCrash,
ModuleLoad,
ModuleUnload,
Dtmf,
Message,
PresenceIn,
NotifyIn,
PresenceOut,
PresenceProbe,
MessageWaiting,
MessageQuery,
Roster,
Codec,
BackgroundJob,
DetectedSpeech,
DetectedTone,
PrivateCommand,
Heartbeat,
Trap,
AddSchedule,
DelSchedule,
ExeSchedule,
ReSchedule,
ReloadXml,
Notify,
PhoneFeature,
PhoneFeatureSubscribe,
SendMessage,
RecvMessage,
RequestParams,
ChannelData,
General,
Command,
SessionHeartbeat,
ClientDisconnected,
ServerDisconnected,
SendInfo,
RecvInfo,
RecvRtcpMessage,
SendRtcpMessage,
CallSecure,
Nat,
RecordStart,
RecordStop,
PlaybackStart,
PlaybackStop,
CallUpdate,
Failure,
SocketData,
MediaBugStart,
MediaBugStop,
ConferenceDataQuery,
ConferenceData,
CallSetupReq,
CallSetupResult,
CallDetail,
DeviceState,
Text,
ShutdownRequested,
All,
StartRecording,
}Expand description
FreeSWITCH event types matching the canonical order from esl_event.h
and switch_event.c EVENT_NAMES[].
Variant names are the canonical wire names (e.g. ChannelCreate = CHANNEL_CREATE).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Custom
Clone
ChannelCreate
ChannelDestroy
ChannelState
ChannelCallstate
ChannelAnswer
ChannelHangup
ChannelHangupComplete
ChannelExecute
ChannelExecuteComplete
ChannelHold
ChannelUnhold
ChannelBridge
ChannelUnbridge
ChannelProgress
ChannelProgressMedia
ChannelOutgoing
ChannelPark
ChannelUnpark
ChannelApplication
ChannelOriginate
ChannelUuid
Api
Log
InboundChan
OutboundChan
Startup
Shutdown
Publish
Unpublish
Talk
Notalk
SessionCrash
ModuleLoad
ModuleUnload
Dtmf
Message
PresenceIn
NotifyIn
PresenceOut
PresenceProbe
MessageWaiting
MessageQuery
Roster
Codec
BackgroundJob
DetectedSpeech
DetectedTone
PrivateCommand
Heartbeat
Trap
AddSchedule
DelSchedule
ExeSchedule
ReSchedule
ReloadXml
Notify
PhoneFeature
PhoneFeatureSubscribe
SendMessage
RecvMessage
RequestParams
ChannelData
General
Command
SessionHeartbeat
ClientDisconnected
ServerDisconnected
SendInfo
RecvInfo
RecvRtcpMessage
SendRtcpMessage
CallSecure
Nat
RecordStart
RecordStop
PlaybackStart
PlaybackStop
CallUpdate
Failure
SocketData
MediaBugStart
MediaBugStop
ConferenceDataQuery
ConferenceData
CallSetupReq
CallSetupResult
CallDetail
DeviceState
Text
ShutdownRequested
All
Subscribe to all events
StartRecording
Present in switch_event.c but not in libs/esl/ EVENT_NAMES[].
Implementations§
Source§impl EslEventType
impl EslEventType
Source§impl EslEventType
impl EslEventType
Sourcepub const CHANNEL_EVENTS: &[EslEventType]
pub const CHANNEL_EVENTS: &[EslEventType]
Every CHANNEL_* event type.
Covers the full channel lifecycle: creation, state changes, execution, bridging, hold, park, progress, originate, and destruction.
use freeswitch_types::EslEventType;
assert!(EslEventType::CHANNEL_EVENTS.contains(&EslEventType::ChannelCreate));
assert!(EslEventType::CHANNEL_EVENTS.contains(&EslEventType::ChannelHangupComplete));Sourcepub const IN_CALL_EVENTS: &[EslEventType]
pub const IN_CALL_EVENTS: &[EslEventType]
In-call events: DTMF, VAD speech detection, media security, and call updates.
Events that fire during an established call, tied to RTP/media activity rather than signaling state transitions.
use freeswitch_types::EslEventType;
assert!(EslEventType::IN_CALL_EVENTS.contains(&EslEventType::Dtmf));
assert!(EslEventType::IN_CALL_EVENTS.contains(&EslEventType::Talk));Sourcepub const MEDIA_EVENTS: &[EslEventType]
pub const MEDIA_EVENTS: &[EslEventType]
Media-related events: playback, recording, media bugs, and detection.
Useful for IVR applications that need to track media operations without subscribing to the full channel lifecycle.
use freeswitch_types::EslEventType;
assert!(EslEventType::MEDIA_EVENTS.contains(&EslEventType::PlaybackStart));
assert!(EslEventType::MEDIA_EVENTS.contains(&EslEventType::DetectedSpeech));Sourcepub const PRESENCE_EVENTS: &[EslEventType]
pub const PRESENCE_EVENTS: &[EslEventType]
Presence and messaging events.
For applications that track user presence (BLF, buddy lists) or message-waiting indicators (voicemail MWI).
use freeswitch_types::EslEventType;
assert!(EslEventType::PRESENCE_EVENTS.contains(&EslEventType::PresenceIn));
assert!(EslEventType::PRESENCE_EVENTS.contains(&EslEventType::MessageWaiting));Sourcepub const SYSTEM_EVENTS: &[EslEventType]
pub const SYSTEM_EVENTS: &[EslEventType]
System lifecycle events.
Server startup/shutdown, heartbeats, module loading, and XML reloads. Useful for monitoring dashboards and operational tooling.
use freeswitch_types::EslEventType;
assert!(EslEventType::SYSTEM_EVENTS.contains(&EslEventType::Heartbeat));
assert!(EslEventType::SYSTEM_EVENTS.contains(&EslEventType::Shutdown));Sourcepub const CONFERENCE_EVENTS: &[EslEventType]
pub const CONFERENCE_EVENTS: &[EslEventType]
Conference-related events.
use freeswitch_types::EslEventType;
assert!(EslEventType::CONFERENCE_EVENTS.contains(&EslEventType::ConferenceData));Trait Implementations§
Source§impl Clone for EslEventType
impl Clone for EslEventType
Source§fn clone(&self) -> EslEventType
fn clone(&self) -> EslEventType
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for EslEventType
impl Debug for EslEventType
Source§impl<'de> Deserialize<'de> for EslEventType
impl<'de> Deserialize<'de> for EslEventType
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>,
Source§impl Display for EslEventType
impl Display for EslEventType
Source§impl FromStr for EslEventType
impl FromStr for EslEventType
Source§impl Hash for EslEventType
impl Hash for EslEventType
Source§impl PartialEq for EslEventType
impl PartialEq for EslEventType
Source§impl Serialize for EslEventType
impl Serialize for EslEventType
impl Copy for EslEventType
impl Eq for EslEventType
impl StructuralPartialEq for EslEventType
Auto Trait Implementations§
impl Freeze for EslEventType
impl RefUnwindSafe for EslEventType
impl Send for EslEventType
impl Sync for EslEventType
impl Unpin for EslEventType
impl UnsafeUnpin for EslEventType
impl UnwindSafe for EslEventType
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.