pub enum DeviceEventKind {
Show 42 variants
Registered(DeviceRegistration),
Disconnected {},
Capabilities {
capabilities: StationMediaCapabilities,
},
OffHook {
call_id: CallId,
line_instance: LineInstance,
},
OnHook {
call_id: CallId,
line_instance: LineInstance,
},
Digit {
call_id: CallId,
digit: Digit,
},
EnblocCall {
call_id: CallId,
line_instance: LineInstance,
number: String,
},
SpeedDial {
call_id: CallId,
line_instance: LineInstance,
number: String,
await_further_digits: bool,
},
SoftKey {
call_id: Option<CallId>,
line_instance: LineInstance,
soft_key: SoftKey,
},
LineButton {
line_instance: LineInstance,
call_id: Option<CallId>,
},
HookFlash {
call_id: Option<CallId>,
line_instance: LineInstance,
},
FeatureButton {
instance: LineInstance,
},
DoNotDisturbButton {
instance: LineInstance,
},
RecordingButton {
instance: LineInstance,
},
MobilityButton {
instance: LineInstance,
},
VoicemailButton {
call_id: CallId,
line_instance: LineInstance,
},
ParkingLotButton {
instance: LineInstance,
call_id: Option<CallId>,
line_instance: LineInstance,
},
ParkingMenuSelection {
lot: String,
slot: u32,
},
PhoneServiceResponse {
response: PhoneServiceEvent,
},
ConferenceListAction {
action: ConferenceListAction,
},
ReceiveChannelOpened {
call_id: CallId,
status: MediaStatus,
endpoint: MediaEndpoint,
},
MultimediaReceiveChannelOpened {
call_id: CallId,
codec: Codec,
endpoint: MediaEndpointAddress,
passthrough_party_id: PassthroughPartyId,
},
MultimediaReceiveChannelFailed {
call_id: CallId,
codec: Codec,
status: MediaStatus,
endpoint: MediaEndpointAddress,
passthrough_party_id: PassthroughPartyId,
},
MultimediaReceiveChannelTimedOut {
call_id: CallId,
codec: Codec,
passthrough_party_id: PassthroughPartyId,
},
MultimediaTransmitStarted {
call_id: CallId,
codec: Codec,
endpoint: MediaEndpointAddress,
passthrough_party_id: PassthroughPartyId,
},
MultimediaTransmitFailed {
call_id: CallId,
codec: Codec,
status: MediaStatus,
endpoint: MediaEndpointAddress,
passthrough_party_id: PassthroughPartyId,
},
MultimediaTransmitTimedOut {
call_id: CallId,
codec: Codec,
passthrough_party_id: PassthroughPartyId,
},
TransmitChannelOpen {
call_id: CallId,
outcome: TransmitOpenOutcome,
endpoint: MediaEndpoint,
},
HandsetAcknowledgementTimedOut {
call_id: CallId,
acknowledgement: HandsetAcknowledgement,
},
MediaTransmissionFailed {
call_id: CallId,
status: MediaStatus,
endpoint: MediaEndpoint,
},
MulticastReceptionStarted {
conference_id: ConferenceId,
call_id: CallId,
route: MulticastMediaRoute,
},
MulticastReceptionFailed {
conference_id: ConferenceId,
call_id: CallId,
status: MediaStatus,
},
MulticastReceptionTimedOut {
conference_id: ConferenceId,
call_id: CallId,
},
MulticastTransmissionStarted {
conference_id: ConferenceId,
call_id: CallId,
route: MulticastMediaRoute,
},
MulticastTransmissionFailed {
conference_id: ConferenceId,
call_id: CallId,
status: MediaStatus,
address: IpAddr,
port: u16,
},
ConnectionStatisticsCollected {
snapshot: MediaStatisticsSnapshot,
},
Alarm {
severity: AlarmSeverity,
text: String,
parameters: Option<[u32; 2]>,
},
XmlAlarm {
telemetry: PhoneAlarmTelemetry,
},
LocationInformation {
telemetry: PhoneLocationTelemetry,
},
HeadsetStatusChanged {
enabled: bool,
},
MediaPathChanged {
path: MediaPathId,
event: MediaPathEvent,
},
UnhandledMessage {
message: ClientMessage,
},
}Expand description
State transitions and handset input produced by one station session.
Call-bearing variants use the server-owned CallId rather than the raw
wire reference. Media success and failure variants are emitted only after
correlation against the current request generation.
Variants§
Registered(DeviceRegistration)
Reports a station that completed registration and session initialization. Carries the accepted device definition, peer details, and negotiated state.
Disconnected
Reports that the station session ended or was replaced by a newer session. Consumers should retire state associated with this event’s generation.
Capabilities
Replaces the station’s advertised audio and multimedia capabilities. The snapshot is scoped to the connection generation that reported it.
Fields
capabilities: StationMediaCapabilitiesOffHook
Reports that the handset went off hook on a resolved line and call. The server has already allocated or selected the addressable call identity.
OnHook
Reports that the handset went on hook for a resolved line and call. Integrations can use it to request hangup or complete hook-driven actions.
Digit
Reports one keypad digit associated with an addressable handset call. The digit is decoded but no dialing or in-call policy is applied here.
EnblocCall
Reports a complete en-bloc number submitted for a newly allocated call. The line and server-owned call identity are resolved before emission.
SpeedDial
Reports activation of a configured speed dial on a resolved call and line. Indicates whether the configuration permits collecting additional digits.
SoftKey
Reports a decoded soft-key press with its resolved station context. Call identity is present only when the selected key is call-scoped.
Fields
line_instance: LineInstanceLineButton
Reports a physical line-button press and any call selected on that line. The line is always resolved even when no addressable call is active.
HookFlash
Reports a handset hook-flash gesture on the resolved line context. Call identity is included when the gesture belongs to an active call.
FeatureButton
Reports activation of a configured generic feature button. The instance identifies the exact feature definition on the station.
Fields
instance: LineInstanceDoNotDisturbButton
Reports activation of a configured do-not-disturb feature button. The instance identifies which station feature definition was pressed.
Fields
instance: LineInstanceRecordingButton
Reports activation of a configured recording feature button. The instance identifies the exact physical button that was pressed.
Fields
instance: LineInstanceMobilityButton
Reports activation of a configured mobility feature button. The instance identifies the owner of any temporary mobility appearance.
Fields
instance: LineInstanceVoicemailButton
Reports a configured voicemail-button press on an exact line and call. The server allocates or resolves the addressable call before emission.
ParkingLotButton
Reports activation of a configured parking-lot feature button. Includes its feature instance, line context, and active call when present.
Fields
instance: LineInstanceFeature-button instance, distinct from the call line instance.
line_instance: LineInstanceParkingMenuSelection
Reports a parking slot selected from the station parking menu. Carries the configured lot identity and numeric slot chosen by the user.
PhoneServiceResponse
Reports a correlated response submitted by a station phone service. The typed response retains application routing and submitted form values.
Fields
response: PhoneServiceEventConferenceListAction
Reports an action selected from a station conference service document. The typed action identifies its conference, participant, and operation.
Fields
action: ConferenceListActionReceiveChannelOpened
Reports that the current audio receive request was acknowledged. Carries the correlated call, media status, and allocated station endpoint.
MultimediaReceiveChannelOpened
Reports that the current multimedia receive channel opened successfully. Carries the correlated call, codec, endpoint, and passthrough identity.
MultimediaReceiveChannelFailed
Reports a negative acknowledgement for the current multimedia receive request. Carries the failed endpoint, codec, status, and correlated passthrough identity.
MultimediaReceiveChannelTimedOut
Reports expiry of the current multimedia receive acknowledgement deadline. Carries the call, codec, and passthrough identity of the retired request.
MultimediaTransmitStarted
Reports that the current multimedia transmit request started successfully. Carries the correlated call, codec, endpoint, and passthrough identity.
MultimediaTransmitFailed
Reports a negative acknowledgement for the current multimedia transmit request. Carries the failed endpoint, codec, status, and correlated passthrough identity.
MultimediaTransmitTimedOut
Reports expiry of the current multimedia transmit acknowledgement deadline. Carries the call, codec, and passthrough identity of the retired request.
TransmitChannelOpen
HandsetAcknowledgementTimedOut
Reports expiry of an audio receive or transmit acknowledgement deadline. Identifies the correlated call and the acknowledgement type that expired.
MediaTransmissionFailed
Reports a station-declared failure of an active audio transmission. Carries the correlated call, media status, and failed remote endpoint.
MulticastReceptionStarted
Reports that the current multicast receive request started successfully. Carries the exact conference, call, and admitted multicast route.
MulticastReceptionFailed
Reports a negative acknowledgement for the current multicast receive request. Carries the exact conference, call, and station-reported failure status.
MulticastReceptionTimedOut
Reports expiry of the current multicast receive acknowledgement deadline. Identifies the exact conference and call whose request was retired.
MulticastTransmissionStarted
Reports that multicast transmission began for the requested route. Carries the exact conference, call, and admitted multicast destination.
MulticastTransmissionFailed
Reports a station-declared failure of multicast audio transmission. Carries the conference, call, status, and failed multicast endpoint.
ConnectionStatisticsCollected
Reports a correlated media-statistics response retained by the server. Carries the complete snapshot for the exact call and media generation.
Fields
snapshot: MediaStatisticsSnapshotAlarm
Reports a decoded fixed-layout station alarm and optional parameters. Carries the station-provided severity and bounded human-readable text.
XmlAlarm
Reports a typed alarm decoded from a station XML telemetry document. The parsed telemetry exposes only the validated alarm schema and values.
Fields
telemetry: PhoneAlarmTelemetryLocationInformation
Reports typed station location data decoded from an XML document. The telemetry retains validated address and location fields in wire order.
Fields
telemetry: PhoneLocationTelemetryHeadsetStatusChanged
Reports that the station headset-enabled state changed. Carries the newly reported boolean state for integration-side handling.
MediaPathChanged
Reports a state transition on a station media path or accessory. Carries the typed path identity and the event reported for that path.
UnhandledMessage
Reports a valid client message with no implemented server-side behavior. Preserves the decoded message so integrations can observe or log it.
Fields
message: ClientMessageTrait Implementations§
Source§impl Clone for DeviceEventKind
impl Clone for DeviceEventKind
Source§fn clone(&self) -> DeviceEventKind
fn clone(&self) -> DeviceEventKind
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more