pub enum ClientMessage {
Show 60 variants
KeepAlive,
Register(RegistrationMessage),
IpPort {
rtp_port: u16,
},
KeypadButton {
button: Digit,
line_instance: u32,
call_reference: u32,
wire_layout: Option<KeypadButtonWireLayout>,
},
EnblocCall {
called_party: String,
line_instance: u32,
},
Stimulus {
stimulus: Stimulus,
instance: u32,
call_reference: u32,
status: u32,
},
OffHook {
line_instance: u32,
call_reference: u32,
},
OnHook {
line_instance: u32,
call_reference: u32,
},
OffHookWithCallingParty {
calling_party_number: String,
voice_mailbox: String,
line_instance: u32,
},
LineStatRequest {
line_instance: u32,
},
ConfigStatRequest,
TimeDateRequest,
ButtonTemplateRequest,
VersionRequest,
CapabilitiesResponse(Vec<MediaCapability>),
CapabilitiesUpdate(CapabilityUpdate),
OpenMultimediaReceiveChannelAck(OpenMultimediaReceiveChannelAck),
ServerRequest,
Alarm {
severity: AlarmSeverity,
text: String,
parameters: Option<[u32; 2]>,
},
MulticastMediaReceptionAck {
status: MediaStatus,
passthrough_party_id: PassthroughPartyId,
call_reference: CallReference,
},
OpenReceiveChannelAck {
status: MediaStatus,
address: IpAddr,
port: u16,
passthrough_party_id: u32,
call_reference: u32,
},
SoftKeySetRequest,
SoftKeyTemplateRequest,
SoftKeyEvent {
event: u32,
line_instance: u32,
call_reference: u32,
},
Unregister {
reason: u32,
},
RegisterToken(RegisterTokenMessage),
HookFlash {
line_instance: u32,
call_reference: u32,
},
ForwardStatusRequest {
line_instance: u32,
},
SpeedDialStatusRequest {
speed_dial_instance: u32,
},
ConnectionStatisticsResponse(ConnectionStatistics),
HeadsetStatus {
enabled: bool,
},
MediaResourceNotification(MediaResourceNotification),
MediaPathEvent {
path: MediaPathId,
event: MediaPathEvent,
},
MediaPathCapability {
path: MediaPathId,
capability: MediaPathCapability,
},
MediaTransmissionFailure {
conference_id: u32,
passthrough_party_id: u32,
address: IpAddr,
port: u16,
call_reference: u32,
status: MediaStatus,
},
RegisterAvailableLines {
lines: u32,
},
ServiceUrlStatusRequest {
index: u32,
},
FeatureStatusRequest {
index: u32,
capabilities: u32,
},
StartMediaTransmissionAck(MediaTransmissionAck),
StartMultimediaTransmissionAck(StartMultimediaTransmissionAck),
ExtensionDeviceCapabilities(ExtensionDeviceCapabilities),
DeviceToUserData(UserDataMessage),
DeviceToUserDataResponse(UserDataMessage),
DeviceToUserDataV1(UserDataV1Message),
DeviceToUserDataResponseV1(UserDataV1Message),
PortResponse(PortEndpoint),
SubscriptionStatusRequest(SubscriptionRequest),
SubscribeDtmfPayloadResponse(DtmfPayloadIdentity),
UnsubscribeDtmfPayloadResponse(DtmfPayloadIdentity),
LocationInfo {
xml: String,
},
XmlAlarm(XmlAlarmMessage),
CallCountRequest {
value: u32,
},
CreateConferenceResponse(CreateConferenceResponse),
DeleteConferenceResponse {
conference_id: ConferenceId,
result: DeleteConferenceResult,
},
ModifyConferenceResponse(ModifyConferenceResponse),
AuditConferenceResponse(AuditConferenceResponse),
AddParticipantResponse(AddParticipantResponse),
AuditParticipantResponse(AuditParticipantResponse),
KnownOpaque(KnownOpaqueMessage),
Unknown(RawMessage),
}Expand description
Typed messages accepted from a station connection.
Variants correspond to station-to-control identifiers in
catalog::MessageId. KnownOpaque retains a known
catalog entry without a typed payload, while Unknown
retains an unrecognized identifier. Decode with Self::decode during
registration and Self::decode_with_version after version negotiation.
Variants§
KeepAlive
Register(RegistrationMessage)
IpPort
KeypadButton
EnblocCall
Stimulus
OffHook
OnHook
OffHookWithCallingParty
LineStatRequest
ConfigStatRequest
TimeDateRequest
ButtonTemplateRequest
VersionRequest
CapabilitiesResponse(Vec<MediaCapability>)
CapabilitiesUpdate(CapabilityUpdate)
OpenMultimediaReceiveChannelAck(OpenMultimediaReceiveChannelAck)
ServerRequest
Alarm
Fields
severity: AlarmSeverityMulticastMediaReceptionAck
OpenReceiveChannelAck
SoftKeySetRequest
SoftKeyTemplateRequest
SoftKeyEvent
Unregister
RegisterToken(RegisterTokenMessage)
HookFlash
ForwardStatusRequest
SpeedDialStatusRequest
ConnectionStatisticsResponse(ConnectionStatistics)
HeadsetStatus
MediaResourceNotification(MediaResourceNotification)
MediaPathEvent
MediaPathCapability
MediaTransmissionFailure
Fields
status: MediaStatusRegisterAvailableLines
ServiceUrlStatusRequest
FeatureStatusRequest
StartMediaTransmissionAck(MediaTransmissionAck)
StartMultimediaTransmissionAck(StartMultimediaTransmissionAck)
ExtensionDeviceCapabilities(ExtensionDeviceCapabilities)
DeviceToUserData(UserDataMessage)
DeviceToUserDataResponse(UserDataMessage)
DeviceToUserDataV1(UserDataV1Message)
DeviceToUserDataResponseV1(UserDataV1Message)
PortResponse(PortEndpoint)
SubscriptionStatusRequest(SubscriptionRequest)
SubscribeDtmfPayloadResponse(DtmfPayloadIdentity)
UnsubscribeDtmfPayloadResponse(DtmfPayloadIdentity)
LocationInfo
XmlAlarm(XmlAlarmMessage)
CallCountRequest
CreateConferenceResponse(CreateConferenceResponse)
DeleteConferenceResponse
ModifyConferenceResponse(ModifyConferenceResponse)
AuditConferenceResponse(AuditConferenceResponse)
AddParticipantResponse(AddParticipantResponse)
AuditParticipantResponse(AuditParticipantResponse)
KnownOpaque(KnownOpaqueMessage)
Unknown(RawMessage)
Implementations§
Source§impl ClientMessage
impl ClientMessage
Sourcepub fn decode_with_version(
frame: Frame,
protocol: ProtocolVersion,
) -> Result<Self, CodecError>
pub fn decode_with_version( frame: Frame, protocol: ProtocolVersion, ) -> Result<Self, CodecError>
Decodes a station-originated frame with an explicit negotiated version.
Use this after registration when the session version is authoritative, especially for layouts whose header version is zero or ambiguous.
Sourcepub fn decode(frame: Frame) -> Result<Self, CodecError>
pub fn decode(frame: Frame) -> Result<Self, CodecError>
Decodes a station-originated frame using its header version.
This is suitable for initial messages that carry a meaningful header
version. Established sessions should prefer Self::decode_with_version.
Sourcepub fn encode(&self, protocol: ProtocolVersion) -> Result<Vec<u8>, CodecError>
pub fn encode(&self, protocol: ProtocolVersion) -> Result<Vec<u8>, CodecError>
Canonically encode a phone-to-server message.
Trait Implementations§
Source§impl Clone for ClientMessage
impl Clone for ClientMessage
Source§fn clone(&self) -> ClientMessage
fn clone(&self) -> ClientMessage
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more