Dialing the Call
The
lineMakeCall function first attempts to obtain a
call appearance on an address on the line, then waits for a dial tone, and finally dials the
specified address. A call appearance is a connection to the switch over which a
call can be made. Once the connection is established, the call appearance
exists, even if no call is placed. After the call is established, the call
appearance remains in existence until the call transitions to the idle state. If calls
controlled by other applications exist on the line, these calls would normally
have to be on hold, and would typically be forced to stay on hold until the
application either drops its call or places it on hold. If dialing is successful,
a handle to a call with
owner privileges is returned to the application.
Before invoking
lineMakeCall, an application can set up parameters for the call and store them in the data
structure
LINECALLPARAMS. A pointer to this structure is then used as a parameter of
lineMakeCall. In the fields of
LINECALLPARAMS, the application can specify the quality of service requested from the
network as well as a variety of ISDN call setup parameters. If no
LINECALLPARAMS structure is supplied to
lineMakeCall, a default POTS voice-grade call is requested with a set of default values.
However, it is a good idea to use
LINECALLPARAMS so that monitoring applications can report this call information (such as the
identification of the called party) accurately.
The call's origination address also appears in
LINECALLPARAMS. Using this field, the application can specify the address on the line where
it wants the call to originate. It can do so by specifying an address ID,
though in some configurations it is more practical to identify the originating
address by its directory number.
Note Do not mix function calls of the Telephony API with the functions of
Assisted Telephony. The actions requested by
lineMakeCall would happen automatically with the Assisted Telephony function calls
tapiRequestMakeCall. But once an application has reached this state by using the calls of the
Telephony API, it makes no sense to revert to an Assisted Telephony function call
(such as
tapiRequestMakeCall), because doing so would cause TAPI to repeat already performed actions. At
this stage, therefore, simply calling
lineMakeCall causes less overhead.
Once dialing is complete and the call is being established, it passes through
a number of different states. These states (the progress of the call) are
provided to the application with
LINE_CALLSTATE messages. This mechanism lets the application track whether the call is
reaching the called party. It is important that every telephony application base its
behavior on the information received in these messages, and not on any other
assumptions about a call's state. An application must not assume that a
requested state change has occurred until notification of that state change arrives.
Note that it can be helpful to display user-friendly interpretations of call
states as indicators of a call's progress, especially for calls expected to pass
through states slowly.
If special call setup parameters are to be taken into consideration, the
application must supply them to
lineMakeCall. Call setup parameters are required for actions such as the following:
- Requesting a special bearer mode, bandwidth, or media mode for the call
- Sending user-to-user information (with ISDN)
- Securing the call
- Blocking sending of caller ID to the called party
- Taking the phone offhook automatically at the originator and/or the called
party
- 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