Lines and phones can be connected in a variety of ways to the desktop computer
and the telephone network. The following examples show a selection of
configurations that could be supported by a service provider. Note that some of the
telephone hardware required to implement some of these example is not yet widely
connection consists of a single POTS line in which the computer is connected
to the switch through the desktop phone set. Such phone sets typically connect
to the computer through one of its serial ports. When an application requests
an action, the corresponding service provider sends telephony commands, which
are often based on the Hayes AT command set (ANSI/TIA/EIA-602), over the serial
connection to the telephone. This configuration is limited because it generally
provides only line control. The computer does not have access to the media
connection uses a computer add-in card or external box that is connected to
both the telephone network and the phone set. The service provider can easily
integrate modem and fax functions, as well as the use of the telephone as an
audio I/O device.
connection is similar to the computer-centric connection but allows for using
the two B-channels in a variety of line configurations. A service provider can
treat this connection in a number of ways:
- A single line device with a pool of two channels, allowing both channels to be
combined for establishing 128 Kbps calls.
- Two separate line devices, each with exclusive use of a single B-channel.
- Two separate line devices, each drawing up to two channels from a shared pool
of two B-channels.
- Three line devices: one for each of the two B-channels and one for the
In the latter two models, channels may be assigned to different line devices
at different times.
In client/server networks
, a pool of telephone ports attached to a server may be shared among multiple
client computers using a local area network. The ports may be configured to
assign a maximum number of line devices (the quota
) to each client workstation. It is not unusual for the sum of all quotas to
exceed the total number of lines.
Also, the assignment of lines through ports is dynamic. For example, a client
computer with a quota of 2 may use ports 1 and 2 at one time and ports 7 and 11
at a later time.
The service provider for the pool may model this arrangement by giving each
client workstation access to two line devices. This implies that the device IDs
(which are fixed) for each client are 0 and 1. If the application later requests
information for device 0 and again for device 1, it must assume that the
device capabilities for each device are constant, because that is the Windows device
model. For server-based devices that are pooled as described in the example
above, this constancy holds only for line devices that have identical device
A LAN-based server
might have multiple telephone-line connections to the switch. TAPI operations
invoked at any of the client computers are forwarded over the LAN to the
server. The server uses third-party call control between the server and the switch
to implement the client's call-control requests.
This model offers a lower cost per computer for call control if the LAN is
already in use, and it also offers reduced cost for media stream access if shared
devices such as voice digitizers, fax and/or data modems, and interactive voice
response cards are installed in the server. The digitized media streams can be
carried over the LAN, although real-time transfer of media may be problematic
with some LAN technologies due to inconsistent throughput.
A LAN-based host can be connected to the switch using a switch-to-host link
. TAPI operations invoked at any of the client computers are forwarded over
the LAN to the host, which uses a third-party switch-to-host link protocol to
implement the client's call-control requests.
Note that it is also possible for a private branch exchange (PBX) to be
directly connected to the LAN, and for the server functions to be integrated into the
PBX. Within this model, different sub-configurations are possible:
- To provide personal telephony to each desktop, the service provider could
model the PBX line associated with the computer (on a desktop) as a single line
device with one channel. Each client computer would have one line device
- Each third-party station can be modeled as a separate line device to allow
applications to control calls on other stations. (In a PBX, a station is anything to which a wire leads from the PBX). This enables the application
to control calls on other stations. This solution requires that the
application open each line it wants to manipulate or monitor, which may be satisfactory
if only a small number of lines is of interest, but may generate excessive
overhead if a large number of lines is involved.
- Model the set of all third-party stations as a single line device with one
address (one phone number) assigned to it per station. Only a single device is to
be opened, providing monitoring and control of all addresses (all stations) on
the line. To originate a call on any of these stations, the application must
only specify the station's address to the function that makes the call. No extra
line opening operations are required. However, this modeling implies that all
stations have the same line-device capabilities, although their address
capabilities could be different.
A potential advantage of this model is a lowered cost per computer if the LAN
is already in use, but a limitation would be a possible lack of media-stream
access by the computers.
The computer in use need not be a desktop computer. It can also be a laptop or
other portable computer connected to the telephone network over a wireless connection
In a shared telephony
connection, the computer's connection may be shared by other telephony
equipment, such as the telephone set shown below. For an application to operate
properly in this arrangement, neither the application nor the service provider can
assume that there are no other active devices on the line.
- Software for developers
Software for Android Developers
- More information resources
Unix Manual Pages