Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
This function places the specified call on hold.
LONG WINAPI lineHold(HCALL hCall);
Parameters
- hCall
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 identifier if the function is completed asynchronously or a negative error number if an error occurs. The dwParam2 parameter of the corresponding LINE_REPLY message is zero if the function succeeds or it is a negative error number if an error occurs. The following table shows the return values for this function.
Value | Description |
---|---|
LINEERR_INVALCALLHANDLE | The handle to the call to be placed on hold is invalid. |
LINEERR_OPERATIONUNAVAIL | The operation is unavailable. |
LINEERR_INVALCALLSTATE | The call state of hCall is something other than connected. |
LINEERR_OPERATIONFAILED | The operation failed. |
LINEERR_NOMEM | Not enough memory is available. |
LINEERR_RESOURCEUNAVAIL | The resources are unavailable. |
LINEERR_NOTOWNER | The application is not the owner of this call. |
LINEERR_UNINITIALIZED | A parameter is 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 the lineSetupTransfer, lineSetupConference, or linePrepareAddToConference functions.
After a call has been successfully placed on hold, the call state typically transitions to onHold. A held call is retrieved by the lineUnhold function. While a call is on hold, the application can receive LINE_CALLSTATE messages about state changes of the held call. For example, if the held party hangs up, the call state can transition to disconnected.
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 can govern (for example, attempting to "hold" a call when other stations are participating is not be possible); instead, the call can simply be changed to the LINECONNECTEDMODE_INACTIVE mode if it remains connected at other stations.
Note This function is for TAPI version 2.0 and later.
Requirements
OS Versions: Windows CE 1.0 and later.
Header: Tapi.h.
Link Library: Coredll.lib.
See Also
linePrepareAddToConference | lineSetupConference | lineSetupTransfer | lineUnhold | LINE_CALLSTATE
Send Feedback on this topic to the authors