SlideShare una empresa de Scribd logo
1 de 11
Descargar para leer sin conexión
(12) United States Patent
Schultz et al.
(54) COMPUTER TELEPHONY (CT) NETWORK
SERVING MULTIPLE TELEPHONE
SWITCHES
(75) Inventors: Laura S. Schultz, Gilbert, AZ (US);
Mark J. Dancho, Chandler, AZ (US);
David Mello, Chandler, AZ (US)
(73) Assignee: Inter-Tel, Inc., Tempe, AZ (US)
( *) Notice: Subject to any disclaimer, the term of this
patent is extended or adjusted under 35
U.S.C. 154(b) by 460 days.
(21) Appl. No.: 09/894,047
(22) Filed:
(65)
Jun.28,2001
Prior Publication Data
(51)
(52)
(58)
(56)
US 2003/0002647 A1 Jan. 2, 2003
Int. Cl? ................................................. H04M 7/00
U.S. Cl. ................... 379/225; 379/219; 379/220.01
Field of Search ........................... 379/88.13, 88.14,
379/88.17, 142.D7, 207.12, 207.14, 211.02,
220.01, 221.06, 265.02, 265.09, 219, 225
References Cited
U.S. PATENT DOCUMENTS
4,527,012 A
4,653,085 A
5,339,356 A *
5,414,762 A
5,479,487 A
5,499,289 A
5,546,452 A
7/1985
3/1987
8/1994
5/1995
12/1995
3/1996
8/1996
Caplan
Chan
Ishii ........................... 379/234
Flisik
Hammond
Bruno
Andrews
111111 1111111111111111111111111111111111111111111111111111111111111
US006760427B2
(10) Patent No.: US 6,760,427 B2
Jul. 6, 2004(45) Date of Patent:
5,848,143 A
5,987,102 A
6,011,844 A
6,021,428 A
6,026,087 A
6,091,808 A
6,094,479 A *
6,154,465 A
6,181,788 B1
6,295,350 B1 *
6,359,711 B1 *
6,359,892 B1 *
6,381,324 B1 *
6,393,017 B1 *
6,453,035 B1 *
6,480,595 B1 *
6,584,110 B1 *
6,636,587 B1 *
* cited by examiner
12/1998
11/1999
1!2000
2/2000
2/2000
7/2000
7/2000
11/2000
1!2001
9/2001
3/2002
3/2002
4/2002
5!2002
9/2002
11/2002
6/2003
10/2003
Andrews
Elliott
Uppaluru
Miloslavsky
Mirashrafi
Wood
Lindeberg et a!. ..... 379/220.01
Pickett
Miloslavsky
Schreyer et a!. ....... 379/221.01
Cole et a!. .................... 398/58
Szlam ........................ 370/401
Shaffer et a!. ......... 379/211.02
Galvin et a!. ............... 370/352
Psarras et a!. ......... 379/221.08
Hamano ..................... 379/225
Mizuta et a!. .............. 370/401
Nagai eta!. ............. 379/88.14
Primary Examiner-Bing Bui
(74) Attorney, Agent, or Firm-Michelle Whittington
(57) ABSTRACT
An enhanced computer telephony (CT) network design for
a private branch exchange (PBX) telephone system network
improves the computer telephony interface (CTI) capabili-
ties of the network. Bi-directional data from remote tele-
phone switching nodes of different PBX systems, each using
a common software application, is combined into a single
data stream by the network to simplify control of the remote
PBX systems. Commands to, and events received from, the
different PBX switching nodes are combined by use of a
gateway to automatically and transparently route digital
information for control of the correct remote system node.
20 Claims, 5 Drawing Sheets
U.S. Patent Jul. 6, 2004 Sheet 1 of 5 US 6,760,427 B2
44
GATEWAY SITE
60
LOCAL AREA NETWORK
66
64
62 LISTENING IP SOCKET
SOCKET1 •••
70
=0 =- -- -- -- -- -
CTI PROCESSOR
Fig. 1
U.S. Patent Jul. 6, 2004 Sheet 2 of 5
START GATEWAY PROCESSING
8 0
+
REPEAT FOR EACH PBX SYSTEM ~ 82
NODE'S IP ADDRESS ON FILE
+
QUERY THE NODE FOR ~
CONFIRMATION OF OPERATING
84
STATUS AND SOFTWARE VERSION
•QUERY NODE FOR SPECIFIC DEVICE ID'S 86
•GATHER DEVICE ID'S FOR ~ 88
SYSTEM-lEVEL DEVICES IN
THE GATEWAY DATABASE
•UPDATE GATEWAY'S 1------90
TRANSlATION DATABASE
•INFORM PBX NODE THAT AN OAI ~ 92
GATEWAY HAS BEEN SUCCESSFULlY
CONNECTED
•BEGIN MONITORING PBX NODE'S ~ 94
SYSTEM EVENTS
•ASCERTAIN ANY SPECIAl MODES OF
_...___ 96
OPERATION FOR THE PBX NODE
•~---RE_PEA_T_BL~OC_K(_EN_D)__~~97
•PBX NODES ARE READY
FOR PROCESSING
Fig. 2
98
US 6,760,427 B2
U.S. Patent Jul. 6, 2004 Sheet 3 of 5 US 6,760,427 B2
START SOFTWARE APPLICATION PROCESSING
100
~
OAI SOFTWARE APPLICATION CLIENTS LOGIN TO THE OAI GATEWAY SERVER
102
tEACH SOFTWARE APPLICATION BEGINS BY SENDING DEVICE MONITOR REQUESTS 104
~
INTERVENE AND DIRECTLY CONFIRM ANY DEVICES ALREADY BEING MONITORED 106
~
DEVICE# :NODE# ~108
MAPPING
~
ISSUE TRANSLATED DEVICE "EXTENSION NUMBERS" FOR INITIALIZATION COMMANDS
110
~
APPL#: COMMAND ID ~112
MAPPING
~
SEND SOFTWARE APPLICATION CONFIRMATIONS TO PBX NODES
114
t
INITIALIZE COMMAND SEQUENCE NUMBERS AND ASSOCIATE WITH SOFTWARE ~ 116
APPLICATIONS
~
INITIALIZE OPERATION OF [GATEWAY<> PBX NODE] r--118
SEQUENCE NUMBER VERIFIER
t( SOFTWARE APPLICATION INITIALIZATION COMPLETE
120
Fig. 3
U.S. Patent Jul. 6, 2004 Sheet 4 of 5 US 6,760,427 B2
APPLICATION(S) SENDS COMMAND TO THE GATEWAY
130
INVOKE APPROPRIATE CALl HANDLING ROUTINE(S)
132
ISSUE APPROPRIATE CALl CONTROl COMMAND(S)
134
DEVICE# :NODE# r--136
MAPPING
COMMAND IS SENT TO THE APPROPRIATE PBX SYSTEM NODE &DEVICE
138
COMMAND IS PROCESSED AND ACKNOWlEDGED BY THE PBX NODE'S DEVICE 140
PBX NODE SENDS ACONFIRMATION MESSAGE TO THE GATEWAY
141
GATEWAY DETERMINES WHICH APPLICATION IS WAITING ~ 142
FOR THE COMMAND CONFIRMATION THROUGH ALOOKUP TABlE
APPLICATION(S) RECEIVES THE ACKNOWLEDGMENT
144
BASIC CAll CONTROl SEQUENCE IS COMPlETE
146
Fig. 4
U.S. Patent Jul. 6, 2004 Sheet 5 of 5
PBX NODE SENDS AN ASYNCHRONOUS
EVENT TO THE GATEWAY
YES
NO
164
GATEWAY DETERMINES WHICH (IF ANY) CTI
APPLICATIONS WANT TO RECEIVE THE EVENT
GATEWAY SENDS THE EVENT TO ALL
APPROPRIATE CTI APPLICATIONS
EVENT HANDLING SEQUENCE
IS COMPLETE
Fig. 5
US 6,760,427 B2
160
162
GATEWAY UPDATES THE
DEVICE# :NODE#
MAPPING TABLE TO
REFLECT THE CHANGE
166
168
US 6,760,427 B2
1
COMPUTER TELEPHONY (CT) NETWORK
SERVING MULTIPLE TELEPHONE
SWITCHES
BACKGROUND
Customer owned private branch exchange (PBX) systems
are in widespread use. PBX systems adequately serve a large
number of stations or telephone extensions in a single
location. Frequently, however, customers have multiple
locations, each having a PBX system or hybrid key system
associated with it. These systems typically are controlled by
computer-telephone integration (CTI) processors into vari-
ous types of networks.
An early communications switching concept was dis-
closed in U.S. Pat. No. 4,527,012 to allow telephone call
processing to be carried out by a host computer connected to
a telephone system. The host computer viewed the telephone
system as a peripheral device. The host computer then
controlled the switching system with a series of high level
commands exchanged between the switching system and the
host computer. The commands were referenced to physical
system ports to control the operation of those ports directly,
based on the current call processing state. The connection of
the host computer to the telephone system was accomplished
by using a serial port (such as the RS-232 port). The system
of this patent, however, and systems similar to it, are not
inherently capable of connections or control using a com-
puter network like TCP/IP because of the electrical network
interface limitations of serial ports. In addition, computer
programs of the type disclosed in the '012 patent must be
aware of each equipped physical system port, and maintain
2
The system of the patent, however, provides no functional
support for an application software developer to address the
needs of multiple PBX systems, or for expanded networks of
PBX systems in multiple locations. In either of these cases,
5 the application software must be enhanced to allow it to be
aware of, and to properly control, multiple PBX nodes.
Because the application software resides at the client level,
it can only control one call per work station and cannot
address the needs of the entire system. An approach to
10
resolve problems associated with routing calls to geographi-
cally distributed PBX nodes is disclosed in U.S. Pat. Nos.
5,546,452 and 5,848,143. The systems of these patents use
a central controller with global authority to allow resident
software to route calls appropriately to agents who are
15
connected at various locations within the PBX network. The
systems disclosed in these patents require the central pro-
cessor to be equipped with routing and management soft-
ware specifically designed for the expected call processing
activity. These systems do not facilitate the transposition of
20
a generic computer telephony application from a single PBX
to networked PBX environment, and must take full control
of the PBX network by correlating the identities of logged-in
agents with a physical node and port locations in the PBX.
As a consequence, the approach used in the systems of these
25
patents requires a facility which must undergo continuous
parallel maintenance to keep up with PBX user changes.
U.S. Pat. No. 5,479,487 discloses a system for allowing a
centrally located scripting language to control a call as it
passes between functional partitions within a call center
30 system. The system creates a scripted development environ-
ment for distributed call processing products; but it does not
address cases where there is a distributed network of PBX
systems which require computer telephony control from
a separate cross reference to correlate ports functionally to
the assigned extension numbers, trunk numbers and so forth. 35
some centralized application.
U.S. Pat. No. 6,011,844 is directed to a system for saving
long distance toll charges. The system uses interconnected
computer gateways to coordinate the switching of calls
between network call centers. Each of these call centers
receives telephone traffic according to methods designed to
provide the lowest cost handling of each call, and only
"bridges in" calls over the long distance network when
A different approach is disclosed in U.S. Pat. No. 4,653,
085. In the system of this patent, computer telephony is
implemented by attaching an adjunct processor to an asso-
ciated telephone system port and sending control informa-
tion for calls requiring additional call processing using a 40
data exchange with the adjunct computer to simulate the
actions of a connected station. The system of this patent
requires all telephone calls, which are to be handled accord-
ing to the stored program in the adjunct processor, to be
transmitted by the telephone system to the port associated 45
with that adjunct processor. The adjunct processor then
sends direct commands back to the telephone system indi-
cating the disposition of the call by directly sending a
command to the port being served. Consequently, the
adjunct computer simulates the behavior of a human opera- 50
tor. This system is limited by the volume of traffic which can
necessary. The system of this patent is narrowly focused on
reducing call traffic over the long distance network which
may be handled in a local call center. The system is not
capable of centralized consolidation of events arriving from
different connected PBX nodes.
With the advent of intelligent networks within the public
telephone system, U.S. Pat. No. 6,094,479 is directed to a
solution which allows for the public network service control
element to link with a PBX located within a customer's
private network by using a gateway between the private and
public network segments. The gateway, however, is limited
in its functionality because it simply provides a standard
means to link between two networks, and does not address
be processed by a single operator (adjunct computer), and
therefore it is not suitable for system-wide call handling
tasks without terminating multiple ports to simulate the
activities of multiple human operators. 55 the problems created when a customer makes the transition
from single to multiple PBX nodes within a private network.U.S. Pat. No. 5,414,762 is directed to a system for
providing computer control to a variety of PBX systems. In
the system of this patent, a controller is used to allow one or
more computers from a group of computer clients to send
commands to a PBX by way of a server computer, and also 60
to receive status information from the connected PBX. A
converter which is specific to a particular PBX manufacturer
is provided to allow the brand of PBX to be changed without
having to modify the communications protocol, and
therefore, the application software, that the computer client
contains. The primary focus of this system is to allow the
same client software to control a variety of PBX platforms.
U.S. Pat. No. 6,181,788 is directed to a system for
achieving uniform control of mixed platforms in telephony.
Not all PBX manufacturers use the same protocols to
implement computer-telephone integration (CTI) interfaces
to a control computer. This patent is directed to a solution to
solve software interface problems for customers who have a
network of mixed types of PBX systems. The solution
proposed in the '788 patent is to use the CTI processors to
65 convert the protocols from each PBX and then network
together the CTI processors by way of a peer-to-peer net-
work. Each CTI processor contains its own software with
US 6,760,427 B2
3
some form of messaging used to loosely link the various
systems at each site. This patent is directed to the problem
of mixed or different PBX system types. The patent does not
address the problem of system scaling (that is, adding
additional PBX's to a customer's system), and control of
networked systems using a common software application.
It is desirable to enhance the CTI functionality of a PBX
network having multiple nodes by combining bi-directional
data from remote telephone switching nodes (different PBX
systems) into one data stream to simplify the control of the
remote system.
SUMMARY OF THE INVENTION
4
a block diagram illustrating the inclusion of a CT gateway
processor as part of the system. As shown in FIG. 1, four
separate PBX systems 10, 20, 30 and 40, all using a common
software application, are employed as part of a PBX network
5 for a single user, such as a business with offices in four
different locations. Each of the PBX systems is connected
with the public switched telephone network (PSTN), shown
as 12 for the PBX 10, and includes a plurality of telephone
devices or locations, shown as 14 for the PBX 10, each of
10 which are reached by a particular extension number. For the
PBX systems 20, 30 and 40, the PSTN links are shown as 22,
32 and 42, respectively; and the telephones associated with
the individual PBX's 20, 30 and 40 are indicated as 24, 34
It is an object of this invention to provide an improved
system and method for serving multiple telephone switches.
15
and 44, respectively.
In the system shown in FIG. 1, all of the different PBX
locations are linked through a wide area network (WAN) 50,
through a site router 52, for communication with one
another. For the PBX 10, the local interconnections to a local
area network (LAN) 60 are indicated; and the LAN 60 is
It is another object of this invention to provide an
improved method and system for a private branch exchange
(PBX) telephone system network.
It is an additional object of this invention to provide an
improved interface network linking a plurality of PBX
systems over a wide area network.
It is a further object of this invention to provide an
improved system and method employing computer tele-
phony interface (CT) for a private branch exchange (PBX)
telephone system network using a common software appli-
cation for linking each of the PBX exchanges together in a
transparent manner to users at any of the exchanges.
20 shown as utilizing a computer-telephony integration (CTI)
applications processor 62 associated with it for executing
applications for communicating between the different PBX
systems on the network over the WAN 50.
In accordance with a preferred embodiment of the
invention, a computer telephony interface CT) for a private
branch exchange (PBX) telephone system network utilizes a
gateway processing system located on an adjacent computer.
Each of the PBX systems has a unique address; and they are
linked together through a wide area network (WAN), local
area network (LAN), or the Internet to the Gateway pro-
cessing system. The processing system includes translation
tables for the addresses, as well as individual station exten-
sions; so that calls originating from any one of the PBX
systems on the network and directed to a station on any of
the other PBX systems on the network pass their event (call 40
progress) notification through the gateway where it is trans-
lated and directly sent to all users (applications) that
requested the information in a manner which is transparent
Also illustrated in FIG. 1 is a CTI application desktop and
25
telephone 64 connected to the LAN 60, which can be linked
to and through the PBX 10 in a conventional manner. Other
system devices with which the computer telephony interface
(CT) gateway processor 66 communicates also may be
included; and stub-outs showing potential connections to
30
such other devices on the LAN bus 60 are indicated in FIG.
1. It should be noted that communications through the CT
gateway 66 to different PBX nodes, such as the remote
nodes 20, 30 and 40 are effected by using a standard site
router device 52 to send and receive TCP/IP packets in data
35
transfers in a conventional manner.
The operating software of the system control arrangement
which is effected by the CT Gateway 66 constantly accesses
and updates information from a common translation data-
base as data arrives by way of the WAN 50 or LAN 60 on
behalf of each of the switching system nodes 10, 20, 30, 40.
to the users of the system. Thus, the users are not aware that
more than one PBX system is involved in the call event. The 45
system also allows for changing the data in the translation
table to allow relocation of a device associated with a
particular extension number to any one of the PBX systems
Each switch node has a respective socket 74 which it uses
for communications to the CT Gateway 66. The Gateway
stream process 70 continuously polls these sockets 74 in the
event that the switching node has sent data to it. All of this
is placed into a resulting consolidated event data stream
made available to one or more CT software applications
automatically. This is illustrated generally in the diagram of
FIG. 1 by the interconnections from the listening or incom-
in the network without requiring individual programming at
that, or any other, network.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a schematic diagram of a preferred embodiment
of the invention;
FIG. 2 is a flow chart useful in explaining the initialization
of the system;
FIG. 3 is a flow chart illustrating software application
processing;
50 ing IP sockets 68 to the Gateway stream process 70.
Although the system described immediately above refers
to specific "sockets", rather than relying on actual physical
connections employed by previous product designs, the CT
Gateway 66 only requires that a standard TCP!IP network
55 connection be available between the connected devices. This
allows a network installer to quickly verify that all required
devices are properly interconnected into the network logic
without having to interconnect complicated panels of physi-
FIG. 4 is a flow chart illustrating
system shown in FIG. 1; and
an operation of the 60
cal RS-232 ports. The end result is an interconnection
topology based on standard TCP/IP networks recognized by
the computer industry. The application-level information
FIG. 5 is a flow chart illustrating
system shown in FIG. 1.
an operation of the
DETAILED DESCRIPTION
Reference now should be made to the drawings, which
illustrate a preferred embodiment of the invention. FIG. 1 is
65
present within the TCP!IP packets acts as a transport for the
majority of the communication network infrastructure of the
preferred embodiment of the invention illustrated in FIG. 1.
In order to transparently program and/or control each of
the various telephony devices, such as 14, 24, 34, 44 or
"extensions" used with any one of the PBX systems 10, 20,
US 6,760,427 B2
5
30 or 40, an extension number and node translation data base
memory 72 is provided for mapping all of the extensions in
all of the PBX systems 10, 20, 30 and 40 into a single
random access memory 72. Once this is done, the specific
extension number as well as the IP address for the PBX 20, 5
30, 40 or 10 with which it is associated, is stored in the
memory 72. A link from a calling party at any of the PBX
system nodes is made by the Gateway stream process 70
through corresponding output node "sockets" 74, equal in
number to the number of PBX systems 10, 20, 30, 40 (or
10
whatever number) used in the completed network. Once
again, while specific reference is made to "sockets" on the
output side of the process 70, it should be noted that standard
TCP/IP network connections are utilized to effect the trans-
fer of data from the CT Gateway 66 back onto the LAN 60,
and then on through the site router 52 and the WAN 50, if 15
necessary, to the desired location.
In order for the Gateway to provide data to applications,
the CT Gateway 66 must be integrated into the user's
network to provide services to this network. The CT Gate-
way must then be started, either manually or automatically, 20
as determined by the user. The processing which occurs
during startup is illustrated in FIG. 2. Prior to this
initialization, the user is required to configure valid IP
address and ports for each of the PBX systems to be used,
as well as configuring the master or listening socket 68 for 25
the gateway. This master socket is used by the Gateway to
listen for clients requesting connections to the server. Upon
commencing initialization, the gateway connects to each
switch node using the respective socket 74. The processing
begins as shown on FIG. 2 "Start Gateway Processing" 80. 30
It should be noted that the following initialization may be
repeated for each PBX system node's IP address. As such
"repeat" blocks 82 and 97 are included to illustrate that
initialization may be effectuated for each PBX system. The
gateway first obtains the operating status and software
version of the switching node at 84. It will then query the 35
individual device identifiers for the node at 86 placing each
device entity obtained into the Gateway database 88 and 90.
The gateway will inform the PBX system node of the
gateway presence at 92 and begin monitoring the node for
any system event data at 94. The gateway may then also 40
ascertain if any of the PBX systems include a special mode
of operation, e.g. diagnostic. login, monitoring, perfor-
mance. etc. at 96. It will also configure the PBX system node
so that the data it sends is in the format required by the
gateway. The PBX nodes are now ready for processing at 98. 45
Once all of the PBX systems have completed this
initialization, the Gateway will begin to listen for applica-
tions request for service through the master socket 68. The
client application on the CTI application desktop 64 will
attempt to establish communication with the Gateway by 50
sending a logon message to the gateway by way of the
master socket 68. Once the Gateway has recognized this
application, it will send a "power up" response indicating it
is ready to begin servicing the client's application on the CTI
application 64. The logon message sent by the client must 55
take the form of:
<ByteCount><Type of Socket><Password>OxOO[<AppName>Ox
00]
6
Upon rece1vmg the Power Up response from the CT
Gateway 66, the application on the desktop 64 is free to send
any commands to allow it to perform its task. In most cases
this will require the application to begin monitoring a device
or set of devices. This results in monitor start request
arriving at the CT Gateway 66 from the application desktop
64. These commands are processed and are routed to the
proper PBX node socket 74 by determining which device is
affected in the command and mapping it to the correspond-
ing PBX node using the gateway database 72. In the event
that the gateway determines that a monitor already exists for
a particular device, it will not need to forward the command
to a PBX node, but simply creates a suitable response for the
application on desktop 64 immediately. In the event the
device is not yet monitored, a command is sent to a PBX
node which will shortly thereafter send a command response
back to the socket 74. The Gateway receives this command
response and determines which application the response is
destined for and routes it to the application on the desktop
64 only.
In the event the monitored device generates an event, the
event is routed to the socket 74, which is polled shortly
thereafter by the Gateway stream process 70. At this point
the Gateway 66 determines the device and type of event and
then determines if any application will require this event.
The event then is forwarded to any interested applications,
such as those on the desktop 64.
The system also routinely polls the application sockets 68
looking for commands to send to the phone system. The
commands are processed and the affected extension infor-
mation is used along with the database 72 to determine to
which switch socket(s) 74 connection the command is to be
routed. After the command(s) is sent and acknowledged by
the switch node which posts a response at socket 74, the
Gateway then subsequently routes the response to the asso-
ciated application which originated the command.
In the course of normal processing, as data arrives at a
socket 74 for each PBX node, the system uses the sequence
number of the message to determine if there has been any
data lost between messages. In the event that there has been
lost data, the Gateway 66 generates an error event to each
application which uses the specified node and once again
performs initialization processing on that node. Once the
node completes re-initialization the application processing
can recommence. While the node is not responding, the
application is unable to route commands to the switching
system (unless they are node aware, as described
subsequently).
In special cases, an application can command the Gate-
way 66 to let it be more intelligent about the topography of
the switching environment. It allows the application to know
what nodes are present, as well as to be less affected by the
failure of any one node. This mode of operation is referred
to as node awareness and allows a single node failure not to
adversely affect the behavior of the external application. In
the event of loss of communication at any single node, the
Gateway 66 sends the application a link status failure and
attempts to recommence communication with the failing
phone system node. The application is still able to send
commands to all of the other operating nodes. This is in stark
contrast to a non-node aware application, which cannot
where:
ByteCount---(the byte count for the data being passed)
Type of socket-passed as hex 87 (Ox87)
Password-up to 15 ASCII characters
60 communicate with any node until communication is restored
to the failing node.
Appname-up to 32 ASCII characters. This is optional,
but it is useful in knowing which socket connection is
connected to which application when running multiple
applications.
In the course of normal processing, extensions can be
added or deleted from a switching node. These changes
result in extension change events sent to the socket 74 for the
65 associated PBX node. Upon polling the socket, the gateway
66 adjusts the database 72 with respect to the extension
change event.
US 6,760,427 B2
7
FIG. 3 is an example of one manner of programming
which illustrates an operation of the system to complete
initialization at 100. The system may include a login pro-
cedure to the gateway server at 102. The system, at 104,
allows each software application to internally initiate and 5
begin sending device monitor sequences to open communi-
cations links with associated devices. If some devices
already are begin monitored, confirmation is made at 106;
and then the device numbers (telephone extensions) and the
node numbers mapping is done at 108. After the device and 10
nodes mapping, the system issues translated device "exten-
sion numbers" for initialization commands at 110; and these
are provided with application numbers and command ID
mapping at 112. Software applications then are confirmed to
the PBX nodes at 114; and command sequence numbers are 15
initialized and associated with the software applications at
116. The operation of the sequence number verifier, that is
the Gateway and the PBX node, are accomplished at 118;
and the software application initialization is completed at
120. The system is now prepared to operate as a commu- 20
nications link which is transparent to the users at each of the
different PBX nodes 10, 20, 30 and 40.
As processing continues in an example of a typical
gateway process, as shown in FIG. 4, the Gateway monitors
the polled data arriving from each CTI application. If the 25
Gateway receives a command from an application (system
event) at 130, the Gateway 66 invokes acceptable call
handling routines at 132, and issues appropriate call control
commands at 134 in accordance with the standard PBX
operating procedures. These commands are supplied to the 30
device number and node number mapping for translation at
136, and from there, the command is sent to the appropriate
PBX system node and device, as shown at 138. This means
that the system node IP socket 74 (FIG. 1) which is specific
to the device (extension number) is selected; and the infor- 35
mation is transmitted back out through the LAN and through
the site router 52 through the WAN 50 to the appropriate
selected one of the PBXs 10, 20, 30 or 40 which has that
particular extension 14, 24, 34 or 44 associated with it. In the
example shown in FIG. 4, the command is processed and 40
acknowledged by the PBX node at 140 in a conventional
manner, and a confirmation at 141 is sent back through the
Gateway 66 which determines through a lookup table at 142
which CTI application is waiting for this command confir-
mation message. The Gateway 66 sends the command 45
confirmation message at 142 to the appropriate CTI appli-
cation at 144. At 146, the basic call control sequence is
complete; and a call is effected between the calling and
called parties without either of the parties knowing whether
they are operating within a single one of the PBX systems 50
10, 20, 30 or 40, or whether the call has been handled from
one system, through the Gateway, to another. As far as the
individual parties are concerned, the call appears to be
handled entirely within the same PBX.
As processing continues in conjunction with the sequence 55
described in FIG. 4, the CT Gateway also monitors the
polled data arriving from each of the PBX nodes at 160
(FIG. 5). If the event received indicates a system change at
161, the Gateway 66 reads the nature of the update at 160
and makes changes to the mapping provided by the specific 60
device number (extension number) and PBX node device
translation database at 162, and supplies this information to
the device number and node number mapping memory.
These changes are made automatically.
The changes also occur on an ongoing basis; and once a 65
change has been committed to the database at 162, the
translation of packets from that point on is done according
8
to the revised translation mapping information stored in the
database (72 of FIG. 1). These changes occur continuously
and transparently to the software applications that are uti-
lizing the gateway in the manner described above in con-
junction with FIG. 4. The overall process is designed for the
applications software to be able to complete the processing
of the appropriate call event and continue to provide real
time control of the selected devices connected to each PBX
node. If the event does not reflect a system change, or once
the system change update has been completed by the
Gateway, the Gateway then determines which, if any, CTI
applications want to receive the event at 164. The Gateway
determines this by looking at which monitor sessions each
CTI application has initiated. The Gateway sends the event
to all appropriate CTI applications through the LAN at 166.
The event handling sequence is complete at 168.
The system can be programmed differently to employ the
Gateway 66 in operations other than the ones shown by way
of example in FIGS. 3, 4 and 5. Other versions of the system
may incorporate telephone switches that purely exist within
the computer servers. The network topologies for such
systems are capable of combining the functions of the CT
Gateway process into one (presumably a "main" system)
PBX node to eliminate the need for a separate server to
house the CT Gateway process. Then, any CT application
will be able to login to the main phone system server to
obtain a consolidated data stream from the entire network of
PBX nodes. Such a version further simplifies the network
topology and makes processing more efficient.
The foregoing description of the preferred embodiment of
the invention is to be considered as illustrative and not as
limiting. Various changes and modifications will occur to
those skilled in the art for performing substantially the same
function, in substantially the same way, to achieve substan-
tially the same result, without departing from the true scope
of the invention as defined in the appended claims.
What is claimed is:
1. A computer telephony (CT) network for a private
branch exchange (PBX) telephone system network includ-
ing in combination:
a plurality of private branch exchange (PBX) systems
using a common software application and linked
together through a network, each of the PBX systems
having a unique address;
a gateway processing system located on the network with
one of the plurality of PBX systems, the gateway
processing system having a plurality of application
sockets with each application socket corresponding a
CT application;
a memory in the gateway processing system for storing a
translation table identifying extension numbers on each
of the PBX systems and combining these extension
numbers with the unique addresses for each PBX
system to provide mapping information for sending a
command from any of the application sockets to a node
socket for the PBX system, the node socket represent-
ing a physical location for an affected party extension
number.
2. The CT network according to claim 1 wherein the
gateway processing system receives a system event from
one of the plurality of PBX systems through the correspond-
ing node socket for that one of the PBX systems, with the
system event processed by the CT network applied to the
translation table in the memory.
3. The CT network according to claim 1 further including
means coupled with the gateway processing system to
change the mapping of an extension number and address in
US 6,760,427 B2
9
the memory whenever changes in the physical location of an
extension number occurs.
4. The CT network according to claim 3 wherein the
changes supplied to the memory are received from any one
of the plurality of PBX systems where the change is to be 5
effected.
5. The CT network according to claim 1 wherein the
gateway processing system receives a system command
from one of the CT applications through the corresponding
socket for that application, with the system command 10
applied to the translation table in the memory, whereupon
the command is processed and provided to the socket for a
PBX system having an extension number for a device
corresponding to the requested command, whereupon the
translation by the gateway processing system is transparent 15
to the application sending the system command.
6. A method for expanding PBX systems from a single
PBX system to multiple interconnected PBX systems
including the steps of:
10
munication port and, in combination with the
memory, addressing the event and sending the event
to an intended application socket and sending control
commands from the processor to the PBX nodes.
11. The telecommunications system of claim 10 wherein
the event comprises a change in of one of the extension
numbers from a first PBX node to a second PBX node and
the addressing comprises updating the memory accordingly.
12. The telecommunications system of claim 10 wherein
upon receipt of a control command from the processor, the
PBX node posts a response at its corresponding node
communication port and the gateway stream system for-
wards the response to an application originating the com-
mand.
13. The telecommunications system of claim 10 wherein
the gateway stream system is configured to determine if any
the data retrieved from the port has been lost and if so, to
generate an error to all interested applications which use
providing a gateway at a PBX system for translating
bi-directional commands over a packet network to a
community of PBX nodes, each utilizing a common
software application; and
20 corresponding PBX node.
providing a translation table in the gateway to allow PBX
network changes and rearrangements by translating 25
addresses for the PBX systems and individual exten-
sion numbers for individual devices to transparently
route a system event through the gateway from and to
the different PBX nodes.
7. The method according to claim 6 further including the 30
step of receiving changes from the PBX nodes for updating
the information in the translation table of devices on a
continuous basis.
8. The method according to claim 6 further including
polling a plurality of node sockets, each of which correspond 35
to one of the PBX nodes in the community, to retrieve data
from the PBX nodes.
14. The telecommunications system of claim 10 wherein
the system is configured as node-aware such that if com-
munication fails between one of the PBX nodes and the
gateway site, then the gateway site is able to communicate
with the remaining PBX nodes.
15. The telecommunications system of claim 10 wherein
the system is configured as non-node-aware such that if
communication fails between one of the PBX nodes and the
gateway site, then the gateway site is unable to communicate
with the remaining PBX nodes until communication is
restored to the failing PBX node.
16. The telecommunications system of claim 10 wherein
the event comprises either an addition or a deletion of
extension numbers from one of the PBX nodes and the
addressing comprises an update of the memory accordingly.
17. The telecommunications system of claim 10 wherein
the packet network comprises one of a WAN, a LAN, or the
Internet.9. The method according to claim 8 further including, in
response to receiving a command from the gateway at the
PBX node, sending a notification to the corresponding node
socket at the gateway, and routing the notification to an
application originating the command.
18. A method for linking multiple CTI applications to
40 control a network of multiple interconnected PBX systems
such that the PBX systems appear to the CTI applications as
a single PBX system, the method comprising:
10. A telecommunications system comprising:
a remote site communicating with a gateway site over a 45
packet network;
the remote site having,
a plurality of individual PBX nodes identifiable by a
unique IP address for the node, each PBX node
including a plurality of associated endpoints and 50
each endpoint identified by an extension number, and
each PBX node communicating with a PSTN; and
the gateway site having,
a CT gateway processor having a software application
executing thereon for unifying a plurality of 55
bi-directional data to and from the remote site and
the gateway site,
a plurality of node communication ports wherein each
of the ports interacts with one of the PBX nodes,
a gateway stream system that periodically polls the 60
node communication ports to retrieve data received
from the PBX nodes,
a memory having retrievable storage comprising the
plurality of extension numbers for the endpoints and
the plurality of IP addresses for the PBX nodes, the 65
gateway stream system receiving an event from one
of the PBX nodes at its corresponding node com-
coupling the CTI applications and the PBX systems to a
gateway function over a packet network;
processing, at the gateway, bi-directional data routed
between the CTI applications and the PBX systems;
using a translation table in the gateway to selectively
route commands from one of the CTI applications to
the applicable PBX system;
using a translation table in the gateway to selectively
route events from one of the PBX systems to the
applicable CTI application; and
operating a service within the gateway to make modifi-
cations to the translation table in response to a change
comprising a PBX network or a device change, such
that the change appears transparent to the CTI appli-
cations.
19. The method according to claim 18 further including,
receiving the change from one of the PBX systems for
updating the translation table on a continuous basis.
20. The method according to claim 18 further including,
in response to receiving a specific command at the gateway
from one of the PBX systems, sending notification of the
change to the selected CTI application.
* * * * *

Más contenido relacionado

La actualidad más candente

Integrated Service Digital Network
Integrated Service Digital NetworkIntegrated Service Digital Network
Integrated Service Digital NetworkKishore Kumar
 
Adsl lab
Adsl labAdsl lab
Adsl labVNG
 
Packet Tracer Simulation Lab Layer3 Routing
Packet Tracer Simulation Lab Layer3 RoutingPacket Tracer Simulation Lab Layer3 Routing
Packet Tracer Simulation Lab Layer3 RoutingJohnson Liu
 
4 channel rf remote controller board manual
4 channel rf remote controller board manual4 channel rf remote controller board manual
4 channel rf remote controller board manualTotal Project Solutions
 
Kumar gunjan 20160213 mobile communication security
Kumar gunjan 20160213 mobile communication securityKumar gunjan 20160213 mobile communication security
Kumar gunjan 20160213 mobile communication securitynullowaspmumbai
 
Ip network audio system for office
Ip network audio system for officeIp network audio system for office
Ip network audio system for officeSimon Lin
 
6 zone music & paging sound system
6 zone music & paging sound system6 zone music & paging sound system
6 zone music & paging sound systemSimon Lin
 
8 zone audio matrix & paging system
8 zone audio matrix & paging system8 zone audio matrix & paging system
8 zone audio matrix & paging systemSimon Lin
 
Vlan configuration by amare simachew
Vlan configuration by amare simachewVlan configuration by amare simachew
Vlan configuration by amare simachewAssosa University
 
Technical Proposal - Public Address
Technical Proposal - Public AddressTechnical Proposal - Public Address
Technical Proposal - Public Addresswolfthrone
 

La actualidad más candente (20)

Integrated Service Digital Network
Integrated Service Digital NetworkIntegrated Service Digital Network
Integrated Service Digital Network
 
Icecrypt
IcecryptIcecrypt
Icecrypt
 
Adsl lab
Adsl labAdsl lab
Adsl lab
 
CPU
CPUCPU
CPU
 
Icecrypt
IcecryptIcecrypt
Icecrypt
 
Packet Tracer Simulation Lab Layer3 Routing
Packet Tracer Simulation Lab Layer3 RoutingPacket Tracer Simulation Lab Layer3 Routing
Packet Tracer Simulation Lab Layer3 Routing
 
Password Recovery
Password RecoveryPassword Recovery
Password Recovery
 
PI&T Conceptual Drawing
PI&T Conceptual DrawingPI&T Conceptual Drawing
PI&T Conceptual Drawing
 
Antiference
AntiferenceAntiference
Antiference
 
Rack Diagram PDF
Rack Diagram PDFRack Diagram PDF
Rack Diagram PDF
 
4 channel rf remote controller board manual
4 channel rf remote controller board manual4 channel rf remote controller board manual
4 channel rf remote controller board manual
 
Ft 50 manual
Ft 50 manualFt 50 manual
Ft 50 manual
 
Kumar gunjan 20160213 mobile communication security
Kumar gunjan 20160213 mobile communication securityKumar gunjan 20160213 mobile communication security
Kumar gunjan 20160213 mobile communication security
 
Ip network audio system for office
Ip network audio system for officeIp network audio system for office
Ip network audio system for office
 
6 zone music & paging sound system
6 zone music & paging sound system6 zone music & paging sound system
6 zone music & paging sound system
 
8 zone audio matrix & paging system
8 zone audio matrix & paging system8 zone audio matrix & paging system
8 zone audio matrix & paging system
 
Vlan configuration by amare simachew
Vlan configuration by amare simachewVlan configuration by amare simachew
Vlan configuration by amare simachew
 
Man ada102 eng
Man ada102 engMan ada102 eng
Man ada102 eng
 
Krypto500
Krypto500Krypto500
Krypto500
 
Technical Proposal - Public Address
Technical Proposal - Public AddressTechnical Proposal - Public Address
Technical Proposal - Public Address
 

Similar a 70 laura s. schultz - 6760427 - computer telephone (ct) network serviing multiple telephone switches

105 david e. mello - 7526079 - system and method for data attachment in liv...
105   david e. mello - 7526079 - system and method for data attachment in liv...105   david e. mello - 7526079 - system and method for data attachment in liv...
105 david e. mello - 7526079 - system and method for data attachment in liv...Mello_Patent_Registry
 
US20030227904
US20030227904US20030227904
US20030227904Oleg Sher
 
SAIL INDIA Study Report
SAIL INDIA Study ReportSAIL INDIA Study Report
SAIL INDIA Study ReportSAKIB HUSSAIN
 
Us3997874 time divided switching and concentration apparatus
Us3997874 time divided switching and concentration apparatusUs3997874 time divided switching and concentration apparatus
Us3997874 time divided switching and concentration apparatussatyanpitroda
 
Programmable command-line interface API for managing operation of a network d...
Programmable command-line interface API for managing operation of a network d...Programmable command-line interface API for managing operation of a network d...
Programmable command-line interface API for managing operation of a network d...Tal Lavian Ph.D.
 
Method and apparatus for automatically configuring a network switch
Method and apparatus for automatically configuring a network switchMethod and apparatus for automatically configuring a network switch
Method and apparatus for automatically configuring a network switchTal Lavian Ph.D.
 
access control physical.doc
access control physical.docaccess control physical.doc
access control physical.docElsinhaDavid
 
Network apparatus with Java co-processor
Network apparatus with Java co-processorNetwork apparatus with Java co-processor
Network apparatus with Java co-processorTal Lavian Ph.D.
 
US20030139919
US20030139919US20030139919
US20030139919Oleg Sher
 
Us4154988 method and means for accessing program memory of a common control t...
Us4154988 method and means for accessing program memory of a common control t...Us4154988 method and means for accessing program memory of a common control t...
Us4154988 method and means for accessing program memory of a common control t...satyanpitroda
 
Transport Layer [Autosaved]
Transport Layer [Autosaved]Transport Layer [Autosaved]
Transport Layer [Autosaved]Ram Dutt Shukla
 
LTE Attach Call Flow_Vi.pptx
LTE Attach Call Flow_Vi.pptxLTE Attach Call Flow_Vi.pptx
LTE Attach Call Flow_Vi.pptxGaganVerma62
 
Vivek Santhana Patent US7388946
Vivek Santhana Patent US7388946Vivek Santhana Patent US7388946
Vivek Santhana Patent US7388946Vivek Santhana
 
Interface method and system for accessing inner layers of a network protocol
Interface method and system for accessing inner layers of a network protocolInterface method and system for accessing inner layers of a network protocol
Interface method and system for accessing inner layers of a network protocolTal Lavian Ph.D.
 
Voice over internet_protocol
Voice over internet_protocolVoice over internet_protocol
Voice over internet_protocolammugowri
 
Introduction to Computer Networks and Network Security.pptx
Introduction to Computer Networks and Network Security.pptxIntroduction to Computer Networks and Network Security.pptx
Introduction to Computer Networks and Network Security.pptxShehanMarasinghe1
 
Systems and methods for communicating with an interactive voice response system
Systems and methods for communicating with an interactive voice response systemSystems and methods for communicating with an interactive voice response system
Systems and methods for communicating with an interactive voice response systemTal Lavian Ph.D.
 

Similar a 70 laura s. schultz - 6760427 - computer telephone (ct) network serviing multiple telephone switches (20)

105 david e. mello - 7526079 - system and method for data attachment in liv...
105   david e. mello - 7526079 - system and method for data attachment in liv...105   david e. mello - 7526079 - system and method for data attachment in liv...
105 david e. mello - 7526079 - system and method for data attachment in liv...
 
US20030227904
US20030227904US20030227904
US20030227904
 
SAIL INDIA Study Report
SAIL INDIA Study ReportSAIL INDIA Study Report
SAIL INDIA Study Report
 
Us3997874 time divided switching and concentration apparatus
Us3997874 time divided switching and concentration apparatusUs3997874 time divided switching and concentration apparatus
Us3997874 time divided switching and concentration apparatus
 
Programmable command-line interface API for managing operation of a network d...
Programmable command-line interface API for managing operation of a network d...Programmable command-line interface API for managing operation of a network d...
Programmable command-line interface API for managing operation of a network d...
 
Method and apparatus for automatically configuring a network switch
Method and apparatus for automatically configuring a network switchMethod and apparatus for automatically configuring a network switch
Method and apparatus for automatically configuring a network switch
 
access control physical.doc
access control physical.docaccess control physical.doc
access control physical.doc
 
Network apparatus with Java co-processor
Network apparatus with Java co-processorNetwork apparatus with Java co-processor
Network apparatus with Java co-processor
 
US20030139919
US20030139919US20030139919
US20030139919
 
Us4154988 method and means for accessing program memory of a common control t...
Us4154988 method and means for accessing program memory of a common control t...Us4154988 method and means for accessing program memory of a common control t...
Us4154988 method and means for accessing program memory of a common control t...
 
Zigbee 802-15-4
Zigbee 802-15-4Zigbee 802-15-4
Zigbee 802-15-4
 
Transport Layer
Transport LayerTransport Layer
Transport Layer
 
Transport Layer [Autosaved]
Transport Layer [Autosaved]Transport Layer [Autosaved]
Transport Layer [Autosaved]
 
LTE Attach Call Flow_Vi.pptx
LTE Attach Call Flow_Vi.pptxLTE Attach Call Flow_Vi.pptx
LTE Attach Call Flow_Vi.pptx
 
Vivek Santhana Patent US7388946
Vivek Santhana Patent US7388946Vivek Santhana Patent US7388946
Vivek Santhana Patent US7388946
 
Interface method and system for accessing inner layers of a network protocol
Interface method and system for accessing inner layers of a network protocolInterface method and system for accessing inner layers of a network protocol
Interface method and system for accessing inner layers of a network protocol
 
Voice over internet_protocol
Voice over internet_protocolVoice over internet_protocol
Voice over internet_protocol
 
Introduction to Computer Networks and Network Security.pptx
Introduction to Computer Networks and Network Security.pptxIntroduction to Computer Networks and Network Security.pptx
Introduction to Computer Networks and Network Security.pptx
 
C C N A Day5
C C N A  Day5C C N A  Day5
C C N A Day5
 
Systems and methods for communicating with an interactive voice response system
Systems and methods for communicating with an interactive voice response systemSystems and methods for communicating with an interactive voice response system
Systems and methods for communicating with an interactive voice response system
 

Más de Mello_Patent_Registry

134 mark s. thompson - 8449349 - elevator load bearing member having a jack...
134   mark s. thompson - 8449349 - elevator load bearing member having a jack...134   mark s. thompson - 8449349 - elevator load bearing member having a jack...
134 mark s. thompson - 8449349 - elevator load bearing member having a jack...Mello_Patent_Registry
 
133 stephanie mello - 8439759 - system and method of facilitating external ...
133   stephanie mello - 8439759 - system and method of facilitating external ...133   stephanie mello - 8439759 - system and method of facilitating external ...
133 stephanie mello - 8439759 - system and method of facilitating external ...Mello_Patent_Registry
 
132 qian wang - 8415131 - m13 bacteriophage as a chemoaddressable nanoparti...
132   qian wang - 8415131 - m13 bacteriophage as a chemoaddressable nanoparti...132   qian wang - 8415131 - m13 bacteriophage as a chemoaddressable nanoparti...
132 qian wang - 8415131 - m13 bacteriophage as a chemoaddressable nanoparti...Mello_Patent_Registry
 
130 michael m. iwatake - 8288828 - via contact structure having dual silici...
130   michael m. iwatake - 8288828 - via contact structure having dual silici...130   michael m. iwatake - 8288828 - via contact structure having dual silici...
130 michael m. iwatake - 8288828 - via contact structure having dual silici...Mello_Patent_Registry
 
129 andrew z. fire - 8283329 - genetic inhibition of double-stranded rna
129   andrew z. fire - 8283329 - genetic inhibition of double-stranded rna129   andrew z. fire - 8283329 - genetic inhibition of double-stranded rna
129 andrew z. fire - 8283329 - genetic inhibition of double-stranded rnaMello_Patent_Registry
 
128 phillip d. zamore - 8232260 - in vivo production of small interfering r...
128   phillip d. zamore - 8232260 - in vivo production of small interfering r...128   phillip d. zamore - 8232260 - in vivo production of small interfering r...
128 phillip d. zamore - 8232260 - in vivo production of small interfering r...Mello_Patent_Registry
 
127 dennis cherok - 8182545 - implantable prosthesis
127   dennis cherok - 8182545 - implantable prosthesis127   dennis cherok - 8182545 - implantable prosthesis
127 dennis cherok - 8182545 - implantable prosthesisMello_Patent_Registry
 
126 daniel j. nelson - 8180712 - methods and apparatus for determining whet...
126   daniel j. nelson - 8180712 - methods and apparatus for determining whet...126   daniel j. nelson - 8180712 - methods and apparatus for determining whet...
126 daniel j. nelson - 8180712 - methods and apparatus for determining whet...Mello_Patent_Registry
 
125 robert f. bigelow, jr. - 8100754 - gaming system having multi-player wh...
125   robert f. bigelow, jr. - 8100754 - gaming system having multi-player wh...125   robert f. bigelow, jr. - 8100754 - gaming system having multi-player wh...
125 robert f. bigelow, jr. - 8100754 - gaming system having multi-player wh...Mello_Patent_Registry
 
124 michael mello - 7990543 - surface characterization based on optical pha...
124   michael mello - 7990543 - surface characterization based on optical pha...124   michael mello - 7990543 - surface characterization based on optical pha...
124 michael mello - 7990543 - surface characterization based on optical pha...Mello_Patent_Registry
 
123 goldino alves - 7971687 - elevator belt assembly with noise reducing gr...
123   goldino alves - 7971687 - elevator belt assembly with noise reducing gr...123   goldino alves - 7971687 - elevator belt assembly with noise reducing gr...
123 goldino alves - 7971687 - elevator belt assembly with noise reducing gr...Mello_Patent_Registry
 
122 thomas s. wiggin - 7963242 - anchor containing a self deploying mooring...
122   thomas s. wiggin - 7963242 - anchor containing a self deploying mooring...122   thomas s. wiggin - 7963242 - anchor containing a self deploying mooring...
122 thomas s. wiggin - 7963242 - anchor containing a self deploying mooring...Mello_Patent_Registry
 
121 john p. hogan - 7921024 - it service management technology enablement
121   john p. hogan - 7921024 - it service management technology enablement121   john p. hogan - 7921024 - it service management technology enablement
121 john p. hogan - 7921024 - it service management technology enablementMello_Patent_Registry
 
120 peter j. mello - 7914604 - air conditioning system with modular electri...
120   peter j. mello - 7914604 - air conditioning system with modular electri...120   peter j. mello - 7914604 - air conditioning system with modular electri...
120 peter j. mello - 7914604 - air conditioning system with modular electri...Mello_Patent_Registry
 
119 phillip d. zamore - 7893036 - in vivo production of small interfering r...
119   phillip d. zamore - 7893036 - in vivo production of small interfering r...119   phillip d. zamore - 7893036 - in vivo production of small interfering r...
119 phillip d. zamore - 7893036 - in vivo production of small interfering r...Mello_Patent_Registry
 
117 mark s. thompson - 7883634 - elevator load bearing member having a jack...
117   mark s. thompson - 7883634 - elevator load bearing member having a jack...117   mark s. thompson - 7883634 - elevator load bearing member having a jack...
117 mark s. thompson - 7883634 - elevator load bearing member having a jack...Mello_Patent_Registry
 
116 paulo mello - 7806665 - auxiliary braking device for wellhead having pr...
116   paulo mello - 7806665 - auxiliary braking device for wellhead having pr...116   paulo mello - 7806665 - auxiliary braking device for wellhead having pr...
116 paulo mello - 7806665 - auxiliary braking device for wellhead having pr...Mello_Patent_Registry
 
115 steven m. mello - 7766223 - method and system for mobile services
115   steven m. mello - 7766223 - method and system for mobile services115   steven m. mello - 7766223 - method and system for mobile services
115 steven m. mello - 7766223 - method and system for mobile servicesMello_Patent_Registry
 
114 craig c. mello - 7759463 - rna interference pathway genes as tools for ...
114   craig c. mello - 7759463 - rna interference pathway genes as tools for ...114   craig c. mello - 7759463 - rna interference pathway genes as tools for ...
114 craig c. mello - 7759463 - rna interference pathway genes as tools for ...Mello_Patent_Registry
 
113 phillip d. zamore - 7691995 - in vivo production of small interfering r...
113   phillip d. zamore - 7691995 - in vivo production of small interfering r...113   phillip d. zamore - 7691995 - in vivo production of small interfering r...
113 phillip d. zamore - 7691995 - in vivo production of small interfering r...Mello_Patent_Registry
 

Más de Mello_Patent_Registry (20)

134 mark s. thompson - 8449349 - elevator load bearing member having a jack...
134   mark s. thompson - 8449349 - elevator load bearing member having a jack...134   mark s. thompson - 8449349 - elevator load bearing member having a jack...
134 mark s. thompson - 8449349 - elevator load bearing member having a jack...
 
133 stephanie mello - 8439759 - system and method of facilitating external ...
133   stephanie mello - 8439759 - system and method of facilitating external ...133   stephanie mello - 8439759 - system and method of facilitating external ...
133 stephanie mello - 8439759 - system and method of facilitating external ...
 
132 qian wang - 8415131 - m13 bacteriophage as a chemoaddressable nanoparti...
132   qian wang - 8415131 - m13 bacteriophage as a chemoaddressable nanoparti...132   qian wang - 8415131 - m13 bacteriophage as a chemoaddressable nanoparti...
132 qian wang - 8415131 - m13 bacteriophage as a chemoaddressable nanoparti...
 
130 michael m. iwatake - 8288828 - via contact structure having dual silici...
130   michael m. iwatake - 8288828 - via contact structure having dual silici...130   michael m. iwatake - 8288828 - via contact structure having dual silici...
130 michael m. iwatake - 8288828 - via contact structure having dual silici...
 
129 andrew z. fire - 8283329 - genetic inhibition of double-stranded rna
129   andrew z. fire - 8283329 - genetic inhibition of double-stranded rna129   andrew z. fire - 8283329 - genetic inhibition of double-stranded rna
129 andrew z. fire - 8283329 - genetic inhibition of double-stranded rna
 
128 phillip d. zamore - 8232260 - in vivo production of small interfering r...
128   phillip d. zamore - 8232260 - in vivo production of small interfering r...128   phillip d. zamore - 8232260 - in vivo production of small interfering r...
128 phillip d. zamore - 8232260 - in vivo production of small interfering r...
 
127 dennis cherok - 8182545 - implantable prosthesis
127   dennis cherok - 8182545 - implantable prosthesis127   dennis cherok - 8182545 - implantable prosthesis
127 dennis cherok - 8182545 - implantable prosthesis
 
126 daniel j. nelson - 8180712 - methods and apparatus for determining whet...
126   daniel j. nelson - 8180712 - methods and apparatus for determining whet...126   daniel j. nelson - 8180712 - methods and apparatus for determining whet...
126 daniel j. nelson - 8180712 - methods and apparatus for determining whet...
 
125 robert f. bigelow, jr. - 8100754 - gaming system having multi-player wh...
125   robert f. bigelow, jr. - 8100754 - gaming system having multi-player wh...125   robert f. bigelow, jr. - 8100754 - gaming system having multi-player wh...
125 robert f. bigelow, jr. - 8100754 - gaming system having multi-player wh...
 
124 michael mello - 7990543 - surface characterization based on optical pha...
124   michael mello - 7990543 - surface characterization based on optical pha...124   michael mello - 7990543 - surface characterization based on optical pha...
124 michael mello - 7990543 - surface characterization based on optical pha...
 
123 goldino alves - 7971687 - elevator belt assembly with noise reducing gr...
123   goldino alves - 7971687 - elevator belt assembly with noise reducing gr...123   goldino alves - 7971687 - elevator belt assembly with noise reducing gr...
123 goldino alves - 7971687 - elevator belt assembly with noise reducing gr...
 
122 thomas s. wiggin - 7963242 - anchor containing a self deploying mooring...
122   thomas s. wiggin - 7963242 - anchor containing a self deploying mooring...122   thomas s. wiggin - 7963242 - anchor containing a self deploying mooring...
122 thomas s. wiggin - 7963242 - anchor containing a self deploying mooring...
 
121 john p. hogan - 7921024 - it service management technology enablement
121   john p. hogan - 7921024 - it service management technology enablement121   john p. hogan - 7921024 - it service management technology enablement
121 john p. hogan - 7921024 - it service management technology enablement
 
120 peter j. mello - 7914604 - air conditioning system with modular electri...
120   peter j. mello - 7914604 - air conditioning system with modular electri...120   peter j. mello - 7914604 - air conditioning system with modular electri...
120 peter j. mello - 7914604 - air conditioning system with modular electri...
 
119 phillip d. zamore - 7893036 - in vivo production of small interfering r...
119   phillip d. zamore - 7893036 - in vivo production of small interfering r...119   phillip d. zamore - 7893036 - in vivo production of small interfering r...
119 phillip d. zamore - 7893036 - in vivo production of small interfering r...
 
117 mark s. thompson - 7883634 - elevator load bearing member having a jack...
117   mark s. thompson - 7883634 - elevator load bearing member having a jack...117   mark s. thompson - 7883634 - elevator load bearing member having a jack...
117 mark s. thompson - 7883634 - elevator load bearing member having a jack...
 
116 paulo mello - 7806665 - auxiliary braking device for wellhead having pr...
116   paulo mello - 7806665 - auxiliary braking device for wellhead having pr...116   paulo mello - 7806665 - auxiliary braking device for wellhead having pr...
116 paulo mello - 7806665 - auxiliary braking device for wellhead having pr...
 
115 steven m. mello - 7766223 - method and system for mobile services
115   steven m. mello - 7766223 - method and system for mobile services115   steven m. mello - 7766223 - method and system for mobile services
115 steven m. mello - 7766223 - method and system for mobile services
 
114 craig c. mello - 7759463 - rna interference pathway genes as tools for ...
114   craig c. mello - 7759463 - rna interference pathway genes as tools for ...114   craig c. mello - 7759463 - rna interference pathway genes as tools for ...
114 craig c. mello - 7759463 - rna interference pathway genes as tools for ...
 
113 phillip d. zamore - 7691995 - in vivo production of small interfering r...
113   phillip d. zamore - 7691995 - in vivo production of small interfering r...113   phillip d. zamore - 7691995 - in vivo production of small interfering r...
113 phillip d. zamore - 7691995 - in vivo production of small interfering r...
 

Último

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 

Último (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 

70 laura s. schultz - 6760427 - computer telephone (ct) network serviing multiple telephone switches

  • 1. (12) United States Patent Schultz et al. (54) COMPUTER TELEPHONY (CT) NETWORK SERVING MULTIPLE TELEPHONE SWITCHES (75) Inventors: Laura S. Schultz, Gilbert, AZ (US); Mark J. Dancho, Chandler, AZ (US); David Mello, Chandler, AZ (US) (73) Assignee: Inter-Tel, Inc., Tempe, AZ (US) ( *) Notice: Subject to any disclaimer, the term of this patent is extended or adjusted under 35 U.S.C. 154(b) by 460 days. (21) Appl. No.: 09/894,047 (22) Filed: (65) Jun.28,2001 Prior Publication Data (51) (52) (58) (56) US 2003/0002647 A1 Jan. 2, 2003 Int. Cl? ................................................. H04M 7/00 U.S. Cl. ................... 379/225; 379/219; 379/220.01 Field of Search ........................... 379/88.13, 88.14, 379/88.17, 142.D7, 207.12, 207.14, 211.02, 220.01, 221.06, 265.02, 265.09, 219, 225 References Cited U.S. PATENT DOCUMENTS 4,527,012 A 4,653,085 A 5,339,356 A * 5,414,762 A 5,479,487 A 5,499,289 A 5,546,452 A 7/1985 3/1987 8/1994 5/1995 12/1995 3/1996 8/1996 Caplan Chan Ishii ........................... 379/234 Flisik Hammond Bruno Andrews 111111 1111111111111111111111111111111111111111111111111111111111111 US006760427B2 (10) Patent No.: US 6,760,427 B2 Jul. 6, 2004(45) Date of Patent: 5,848,143 A 5,987,102 A 6,011,844 A 6,021,428 A 6,026,087 A 6,091,808 A 6,094,479 A * 6,154,465 A 6,181,788 B1 6,295,350 B1 * 6,359,711 B1 * 6,359,892 B1 * 6,381,324 B1 * 6,393,017 B1 * 6,453,035 B1 * 6,480,595 B1 * 6,584,110 B1 * 6,636,587 B1 * * cited by examiner 12/1998 11/1999 1!2000 2/2000 2/2000 7/2000 7/2000 11/2000 1!2001 9/2001 3/2002 3/2002 4/2002 5!2002 9/2002 11/2002 6/2003 10/2003 Andrews Elliott Uppaluru Miloslavsky Mirashrafi Wood Lindeberg et a!. ..... 379/220.01 Pickett Miloslavsky Schreyer et a!. ....... 379/221.01 Cole et a!. .................... 398/58 Szlam ........................ 370/401 Shaffer et a!. ......... 379/211.02 Galvin et a!. ............... 370/352 Psarras et a!. ......... 379/221.08 Hamano ..................... 379/225 Mizuta et a!. .............. 370/401 Nagai eta!. ............. 379/88.14 Primary Examiner-Bing Bui (74) Attorney, Agent, or Firm-Michelle Whittington (57) ABSTRACT An enhanced computer telephony (CT) network design for a private branch exchange (PBX) telephone system network improves the computer telephony interface (CTI) capabili- ties of the network. Bi-directional data from remote tele- phone switching nodes of different PBX systems, each using a common software application, is combined into a single data stream by the network to simplify control of the remote PBX systems. Commands to, and events received from, the different PBX switching nodes are combined by use of a gateway to automatically and transparently route digital information for control of the correct remote system node. 20 Claims, 5 Drawing Sheets
  • 2. U.S. Patent Jul. 6, 2004 Sheet 1 of 5 US 6,760,427 B2 44 GATEWAY SITE 60 LOCAL AREA NETWORK 66 64 62 LISTENING IP SOCKET SOCKET1 ••• 70 =0 =- -- -- -- -- - CTI PROCESSOR Fig. 1
  • 3. U.S. Patent Jul. 6, 2004 Sheet 2 of 5 START GATEWAY PROCESSING 8 0 + REPEAT FOR EACH PBX SYSTEM ~ 82 NODE'S IP ADDRESS ON FILE + QUERY THE NODE FOR ~ CONFIRMATION OF OPERATING 84 STATUS AND SOFTWARE VERSION •QUERY NODE FOR SPECIFIC DEVICE ID'S 86 •GATHER DEVICE ID'S FOR ~ 88 SYSTEM-lEVEL DEVICES IN THE GATEWAY DATABASE •UPDATE GATEWAY'S 1------90 TRANSlATION DATABASE •INFORM PBX NODE THAT AN OAI ~ 92 GATEWAY HAS BEEN SUCCESSFULlY CONNECTED •BEGIN MONITORING PBX NODE'S ~ 94 SYSTEM EVENTS •ASCERTAIN ANY SPECIAl MODES OF _...___ 96 OPERATION FOR THE PBX NODE •~---RE_PEA_T_BL~OC_K(_EN_D)__~~97 •PBX NODES ARE READY FOR PROCESSING Fig. 2 98 US 6,760,427 B2
  • 4. U.S. Patent Jul. 6, 2004 Sheet 3 of 5 US 6,760,427 B2 START SOFTWARE APPLICATION PROCESSING 100 ~ OAI SOFTWARE APPLICATION CLIENTS LOGIN TO THE OAI GATEWAY SERVER 102 tEACH SOFTWARE APPLICATION BEGINS BY SENDING DEVICE MONITOR REQUESTS 104 ~ INTERVENE AND DIRECTLY CONFIRM ANY DEVICES ALREADY BEING MONITORED 106 ~ DEVICE# :NODE# ~108 MAPPING ~ ISSUE TRANSLATED DEVICE "EXTENSION NUMBERS" FOR INITIALIZATION COMMANDS 110 ~ APPL#: COMMAND ID ~112 MAPPING ~ SEND SOFTWARE APPLICATION CONFIRMATIONS TO PBX NODES 114 t INITIALIZE COMMAND SEQUENCE NUMBERS AND ASSOCIATE WITH SOFTWARE ~ 116 APPLICATIONS ~ INITIALIZE OPERATION OF [GATEWAY<> PBX NODE] r--118 SEQUENCE NUMBER VERIFIER t( SOFTWARE APPLICATION INITIALIZATION COMPLETE 120 Fig. 3
  • 5. U.S. Patent Jul. 6, 2004 Sheet 4 of 5 US 6,760,427 B2 APPLICATION(S) SENDS COMMAND TO THE GATEWAY 130 INVOKE APPROPRIATE CALl HANDLING ROUTINE(S) 132 ISSUE APPROPRIATE CALl CONTROl COMMAND(S) 134 DEVICE# :NODE# r--136 MAPPING COMMAND IS SENT TO THE APPROPRIATE PBX SYSTEM NODE &DEVICE 138 COMMAND IS PROCESSED AND ACKNOWlEDGED BY THE PBX NODE'S DEVICE 140 PBX NODE SENDS ACONFIRMATION MESSAGE TO THE GATEWAY 141 GATEWAY DETERMINES WHICH APPLICATION IS WAITING ~ 142 FOR THE COMMAND CONFIRMATION THROUGH ALOOKUP TABlE APPLICATION(S) RECEIVES THE ACKNOWLEDGMENT 144 BASIC CAll CONTROl SEQUENCE IS COMPlETE 146 Fig. 4
  • 6. U.S. Patent Jul. 6, 2004 Sheet 5 of 5 PBX NODE SENDS AN ASYNCHRONOUS EVENT TO THE GATEWAY YES NO 164 GATEWAY DETERMINES WHICH (IF ANY) CTI APPLICATIONS WANT TO RECEIVE THE EVENT GATEWAY SENDS THE EVENT TO ALL APPROPRIATE CTI APPLICATIONS EVENT HANDLING SEQUENCE IS COMPLETE Fig. 5 US 6,760,427 B2 160 162 GATEWAY UPDATES THE DEVICE# :NODE# MAPPING TABLE TO REFLECT THE CHANGE 166 168
  • 7. US 6,760,427 B2 1 COMPUTER TELEPHONY (CT) NETWORK SERVING MULTIPLE TELEPHONE SWITCHES BACKGROUND Customer owned private branch exchange (PBX) systems are in widespread use. PBX systems adequately serve a large number of stations or telephone extensions in a single location. Frequently, however, customers have multiple locations, each having a PBX system or hybrid key system associated with it. These systems typically are controlled by computer-telephone integration (CTI) processors into vari- ous types of networks. An early communications switching concept was dis- closed in U.S. Pat. No. 4,527,012 to allow telephone call processing to be carried out by a host computer connected to a telephone system. The host computer viewed the telephone system as a peripheral device. The host computer then controlled the switching system with a series of high level commands exchanged between the switching system and the host computer. The commands were referenced to physical system ports to control the operation of those ports directly, based on the current call processing state. The connection of the host computer to the telephone system was accomplished by using a serial port (such as the RS-232 port). The system of this patent, however, and systems similar to it, are not inherently capable of connections or control using a com- puter network like TCP/IP because of the electrical network interface limitations of serial ports. In addition, computer programs of the type disclosed in the '012 patent must be aware of each equipped physical system port, and maintain 2 The system of the patent, however, provides no functional support for an application software developer to address the needs of multiple PBX systems, or for expanded networks of PBX systems in multiple locations. In either of these cases, 5 the application software must be enhanced to allow it to be aware of, and to properly control, multiple PBX nodes. Because the application software resides at the client level, it can only control one call per work station and cannot address the needs of the entire system. An approach to 10 resolve problems associated with routing calls to geographi- cally distributed PBX nodes is disclosed in U.S. Pat. Nos. 5,546,452 and 5,848,143. The systems of these patents use a central controller with global authority to allow resident software to route calls appropriately to agents who are 15 connected at various locations within the PBX network. The systems disclosed in these patents require the central pro- cessor to be equipped with routing and management soft- ware specifically designed for the expected call processing activity. These systems do not facilitate the transposition of 20 a generic computer telephony application from a single PBX to networked PBX environment, and must take full control of the PBX network by correlating the identities of logged-in agents with a physical node and port locations in the PBX. As a consequence, the approach used in the systems of these 25 patents requires a facility which must undergo continuous parallel maintenance to keep up with PBX user changes. U.S. Pat. No. 5,479,487 discloses a system for allowing a centrally located scripting language to control a call as it passes between functional partitions within a call center 30 system. The system creates a scripted development environ- ment for distributed call processing products; but it does not address cases where there is a distributed network of PBX systems which require computer telephony control from a separate cross reference to correlate ports functionally to the assigned extension numbers, trunk numbers and so forth. 35 some centralized application. U.S. Pat. No. 6,011,844 is directed to a system for saving long distance toll charges. The system uses interconnected computer gateways to coordinate the switching of calls between network call centers. Each of these call centers receives telephone traffic according to methods designed to provide the lowest cost handling of each call, and only "bridges in" calls over the long distance network when A different approach is disclosed in U.S. Pat. No. 4,653, 085. In the system of this patent, computer telephony is implemented by attaching an adjunct processor to an asso- ciated telephone system port and sending control informa- tion for calls requiring additional call processing using a 40 data exchange with the adjunct computer to simulate the actions of a connected station. The system of this patent requires all telephone calls, which are to be handled accord- ing to the stored program in the adjunct processor, to be transmitted by the telephone system to the port associated 45 with that adjunct processor. The adjunct processor then sends direct commands back to the telephone system indi- cating the disposition of the call by directly sending a command to the port being served. Consequently, the adjunct computer simulates the behavior of a human opera- 50 tor. This system is limited by the volume of traffic which can necessary. The system of this patent is narrowly focused on reducing call traffic over the long distance network which may be handled in a local call center. The system is not capable of centralized consolidation of events arriving from different connected PBX nodes. With the advent of intelligent networks within the public telephone system, U.S. Pat. No. 6,094,479 is directed to a solution which allows for the public network service control element to link with a PBX located within a customer's private network by using a gateway between the private and public network segments. The gateway, however, is limited in its functionality because it simply provides a standard means to link between two networks, and does not address be processed by a single operator (adjunct computer), and therefore it is not suitable for system-wide call handling tasks without terminating multiple ports to simulate the activities of multiple human operators. 55 the problems created when a customer makes the transition from single to multiple PBX nodes within a private network.U.S. Pat. No. 5,414,762 is directed to a system for providing computer control to a variety of PBX systems. In the system of this patent, a controller is used to allow one or more computers from a group of computer clients to send commands to a PBX by way of a server computer, and also 60 to receive status information from the connected PBX. A converter which is specific to a particular PBX manufacturer is provided to allow the brand of PBX to be changed without having to modify the communications protocol, and therefore, the application software, that the computer client contains. The primary focus of this system is to allow the same client software to control a variety of PBX platforms. U.S. Pat. No. 6,181,788 is directed to a system for achieving uniform control of mixed platforms in telephony. Not all PBX manufacturers use the same protocols to implement computer-telephone integration (CTI) interfaces to a control computer. This patent is directed to a solution to solve software interface problems for customers who have a network of mixed types of PBX systems. The solution proposed in the '788 patent is to use the CTI processors to 65 convert the protocols from each PBX and then network together the CTI processors by way of a peer-to-peer net- work. Each CTI processor contains its own software with
  • 8. US 6,760,427 B2 3 some form of messaging used to loosely link the various systems at each site. This patent is directed to the problem of mixed or different PBX system types. The patent does not address the problem of system scaling (that is, adding additional PBX's to a customer's system), and control of networked systems using a common software application. It is desirable to enhance the CTI functionality of a PBX network having multiple nodes by combining bi-directional data from remote telephone switching nodes (different PBX systems) into one data stream to simplify the control of the remote system. SUMMARY OF THE INVENTION 4 a block diagram illustrating the inclusion of a CT gateway processor as part of the system. As shown in FIG. 1, four separate PBX systems 10, 20, 30 and 40, all using a common software application, are employed as part of a PBX network 5 for a single user, such as a business with offices in four different locations. Each of the PBX systems is connected with the public switched telephone network (PSTN), shown as 12 for the PBX 10, and includes a plurality of telephone devices or locations, shown as 14 for the PBX 10, each of 10 which are reached by a particular extension number. For the PBX systems 20, 30 and 40, the PSTN links are shown as 22, 32 and 42, respectively; and the telephones associated with the individual PBX's 20, 30 and 40 are indicated as 24, 34 It is an object of this invention to provide an improved system and method for serving multiple telephone switches. 15 and 44, respectively. In the system shown in FIG. 1, all of the different PBX locations are linked through a wide area network (WAN) 50, through a site router 52, for communication with one another. For the PBX 10, the local interconnections to a local area network (LAN) 60 are indicated; and the LAN 60 is It is another object of this invention to provide an improved method and system for a private branch exchange (PBX) telephone system network. It is an additional object of this invention to provide an improved interface network linking a plurality of PBX systems over a wide area network. It is a further object of this invention to provide an improved system and method employing computer tele- phony interface (CT) for a private branch exchange (PBX) telephone system network using a common software appli- cation for linking each of the PBX exchanges together in a transparent manner to users at any of the exchanges. 20 shown as utilizing a computer-telephony integration (CTI) applications processor 62 associated with it for executing applications for communicating between the different PBX systems on the network over the WAN 50. In accordance with a preferred embodiment of the invention, a computer telephony interface CT) for a private branch exchange (PBX) telephone system network utilizes a gateway processing system located on an adjacent computer. Each of the PBX systems has a unique address; and they are linked together through a wide area network (WAN), local area network (LAN), or the Internet to the Gateway pro- cessing system. The processing system includes translation tables for the addresses, as well as individual station exten- sions; so that calls originating from any one of the PBX systems on the network and directed to a station on any of the other PBX systems on the network pass their event (call 40 progress) notification through the gateway where it is trans- lated and directly sent to all users (applications) that requested the information in a manner which is transparent Also illustrated in FIG. 1 is a CTI application desktop and 25 telephone 64 connected to the LAN 60, which can be linked to and through the PBX 10 in a conventional manner. Other system devices with which the computer telephony interface (CT) gateway processor 66 communicates also may be included; and stub-outs showing potential connections to 30 such other devices on the LAN bus 60 are indicated in FIG. 1. It should be noted that communications through the CT gateway 66 to different PBX nodes, such as the remote nodes 20, 30 and 40 are effected by using a standard site router device 52 to send and receive TCP/IP packets in data 35 transfers in a conventional manner. The operating software of the system control arrangement which is effected by the CT Gateway 66 constantly accesses and updates information from a common translation data- base as data arrives by way of the WAN 50 or LAN 60 on behalf of each of the switching system nodes 10, 20, 30, 40. to the users of the system. Thus, the users are not aware that more than one PBX system is involved in the call event. The 45 system also allows for changing the data in the translation table to allow relocation of a device associated with a particular extension number to any one of the PBX systems Each switch node has a respective socket 74 which it uses for communications to the CT Gateway 66. The Gateway stream process 70 continuously polls these sockets 74 in the event that the switching node has sent data to it. All of this is placed into a resulting consolidated event data stream made available to one or more CT software applications automatically. This is illustrated generally in the diagram of FIG. 1 by the interconnections from the listening or incom- in the network without requiring individual programming at that, or any other, network. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a schematic diagram of a preferred embodiment of the invention; FIG. 2 is a flow chart useful in explaining the initialization of the system; FIG. 3 is a flow chart illustrating software application processing; 50 ing IP sockets 68 to the Gateway stream process 70. Although the system described immediately above refers to specific "sockets", rather than relying on actual physical connections employed by previous product designs, the CT Gateway 66 only requires that a standard TCP!IP network 55 connection be available between the connected devices. This allows a network installer to quickly verify that all required devices are properly interconnected into the network logic without having to interconnect complicated panels of physi- FIG. 4 is a flow chart illustrating system shown in FIG. 1; and an operation of the 60 cal RS-232 ports. The end result is an interconnection topology based on standard TCP/IP networks recognized by the computer industry. The application-level information FIG. 5 is a flow chart illustrating system shown in FIG. 1. an operation of the DETAILED DESCRIPTION Reference now should be made to the drawings, which illustrate a preferred embodiment of the invention. FIG. 1 is 65 present within the TCP!IP packets acts as a transport for the majority of the communication network infrastructure of the preferred embodiment of the invention illustrated in FIG. 1. In order to transparently program and/or control each of the various telephony devices, such as 14, 24, 34, 44 or "extensions" used with any one of the PBX systems 10, 20,
  • 9. US 6,760,427 B2 5 30 or 40, an extension number and node translation data base memory 72 is provided for mapping all of the extensions in all of the PBX systems 10, 20, 30 and 40 into a single random access memory 72. Once this is done, the specific extension number as well as the IP address for the PBX 20, 5 30, 40 or 10 with which it is associated, is stored in the memory 72. A link from a calling party at any of the PBX system nodes is made by the Gateway stream process 70 through corresponding output node "sockets" 74, equal in number to the number of PBX systems 10, 20, 30, 40 (or 10 whatever number) used in the completed network. Once again, while specific reference is made to "sockets" on the output side of the process 70, it should be noted that standard TCP/IP network connections are utilized to effect the trans- fer of data from the CT Gateway 66 back onto the LAN 60, and then on through the site router 52 and the WAN 50, if 15 necessary, to the desired location. In order for the Gateway to provide data to applications, the CT Gateway 66 must be integrated into the user's network to provide services to this network. The CT Gate- way must then be started, either manually or automatically, 20 as determined by the user. The processing which occurs during startup is illustrated in FIG. 2. Prior to this initialization, the user is required to configure valid IP address and ports for each of the PBX systems to be used, as well as configuring the master or listening socket 68 for 25 the gateway. This master socket is used by the Gateway to listen for clients requesting connections to the server. Upon commencing initialization, the gateway connects to each switch node using the respective socket 74. The processing begins as shown on FIG. 2 "Start Gateway Processing" 80. 30 It should be noted that the following initialization may be repeated for each PBX system node's IP address. As such "repeat" blocks 82 and 97 are included to illustrate that initialization may be effectuated for each PBX system. The gateway first obtains the operating status and software version of the switching node at 84. It will then query the 35 individual device identifiers for the node at 86 placing each device entity obtained into the Gateway database 88 and 90. The gateway will inform the PBX system node of the gateway presence at 92 and begin monitoring the node for any system event data at 94. The gateway may then also 40 ascertain if any of the PBX systems include a special mode of operation, e.g. diagnostic. login, monitoring, perfor- mance. etc. at 96. It will also configure the PBX system node so that the data it sends is in the format required by the gateway. The PBX nodes are now ready for processing at 98. 45 Once all of the PBX systems have completed this initialization, the Gateway will begin to listen for applica- tions request for service through the master socket 68. The client application on the CTI application desktop 64 will attempt to establish communication with the Gateway by 50 sending a logon message to the gateway by way of the master socket 68. Once the Gateway has recognized this application, it will send a "power up" response indicating it is ready to begin servicing the client's application on the CTI application 64. The logon message sent by the client must 55 take the form of: <ByteCount><Type of Socket><Password>OxOO[<AppName>Ox 00] 6 Upon rece1vmg the Power Up response from the CT Gateway 66, the application on the desktop 64 is free to send any commands to allow it to perform its task. In most cases this will require the application to begin monitoring a device or set of devices. This results in monitor start request arriving at the CT Gateway 66 from the application desktop 64. These commands are processed and are routed to the proper PBX node socket 74 by determining which device is affected in the command and mapping it to the correspond- ing PBX node using the gateway database 72. In the event that the gateway determines that a monitor already exists for a particular device, it will not need to forward the command to a PBX node, but simply creates a suitable response for the application on desktop 64 immediately. In the event the device is not yet monitored, a command is sent to a PBX node which will shortly thereafter send a command response back to the socket 74. The Gateway receives this command response and determines which application the response is destined for and routes it to the application on the desktop 64 only. In the event the monitored device generates an event, the event is routed to the socket 74, which is polled shortly thereafter by the Gateway stream process 70. At this point the Gateway 66 determines the device and type of event and then determines if any application will require this event. The event then is forwarded to any interested applications, such as those on the desktop 64. The system also routinely polls the application sockets 68 looking for commands to send to the phone system. The commands are processed and the affected extension infor- mation is used along with the database 72 to determine to which switch socket(s) 74 connection the command is to be routed. After the command(s) is sent and acknowledged by the switch node which posts a response at socket 74, the Gateway then subsequently routes the response to the asso- ciated application which originated the command. In the course of normal processing, as data arrives at a socket 74 for each PBX node, the system uses the sequence number of the message to determine if there has been any data lost between messages. In the event that there has been lost data, the Gateway 66 generates an error event to each application which uses the specified node and once again performs initialization processing on that node. Once the node completes re-initialization the application processing can recommence. While the node is not responding, the application is unable to route commands to the switching system (unless they are node aware, as described subsequently). In special cases, an application can command the Gate- way 66 to let it be more intelligent about the topography of the switching environment. It allows the application to know what nodes are present, as well as to be less affected by the failure of any one node. This mode of operation is referred to as node awareness and allows a single node failure not to adversely affect the behavior of the external application. In the event of loss of communication at any single node, the Gateway 66 sends the application a link status failure and attempts to recommence communication with the failing phone system node. The application is still able to send commands to all of the other operating nodes. This is in stark contrast to a non-node aware application, which cannot where: ByteCount---(the byte count for the data being passed) Type of socket-passed as hex 87 (Ox87) Password-up to 15 ASCII characters 60 communicate with any node until communication is restored to the failing node. Appname-up to 32 ASCII characters. This is optional, but it is useful in knowing which socket connection is connected to which application when running multiple applications. In the course of normal processing, extensions can be added or deleted from a switching node. These changes result in extension change events sent to the socket 74 for the 65 associated PBX node. Upon polling the socket, the gateway 66 adjusts the database 72 with respect to the extension change event.
  • 10. US 6,760,427 B2 7 FIG. 3 is an example of one manner of programming which illustrates an operation of the system to complete initialization at 100. The system may include a login pro- cedure to the gateway server at 102. The system, at 104, allows each software application to internally initiate and 5 begin sending device monitor sequences to open communi- cations links with associated devices. If some devices already are begin monitored, confirmation is made at 106; and then the device numbers (telephone extensions) and the node numbers mapping is done at 108. After the device and 10 nodes mapping, the system issues translated device "exten- sion numbers" for initialization commands at 110; and these are provided with application numbers and command ID mapping at 112. Software applications then are confirmed to the PBX nodes at 114; and command sequence numbers are 15 initialized and associated with the software applications at 116. The operation of the sequence number verifier, that is the Gateway and the PBX node, are accomplished at 118; and the software application initialization is completed at 120. The system is now prepared to operate as a commu- 20 nications link which is transparent to the users at each of the different PBX nodes 10, 20, 30 and 40. As processing continues in an example of a typical gateway process, as shown in FIG. 4, the Gateway monitors the polled data arriving from each CTI application. If the 25 Gateway receives a command from an application (system event) at 130, the Gateway 66 invokes acceptable call handling routines at 132, and issues appropriate call control commands at 134 in accordance with the standard PBX operating procedures. These commands are supplied to the 30 device number and node number mapping for translation at 136, and from there, the command is sent to the appropriate PBX system node and device, as shown at 138. This means that the system node IP socket 74 (FIG. 1) which is specific to the device (extension number) is selected; and the infor- 35 mation is transmitted back out through the LAN and through the site router 52 through the WAN 50 to the appropriate selected one of the PBXs 10, 20, 30 or 40 which has that particular extension 14, 24, 34 or 44 associated with it. In the example shown in FIG. 4, the command is processed and 40 acknowledged by the PBX node at 140 in a conventional manner, and a confirmation at 141 is sent back through the Gateway 66 which determines through a lookup table at 142 which CTI application is waiting for this command confir- mation message. The Gateway 66 sends the command 45 confirmation message at 142 to the appropriate CTI appli- cation at 144. At 146, the basic call control sequence is complete; and a call is effected between the calling and called parties without either of the parties knowing whether they are operating within a single one of the PBX systems 50 10, 20, 30 or 40, or whether the call has been handled from one system, through the Gateway, to another. As far as the individual parties are concerned, the call appears to be handled entirely within the same PBX. As processing continues in conjunction with the sequence 55 described in FIG. 4, the CT Gateway also monitors the polled data arriving from each of the PBX nodes at 160 (FIG. 5). If the event received indicates a system change at 161, the Gateway 66 reads the nature of the update at 160 and makes changes to the mapping provided by the specific 60 device number (extension number) and PBX node device translation database at 162, and supplies this information to the device number and node number mapping memory. These changes are made automatically. The changes also occur on an ongoing basis; and once a 65 change has been committed to the database at 162, the translation of packets from that point on is done according 8 to the revised translation mapping information stored in the database (72 of FIG. 1). These changes occur continuously and transparently to the software applications that are uti- lizing the gateway in the manner described above in con- junction with FIG. 4. The overall process is designed for the applications software to be able to complete the processing of the appropriate call event and continue to provide real time control of the selected devices connected to each PBX node. If the event does not reflect a system change, or once the system change update has been completed by the Gateway, the Gateway then determines which, if any, CTI applications want to receive the event at 164. The Gateway determines this by looking at which monitor sessions each CTI application has initiated. The Gateway sends the event to all appropriate CTI applications through the LAN at 166. The event handling sequence is complete at 168. The system can be programmed differently to employ the Gateway 66 in operations other than the ones shown by way of example in FIGS. 3, 4 and 5. Other versions of the system may incorporate telephone switches that purely exist within the computer servers. The network topologies for such systems are capable of combining the functions of the CT Gateway process into one (presumably a "main" system) PBX node to eliminate the need for a separate server to house the CT Gateway process. Then, any CT application will be able to login to the main phone system server to obtain a consolidated data stream from the entire network of PBX nodes. Such a version further simplifies the network topology and makes processing more efficient. The foregoing description of the preferred embodiment of the invention is to be considered as illustrative and not as limiting. Various changes and modifications will occur to those skilled in the art for performing substantially the same function, in substantially the same way, to achieve substan- tially the same result, without departing from the true scope of the invention as defined in the appended claims. What is claimed is: 1. A computer telephony (CT) network for a private branch exchange (PBX) telephone system network includ- ing in combination: a plurality of private branch exchange (PBX) systems using a common software application and linked together through a network, each of the PBX systems having a unique address; a gateway processing system located on the network with one of the plurality of PBX systems, the gateway processing system having a plurality of application sockets with each application socket corresponding a CT application; a memory in the gateway processing system for storing a translation table identifying extension numbers on each of the PBX systems and combining these extension numbers with the unique addresses for each PBX system to provide mapping information for sending a command from any of the application sockets to a node socket for the PBX system, the node socket represent- ing a physical location for an affected party extension number. 2. The CT network according to claim 1 wherein the gateway processing system receives a system event from one of the plurality of PBX systems through the correspond- ing node socket for that one of the PBX systems, with the system event processed by the CT network applied to the translation table in the memory. 3. The CT network according to claim 1 further including means coupled with the gateway processing system to change the mapping of an extension number and address in
  • 11. US 6,760,427 B2 9 the memory whenever changes in the physical location of an extension number occurs. 4. The CT network according to claim 3 wherein the changes supplied to the memory are received from any one of the plurality of PBX systems where the change is to be 5 effected. 5. The CT network according to claim 1 wherein the gateway processing system receives a system command from one of the CT applications through the corresponding socket for that application, with the system command 10 applied to the translation table in the memory, whereupon the command is processed and provided to the socket for a PBX system having an extension number for a device corresponding to the requested command, whereupon the translation by the gateway processing system is transparent 15 to the application sending the system command. 6. A method for expanding PBX systems from a single PBX system to multiple interconnected PBX systems including the steps of: 10 munication port and, in combination with the memory, addressing the event and sending the event to an intended application socket and sending control commands from the processor to the PBX nodes. 11. The telecommunications system of claim 10 wherein the event comprises a change in of one of the extension numbers from a first PBX node to a second PBX node and the addressing comprises updating the memory accordingly. 12. The telecommunications system of claim 10 wherein upon receipt of a control command from the processor, the PBX node posts a response at its corresponding node communication port and the gateway stream system for- wards the response to an application originating the com- mand. 13. The telecommunications system of claim 10 wherein the gateway stream system is configured to determine if any the data retrieved from the port has been lost and if so, to generate an error to all interested applications which use providing a gateway at a PBX system for translating bi-directional commands over a packet network to a community of PBX nodes, each utilizing a common software application; and 20 corresponding PBX node. providing a translation table in the gateway to allow PBX network changes and rearrangements by translating 25 addresses for the PBX systems and individual exten- sion numbers for individual devices to transparently route a system event through the gateway from and to the different PBX nodes. 7. The method according to claim 6 further including the 30 step of receiving changes from the PBX nodes for updating the information in the translation table of devices on a continuous basis. 8. The method according to claim 6 further including polling a plurality of node sockets, each of which correspond 35 to one of the PBX nodes in the community, to retrieve data from the PBX nodes. 14. The telecommunications system of claim 10 wherein the system is configured as node-aware such that if com- munication fails between one of the PBX nodes and the gateway site, then the gateway site is able to communicate with the remaining PBX nodes. 15. The telecommunications system of claim 10 wherein the system is configured as non-node-aware such that if communication fails between one of the PBX nodes and the gateway site, then the gateway site is unable to communicate with the remaining PBX nodes until communication is restored to the failing PBX node. 16. The telecommunications system of claim 10 wherein the event comprises either an addition or a deletion of extension numbers from one of the PBX nodes and the addressing comprises an update of the memory accordingly. 17. The telecommunications system of claim 10 wherein the packet network comprises one of a WAN, a LAN, or the Internet.9. The method according to claim 8 further including, in response to receiving a command from the gateway at the PBX node, sending a notification to the corresponding node socket at the gateway, and routing the notification to an application originating the command. 18. A method for linking multiple CTI applications to 40 control a network of multiple interconnected PBX systems such that the PBX systems appear to the CTI applications as a single PBX system, the method comprising: 10. A telecommunications system comprising: a remote site communicating with a gateway site over a 45 packet network; the remote site having, a plurality of individual PBX nodes identifiable by a unique IP address for the node, each PBX node including a plurality of associated endpoints and 50 each endpoint identified by an extension number, and each PBX node communicating with a PSTN; and the gateway site having, a CT gateway processor having a software application executing thereon for unifying a plurality of 55 bi-directional data to and from the remote site and the gateway site, a plurality of node communication ports wherein each of the ports interacts with one of the PBX nodes, a gateway stream system that periodically polls the 60 node communication ports to retrieve data received from the PBX nodes, a memory having retrievable storage comprising the plurality of extension numbers for the endpoints and the plurality of IP addresses for the PBX nodes, the 65 gateway stream system receiving an event from one of the PBX nodes at its corresponding node com- coupling the CTI applications and the PBX systems to a gateway function over a packet network; processing, at the gateway, bi-directional data routed between the CTI applications and the PBX systems; using a translation table in the gateway to selectively route commands from one of the CTI applications to the applicable PBX system; using a translation table in the gateway to selectively route events from one of the PBX systems to the applicable CTI application; and operating a service within the gateway to make modifi- cations to the translation table in response to a change comprising a PBX network or a device change, such that the change appears transparent to the CTI appli- cations. 19. The method according to claim 18 further including, receiving the change from one of the PBX systems for updating the translation table on a continuous basis. 20. The method according to claim 18 further including, in response to receiving a specific command at the gateway from one of the PBX systems, sending notification of the change to the selected CTI application. * * * * *