pub struct NativeIncomingSession { /* private fields */ }Expand description
One incoming direct voice call. ACK is ringing setup, not acceptance. Only the embedding broker’s winning owner may request Join. These methods do not verify carrier freshness, consume account sync, retry or create history.
Implementations§
Source§impl NativeIncomingSession
impl NativeIncomingSession
Sourcepub fn peer_microphone_muted(&self) -> Option<bool>
pub fn peer_microphone_muted(&self) -> Option<bool>
Current remote microphone state from the authenticated AV snapshot.
Sourcepub fn authenticate(
client: &impl PersonalTransport,
state: &mut AccountState,
authority: AppAuthority,
host_task: u32,
device32: [u8; 32],
parameters: VoiceParameters,
notification: &InviteNotification,
expected_caller: &str,
) -> Result<Self>
pub fn authenticate( client: &impl PersonalTransport, state: &mut AccountState, authority: AppAuthority, host_task: u32, device32: [u8; 32], parameters: VoiceParameters, notification: &InviteNotification, expected_caller: &str, ) -> Result<Self>
Call only after a current account-owned live notification has been retained and a listening controller has reserved the global call slot.
pub fn phase(&self) -> IncomingPhase
Sourcepub fn room(&self) -> VoiceRoom
pub fn room(&self) -> VoiceRoom
Latest authenticated local room/member binding. This is private call routing data and must not be exposed as a public event or diagnostic.
Sourcepub fn ringing_ack(
&mut self,
client: &impl PersonalTransport,
state: &mut AccountState,
current: AppAuthority,
tasks: TaskIds,
) -> Result<()>
pub fn ringing_ack( &mut self, client: &impl PersonalTransport, state: &mut AccountState, current: AppAuthority, tasks: TaskIds, ) -> Result<()>
Perform singleton ringing ACK8069. A successful ACK may be offered to controllers, but it grants neither a media stream nor permission to Join.
Sourcepub fn accept(
&mut self,
client: &impl PersonalTransport,
state: &mut AccountState,
current: AppAuthority,
tasks: TaskIds,
) -> Result<()>
pub fn accept( &mut self, client: &impl PersonalTransport, state: &mut AccountState, current: AppAuthority, tasks: TaskIds, ) -> Result<()>
The broker winner accepts with actual callee Join3361. Timestamp8 is the source-selected literal0; this does not reuse a caller Invite response.
Sourcepub fn reject(
&mut self,
client: &impl PersonalTransport,
state: &mut AccountState,
current: AppAuthority,
tasks: TaskIds,
) -> Result<()>
pub fn reject( &mut self, client: &impl PersonalTransport, state: &mut AccountState, current: AppAuthority, tasks: TaskIds, ) -> Result<()>
Decline only the source ACKed-callee state. Pre-ACK busy/other-device paths have separate operations and are not substituted here.
pub fn poll( &mut self, client: &impl PersonalTransport, state: &mut AccountState, current: AppAuthority, tasks: TaskIds, ) -> Result<SyncProgress>
Sourcepub fn finish_remote(
&mut self,
client: &impl PersonalTransport,
state: &mut AccountState,
current: AppAuthority,
tasks: TaskIds,
talk_success: bool,
) -> Result<()>
pub fn finish_remote( &mut self, client: &impl PersonalTransport, state: &mut AccountState, current: AppAuthority, tasks: TaskIds, talk_success: bool, ) -> Result<()>
Source-classified remote cleanup, separate from local user hangup.
pub fn media_ready( &self, state: &AccountState, current: AppAuthority, ) -> Result<bool>
pub fn take_media( &mut self, state: &AccountState, current: AppAuthority, connection_index: usize, udp_index: usize, ) -> Result<NegotiatedMedia>
pub fn exit( &mut self, client: &impl PersonalTransport, state: &mut AccountState, current: AppAuthority, tasks: TaskIds, talk_success: bool, ) -> Result<()>
Sourcepub fn retire_cancel(
&mut self,
state: &AccountState,
current: AppAuthority,
cancel: &CancelNotification,
) -> Result<bool>
pub fn retire_cancel( &mut self, state: &AccountState, current: AppAuthority, cancel: &CancelNotification, ) -> Result<bool>
Only a separately authenticated, matching cancellation while invited or ACKed retires this callee. Joined calls need their own terminal evidence.