lineHold
The lineHold
function places the specified call on hold.
LONG lineHold(
HCALL hCall |
|
); |
|
Parameters
hCall
A handle to
the call to be placed on hold. The application must be an owner of the call.
The call state of hCall must be connected.
Return Values
Returns a
positive request ID if the function will be completed asynchronously or a
negative error number if an error has occurred. The dwParam2 parameter
of the corresponding LINE_REPLY
LINEERR_INVALCALLHANDLE,
LINEERR_OPERATIONUNAVAIL, LINEERR_INVALCALLSTATE, LINEERR_OPERATIONFAILED,
LINEERR_NOMEM, LINEERR_RESOURCEUNAVAIL, LINEERR_NOTOWNER,
LINEERR_UNINITIALIZED.
Remarks
The call on
hold is temporarily disconnected allowing the application to use the line
device for making or answering other calls. The lineHold function
performs a so-called "hard hold" of the specified call (as opposed to
a "consultation call"). A call on hard hold typically cannot be
transferred or included in a conference call, but a consultation call can.
Consultation calls are initiated using lineSetupTransfer
After a call
has been successfully placed on hold, the call state typically transitions to onHold.
A held call is retrieved by lineUnhold
In a bridged
situation, a lineHold operation may possibly not actually place the call
on hold, because the status of other stations on the call may govern (for
example, attempting to "hold" a call when other stations are
participating will not be possible); instead, the call may simply be changed to
the LINECONNECTEDMODE_INACTIVE mode if it remains connected at other
stations.
See Also