
Chapter 19: Wireless Wide-Area Networking
Terminating Voice Calls
223
Psion Mobile Devices Developers Guide
Holding Calls
The Mobile Devices SDK supports holding calls; although, holding calls are only available when the
computer is associated with a WWAN network that provides a held calls service.
A held call is a call that has been active, but is temporarily interrupted. It can be resumed, made
active, again.
Multiparty Calls (Conference Calls)
The Mobile Devices SDK supports multiparty calls; although, multiparty calls are only available when the
computer is associated with a WWAN network that provides a multiparty calling service. Up to five calls can
be joined into a conference call.
Use the VoiceCallManager function RetrieveHeld to join together the active call with all the held calls. All
the calls are now active, and all the parties can communicate with each other.
The behaviour of RetrieveHeld depends on the WWAN modem. For example, this call is successful with the
MC75 modem when there is one held call and no active calls, while it fails with the HC25 modem if there is
not at least one active call and at least one held call.
Adding A Call To A Multiparty Call
If an incoming call event is received, with a voice call state of Call waiting, use the VoiceCall function
ActivateAndHoldOthers to make this the active call and place all the other calls on hold. This function fails
if there is already a call on hold.
Use the VoiceCallManager function RetrieveHeld to join together the active call with all the held calls. All
parties, including the new call, can now communicate with each other.
Use the VoiceCallManager function HoldActive to place all the active calls on hold. Then one of the
following occurs:
• If there is a waiting call, it becomes the active call, or
• If there is a call on hold, but there is no waiting call, the held call becomes the active call, or
• If there is both a held call and a waiting call, the command is rejected.
19.13.8 Terminating Voice Calls
Rejecting an Incoming Call
While processing the incoming call event, use RejectIncoming to reject the call. See
Section 19.13.6 Receiving a Phone Call on page 221.
Terminating Active Calls
Terminating One Active Call
Use HangUp or HangUpActive to terminate a single active call.
Terminating all Active Calls
Use HangUpActive to terminate all active calls.
If there is a call in the call waiting state, it becomes active after the active calls are terminated.
If there is no call in the call waiting state, then the held calls becomes active.
Terminating all Held Calls
Use HangUpHeld to terminate all held calls.
If there is a waiting call, this function fails. So, use RejectIncoming on all the waiting call before
calling HangUpHeld.
Terminating all Active and Held Calls
Use HangUpAll to terminate all calls in the active state and all calls in the held state. If there is a waiting
call, it becomes active.
Comentarios a estos manuales