lineSetupConference
The
lineSetupConference function sets up a conference call for the addition of the third party.
LONG lineSetupConference(
HCALL hCall,
|
|
HLINE hLine,
|
|
LPHCALL lphConfCall,
|
|
LPHCALL lphConsultCall,
|
|
DWORD dwNumParties,
|
|
LPLINECALLPARAMS const lpCallParams
|
|
);
|
|
Parameters
hCall
The initial call that identifies the first party of a conference call. In some
environments (as described in device capabilities), a call must exist to start
a conference call, and the application must be an owner of this call. In other
telephony environments, no call initially exists,
hCall must be left NULL, and
hLine must be specified to identify the line on which the conference call is to be
initiated. The call state of
hCall must be
connected.
hLine
A handle to the line. This handle is used to identify the line device on which
to originate the conference call if
hCall is NULL. The
hLine parameter is ignored if
hCall is non-NULL.
lphConfCall
A pointer to an HCALL handle. This location is then loaded with a handle
identifying the newly created conference call. The application will be the initial
sole owner of this call. The call state of
hConfCall is not applicable.
lphConsultCall
A pointer to an HCALL handle. When setting up a call for the addition of a new
party, a new temporary call (consultation call) is automatically allocated.
Initially, the application will be the sole owner for this call.
dwNumParties
The expected number of parties in the conference call. This number is passed
to the service provider. The service provider is free to do as it pleases with
this number: ignore it, use it as a hint to allocate the right size conference
bridge inside the switch, and so on.
lpCallParams
A pointer to call parameters to be used when establishing the consultation
call. This parameter may be set to NULL if no special call setup parameters are
desired.
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 message is zero if the function is
successful or it is a negative error number if an error has occurred. Possible
return values are:
LINEERR_BEARERMODEUNAVAIL, LINEERR_UNINITIALIZED, LINEERR_CALLUNAVAIL,
LINEERR_INVALMEDIAMODE, LINEERR_CONFERENCEFULL, LINEERR_INVALPOINTER, LINEERR_INUSE,
LINEERR_INVALRATE, LINEERR_INVALADDRESSMODE, LINEERR_NOMEM,
LINEERR_INVALBEARERMODE, LINEERR_NOTOWNER, LINEERR_INVALCALLHANDLE, LINEERR_OPERATIONUNAVAIL,
LINEERR_INVALCALLSTATE, LINEERR_OPERATIONFAILED, LINEERR_INVALCALLPARAMS,
LINEERR_RATEUNAVAIL, LINEERR_INVALLINEHANDLE, LINEERR_RESOURCEUNAVAIL,
LINEERR_INVALLINESTATE, LINEERR_STRUCTURETOOSMALL, LINEERR_USERUSERINFOTOOBIG.
Remarks
If LINEERR_INVALLINESTATE is returned, the line is currently not in a state in
which this operation can be performed. A list of currently valid operations
can be found in the
dwLineFeatures field (of the type
LINEFEATURE) in the
LINEDEVSTATUS structure. (Calling
lineGetLineDevStatus updates the information in
LINEDEVSTATUS.) If LINEERR_INVALMEDIAMODE is returned, check for supported media modes on
the line in the
dwMediaModes field in the
LINEDEVCAPS structure.
The
lineSetupConference function provides two ways to establish a new conference call, depending on
whether a normal two-party call is required to pre-exist or not. When setting up
a conference call from an existing two-party call, the
hCall parameter is a valid call handle that is initially added to the conference
call by the
lineSetupConference request;
hLine is ignored. On switches where conference call setup does not start with an
existing call,
hCall must be NULL and
hLine must be specified to identify the line device on which to initiate the
conference call. In either case, a consultation call is allocated for connecting to
the party that is to be added to the call. The application can then use
lineDial to dial the address of the other party.
The conference call typically transitions into the
onHoldPendingConference state, the consultation call into the
dialtone state, and the initial call (if there is one) into the
conferenced state.
A conference call can also be set up by a
lineCompleteTransfer that is resolved into a three-way conference. The application may be able to
toggle between the consultation call and the conference call using
lineSwapHold.
A consultation call can be canceled by invoking lineDroponit. When dropping a
consultation call, the existing conference call typically transitions back to
the
connected state. The application should observe the LINE_CALLSTATE messages to
determine exactly what happens to the calls. For example, if the conference call
reverts back to a regular two-party call, the conference call will become idle and
the original participant call may revert to
connected.
If an application specifies the handle of the original call (
hCall) in a call to the
lineUnhold function, both the conference call and the consultation call typically go to
idle.
See Also
LINE_CALLSTATE,
lineCompleteTransfer,
LINEDEVCAPS,
LINEDEVSTATUS,
lineDial,
lineGetLineDevStatus,
lineSwapHold,
lineUnhold
- Software for developers
-
Delphi Components
.Net Components
Software for Android Developers
- More information resources
-
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
- Databases for Amazon shops developers
-
Amazon Categories Database
Browse Nodes Database