pub enum CommandAction {
Show 55 variants
BeginCall {
line_instance: LineInstance,
call_id: CallId,
codec: Codec,
},
BeginTransfer {
source_call_id: CallId,
consultation_line_instance: LineInstance,
consultation_call_id: CallId,
codec: Codec,
},
SetCallInfo {
call_id: CallId,
info: CallInfo,
},
CommitOutboundCall {
call_id: CallId,
info: CallInfo,
},
PresentOutboundProceeding {
call_id: CallId,
info: CallInfo,
},
PresentOutboundRinging {
call_id: CallId,
info: CallInfo,
},
SetCallState {
call_id: CallId,
state: CallState,
},
SetCallSelected {
call_id: CallId,
selected: bool,
},
DisplayPrompt {
call_id: CallId,
timeout_seconds: u32,
text: String,
},
ClearPrompt {
call_id: CallId,
},
SetStatusMessage {
message: HandsetStatusMessage,
beep: bool,
},
SetMicrophoneMode {
enabled: bool,
},
SetRecordingStatus {
call_id: CallId,
active: bool,
},
ResetDevice {
reset_type: ResetType,
},
SetMwi {
line_instance: LineInstance,
enabled: bool,
},
SetForwardStatus {
line_instance: LineInstance,
forward_all: Option<String>,
forward_busy: Option<String>,
forward_no_answer: Option<String>,
},
SetFeatureStatus {
instance: LineInstance,
enabled: bool,
},
SetDoNotDisturbStatus {
instance: LineInstance,
mode: DoNotDisturbMode,
button_mode: DoNotDisturbButtonMode,
},
SetMobilityAppearance {
mobility_instance: LineInstance,
appearance: Option<LineAppearance>,
},
SetBlfStatus {
instance: LineInstance,
state: BlfState,
caller: Option<BlfCallerInfo>,
},
ShowParkingMenu {
instance: LineInstance,
transaction_id: TransactionId,
lot: String,
calls: Vec<ParkingMenuEntry>,
},
ShowConferenceList {
call_id: CallId,
conference_id: ConferenceId,
participants: Vec<ConferenceListEntry>,
},
ShowConferenceParticipantActions {
call_id: CallId,
conference_id: ConferenceId,
participant: ConferenceListEntry,
removable: bool,
demotable: bool,
},
ShowTextService {
line_instance: LineInstance,
call_reference: CallReference,
transaction_id: TransactionId,
priority: PhoneServicePriority,
document: CiscoIpPhoneText,
},
ShowInputService {
line_instance: LineInstance,
call_reference: CallReference,
application_id: ApplicationId,
transaction_id: TransactionId,
priority: PhoneServicePriority,
document: CiscoIpPhoneInput,
},
ExecutePhoneActions {
line_instance: LineInstance,
call_reference: CallReference,
application_id: ApplicationId,
transaction_id: TransactionId,
priority: PhoneServicePriority,
document: CiscoIpPhoneExecute,
},
ShowImageService {
line_instance: LineInstance,
call_reference: CallReference,
application_id: ApplicationId,
transaction_id: TransactionId,
priority: PhoneServicePriority,
document: PhoneImageDocument,
},
ShowStatusService {
line_instance: LineInstance,
call_reference: CallReference,
application_id: ApplicationId,
transaction_id: TransactionId,
priority: PhoneServicePriority,
document: PhoneStatusDocument,
},
SetBackgroundImage {
transaction_id: TransactionId,
document: CiscoIpPhoneSetBackground,
},
PreviewBackgroundImage {
transaction_id: TransactionId,
document: CiscoIpPhoneSetBackgroundPreview,
},
SetRingtone {
transaction_id: TransactionId,
document: CiscoIpPhoneSetRingTone,
},
StartTone {
call_id: CallId,
tone: Tone,
},
StartAnnouncement {
conference_id: ConferenceId,
announcements: Vec<AnnouncementEntry>,
end_of_ack: bool,
participant_ids: Vec<ParticipantId>,
hearing_participant_mask: u32,
play_mode: u32,
},
StopAnnouncement {
conference_id: ConferenceId,
},
AnnouncementFinish {
conference_id: ConferenceId,
play_status: u32,
},
StartRinging {
call_id: CallId,
},
StopRinging {
call_id: CallId,
},
OpenReceiveChannel {
call_id: CallId,
source: Option<MediaEndpoint>,
codec: Codec,
packet_ms: u32,
max_frames_per_packet: u32,
dtmf_mode: DtmfMode,
audio_processing: AudioProcessingPolicy,
},
OpenMultimediaReceiveChannel {
call_id: CallId,
descriptor: MultimediaReceiveDescriptor,
},
CloseMultimediaReceiveChannel {
call_id: CallId,
},
StartMultimediaTransmission {
call_id: CallId,
descriptor: MultimediaTransmitDescriptor,
},
StopMultimediaTransmission {
call_id: CallId,
},
SetMultimediaTransmitBitRate {
call_id: CallId,
passthrough_party_id: PassthroughPartyId,
maximum_bit_rate: u32,
},
NotifyMultimediaTransmitBitRate {
call_id: CallId,
passthrough_party_id: PassthroughPartyId,
maximum_bit_rate: u32,
},
ControlMultimediaTransmission {
call_id: CallId,
passthrough_party_id: PassthroughPartyId,
control: MultimediaTransmitControl,
},
OpenOutboundMedia {
call_id: CallId,
source: Option<MediaEndpoint>,
endpoint: MediaEndpoint,
codec: Codec,
packet_ms: u32,
max_frames_per_packet: u32,
dtmf_mode: DtmfMode,
audio_processing: AudioProcessingPolicy,
traffic_class: MediaTrafficClass,
},
CloseReceiveChannel {
call_id: CallId,
},
StartMedia {
call_id: CallId,
endpoint: MediaEndpoint,
dtmf_mode: DtmfMode,
audio_processing: AudioProcessingPolicy,
traffic_class: MediaTrafficClass,
},
StartMulticastReception {
conference_id: ConferenceId,
call_id: CallId,
route: MulticastMediaRoute,
echo_cancellation: EchoCancellation,
g723_bitrate: G723BitRate,
},
StopMulticastReception {
conference_id: ConferenceId,
call_id: CallId,
},
StartMulticastTransmission {
conference_id: ConferenceId,
call_id: CallId,
route: MulticastMediaRoute,
precedence: u32,
silence_suppression: SilenceSuppression,
max_frames_per_packet: u32,
g723_bitrate: G723BitRate,
},
StopMulticastTransmission {
conference_id: ConferenceId,
call_id: CallId,
},
StopMedia {
call_id: CallId,
},
CloseCall {
call_id: CallId,
},
DisconnectDevice {},
}Expand description
Operation applied to the target station session in command-queue order.
Call-scoped actions resolve the server-owned CallId to the current wire
reference inside the session. Actions for stale calls are ignored, except
that Self::CloseCall also records an early cancellation so it can retire
an incoming offer that has not reached the session yet.
Outbound presentation normally progresses from Self::BeginCall through
proceeding or ringing to Self::CommitOutboundCall. Media actions allocate
a fresh request identity for each generation; close and stop actions retire
that identity so a late acknowledgement cannot settle replacement media.
Variants§
BeginCall
Creates an outbound call in the station session and makes it active. Presents the line off hook using the supplied codec and call identity.
BeginTransfer
Moves a held call into transfer mode and creates a consultation call. Makes the consultation call active with transfer-specific station UI.
Fields
consultation_line_instance: LineInstanceSetCallInfo
Replaces the calling and called-party information shown for a call. Also updates the directory number used for later media statistics.
CommitOutboundCall
Commits collected outbound digits and advances the call to proceeding. Updates call information, dialed-number history, lamps, and station UI.
PresentOutboundProceeding
Presents an outbound call as accepted and currently proceeding. Stops dial tone and refreshes call information and the station prompt.
PresentOutboundRinging
Presents remote alerting for an outbound call on the station. Updates call information, prompt, soft keys, and local ringback tone.
SetCallState
Changes the protocol-visible state of an existing station call. Reconciles active-call ownership, history, lamps, prompts, and soft keys.
SetCallSelected
Marks or unmarks a call in the station’s selected-call set. Emits the selection status for the call’s current wire reference.
DisplayPrompt
Displays call-scoped prompt text for an optional number of seconds. Resolves the server call identity to the station line and wire call.
ClearPrompt
Clears the prompt currently associated with a station call. Targets the call’s resolved line instance and current wire reference.
SetStatusMessage
Replaces the station’s persistent status notification and beep policy. Selects the appropriate static or dynamic display frames for the phone.
SetMicrophoneMode
Enables or disables the station microphone outside a media renegotiation. Sends the handset microphone-mode command in command-queue order.
SetRecordingStatus
Shows or clears the recording indicator for a particular call. Resolves the call before emitting the station recording-status frame.
ResetDevice
Requests that the station reset using the selected reset behavior. The reset type controls whether the device restarts or resets its state.
SetMwi
Sets the message-waiting state for one configured line appearance. Caches the state and updates the corresponding station lamp immediately.
SetForwardStatus
Replaces all three forwarding destinations retained for one line. A missing destination clears that forwarding kind and its display.
Fields
line_instance: LineInstanceSetFeatureStatus
Sets the enabled state of a configured generic feature button. Caches and emits the station-specific feature projection when present.
SetDoNotDisturbStatus
Updates a configured do-not-disturb button and its current mode. Projects the configured button behavior into the station UI and cache.
SetMobilityAppearance
Installs or removes the temporary line owned by a mobility button. Rebuilds the button template and line status as one validated change.
SetBlfStatus
Updates a configured busy-lamp-field button and optional caller details. Refreshes its cached feature state and any hinted-ringing notification.
ShowParkingMenu
Displays a parking-lot menu containing the supplied parked calls. Records its transaction so a later station selection can be correlated.
ShowConferenceList
Displays the participant list for a conference attached to a call. Selects the phone-compatible menu family and sends its service document.
ShowConferenceParticipantActions
Displays the allowed actions for one conference participant. Builds removal and demotion choices for the target call and phone family.
ShowTextService
Displays a text-service document in the requested application envelope. Segments and encodes it according to the negotiated station protocol.
Fields
line_instance: LineInstancecall_reference: CallReferencetransaction_id: TransactionIdpriority: PhoneServicePrioritydocument: CiscoIpPhoneTextShowInputService
Displays an input form and establishes its response correlation fields. A submitted form returns as a phone-service response device event.
Fields
line_instance: LineInstancecall_reference: CallReferenceapplication_id: ApplicationIdtransaction_id: TransactionIdpriority: PhoneServicePrioritydocument: CiscoIpPhoneInputExecutePhoneActions
Sends a document instructing the station to execute phone actions. Preserves application routing, transaction identity, and display priority.
Fields
line_instance: LineInstancecall_reference: CallReferenceapplication_id: ApplicationIdtransaction_id: TransactionIdpriority: PhoneServicePrioritydocument: CiscoIpPhoneExecuteShowImageService
Displays an image-service document using the target application envelope. Encodes and segments the image for the negotiated station protocol.
Fields
line_instance: LineInstancecall_reference: CallReferenceapplication_id: ApplicationIdtransaction_id: TransactionIdpriority: PhoneServicePrioritydocument: PhoneImageDocumentShowStatusService
Displays a status-service document with its application routing fields. Encodes and segments status content for the negotiated station protocol.
Fields
line_instance: LineInstancecall_reference: CallReferenceapplication_id: ApplicationIdtransaction_id: TransactionIdpriority: PhoneServicePrioritydocument: PhoneStatusDocumentSetBackgroundImage
Applies a background image described by the supplied control document. Sends the request with the provided service transaction identity.
PreviewBackgroundImage
Previews a background image without selecting it as the active image. Sends the preview control document under the supplied transaction.
SetRingtone
Selects the station ringtone described by the supplied control document. Sends the ringtone operation under the provided service transaction.
StartTone
Starts a user-direction tone for a call, or stops tone for Silence.
Resolves the call to its current station line and wire reference.
StartAnnouncement
Carries a service-node request to start conference announcements. Station sessions reject it because announcement routing is not station-local.
Fields
conference_id: ConferenceIdannouncements: Vec<AnnouncementEntry>participant_ids: Vec<ParticipantId>StopAnnouncement
Carries a service-node request to stop conference announcements. Station sessions reject it because announcement routing is not station-local.
Fields
conference_id: ConferenceIdAnnouncementFinish
Carries a conference announcement completion and playback result. Station sessions reject it because completion belongs to the service node.
StartRinging
Starts audible ringing and the associated line indication for a call. Resolves the call to its current station line and wire reference.
StopRinging
Stops audible ringing and clears the associated call indication. Leaves the call itself intact for a following state transition or close.
OpenReceiveChannel
Allocates the station’s audio receive channel for a correlated request. Applies codec, packetization, DTMF, source, and processing constraints.
Fields
source: Option<MediaEndpoint>Optional RTP source restriction. None accepts media from any
source and is encoded as the SCCP wildcard endpoint 0.0.0.0:0.
audio_processing: AudioProcessingPolicyOpenMultimediaReceiveChannel
Opens a video receive channel matching an advertised station capability. Replacing an existing generation closes and retires that generation first.
CloseMultimediaReceiveChannel
Closes the active multimedia receive channel for a call. Retires its request identity so late acknowledgements cannot settle it.
StartMultimediaTransmission
Starts station video transmission using an advertised transmit capability. Replacing an existing generation stops and retires that generation first.
StopMultimediaTransmission
Stops the active multimedia transmission for a call. Retires its request identity so late acknowledgements cannot settle it.
SetMultimediaTransmitBitRate
Sets the maximum bit rate of an exact live station video encoder. Requires the current passthrough token to reject stale stream controls.
NotifyMultimediaTransmitBitRate
Notifies the exact live station video encoder of a bit-rate change. Requires the current passthrough token to reject stale notifications.
ControlMultimediaTransmission
Applies typed flow, picture, or display feedback to a video encoder. Requires the current passthrough token to target the exact live stream.
OpenOutboundMedia
Opens both audio directions for an outbound call in one writer action. Writes receive then transmit setup without an intervening queue boundary.
Fields
source: Option<MediaEndpoint>endpoint: MediaEndpointaudio_processing: AudioProcessingPolicytraffic_class: MediaTrafficClassCloseReceiveChannel
Closes the station’s audio receive leg for a call. Retires its pending request so a late acknowledgement is ignored.
StartMedia
Starts the station’s audio transmit leg toward the supplied endpoint. Applies DTMF, processing, and traffic-class policy to the new generation.
Fields
endpoint: MediaEndpointaudio_processing: AudioProcessingPolicytraffic_class: MediaTrafficClassStartMulticastReception
Starts station reception of an admitted multicast audio route. Correlates the route with the call and requested audio processing policy.
Fields
conference_id: ConferenceIdroute: MulticastMediaRouteecho_cancellation: EchoCancellationg723_bitrate: G723BitRateStopMulticastReception
Stops multicast audio reception for the exact call and conference. Retires the active receive transaction associated with that route.
StartMulticastTransmission
Starts station transmission onto an admitted multicast audio route. Applies precedence, silence, packetization, and G.723 rate parameters.
Fields
conference_id: ConferenceIdroute: MulticastMediaRoutesilence_suppression: SilenceSuppressiong723_bitrate: G723BitRateStopMulticastTransmission
Stops multicast audio transmission for the exact call and conference. Retires the active transmit transaction associated with that route.
StopMedia
Stops the station’s audio transmit leg for a call. Retires its pending request so a late acknowledgement is ignored.
CloseCall
Tears down all station media and presentation for a call. Requests final statistics when applicable and retires the call identity.
DisconnectDevice
Drains all active media and terminates the target station session. Causes the running server to disconnect that device after command handling.
Trait Implementations§
Source§impl Clone for CommandAction
impl Clone for CommandAction
Source§fn clone(&self) -> CommandAction
fn clone(&self) -> CommandAction
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more