Skip to main content

CommandAction

Enum CommandAction 

Source
pub enum CommandAction {
Show 56 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, }, SetRecordingButtonStatus { state: RecordingButtonState, }, 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, purpose: ReceiveChannelPurpose, 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.

Fields

§line_instance: LineInstance
§call_id: CallId
§codec: Codec
§

BeginTransfer

Moves a held call into transfer mode and creates a consultation call. Makes the consultation call active with transfer-specific station UI.

Fields

§source_call_id: CallId
§consultation_line_instance: LineInstance
§consultation_call_id: CallId
§codec: Codec
§

SetCallInfo

Replaces the calling and called-party information shown for a call. Also updates the directory number used for later media statistics.

Fields

§call_id: CallId
§

CommitOutboundCall

Commits collected outbound digits and advances the call to proceeding. Updates call information, dialed-number history, lamps, and station UI.

Fields

§call_id: CallId
§

PresentOutboundProceeding

Presents an outbound call as accepted and currently proceeding. Stops dial tone and refreshes call information and the station prompt.

Fields

§call_id: CallId
§

PresentOutboundRinging

Presents remote alerting for an outbound call on the station. Updates call information, prompt, soft keys, and local ringback tone.

Fields

§call_id: CallId
§

SetCallState

Changes the protocol-visible state of an existing station call. Reconciles active-call ownership, history, lamps, prompts, and soft keys.

Fields

§call_id: CallId
§

SetCallSelected

Marks or unmarks a call in the station’s selected-call set. Emits the selection status for the call’s current wire reference.

Fields

§call_id: CallId
§selected: bool
§

DisplayPrompt

Displays call-scoped prompt text for an optional number of seconds. Resolves the server call identity to the station line and wire call.

Fields

§call_id: CallId
§timeout_seconds: u32
§text: String
§

ClearPrompt

Clears the prompt currently associated with a station call. Targets the call’s resolved line instance and current wire reference.

Fields

§call_id: CallId
§

SetStatusMessage

Replaces the station’s persistent status notification and beep policy. Selects the appropriate static or dynamic display frames for the phone.

Fields

§beep: bool
§

SetMicrophoneMode

Enables or disables the station microphone outside a media renegotiation. Sends the handset microphone-mode command in command-queue order.

Fields

§enabled: bool
§

SetRecordingStatus

Shows or clears the recording indicator for a particular call. Resolves the call before emitting the station recording-status frame.

Fields

§call_id: CallId
§active: bool
§

ResetDevice

Requests that the station reset using the selected reset behavior. The reset type controls whether the device restarts or resets its state.

Fields

§reset_type: ResetType
§

SetMwi

Sets the message-waiting state for one configured line appearance. Caches the state and updates the corresponding station lamp immediately.

Fields

§line_instance: LineInstance
§enabled: bool
§

SetForwardStatus

Replaces all three forwarding destinations retained for one line. A missing destination clears that forwarding kind and its display.

Fields

§line_instance: LineInstance
§forward_all: Option<String>
§forward_busy: Option<String>
§forward_no_answer: Option<String>
§

SetFeatureStatus

Sets the enabled state of a configured generic feature button. Caches and emits the station-specific feature projection when present.

Fields

§instance: LineInstance
§enabled: bool
§

SetDoNotDisturbStatus

Updates a configured do-not-disturb button and its current mode. Projects the configured button behavior into the station UI and cache.

§

SetRecordingButtonStatus

Mirrors one semantic recording state to every recording button.

§

SetMobilityAppearance

Installs or removes the temporary line owned by a mobility button. Rebuilds the button template and line status as one validated change.

Fields

§mobility_instance: LineInstance
§

SetBlfStatus

Updates a configured busy-lamp-field button and optional caller details. Refreshes its cached feature state and any hinted-ringing notification.

Fields

§instance: LineInstance
§state: BlfState
§

ShowParkingMenu

Displays a parking-lot menu containing the supplied parked calls. Records its transaction so a later station selection can be correlated.

Fields

§instance: LineInstance
§transaction_id: TransactionId
§

ShowConferenceList

Displays the participant list for a conference attached to a call. Selects the phone-compatible menu family and sends its service document.

Fields

§call_id: CallId
§conference_id: ConferenceId
§participants: Vec<ConferenceListEntry>
§

ShowConferenceParticipantActions

Displays the allowed actions for one conference participant. Builds removal and demotion choices for the target call and phone family.

Fields

§call_id: CallId
§conference_id: ConferenceId
§removable: bool
§demotable: bool
§

ShowTextService

Displays a text-service document in the requested application envelope. Segments and encodes it according to the negotiated station protocol.

Fields

§line_instance: LineInstance
§call_reference: CallReference
§transaction_id: TransactionId
§

ShowInputService

Displays an input form and establishes its response correlation fields. A submitted form returns as a phone-service response device event.

Fields

§line_instance: LineInstance
§call_reference: CallReference
§application_id: ApplicationId
§transaction_id: TransactionId
§

ExecutePhoneActions

Sends a document instructing the station to execute phone actions. Preserves application routing, transaction identity, and display priority.

Fields

§line_instance: LineInstance
§call_reference: CallReference
§application_id: ApplicationId
§transaction_id: TransactionId
§

ShowImageService

Displays an image-service document using the target application envelope. Encodes and segments the image for the negotiated station protocol.

Fields

§line_instance: LineInstance
§call_reference: CallReference
§application_id: ApplicationId
§transaction_id: TransactionId
§

ShowStatusService

Displays a status-service document with its application routing fields. Encodes and segments status content for the negotiated station protocol.

Fields

§line_instance: LineInstance
§call_reference: CallReference
§application_id: ApplicationId
§transaction_id: TransactionId
§

SetBackgroundImage

Applies a background image described by the supplied control document. Sends the request with the provided service transaction identity.

Fields

§transaction_id: TransactionId
§

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.

Fields

§transaction_id: TransactionId
§

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.

Fields

§call_id: CallId
§tone: Tone
§

StartAnnouncement

Carries a service-node request to start conference announcements. Station sessions reject it because announcement routing is not station-local.

Fields

§conference_id: ConferenceId
§announcements: Vec<AnnouncementEntry>
§end_of_ack: bool

Marks the final request in an acknowledgement-delimited sequence.

§participant_ids: Vec<ParticipantId>
§hearing_participant_mask: u32

Bit mask selecting which listed participants hear the announcement.

§play_mode: u32

Protocol playback-mode value retained for station interpretation.

§

StopAnnouncement

Carries a service-node request to stop conference announcements. Station sessions reject it because announcement routing is not station-local.

Fields

§conference_id: ConferenceId
§

AnnouncementFinish

Carries a conference announcement completion and playback result. Station sessions reject it because completion belongs to the service node.

Fields

§conference_id: ConferenceId
§play_status: u32
§

StartRinging

Starts audible ringing and the associated line indication for a call. Resolves the call to its current station line and wire reference.

Fields

§call_id: CallId
§

StopRinging

Stops audible ringing and clears the associated call indication. Leaves the call itself intact for a following state transition or close.

Fields

§call_id: CallId
§

OpenReceiveChannel

Allocates the station’s audio receive channel for a correlated request. Applies codec, packetization, DTMF, source, and processing constraints.

Fields

§call_id: CallId
§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.

§codec: Codec
§packet_ms: u32
§max_frames_per_packet: u32
§dtmf_mode: DtmfMode
§audio_processing: AudioProcessingPolicy
§

OpenMultimediaReceiveChannel

Opens a video receive channel matching an advertised station capability. Replacing an existing generation closes and retires that generation first.

Fields

§call_id: CallId
§

CloseMultimediaReceiveChannel

Closes the active multimedia receive channel for a call. Retires its request identity so late acknowledgements cannot settle it.

Fields

§call_id: CallId
§

StartMultimediaTransmission

Starts station video transmission using an advertised transmit capability. Replacing an existing generation stops and retires that generation first.

Fields

§call_id: CallId
§

StopMultimediaTransmission

Stops the active multimedia transmission for a call. Retires its request identity so late acknowledgements cannot settle it.

Fields

§call_id: CallId
§

SetMultimediaTransmitBitRate

Sets the maximum bit rate of an exact live station video encoder. Requires the current passthrough token to reject stale stream controls.

Fields

§call_id: CallId
§passthrough_party_id: PassthroughPartyId
§maximum_bit_rate: u32
§

NotifyMultimediaTransmitBitRate

Notifies the exact live station video encoder of a bit-rate change. Requires the current passthrough token to reject stale notifications.

Fields

§call_id: CallId
§passthrough_party_id: PassthroughPartyId
§maximum_bit_rate: u32
§

ControlMultimediaTransmission

Applies typed flow, picture, or display feedback to a video encoder. Requires the current passthrough token to target the exact live stream.

Fields

§call_id: CallId
§passthrough_party_id: PassthroughPartyId
§

OpenOutboundMedia

Opens both audio directions for an outbound call in one writer action. Writes receive then transmit setup without an intervening queue boundary.

Fields

§call_id: CallId
§endpoint: MediaEndpoint
§codec: Codec
§packet_ms: u32
§max_frames_per_packet: u32
§dtmf_mode: DtmfMode
§audio_processing: AudioProcessingPolicy
§traffic_class: MediaTrafficClass
§

CloseReceiveChannel

Closes the station’s audio receive leg for a call. Retires its pending request so a late acknowledgement is ignored.

Fields

§call_id: CallId
§

StartMedia

Starts the station’s audio transmit leg toward the supplied endpoint. Applies DTMF, processing, and traffic-class policy to the new generation.

Fields

§call_id: CallId
§endpoint: MediaEndpoint
§dtmf_mode: DtmfMode
§audio_processing: AudioProcessingPolicy
§traffic_class: MediaTrafficClass
§

StartMulticastReception

Starts station reception of an admitted multicast audio route. Correlates the route with the call and requested audio processing policy.

Fields

§conference_id: ConferenceId
§call_id: CallId
§echo_cancellation: EchoCancellation
§g723_bitrate: G723BitRate
§

StopMulticastReception

Stops multicast audio reception for the exact call and conference. Retires the active receive transaction associated with that route.

Fields

§conference_id: ConferenceId
§call_id: CallId
§

StartMulticastTransmission

Starts station transmission onto an admitted multicast audio route. Applies precedence, silence, packetization, and G.723 rate parameters.

Fields

§conference_id: ConferenceId
§call_id: CallId
§precedence: u32
§silence_suppression: SilenceSuppression
§max_frames_per_packet: u32
§g723_bitrate: G723BitRate
§

StopMulticastTransmission

Stops multicast audio transmission for the exact call and conference. Retires the active transmit transaction associated with that route.

Fields

§conference_id: ConferenceId
§call_id: CallId
§

StopMedia

Stops the station’s audio transmit leg for a call. Retires its pending request so a late acknowledgement is ignored.

Fields

§call_id: CallId
§

CloseCall

Tears down all station media and presentation for a call. Requests final statistics when applicable and retires the call identity.

Fields

§call_id: CallId
§

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

Source§

fn clone(&self) -> CommandAction

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CommandAction

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more