U.S. patent application number 10/086268 was filed with the patent office on 2003-05-22 for apparatus and method for integrated voice gateway.
Invention is credited to Barry, Richard J., Chang, Gordon K., Harbison, Robert W., Lo, Ming C., Raab, Stephen R..
Application Number | 20030095542 10/086268 |
Document ID | / |
Family ID | 27489583 |
Filed Date | 2003-05-22 |
United States Patent
Application |
20030095542 |
Kind Code |
A1 |
Chang, Gordon K. ; et
al. |
May 22, 2003 |
Apparatus and method for integrated voice gateway
Abstract
An integrated voice gateway system for use within a company
which can route a voice telephone call between parties at two
different locations over an IP network or over the PST NETWORK. The
system can route a voice telephone call from a first location
within the system to a second location within the system via the IP
network, and then from the second location to a third location via
the PST NETWORK. The integrated voice gateway system includes a
gateway server which serves as an intranet/Internet telephony
gateway. The gateway server routes intra-company voice or facsimile
(fax) calls, over the company's intranet or the public Internet.
The gateway server provides an alternate voice network to the PST
NETWORK for a company. This alternate network is provided at a much
lower cost. The gateway server is a combination of hardware and
software components which reside on a PC server platform. The
gateway server is coupled to a customer premise telephone system,
i.e. a PBX via a T1 or E1 trunk for larger systems, or an analog
trunk for smaller systems. The gateway server is coupled to the
company's intranet via industry standard connections. The gateway
servers in a multi-site company are coupled together via the
company's intranet or wide area network (WAN) into a gateway
network. The gateway server uses PBX call status links to provide
many unique and useful features which are otherwise unavailable.
The gateway server uses T1 inband ANI, PRI, QSIG or industry
standard CTI applications programming interfaces (API) and works
with any PBX which supports any of these call status links. The
gateway server is equipped with a database of user and gateway
objects and attributes, and provides many unique features including
caller's name based on caller phone number, address translation,
gateway network routing information, user authentication, etc. This
database can be integrated with industry standard enterprise
directory services systems including any directory which supports
the Lightweight Directory Access Protocol (X.500) (LDAP)
interface.
Inventors: |
Chang, Gordon K.; (San Jose,
CA) ; Harbison, Robert W.; (Sausalito, CA) ;
Barry, Richard J.; (Los Altos, CA) ; Lo, Ming C.;
(San Jose, CA) ; Raab, Stephen R.; (Mill Valley,
CA) |
Correspondence
Address: |
RICHARD J. BARRY
STAR VOX, INC.
2125 ZANKER ROAD
SAN JOSE
CA
95131
US
|
Family ID: |
27489583 |
Appl. No.: |
10/086268 |
Filed: |
March 4, 2002 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10086268 |
Mar 4, 2002 |
|
|
|
09061802 |
Apr 17, 1998 |
|
|
|
60053763 |
Jul 25, 1997 |
|
|
|
60063742 |
Oct 17, 1997 |
|
|
|
60073056 |
Jan 29, 1998 |
|
|
|
Current U.S.
Class: |
370/352 ;
370/401; 379/900 |
Current CPC
Class: |
H04M 2203/2022 20130101;
H04M 7/0057 20130101; H04M 3/545 20130101; Y10S 379/90
20130101 |
Class at
Publication: |
370/352 ;
370/401; 379/900 |
International
Class: |
H04L 012/66; H04L
012/28; H04L 012/56 |
Claims
We claim:
154. A communication system comprising: a public switched telephone
(PST) network; an internet protocol (IP) network; a private branch
exchange (PBX) with a telephone coupled thereto to route a
telephone call over the PST network; and a voice gateway coupled to
the PBX and to the IP network to route a telephone call over the IP
network, the voice gateway configured to support a plurality of
numbering plans.
155. A communication system according to claim 154 wherein the
voice gateway is coupled to the PBX via a call status-call control
link to control operation of the telephone.
156. A communication system according to claim 154 further
comprising a directory coupled to the voice gateway, and wherein
the voice gateway is configured to access the directory and to
control the telephone to support the plurality of numbering
plans.
157. A communication system according to claim 154 wherein the
plurality of numbering plans supported includes at least one
numbering plan from a group consisting of: a uniform numbering plan
(UNP); an enterprise numbering plan (ENP); and a PSTN numbering
plan; and a direct trunk group access code.
158. A method of operating a communication system to route a
telephone call over an internet protocol (IP) network, the
communication system having a plurality of voice gateways coupled
to the IP network, each of the plurality of voice gateways
identified by an IP address, the method comprising steps of:
accepting a number entered via a calling telephone by a user in
accordance with one of a plurality of numbering plans; translating
the number into the IP address of one of the plurality of voice
gateways; and routing the telephone call from the calling telephone
to a called telephone.
159. A method according to claim 158 wherein the communication
system further comprises a gateway database coupled to the
plurality of voice gateways, the gateway database having the IP
addresses of the plurality of voice gateways stored therein, and
wherein the step of translating the number comprises steps of:
accessing the gateway database with one of the plurality of voice
gateway; and associating the number with an IP address in the
gateway database.
160. A method according to claim 159 wherein the step of
associating the number with an IP address comprises the step of
manipulating a digit of the number.
161. A method according to claim 158 wherein the step of
translating the number includes the step of translating a number
from at least one numbering plan from a group consisting of: a
uniform numbering plan (UNP); an enterprise numbering plan (ENP);
and a PSTN numbering plan; and a direct trunk group access
code.
162. A method according to claim 158 the step of routing the
telephone call comprises the step of controlling the plurality of
voice gateways to route the telephone call from a first voice
gateway over the IP network to a second voice gateway.
163. A method according to claim 158 wherein the communication
system further comprises a plurality of private branch exchanges
(PBXs) coupled to a public switched telephone (PST) network, each
of the plurality of PBXs coupled to one of the plurality of voice
gateways through a call status-call control link, and wherein the
step of routing the telephone call further comprises the step of
controlling a private branch exchange connected to the second voice
gateway to route the telephone call to the called telephone.
164. A method according to claim 163 wherein the called telephone
is coupled to the private branch exchange through the PST network,
and wherein the step of routing the telephone call further
comprises the step of controlling the PBX connected to the second
voice gateway to route the telephone call over the PST network to
the called telephone.
Description
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] This application is a divisional of application Ser. No.
09/061,802 filed on Apr. 16, 1998.
FIELD OF THE INVENTION
[0002] This invention relates to an integrated voice gateway
system.
BACKGROUND OF THE INVENTION
[0003] The widespread popularity of the Internet has provided new
means of rapid and comprehensive communication between users
located in distant and diverse locations around the world. Methods
of sending, finding and retrieving information, previously confined
to the domain of government, academia and industry, are now
available in business, in the community, and in the home. Formerly
arcane technical terms such as telnet, electronic mail (e-mail),
file transfer protocol (FTP), hypertext transfer protocol (HTTP)
and world wide web (WWW or web) are now widely used.
[0004] Very soon after the popularity of the Internet became
widespread, new applications of the underlying technology began to
emerge. With the concomitant growth of multimedia, a predominately
text-based medium quickly expanded to include graphics, imagery,
motion pictures and sound. A natural extension of the capability to
transmit recorded, digitized sound between personal computers (PC),
was the advent of PC based telephony. Although the initial users of
PC to PC telephone calls over the Internet were primarily computer
hobbyists and the like, there was an early recognition of the fact
that the Internet provided the potential for the average user to
make a telephone call anywhere in the world for the cost of a local
telephone call to an Internet service provider (ISP).
[0005] PC to PC telephone technology is limited by the need to be
logged on to a PC and the Internet to place or receive a call.
Software incorporating proprietary algorithms limit the ability to
call to others having the same or similar software. The sound
quality is often degraded because of packet loss and delays in
forwarding packets from the sender to the receiver over the
Internet, operation in a half-duplex mode, and the use of low
quality PC speakers and microphones.
[0006] With the expectation of improved performance and reduced
cost of telephone calls in the business environment, voice gateways
have facilitated the interconnection of the private branch exchange
(PBX) and the computer network.
[0007] As used herein, PBX includes hybrid, key systems, and other
such systems. Thus, through a PBX coupled to an Internet protocol
(IP) network (e.g., intranet, wide area network (WAN), Internet),
telephone calls between different sites within a company, or other
institution, organization or enterprise (hereinafter referred to as
"company"), or between companies, the company or companies having
installations at two or more locations which locations may be
geographically distant from each other, may be routed over the IP
network rather than via the public switched telephone network (PST
NETWORK). As used herein, the PST NETWORK includes both public and
private networks. This can result in significant cost savings and
can also help to improve communication within and between companies
by providing a variety of related services which are not available
via the PST NETWORK.
[0008] The level of integration achieved in current voice gateway
systems is quite low, and such systems are limited in the services
they can provide. In particular, current voice gateway systems are
capable of only routing a nominal telephone call from a calling
party at point A to a called party at point B. However, if, for
example, the called party is not present, or if the called party's
telephone is currently busy, current voice gateway systems do not
provide important additional services to facilitate making a
connection between the calling party and the called party at a
later time or at another location or by an alternative method.
[0009] One of the reasons for the limitations is that current voice
gateway systems are limited in their ability to obtain, store,
update and retrieve necessary information about both the calling
party and the called party in order to do anything other than
simply attempt to make a straight forward connection between the
two points. If the telephone system had sufficient information
about both parties, then the system could facilitate making the
connection at a later time, at another location or by an
alternative method. However, in current voice gateway systems,
there is no way to obtain the necessary call status and call
control information, nor is there an accessible central data base
in which to store and from which to retrieve this information.
Current voice gateway systems have no real-time call control/call
status information link with the PBX, nor do they have any storage
of telephone user information. For example, current voice gateway
networks have no information regarding the calling party's name,
telephone number, or status of the called party, e.g., busy or
idle. It is this information about the calling and called parties
which is not readily available, but which is necessary to provide
important additional services.
[0010] There is a need for a highly integrated voice gateway system
for use within a company and between companies having installations
at two or more locations which locations may be geographically
distant from each other. The integrated voice gateway system should
have the ability to route telephone calls between parties at two
different locations over the IP network as well as the PST NETWORK,
and to automatically select which of the IP network and PST NETWORK
over which to route telephone calls. The integrated voice gateway
system should have the means to obtain, store, update and retrieve
information about calling and called parties. For example, in
instances in which a calling party is unsuccessful in making a
connection to a called party, the integrated voice gateway system
should have the means to use information about the calling and
called parties to provide services which facilitate making an
alternate or subsequent connection between the calling party and
the called party.
[0011] The following standards are incorporated herein by
reference:
[0012] ITU-T Recommendation H.323--Packet-based multimedia
communications systems;
[0013] ITU-T Recommendation X.500--Open systems
interconnection--The directory: Overview of concepts, models and
services; and
[0014] IPNS Forum QSIG Handbook.
SUMMARY OF THE INVENTION
[0015] We have now invented a highly integrated voice gateway
system for use in a company or between companies having
installations at two or more locations which locations may be
geographically distant from each other.
[0016] As used herein, a voice telephone call from a caller
telephone to a called telephone, the call carried via an IP
network, is referred to as a VoIP call. As used herein, a fax call
from a caller fax machine to a called fax machine, the call carried
via an IP network, is referred to as an FoIP call.
[0017] Accordingly, it is an object of the invention to provide an
integrated voice gateway system for use within a company which can
route a voice telephone call between parties at two different
locations over an IP network as well as the PST NETWORK and to
automatically select which of the IP network and PST NETWORK over
which to route the calls. It is a further object of the invention
to provide a system which can route a voice telephone call between
a calling party using a telephone at a first location within the
system to a second location within the system via an IP network,
and then from the second location to a called party at a third
location via the PST NETWORK.
[0018] It is an object of the invention to provide an integrated
voice gateway system which can place a telephone call over an IP
network, and then if, during the telephone call, the quality of the
telephone call falls below a predetermined quality level, to be
able to reroute the telephone call over the PST NETWORK, and to do
so in a manner which is transparent to both the calling and called
parties.
[0019] It is an object of the invention to provide an integrated
voice gateway system which can track any move, add or change to any
telephone user in the enterprise in the integrated voice gateway
system. It is a further object of the invention to provide an
integrated voice gateway system which can integrate with an
enterprise directory to allow single point of entry of moves, adds
and changes to telephone users and to provide replication of these
changes across all enterprise sites.
[0020] It is an object of the invention to provide an integrated
voice gateway system in which the identification of the calling
party (e.g. name, title, department, telephone number) is displayed
on a computer screen (rather than on a telephone display)
co-located with the called party's telephone, and that such
information be displayed regardless of the vendor(s) supplying the
telephone equipment used by the calling and called parties. It is a
further object of the invention that such information be provided
regardless of the desktop workstation or PC (workstation and PC are
referred to interchangeably herein), or operating system used via a
WWW browser interface.
[0021] It is an object of the invention to provide an integrated
voice gateway system which can create a log of incoming telephone
calls over an IP network which telephone calls are not answered by
a called party, and identify the name of each calling party. It is
a further object of the invention to provide a log of all incoming
and outgoing calls whether the calls are on net (i.e., IP network)
or off net (i.e., PST NETWORK or internal PBX).
[0022] It is an object of the invention to provide an integrated
voice gateway system in which, when a called party's telephone is
busy, the system can automatically set up a call between the
calling party and the called party as soon as the called party
hangs up. It is a further object of the invention to provide such a
capability even when a called party has voice mail.
[0023] It is an object of the invention to provide an integrated
voice gateway system in which, when a called party is busy, the
calling party may send a computer message which will be immediately
displayed on a computer screen co-located with the called party's
telephone, for example to explain why the calling party needs to
speak with the called party.
[0024] It is an object of the invention to provide an integrated
voice gateway system in which, when a called party does not answer
an incoming telephone call, the calling party may forward the call,
for example from voice mail, to a receptionist or other designated
party. It is a further object of the invention to provide the
capability for a party at an answering station to send a computer
message which will be immediately displayed on a computer screen
co-located with the called party's telephone.
[0025] It is an object of the invention to provide an integrated
voice gateway system in which a user of the system may set up the
system to forward that user's telephone calls to a different
telephone. It is a further object of the invention to forward calls
to PST NETWORK telephones or PC-based IP telephones. It is a
further object of the invention to provide the capability for a
user to set up the system to forward that user's telephone calls to
different telephones according to a time schedule predetermined by
the user. It is a still further object of the invention to provide
the capability for a user to set up the system to forward telephone
calls originating only from one or more calling parties so
designated by the user. It is a further object of the invention to
provide the capability to setup call forwarding via a browser
interface or interactive voice response (IVR).
[0026] It is an object of the invention to provide an integrated
voice gateway system in which users can initiate telephone
functions from the workstation, such functions including, without
limitation, dialing a call, transferring a call, add-on conference,
and forward a call to/from any white pages entry or personal
telephone book entry. It is an object of the invention to provide
an integrated voice gateway system which provides secure access to
the system from telephones, including PC-based IP telephones, which
are outside the system.
[0027] It is an object of the invention to provide an integrated
voice gateway system which, when a call from a source to a first
destination is transferred from the first destination to a second
destination, can direct the path of the call directly from the
source to the new destination and thereby maintain the quality of
the call.
[0028] It is an object of the invention to provide an integrated
voice gateway system with an operating system independent browser
based client which therefor requires no client software
installation. It is a further object of the invention to provide
the desktop telephone users with a telephone white pages display of
any entry in the enterprise directory services database.
[0029] In a first aspect, the invention provides a communication
system comprising a public switched telephone (PST) network; an IP
network; a PBX coupled to the PST network for routing a telephone
call over the PST network; a telephone coupled to the PBX; a voice
gateway coupled to the PBX through a call status-call control link
and a trunk, and coupled to the IP network for routing a telephone
call over the IP network; selection means for selecting which of
the PST network or the IP network to route a telephone call; and
call status means for the gateway server to monitor events
associated with incoming calls to the telephone and outgoing calls
from the telephone.
[0030] In a second aspect, the invention provides a communication
system comprising a PST network; an IP network; a PBX coupled to
the PST network for routing a telephone call over the PST network;
a telephone coupled to the PBX; a voice gateway coupled to the PBX
through a call status-call control link and a trunk, and coupled to
the IP network for routing a telephone call over the IP network; a
desktop workstation coupled to the voice gateway; selection means
for selecting which of the PST network or the IP network to route a
telephone call; and PC call control means for controlling the
telephone from the desktop workstation. In a third aspect, the
invention provides, in a communication system comprising a PST
network, an IP network, a plurality of PBXs at a plurality of
locations, the PBXs coupled to the PST network for routing
telephone calls over the PST network, coupled to each PBX a
respective plurality of telephones, a plurality of voice gateways,
each voice gateway coupled to a respective PBX and to the IP
network for routing telephone calls over the IP network, and
selection means for selecting which of the PST network or the IP
network to route telephone calls, fallback to PST NETWORK means for
rerouting a telephone call connected over the IP network to the PST
network.
[0031] In a fourth aspect, the invention provides, in a
communication system comprising a PST network, an IP network, a
plurality of PBXs at a plurality of locations, the PBXs coupled to
the PST network for routing telephone calls over the PST network,
coupled to each PBX a respective plurality of telephones, a
plurality of voice gateways, each voice gateway coupled to a
respective PBX and to the IP network for routing telephone calls
over the IP network, and selection means for selecting which of the
PST network or the IP network to route telephone calls, a method of
automatically rerouting an in process telephone call from the IP
network to the PST network when the quality of the telephone call
over the IP network falls below a predetermined quality level, the
method comprising the steps of (a)
[0032] establishing a connection for the telephone call over the
PST network while the telephone call is still connected over the IP
network; (b) switching the parties to telephone call over the PST
network; and (c) breaking the connection for the telephone call
over the IP network while maintaining the telephone call over the
PST network.
[0033] In a fifth aspect, the invention provides, in a
communication system comprising a PST network, an IP network, a
plurality of private branch exchanges (PBX) at a plurality of
locations, the PBXs coupled to the PST network for routing
telephone calls over the PST network, coupled to each PBX a
respective plurality of telephones, a plurality of voice gateways,
each voice gateway coupled to a respective PBX and to the IP
network for routing telephone calls over the IP network, and
selection means for selecting which of the PST network or the IP
network to route telephone calls, fallback during call setup means
to automatically route a telephone call over the PST network if,
during call setup, the telephone call cannot be setup over the IP
network.
[0034] In a sixth aspect, the invention provides a method of
configuring an enterprise directory for IP telephony, the method
comprising the steps of (a) providing an X.500 compatible
directory; and (b) including in the schema of the directory at
least one of GateKeeper, Gateway, Multipoint Control Unit (MCU),
GateKeeper Exchange, and a desktop user object and attribute.
[0035] In a seventh aspect, the invention provides a computer
telephony integration (CTI) system comprising a PBX, a telephone
coupled to the PBX, a local area network (LAN), a voice gateway
coupled to the LAN, a CTI server coupled to the PBX and coupled to
the LAN, a web server coupled to the LAN, a desktop workstation
coupled to the LAN, the desktop workstation comprising a web
browser. In an eighth aspect, the invention provides a
communication system comprising a PST network, an IP network, a PBX
coupled to the PST network for routing a telephone call over the
PST network, a voice gateway coupled to the PBX and the IP network
for routing a telephone call over the IP network, and selection
means for selecting which of the PST network or the IP network to
route a telephone call, and for a telephone call placed from a
first telephone at a first location, over the IP network to a
second telephone at a second location, path replacement means for
transferring the telephone call from the second telephone at the
second location to a third telephone at a third location, the path
replacement means routing the telephone call from the first
telephone at the first location over the IP network to the third
telephone.
[0036] In a ninth aspect, the invention provides a communication
system comprising a PST network, IP network, a plurality of PBXs at
a plurality of locations, the PBXs coupled to the PST network for
routing telephone calls over the PST network, coupled to each PBX a
respective plurality of telephones, a plurality of voice gateways,
each voice gateway coupled to a respective PBX through a call
status and call control link and a trunk, and coupled to the IP
network for routing telephone calls over the IP network, coupled to
a plurality of voice gateways, selection means for selecting which
of the PST network or the IP network to route telephone calls, and
feature networking means for providing PBX features among the
plurality of locations over the IP network.
[0037] The integrated voice gateway system includes a gateway
server which serves as an Intranet/internet telephony gateway. The
gateway server routes intra-company voice or facsimile (fax) calls,
made from user's desktop phones or fax machines/servers, over the
company's intranet or the public Internet. The gateway server
provides an alternate voice network to the PST NETWORK for a
company. This alternate network carries voice and fax calls at a
much lower cost. This is because an intranet is built to support
bursty data traffic and the bandwidth is underutilized most of the
time. The gateway server takes advantage of the underutilized
bandwidth when such bandwidth is available to transmit voice.
[0038] The gateway server is a combination of hardware and software
components which reside on a workstation server platform. The
gateway server is coupled to a customer premise telephone system,
i.e. a PBX via a T1 or E1 trunk for larger systems, or an analog
trunk for smaller systems. The gateway server is coupled to the
company's intranet via industry standard connections (e.g.,
ethernet, frame relay or asynchronous transfer mode (ATM)). Thus,
the gateway server is a gateway between the PBX/PST NETWORK and the
company's intranet. The gateway servers in a multi-site company are
therefore coupled together via the company's intranet or wide area
network (WAN) into a gateway network.
[0039] The gateway server uses call status and call control
integration with the PBX to provide many unique and useful features
which are otherwise unavailable. The gateway server supports a
variety of call status/call control PBX links including T1 inband
ANI, PRI, QSIG (global DSS1 based signaling system for corporate
networks, not an acronym, known at the international level as
Private Signaling System No. 1 (PSS1)) and CTI. Industry standard
CTI applications programming interfaces (API) are supported,
including the AT&T/Novell Telephony Services Application
Programming Interface (TSAPI), the Microsoft Telephony Application
Programming Interface (TAPI), and the European Computer
Manufacturers Association (ECMA) Computer Supported Telephony
Applications (CSTA) protocol. Hence the gateway server can provide
enhanced features via a variety of call status/call control links
with the level of enhanced features available depending on the type
of link used.
[0040] The gateway server is also equipped with a database of user
and gateway objects and attributes. This database provides many
unique features including providing caller's name based on caller
phone number, address translation, gateway network routing
information, user authentication, etc. This database is stored in
the server but can be integrated with industry standard enterprise
directory services systems including Novell Directory Services
(NDS), Microsoft Active Directory Services (ADS), Domain NT and any
directory which supports the Lightweight Directory Access Protocol
(X.500) (LDAP) interface. The integration provides the enterprise
with a single point of entry for user adds, moves and changes, and
provides replication throughout all corporate sites.
[0041] A gateway network in a company essentially connects a
company's PBXs, which are often geographically dispersed, into a
single intelligent virtual PBX (VPBX). A company-wide VPBX provides
advanced end-user features across the company. These features would
otherwise be available only within the scope of a single PBX, or
would require expensive PBX features interworking products which
require expensive PBX resident software and expensive data
connections, e.g. dedicated voice tie lines between sites. By
providing PBX features interworking via IP, call status-call
control and a database of user and gateway objects and attributes,
the gateway server offers PBX features interworking, at a lower
cost, over a network of mixed PBXs from different vendors and over
a single converged network (data tie line or data VPN).
[0042] The gateway server works with existing telephone systems,
and with the mixed networks of telephone systems commonly found in
large companies. The gateway server provides feature interworking
using the combination of the desktop telephone and desktop
workstation. Current PBX systems provide such internetworking
capabilities only between desktop telephones. With the gateway
server, however, a worker using a desktop telephone can be notified
of an important call via the desktop workstation. The unique
ability of the gateway server to control both the desktop telephone
and the desktop workstation for calls between remote workers
provides many new VPBX features not available with current PBX to
PBX solutions, and provides an alternative method for current PBX
networking features that is not limited to only sites with the same
vendor PBX models. These consistent features across the network
substantially improve communications and enhance productivity by
making employees at multiple sites feel like they are part of a
single community. In addition to end-user visible features, the
gateway server also offers benefits such as intelligent routing
(using automatic configuration) and increases network
performance.
[0043] The gateway server supports routing of telephone and fax
calls made from desktop telephones or stand alone fax machines, or
workstation integrated fax servers over a company's intranet or the
public Internet. By configuring a selection table in the server,
the gateway server can route real-time fax calls over either the
intranet or Internet to minimize the cost of the fax call. The
gateway server supports computer-based fax as well as stand-alone
fax machines. By integrating CTI and enterprise directory service
with IP telephony, the gateway server provides many more features
in a user-friendly way than current Internet/intranet telephony to
IP voice gateways. Current voice gateways connect only to a
telephone system's voice lines, e.g., analog, ISDN BRI, ISDN PRI,
or T1. This provides only for carrying voice or fax calls over IP.
The gateway server is unique in that the server also provides a
call control and call status link to the telephone system.
Moreover, current voice gateways do not store user telephone
information such as telephone number and associated user name. The
gateway server is unique in that it stores extensive user telephone
information and also integrates with industry standard enterprise
directory services. The use of extensions to the enterprise
directory services to implement IP telephony services is a new
concept introduced by the gateway server of the invention.
[0044] The gateway server can route long distance calls among
multiple company locations and do so in a manner which is
transparent to the users, except perhaps for possible differences
in the quality of voice transmission. However, the users dial the
same way that they currently dial to make calls whether over public
or private networks. The routing table of the PBX automatically
routes designated calls to the voice gateway and the gateway then
decides whether to route the call over the company's intranet or
the Internet.
[0045] In addition to integrating CTI and enterprise directory
service with IP telephony, the gateway server also provides many
unique IP telephony features in addition to the VPBX features.
[0046] By constantly monitoring the quality of a voice call over
the IP network, the gateway network of the invention can continue
to maintain a call over the IP network as long as the quality of
the call is above a predetermined quality level. If the quality of
a voice call over the intranet or Internet falls below a
predetermined quality level, e.g. due to network congestion, the
gateway server can automatically "fall back" to the PST NETWORK.
The gateway server can automatically set up a call over the PST
NETWORK between the caller and called party's desktop telephones
and switch the parties to the PST NETWORK call. The gateway server
can then drop the IP portion of the call such that the caller and
called party are then talking over the PST NETWORK. Current voice
gateway systems cannot switch a call to the PST NETWORK once the
call has been connected. Since data network congestion can change
significantly at any time, e.g. a large graphics file is suddenly
downloaded in the middle of an IP telephone call, the ability to
switch to the PST NETWORK during an IP telephone call is a
significant advantage to the calling parties. Current systems
require the calling parties to hang up if the voice quality
deteriorates during a call, and place a new call, which may
encounter the same network congestion problem, unless the entire
gateway is shut down.
[0047] Moreover, in current voice gateway systems, if one remote
gateway is not accessible, the entire gateway must be shut down or
callers to the non-accessible remote gateway would be forced to
continually hang up and call again and again until the remote
gateway is accessible, or dedicated ports would be required for
each gateway segment. The integrated voice gateway system of the
invention provides the capability to fallback to PST NETWORK during
call setup in which only calls directed to a non-accessible gateway
are routed over the PST NETWORK, while still allowing other calls
to be routed via the gateway and IP network. If a remote gateway is
not accessible, a voice call would not necessarily be rerouted over
the PST NETWORK as would be done by current voice gateways.
BRIEF DESCRIPTION OF THE DRAWINGS
[0048] FIG. 1 is a block diagram of an overview of the top-level
architecture of an embodiment of an integrated voice gateway system
according to a first aspect of the invention.
[0049] FIG. 2 is a block diagram of the top-level architecture of a
gateway network according to a first aspect of the invention.
[0050] FIG. 3 is a block diagram illustrating major software and
hardware components of an embodiment of a gateway network according
to a first aspect of the invention.
[0051] FIG. 3A illustrates the distributed architecture of the
enterprise directory.
[0052] FIG. 4 illustrates the operation of an embodiment of an
integrated voice gateway system of the invention in setting up a
basic PST NETWORK call.
[0053] FIG. 5 illustrates the operation of an embodiment of an
integrated voice gateway system of the invention in setting up a
basic VoIP call.
[0054] FIGS. 6-7 illustrate the operation of an embodiment of an
integrated voice gateway system of the invention in a first method
for setting up a hop-off to PST NETWORK call.
[0055] FIGS. 8-12 illustrate the operation of an embodiment of an
integrated voice gateway system of the invention in a second method
for setting up a hop-off to PST NETWORK call.
[0056] FIGS. 13-14 illustrate the operation of an embodiment of an
integrated voice gateway system of the invention in a third method
for setting up a hop-off to PST NETWORK call.
[0057] FIG. 15 illustrates the operation of an embodiment of an
integrated voice gateway system of the invention in a common method
for setting up a hop-on to VoIP call.
[0058] FIG. 16 illustrates the operation of an embodiment of an
integrated voice gateway system of the invention in a first
scenario for setting up a hop-on to VoIP call.
[0059] FIG. 17 illustrates the operation of an embodiment of an
integrated voice gateway system of the invention in a third
scenario for setting up a hop-on to VoIP call.
[0060] FIG. 18 illustrates the operation of an embodiment of an
integrated voice gateway system of the invention in a fourth
scenario for setting up a hop-on to VoIP call.
[0061] FIGS. 19-22 illustrate the operation of an embodiment of an
integrated voice gateway system of the invention in a first method
for setting up a fallback to PST NETWORK call.
[0062] FIGS. 23-29 illustrate the operation of an embodiment of an
integrated voice gateway system of the invention in a second method
for setting up a fallback to PST NETWORK call.
[0063] FIGS. 30-33 illustrate the operation of an embodiment of an
integrated voice gateway system of the invention in a third method
for setting up a fallback to PST NETWORK call.
[0064] FIGS. 34-38 illustrate the operation of an embodiment of an
integrated voice gateway system of the invention in a fourth method
for setting up a fallback to PST NETWORK call.
[0065] FIGS. 39-46 illustrate the operation of an embodiment of an
integrated voice gateway system of the invention in a fifth method
for setting up a fallback to PST NETWORK call.
[0066] FIG. 47 is a block diagram illustrating a prior art approach
to providing a CTI-workstation interface.
[0067] FIG. 48 is a block diagram illustrating the computer
architecture supporting a PC Call Control feature in an embodiment
of an integrated voice gateway system of the invention.
[0068] FIG. 49 illustrates the operation of a virtual desktop
feature in an embodiment of an integrated voice gateway system of
the invention.
[0069] FIG. 50 illustrates the operation of a caller name display
feature in an embodiment of an integrated voice gateway system of
the invention.
[0070] FIG. 51 illustrates the operation of a call log feature in
an embodiment of an integrated voice gateway system of the
invention.
[0071] FIG. 52 illustrates the operation of an embodiment of an
integrated voice gateway system of the invention when a called
telephone is busy.
[0072] FIG. 53 illustrates the operation of a callback on busy
feature in an embodiment of an integrated voice gateway system of
the invention.
[0073] FIGS. 54-55 illustrate the operation of a call alert feature
in an embodiment of an integrated voice gateway system of the
invention.
[0074] FIG. 56 illustrates the operation of a ring through feature
in an embodiment of an integrated voice gateway system of the
invention.
[0075] FIGS. 57-58 illustrate the setup and operation of a follow
me feature in an embodiment of an integrated voice gateway system
of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0076] FIG. 1 is a block diagram of an overview of the top-level
architecture of an embodiment of an integrated voice gateway system
2 according to a first aspect of the invention. The block diagram
depicts three gateway networks 4, 6, 8 of a multi-site company. In
embodiments of the invention, such gateway networks may be located,
e.g. in different buildings of a large plant, such as in an
industrial park or campus setting, in different locations within
the same city, or may be located at geographically distant
locations, including world-wide. The gateway networks may also be
located in different companies. In the particular example depicted
in FIG. 1, first and second gateway networks 4, 6 may be within a
large industrial park or at different locations within a city as
they are both coupled to a first telephone company central office
(CO) CO1 12. The third gateway network 8 is geographically distant
from both the first and second gateway networks 4, 6 and is coupled
to a second CO, CO2 14. CO1 12 and CO2 14 are part of a PST NETWORK
16. The PST NETWORK 16 may include many COs. Each of the gateway
networks 4, 6, 8 is coupled to the company's IP network 18. The IP
network 18 may include an intranet, the Internet, and the like.
[0077] In the description of FIG. 2 and subsequent FIGs., a generic
embodiment of a gateway network according to the invention will be
described with reference to the first gateway network 4 depicted in
FIG. 1.
[0078] FIG. 2 is a block diagram of the top-level architecture of
an embodiment of a gateway network 4 (represented by the dashed
box) according to a first aspect of the invention.
[0079] The gateway network 4 includes a local area network (LAN)
22. Coupled to the LAN 22 are one or more workstations 24, a
gateway server 26, a directory server 28, and a router 32. The
gateway server 26 is also coupled to the PBX 34 via a call
status--call control link. The call status--call control link can
comprise a CTI link 98, a PRI interface 36, a QSIG interface 36 or
an analog driver 33. These interfaces are individually illustrated
and described below in reference to FIG. 3.
[0080] The PBX 34 is coupled to CO1 12. One or more telephones 38
are coupled to the PBX 34. The telephones 38 may be any telephone
device connecting to a PBX, e.g. analog (POTS), proprietary
digital, or standards-based digital (ISDN BRI). Each telephone 38
may be logically associated with and may be co-located with a
respective workstation 24. The gateway server 26 is also coupled to
the PBX 34 via an industry standard telephone station interface
33.
[0081] The CTI interface 98 between the gateway server 26 and the
PBX 34 uses an industry standard CTI API, e.g., TSAPI, TAPI and CT
Connect. Both TSAPI and TAPI focus on call control. The CTI
interfaces enable computer control of dialing, answering,
transferring and conferencing, and provide status. In PBX
environments, the CTI interfaces also support control of advanced
features of digital telephones (TAPI) and the switches to which
those station sets connect (TSAPI).
[0082] The directory server 28 may reside in separate hardware or
may be co-located with the gateway server 26 in the same
hardware.
[0083] FIG. 3 is a block diagram illustrating major software and
hardware components of an embodiment of a gateway server 26
according to a first aspect of the invention. The gateway server 26
includes software modules which communicate among themselves and
have interconnections to other components through either software
drivers supporting interfacing hardware elements, or communication
links to other components.
[0084] The gateway engine 50 is the central logic coordinating
element of the gateway server 26. The gateway engine 50 directs and
oversees the activities of the other components of the gateway
server 26 and gateway network 4 (FIG. 2). As call processing
occurs, the gateway engine 50 accesses routing information from a
gateway gatekeeper 53 and directs a communication subsystem 58. The
gateway engine 50 also contains the feature logic for VPBX
capabilities. The gateway engine 50 also creates logging and
statistical data.
[0085] The enterprise directory 90 is a company-wide general
purpose directory or global database of named objects including
users, network devices (e.g. routers, gateways), and network
services (e.g. print servers), etc. The enterprise directory 90 is
a distributed system with replication and synchronization among its
nodes, and has an extensible object schema. The implementation of
the enterprise directory 90 in the integrated voice gateway system
of the invention includes the extension of the directory schema to
support IP telephony.
[0086] In a preferred embodiment, the enterprise directory 90 is
implemented using a general purpose directory such as NDS. The
invention introduces schema extensions in NDS. The schema
extensions enhance the NDS base schema so that it supports the
Directory Services requirements for an H.323 Recommendation based
IP telephony network. In addition to H.323 support, the schema
extension enables the H.323 gatekeepers in an H.323 IP telephony
network to automatically find each other. This capability is not
currently specified and supported by the ITU H.323 Recommendation
v.1. The schema extensions also enable the invention to provide
many of its unique features, e.g. caller ID, follow me with call
filtering, etc.
[0087] FIG. 3A illustrates the distributed architecture of the
enterprise directory 90.
[0088] In FIG. 3A, the logical organization of the enterprise
directory 90 is illustrated by the large ellipse with NDS at its
center and surrounded by a series of pie-shaped logical partitions
P1, P2, P3, P4, P5, P6. The number of partitions illustrated in
FIG. 3A is arbitrary, as the actual number of partitions in a
particular gateway network will depend on the needs of the
particular enterprise.
[0089] Also illustrated in FIG. 3A are a series of gateway servers
26-1, 26-2, 26-3, 26-4, 26-5, 26-6, each gateway server coupled to
a respective physical partition P1', P2', P3', P4', P5', P6' of the
enterprise directory 90. The dashed curved lines indicate the
correspondence of the physical partitions P1', P2', P3', P4', P5',
P6' with the logical partitions P1, P2, P3, P4, P5, P6 of the
enterprise directory 90. Each physical partition P1', P2', P3',
P4', P5', P6' comprises the portion of the respective enterprise
directory 90 applicable to the respective location served by a
gateway server 26-1, 26-2, 26-3, 264, 26-5, 26-6 in the
enterprise's gateway network.
[0090] In addition, the enterprise directory 90 at an individual
location may include a replica of a partition from another location
in the network. This can be done, for example, to facilitate set up
of calls between locations which have a high volume of telephone
calls. The arrows in FIG. 3A indicate the locations of replicas of
partitions which are included in the enterprise directories at
other locations. In the configuration illustrated in FIG. 3A, a
replica of the partition P1' at the first location is included in
the enterprise directory 90-2 at the second location. Also, both
the third and sixth locations have replicas R3', R6' of each
other's partitions. As indicated above, the replicas of the
partitions are automatically synchronized, whereby changes to
entries in a partition at one location, are sent to other locations
having a replica of the respective partition.
[0091] Referring again to FIG. 3, the gateway database 51 is an
open database connectivity (ODBC) compatible database. The gateway
database 51 contains enterprise white pages, frequent contact
information, gateway routing tables, individual user follow me
records, and a call log. The gateway database 51 records are fully
indexed to provide necessary real-time performance. The enterprise
directory 90 is the source of the white pages, and frequent contact
and raw routing tables. This information is separately maintained
in the gateway database because commercially available
implementations of an enterprise directory, e.g. NDS, are not
indexed, and are therefore not easily searchable. The gateway
database 51 is indexed to facilitate the availability of the data.
The data is obtained from the enterprise directory 90 and passed to
the gateway database 51 by the dredger 107.
[0092] The gateway database 51 also includes an operational routing
table, user follow me and call log data which are created within
the gateway server 26.
[0093] The gateway database 51 runs on an ODBC compliant database
application.
[0094] Suitable database applications include, for example, Jet,
which is included with Windows NT 4.0, and Oracle 8.
[0095] The preferred embodiment of the invention includes the X.500
compatible enterprise directory. However, in installations which do
not have an X.500 compatible enterprise directory, the alternative
embodiments of the gateway network of the invention may include
other database configurations. For example, one alternate
embodiment may be used in systems which have an SQL Server
database. The schema extensions may be added to the existing data
structures in the SQL database, or a new, comprehensive schema may
be established.
[0096] In a second alternative embodiment, the enterprise directory
includes a database designated the master database at a first
location, and duplicate databases, designated slave databases at
the remaining locations in the gateway network. In this
master-slave configuration, all database administration is
performed on the master database. Updates to the master database
are exported to a file which is sent to the other locations and
imported into the slave databases. The dredging and synchronization
process would be the same as for an X.500 compatible enterprise
directory. The database cache 108 is a repository of information
contained in RAM in the gateway server 26. The database cache
includes data duplicated from the gateway database 51 which data is
required to be in RAM to support the performance of the gateway
server, and also transient/dynamically changing data, e.g.
idle/busy status of users' telephones. Much of the data in the
database cache 108 is indexed for rapid retrieval. The gatekeeper
agent 52 is the equivalent of an H.323 gatekeeper client.
[0097] The gatekeeper agent 52 interacts with the gateway
gatekeeper 53 for address translation, e.g. PST NETWORK telephone
number to IP address of a remote destination gateway server or
H.323 telephone.
[0098] The gateway gatekeeper 53 is an embedded equivalent of an
H.323 gatekeeper. The gateway gatekeeper 53 services the request
for address translation received from the gatekeeper agent 52. This
module uses data within the gateway database 51 for performing
address translations.
[0099] The fax gateway 54 sends and receives faxes to and from an
external fax server (not illustrated). The fax gateway 54 also
translates faxes into printable files and transfers the files to a
print server (not illustrated) for printing.
[0100] The gateway web server application 55 supports the
components of the web client server applications in the gateway
network 4. A suitable web server application 55 is the Microsoft NT
IIS server application which uses ActiveX server components and
Active Server Pages technologies.
[0101] The user web server application 56 is a server application
component which supports user clients by responding to HTTP user
requests by the user clients. The administrator web server
application 57 is a server application component which supports
system administrator clients by responding to HTTP user requests by
administrator clients.
[0102] In a preferred embodiment, the web server 92 is a Microsoft
NT IIS Server. The web server 92 provides the client/server
communication mechanism between browser-based clients, e.g. a user
client 95 and an administrative client 96, and the gateway web
server application 55, the user web application 56 and the
administrator web application 57. The web server 92 may be
co-located on the same server hardware as the gateway server 26 or
may be on separate server hardware.
[0103] The user client 95 (also referred to herein as "browser") is
a browser-based graphical user interface (GUI) application which
resides in a desktop workstation 24. Java and HTML are used to
provide the user interface. This application interface is used to
deliver integrated gateway user features. The administrator client
96 is also a browser-based GUI application, which resides in a
desktop workstation 24.
[0104] The communications subsystem 58 presents to the gateway
engine 50 an abstract appearance of telephony capabilities and
activities in the system. The communications system 58 merges
information from separate modules (e.g., the telephone network 65
and CTI 76 modules) to present a single logical PBX representation.
The communications subsystem 58 also allows calls to be managed in
a similar manner by the higher systems, whether telephone network
or IP telephony in nature during initiation, while active and at
completion.
[0105] The IP telephony module 59 is an object oriented abstraction
of IP telephony.
[0106] This module permits hardware from different vendors to be
used, thereby isolating their differences from the higher level
components of the system. The VoIP submodule 60 is an object
oriented abstraction of an H.323 implementation including H.323
call control and H.323 voice transmission over an IP network. The
FoIP submodule 61 is an object oriented abstraction of T.IFAX2
implementation including the fax interaction and transmission
protocol over an IP network. The VoIP/FoIP driver 62 is the
software layer supplied with IP telephony hardware to support the
gateway server 26 application. A network interface card (NIC) 63
connection (e.g., ethernet 10 baseT) provides the IP connection to
the data network (not illustrated) used to transmit and receive IP
telephony communications. A digital signal processor (DSP) 64
includes a microprocessor which is specialized to manage real-time
digitally encoded signals. For IP telephony, the DSP 64 may include
coder/decoder (codec) algorithms to compress and decompress voice
signals.
[0107] The telephone network module 65 is an object oriented
abstraction of switched circuit telephone network connections.
These connection types are the foundations of today's telephone
network. Elements controlled in the telephone network module 65
include station interfaces 73, trunk interfaces 66, and resources
to interact with the media stream (e.g. record and playback voices,
detect and generate touch tones, etc.). The telephone network
module 65 represents all the call processing information and call
status.
[0108] The trunk interface submodule 66 is an object oriented
abstraction of telephone network trunk connections. Several
telephone trunk types may be supported including, e.g., analog
trunks (Loop Start and Ground Start), T1/E1 E&M trunks, ISDN
PRI trunks (T1/E1), and ISDN QSIG (T1/E1). The trunk interface
submodule 66 can interface with a variety of hardware specific
software drivers, e.g. analog driver 67, T1/E1 E&M driver 69,
PRI driver 70, and QSIG driver 71.
[0109] The analog trunk hardware 68 supports connecting analog
trunk lines 35. The analog trunk hardware 68 provides the physical
connection of this trunk type to the gateway server 26 and, in some
cases, provides a connection to an internal time division
multiplexing (TDM) bus 84. Suitable analog trunk hardware 68
includes the QuickNet Technologies LineJack card.
[0110] The DS-1 hardware (T1/E1) 72 supports connecting DS-1 trunk
lines (T1/E1 E&M) 37, (PRI) 39, (QSIG) 41. The DS-1 hardware 72
provides the physical connection of this trunk type to the server
and, in some cases, provides a connection to the internal TDM bus
84. The DS-1 hardware 72 card may be a T1 card which supports 24
channels (domestic US) or an E1 card which supports 30 channels
(European). A suitable DS-1 hardware 72 card is the Dialogic
D240.SC card.
[0111] The analog station hardware 75 supports connecting analog
station lines 33. The analog station hardware 75 provides the
physical connection to the gateway server 26 and, in some cases,
provides a connection to the internal TDM bus 84. A suitable analog
station hardware 75 is the Dialogic DIALOG/4 card. The TDM bus 84
is an internal bus which provides a switching matrix for circuit
switched telephone connections. The TDM bus 84 is used to transport
voice signals or other call content from one hardware device (e.g.,
analog trunk 68, DS-1 H/W (T1/E1) 72, and analog station H/W 75) to
another within the system. The TDM bus 84 may exist both internal
to a single card as well as providing a physical connection where
multiple cards may be interconnected. Suitable implementations of a
TDM bus 84 include the Dialogic SC-Bus and the Natural Microsystems
MVIP bus.
[0112] The station interface submodule 73 is an object oriented
abstraction of telephone network station connections. The
interactions embodied in the station interface submodule 73
represent the operation of a telephone device connected to a
telephone system PBX or public network. In the embodiment
illustrated in FIG. 3, the station interface submodule 73 is
implemented using analog station connections (POTS telephone),
however the station interface submodule 73 may also be implemented
using digital telephone connections, e.g. ISDN BRI emulation. The
station interface submodule 73 interfaces with a variety of station
hardware specific software drivers, illustrated in FIG. 3 as an
analog station driver 74.
[0113] The CTI module 76 provides an object oriented abstraction of
a CTI link connection to a PBX. The CTI module 76 supports the
delivery of events received and the receipt of call control
commands in an abstract sense for processing and subsequent handoff
for delivery to the PBX 34 over the CTI link 98. The CTI module 76
can support the requirements of industry standard CTI links, e.g.
TSAPI, TAPI and CT Connect. The TSAPI submodule 77 supports all
communications with the TSAPI driver 80. The TSAPI submodule 77
normalizes any TSAPI differences which exist among various PBX
implementations into a common TSAPI abstraction, and presents this
abstraction to the CTI module 76. The TAPI submodule 78 supports
all communications with the TAPI driver 81. The TAPI submodule 78
normalizes any TAPI differences which exist among the various PBX
implementations into a common TAPI abstraction and presents this
abstraction to the CTI module 76. The CT Connect submodule 79
supports all communications with the CT Connect driver 82. The CT
Connect submodule 79 normalizes any CT Connect differences which
exist among the various PBX implementations into a common CT
Connect abstraction and presents this abstraction to the CTI module
76.
[0114] The CTI server 97 is a client/server application which
controls the flow of information between the gateway server 26 and
the PBX 34 over the PBX CTI link 98. The core CTI server module 102
provides the central logic for the application. The CTI client
driver 99 manages logical link connectivity to client applications.
The CTI client driver 99 also manages a communications link 106 to
the CT Connect driver 82, and brokers the information flow to and
from the CT Connect driver 82. The PBX-specific driver 101
interfaces with the CTI server core module 102, translates the CTI
server's 97 standard messaging to/from the particular protocol used
by the specific PBX 34, and delivers the information to/from the
physical connection to the PBX 34. The physical connection to the
PBX 34 may be an ethernet NIC, or a dedicated physical link with a
protocol, e.g. X.25 or ISDN BRI. Suitable client/server CTI
implementations include Novell TSAPI, Microsoft TAPI 2.1 and
Dialogic CT Connect. The CTI server 97 may be a stand alone
application on separate server hardware or may reside in the same
server hardware as the gateway server 26.
[0115] The gateway server 26 integrates with telecommunications
customer premises equipment (CPE), in particular PBXs for large
sites and hybrid/key systems at smaller locations. The term PBX is
used herein interchangeably to refer to all such systems.
[0116] The automatic route selection (ARS) 103 is a functional
capability that the PBX 34 employs to select the preferred trunk
for placing a call. PBXs may have a variety of trunks attached,
including local lines, direct lines to a long distance provider,
private leased lines interconnecting with other company PBXs, and
virtual private networks. The ARS 103, sometimes also called least
cost routing (LCR), reviews the number dialed, and identifies a
preferred trunk. If the preferred trunk is busy, the ARS 103 will
proceed to a subsequent choice. The ARS 103 then adds or deletes
digits to condition the number dialed and transmit the call over
the selected line. This feature is also available on some
hybrid/key systems. In a preferred embodiment of the invention, the
ARS 103 is configured to route calls destined across the gateway
network to the gateway server as the preferred first choice. The
PBX 34 uses trunks to connect to the PST NETWORK CO and to
interconnect to other PBXs. Various types of trunks may be used,
including analog, T1, E1, ISDN PRI, and QSIG. In a preferred
embodiment, the gateway server 26 can support all the trunk types
listed.
[0117] A PBX station line is a connection for a telephone device.
PBXs may support several types of telephone devices, including
analog (POTS), proprietary digital stations, and ISDN terminals.
The gateway server 26 may use analog station lines 33 to interface
with the PBX.
[0118] Enterprise Directory Schema Extensions
[0119] The integrated computer telephone system introduces schema
extensions in industry standard enterprise directory services
systems to support IP telephony.
[0120] While the description of the schema extensions will be
presented in terms of NDS, it is understood that the schema
extensions are applicable to other industry standard directory
systems.
[0121] The schema extensions enhance the NDS base schema so that
the schema supports the Directory Services requirement for an ITU
H.323 Recommendation based IP telephony network. In addition to
H.323 support, the schema extensions enable the H.323 gatekeepers
in an H.323 IP telephony network to automatically find each other.
This capability is not currently specified and supported by ITU
H.323 Recommendation v.1. The schema extensions also enable the
gateway server to provide additional features, e.g. caller ID and
call filtering.
[0122] The schema extension includes additional NDS objects and
additional NDS attributes. The schema enhancement defines the
relationships among the additional NDS objects and attributes. The
additional NDS objects for H.323 include H.323 Gateway, H.323
Gatekeeper, and H.323 Multipoint Control Unit (MCU). The additional
NDS attributes are applicable to the additional H.323 objects and
existing NDS objects.
[0123] Table 1 lists the attributes which are included in the NDS
enterprise directory schema extensions in a preferred embodiment of
the invention. Table 1 includes the name of each attribute added to
the schema, a brief definition of each attribute, and an indication
as to whether the attribute is added to support the use of the
enterprise directory to support IP telephony or to support the
advanced features
1TABLE 1 New Attributes Included in the Enterprise Directory Schema
Extension Attribute Definition Supports Attendant Specifies the
telephone number for a gateway Advanced Number server for Finder
activation/deactivation, Hop Features On from PST NETWORK, etc.
Auto Specifies the dialing string for the auto Advanced Attendant
attendant preceding the extension number (null Features Prefix
value if no autoattendant and Direct Inward Dialing is available
for the PBX). CallAlert Specifies the time-out period, in seconds,
for Advanced Timeout Call Alert inaction for a gateway server.
Features Call Log Specifies the duration, in days, of the call log
Advanced Configu- parameters for a gateway server, including Call
Features ration Log Duration, Call Log Type 1, Call Log Type 2, . .
. (where Call Log Type i specifies the event logging level for a
gateway server. There can be multiple event logging levels.).
WhitePages Specifies the scope of the whirte pages in the Advanced
Subtree context of the enterprise directory. The Features gateway
server catalog contains WhitePages and other information derived
from the enterprise directory. This attribute establishes the
directory contents that the WhitePages contain. Cellular Specifies
the user's cellular phone number. Advanced Phone Features CTI
Specifies the CTI link between the gateway Advanced server and the
PBX, including CTI Type, Link Features Name, and Server Name. CTN
Access Specifies the special trunk access code to the Advanced Code
Corporate Telephony Network, e.g. "8" (null Features value if the
PBX does not support CTN dialing). CTN Specifies the location ID(s)
for the gateway Advanced Location ID network in the Corporate
Telephony Network Features numbering plan. CTN Specifies the
Corporate Telephony Network Advanced Numbers numbers (or number
patterns) represented by Features Table the gateway network for its
PBX and its satellite PBXs (i.e. PBXs connected to the gateway
server indirectly through another PBX, and which use the gateway
server to get on to the IP network), including Location ID,
Extension Range, PST NETWORK pattern, and Comments (for the system
administrator). CTN Trunk Specifies the translation table for
converting Advanced Translation from the PBX numbering format to
CTN Features canonical format, including Trunk Group ID, Trunk ID
Range, Number of Digits to Delete, Digit to Prepend, and Trunk Card
ID, and Comments. FallBack Specifies the fallback number for a
gateway Advanced Number server. This is the PST NETWORK number
Features that the gateway servers use to call each other for
fallback to PST NETWORK. GateKeeper Specifies the default
GateKeeper with which an IP entity such as Gateway and H.323
Terminal Telephony should register. Entities are allowed to
register with GateKeeper for the H.323 Zone to which the entity
belongs. GatekKeeper Identifies the GateKeeper Exchange with IP
Exchange which a GateKeeper is associated. Telephony Gateway
Specifies the gateway associated with a IP gateway network entity,
e.g. a user. Telephony Gateway List Specifies the gateway servers
associated with IP a GateKeeper. Telephony Home Phone Specifies the
user's home phone number. Advanced Features HopOff Specifies
whether Hop-Off to PST NETWORK Advanced Enabled is enabled for a
gateway server. Features HopOff PST Specifies the PST NETWORK
number patterns Advanced NETWORK for hop-off to PST NETWORK for the
gateway Features Patterns server. Only PST NETWORK numbers which
match these patterns can be reached via hop- off from this gateway
server. This attribute facilitates the automatic routing
configuration for the gateway network. HopOn Specifies whether
Hop-On from PST Advanced Enabled NETWORK is enabled for a gateway
server. Features HopOn for Specifies the list of users, groups, or
containers Advanced OffNet Call authorized to access Hop-On for
Off-Net calls.. Features List License Contains the license data for
a gateway Advanced network, including Serial Number and License
Features Count. Manual Specifies code (a combination of multiple
Advanced Fallback telephone keypad keys) for fallback to PST
Features Code NETWORK (null value if manual fallback is disabled).
Maximum Specifies the maximum number of outstanding Advanced
CallBacks Callback on Busy requests for each user of a Features per
User gateway server (zero if callbacks are not allowed, no value if
no limit on the number of callback requests). Office Fax Identifies
the user's office fax number. Advanced Features Office Phone
Identifies the user's office telephone number. Advanced It is used
for providing Caller ID, including Features CTN On-Net Number and
PST NETWORK Number. Pager Identifies the user's pager number.
Advanced Features Passcode Specifies user passcode for the gateway
finder Advanced activation/deactivation user authentication from
Features a telephone. PBX Specifies the PBX configuration
information Advanced Information which is used by the gateway
server, including Features PBX Type, Station to CO Trunk Access
Code, Station to Gateway Server Trunk Access Code, Gateway Server
to Local Trunk Access Code, Gateway Server to Toll Trunk Access
Code, and DISA Access Code. PBX Station Specifies the Station Line
interface between the Advanced Interface gateway server and the
PBX, including Card Features ID, Card Name, Port Number, For
Attendant Yes/No, and Fallback Yes/No. PBX Trunk Specifies the
Trunk Line interface between the Advanced Interface gateway server
and the PBX, including Trunk Features Card ID, Trunk Type, Trunk
Protocol, and Trunk Card Name.. PST Specifies the PST NETWORK codes
for a Advanced NETWORK gateway server, including E164 Country Code,
Features Codes E164 Area Code, International Access Code, and Long
Distance Access Code. Desktop CTI Specifies the number of licenses
installed for Advanced License users who are authorized to access
this class Features Count of service, i.e. provided with access to
CTI capabilities from the desktop browser. (This value may be for
reference only.) Desktop CTI Specifies the list of users, groups or
containers Advanced License List who are authorized this class of
service, i.e. Features provided with access to CTI capabilities
from the desktop browser. Finder Specifies the acceptance code for
answering a Advanced Acceptance redirected call using this class of
service. Features Code Finder Specifies the number of licenses
installed for Advanced License users who are authorized to access
this class Features Count of service, i.e. who may have calls
forwarded to alternate telephone numbers. (This value may be for
reference only.) Finder Specifies the list of users, groups or
containers Advanced License List who are authorized this class of
service, i.e. Features who are authorized to have calls forwarded
to alternate telephone numbers. Mobile Specifies the number of
licenses installed for Advanced License users who are authorized
this class of service, Features Count i.e. who may operate a
portable computer as a virtual desktop from a remote telephone.
(This value may be for reference only.) Mobile Specifies the list
of users, groups, or containers Advanced License List who are
authorized this class of service, i.e. Features authorized operate
a portable computer as a virtual desktop from a remote telephone.
UEP Domain Specifies the gateway network Uniform Advanced Extension
Plan domain. Features UEP Domain Contains a list of all the UEP
domains in the Advanced List Corporate Telephony Network. Features
User Specifies the user preferences for the gateway Advanced
Preferences network, including Screen Pops On/Off, Screen Features
Pops Audible On/Off, Screen Pops Size Large/Small, and Number of
Call Log Entries. VoIP Specifies the address parameters associated
Advanced Address with the VoIP subsystem in the gateway server,
Features Parameters including VoIP Internet Address, VoIP Intranet
Address, and VoIP Port Number. VoIP Specifies the VoIP encoding
parameters, IP Encoding including TxCoder (voice CODEC for
Telephony transmitting), RxCoder (voice CODEC for receiving),
volume (AGC for VoIP transmission), frame size (in milliseconds),
and frames per packet (number of VoIP frames per UDP packet). VoIP
Specifies the hardware that is installed in the IP Hardware gateway
server, including Card Type, Card ID, Telephony and Card Name. VoIP
QOS Specifies the QoS parameters for VoIP, IP Parameters including
VoIP QoS Detection (interval for Telephony checking VoIP QoS) and
VoIP QoS Threshold (threshold based on which the gateway server
triggers fallback to PST NETWORK, including Lost Packets, Packets
Out Of Order, and Round Trip Delay). H.323 Zone Identifies a human
readable H.323 Zone name IP with which a GateKeeper is associated.
Telephony
[0124] Table 2 lists object classes which are included in the NDS
enterprise directory schema extensions in a preferred embodiment of
the invention. Table 2 includes the name of each object class added
to the schema, a brief definition of each object class, a list of
the attributes listed in Table 1 which, in a preferred embodiment
of the invention, may be associated with the respective object
classes, and an indication as to whether the object class is added
to support the use of the enterprise directory to support IP
telephony or to support the advanced features.
2TABLE 2 New Object Classes Included in the Enterprise Directory
Schema Extension Object Schema Extension Class Definition
Attributes Supports Gate The GateKeeper class License IP Keeper
represents an H.323 WhitePages Subtree Telephony GateKeeper entity.
There H.323 Zone and may be multiple GateKeeper Exchange Advanced
GateKeepers in a Gateway List Features gateway network. Gateway The
Gateway class License IP represents an H.323 CTN Location ID
Telephony Gateway entity. CTN Numbers Table and A Gateway is
associated CTN Access Code Advanced with only one Auto Attendant
Prefix Features GateKeeper. The CTN Trunk Gateway object also
Translation UEP contains the routing Domain HopOff PST information
for NETWORK this Gateway. Pattern VoIP Address Parameter VoIP
Encoding VoIP QoS Parameters VoIP Hardware GateKeeper PST NETWORK
Codes Fall Back Number Attendant Number Call Log Configuration Call
Alert Timeout Maximum CallBacks Per User Manual Fallback Code
Finder Acceptance Code Hop On Enabled Hop Off Enabled PBX Trunk
Interface PBX Station Interface CTI PBX Information HopON for
OffNet Call List MCUU The MCU class License IP represents an H.323
Telehony MCU entity. An MCU Gatekeeper is associated with only one
GateKeeper. Gate The GateKeeper License IP Keeper Exchange object
contains Desktop CTI License Telephony Exchange a list of all
GateKeepers Count and in the NDS Tree. There Desktop Advanced can
be only a CTI License List Features single GateKeeper Finder
License Count Exchange object in the Finder License List entire NDS
Tree. The Mobile License Count Distinguished Name Mobile License
List of this object UEP Domain List is administrator defined when
the very first GateKeeper is installed in the NDS Tree.
Subsequently, the Distinguished Name of this object has to be
specified when the GateKeepers are installed. UEP Specifies the
list of GateKeeper Exchange Advanced Domain Gateways belonging to
Features this domain. User The User object GateKeeper IP users of
network Gateway Telephony services including Passcode and network
service. Office Phone Advanced the gateway Cellular Phone Features
Pager Home Phone
[0125] Gatekeeper Catalog Description
[0126] The gatekeeper catalog is an important part of the gateway
database 51. It supports many of the features which are unique in
the integrated voice gateway system of the invention, e.g. follow
me and white pages. The contents of the gatekeeper catalog tables
are described in the following tables. In preferred embodiments,
certain of the catalog tables, e.g. the Gateway Table (shown in
Table 6 below), may be divided into a plurality of smaller tables
to facilitate access to the information contained in the
tables.
[0127] Custom Date Table
[0128] The Custom Date table contains a list of custom dates for a
specific Follow Me rule. Table 3 describes the contents of the
Custom Date table.
3TABLE 3 Custom Date Table Attribute Description CustomDateID
Unique ID used to identify this record FollowMeID Link to FollowMe
entry Custom Date A custom date value
[0129] Follow Me Table
[0130] The Follow Me table contains a row for each Follow Me rule.
A Follow Me rule is constructed by joining the Follow Me table with
the Follow Me Filter table and the Custom Date table. Table 4
describes the contents of the Follow Me table.
4TABLE 4 Follow Me Table Attribute Description FollowMeID Unique ID
used to identify this record DN User this FollowMe rule corresponds
to FollowMeType DayOfWeek or Override StartDate Start date for this
FollowMe rule EndDate End date for this FollowMe rule StartTime
Start time for this FollowMe rule EndTime End time for this
FollowMe rule Monday Yes/No field. True (Yes) indicates that this
FollowMe rule applies to this day of the week Tuesday Yes/No field.
True (Yes) indicates that this FollowMe rule applies to this day of
the week Wednesday Yes/No field. True (Yes) indicates that this
FollowMe rule applies to this day of the week Thursday Yes/No
field. True (Yes) indicates that this FollowMe rule applies to this
day of the week Friday Yes/No field. True (Yes) indicates that this
FollowMe rule applies to this day of the week Saturday Yes/No
field. True (Yes) indicates that this FollowMe rule applies to this
day of the week Sunday Yes/No field. True (Yes) indicates that this
FollowMe rule applies to this day of the week DestinationType
Specifies the type of destination telephone number
DestinationTAddress Specifies the destination telephony address to
forward call to DestinationDescription User defined text
DestinationName User defined text FilterEnabled Yes/No field. True
(Yes) indicates that the source filter (if defined) should be
used
[0131] Follow Me Filter Table
[0132] The Follow Me Filter table specifies a source filter for a
specific Follow Me record. Table 5 describes the contents of the
Follow Me Filter table.
5TABLE 5 Follow Me Filter Table Attribute Description FilterID
Unique ID used to identify this record FollowMeID Connects to the
FollowMe table IncludeItem Indicates whether this item should be
included in the source filter or not TaddressType Type of Telephony
Address number string Taddress The calling Telephony Address Name
User defined string
[0133] Gateway Table
[0134] The Gateway table contains a record for each gateway server
defined in the gateway network. The directory dredger searches the
directory and populates this table. Table 6 describes the contents
of the Gateway table.
6TABLE 6 Gateway Table Attribute Description License License data
for a gateway network CTN Location ID Location ID for the gateway
network in the Corporate Telephony Network numbering plan CTN
Numbers Corporate Telephony Network Table numbers (or number
patterns) Table represented by the gateway network for its PBX and
its satellite PBXs CTN Access Trunk access code to the Corporate
Code Telephony Network Auto Attendant Dialing string for the auto
attendant Prefix preceding the extension number CTN Trunk
Translation table for converting from Translation the PBX numbering
format to CTN canonical format UEP Domain Gateway network Uniform
Extension Plan domain. HopOff PST PST NETWORK number patterns for
NETWORK hop-off to PST NETWORK for the Patterns gateway server VoIP
Address Address parameter associated with Parameter the VoIP
subsystem VoIP Encoding VoIP encoding parameters VoIP QoS QoS
parameters for VoIP Parameters VoIP Hardware VoIP hardware
installed in the gateway server GateKeeper Default GateKeeper with
which the gateway should register PST NETWORK PST NETWORK codes for
the Codes gateway server Fall Back Fallback number for the gateway
Number server Attendant Telephone number for a gatewa Number
yserver for Finder activation/deactivation, Hop On from PST
NETWORK, etc. Call Log Duration, in days, of the call log
Configuration parameters Call Alert Time-out period for Call Alert
inaction Timeout Maximum Maximum number of outstanding CallBacks
Per Callback on busy requests for each User user Manual Fallback
Code for fallback to PST NETWORK Code Finder Acceptance code for
answering a Acceptance redirected call Code Hop On Enabled Whether
Hop-On is enabled for the gatewa yserver Hop Off Enabled Whether
Hop-Off to PST NETWORK is enabled PBX Trunk Trunk line interface
between the Interface gateway server and the PBX PBX Station
Station line interface between the Interface gateway server and the
PBX CTI CTI link between the gateway server and the PBX PBX
Information PBX configuration information HopON for List of users,
groups or containers OffNet Call List authorized to access Hop-On
for Off- Net calls
[0135] Frequent Contacts Table
[0136] The Frequent Contacts table contains the frequent contacts
for each of the users in the User table. Table 7 describes the
contents of the Frequent Contacts table.
7TABLE 7 Frequent Contacts Table Attribute Description
FrequentContactsID Unique ID used to identify this record
DestinationDN The DN that this Frequent Contact refers to FeDN
Owner of this Frequent Contact record Description User defined text
describing this Frequent Contact entry
[0137] Routing Table
[0138] The Routing table contains supported numbers by gateway
server. This table along with the Gateway table is used to build a
routing table. Table 8 describes the contents of the Routing
table.
8TABLE 8 Routing Table Attribute Description ID Unique ID used to
identify this record DN Associated Gateway distinguished name
CTNLocationID CTN number identifying the Gateway RangeType CTN or
HopOff FromRange Beginning range of the local segment of the E164
Phone Number or the extension number ToRange Ending range of the
local segment of the E164 Phone Number or the extension number From
PST Beginning range of the NETWORKRange Corresponding PST NETWORK
address for the extension ToPST Ending range of the Corresponding
NETWORKRange PST NETWORK address for the extension HopOffAreaCode
When range type is `HopOff`, the area code of the E164 number
HopOffCountryCode When range type is `HopOff`, the country code of
the E164 number Comment User comment
[0139] White Pages
[0140] The White Pages contains a record for each user in a
specified Zone. It is also possible for this table to contain all
users in the gateway network. This table can be used as an
enterprise wide white pages. Table 9 describes the contents of the
White Pages.
9TABLE 9 White Pages Attribute Description ID Unique ID used to
identify this record DN User distinguished name CN User common name
EmployeeNumber User's employee number DepartmentName User's
department FirstName First name of user MiddleName Middle initial
LastName User last name OfficeExtension User office telephone
extension Number number Office PST User office PST NETWORK NETWORK
telephone number Number Office Fax User office fax number Number
CellularPhoneNumber User cellular telephone number HomePhoneNumber
User home telephone number Pager User pager number Title User title
EmailAddress User email address PostalAddress User postal address
City User city StateOrProvince User state or province PostalCode
User zip/post code Country User country Location User location
DepartmentID User department GatewayName Gateway corresponding for
this user DefaultGatekeeper Default Gatekeeper for this user
Passcode User passcode Preferences User preferences FollowMeEnabled
Yes/No field. True (Yes) implies that follow me is enabled for this
user
[0141] Private Contacts
[0142] The Private Contacts table contains records of contacts
users want to track, but who are not listed in the White Pages. The
formats in the fields of the Private Contacts table are identical
to those of the fields in the White Pages.
[0143] Temporary Contacts
[0144] When a user wishes to view the user's frequent contacts, a
temporary table is built which contains only the user's frequent
contact information. This table is constructed from the White Pages
and Private Contacts table. The formats of the fields of the
Temporary Contacts table are identical to those of the fields in
the White Pages.
[0145] Numbering Plan
[0146] The numbering plan is the equivalent of addressing for
telephone numbers. In a company's voice network, there are various
mechanisms for addressing a call to another party, e.g. a PST
NETWORK number and an extension number. There are also various
access mechanisms for the respective addressing schemes. Current
large PBXs are flexible in their numbering plans, and can support
numerous types of dialing methods. In Uniform Numbering Plans
(UNP), telephones at any of a number of sites may be dialed simply
by dialing an extension number. Such uniform numbering plans may
allow for extensions of different lengths (i.e., number of digits).
In an Enterprise Telephone Number (ETN) plan, telephones at other
sites in the company may be dialed using an access code, commonly
an "8", followed by a location code (typically 3 digits), followed
by the extension. In a PST NETWORK Numbering plan, telephones at
other sites may be dialed by dialing the public telephone number
(per the ITU E.164 specification). In a trunk group access
numbering plan, telephones at a particular remote site may be
dialed by dialing an access code for a group of trunks, followed by
the extension number.
[0147] The UNP and ETN methods are commonly limited to single
vendor PBX solutions. Key systems are far more limited in their
numbering plan capabilities. Key systems typically support PST
NETWORK dialing and perhaps Tie Trunks, but do not support UNP or
ETN methods.
[0148] The gateway server facilitates a transparent installation
with respect to the enterprise's existing numbering plan. The
gateway network permits users to continue dialing according to the
same numbering plan they use with the PBX alone. the ARS/Numbering
Plan routing and digit manipulation tables are reconfigured to
deliver calls to remote locations to the gateway server. Thus, the
gateway server does not require that the numbering plan be
changed.
[0149] In a voice gateway system, as illustrated in FIG. 1, the
gateway servers can support UNP and ETN methods, and can support
these methods in multi-vendor environments which include PBXs
and/or hybrid/key systems over an IP network. The gateway network
classifies telephone numbers as PST NETWORK (E.164), ETN
(Location+Extension) and UNP (Extension). The three plans are
merged into a single numbering scheme for the enterprise by adding
configurable prefixes to the PST NETWORK and ETN numbers. For a PST
NETWORK number, the PST NETWORK prefix (typically "9") is appended
to the PST NETWORK number. For ETN numbers, the ETN prefix
(typically "8") is appended to the telephone number.
[0150] The telephone numbers may undergo pre- and post-processing
as they traverse the gateway network depending on the capabilities
of the PBXs and the preferences of system administrators. For
example, if a caller PBX has the capability, and the system
administrator chooses to configure the PBX such that all calls are
delivered to the gateway server with the telephone number in the
gateway network format, the call can be compared directly against
the routing tables for routing to the destination. If a PBX does
not have the capability, or if the system administrator chooses not
to configure the tables in the PBX, then the caller gateway server
can perform incoming digit translation. The preprocessing can be
set up to apply the same rules to all trunks, or can apply, e.g.
PST NETWORK translation to calls on trunks 1-8, and ETN translation
to calls on trunks 9-16. The preprocessed numbers can then be
compared against the routing tables for routing to the
destination.
[0151] At the destination, if the called PBX has the capability,
and the system administrator chooses to configure the PBX to
receive call with the telephone number in the gateway network
format, then the gateway server delivers the calls without the need
for postprocessing the telephone numbers. If the PBX does not have
the capability to receive call with the telephone number in the
gateway network format, or if the system administrator chooses not
to so configure the PBX, then the called gateway server can perform
outgoing digit translation. The called telephone number associated
with each call received may be formatted to deliver an extension,
and ETN number or a PST NETWORK number, with appropriate prefixes,
for the particular PBX.
[0152] Hybrid/key systems with analog trunks typically have an
automated attendant unit which answers calls and prompts the caller
to enter an extension to reach a called telephone. This is known as
a two stage dialing scheme, and is commonly used in smaller office
environments. The gateway server permits the caller to directly
dial a called telephone without having to deal with an automated
attendant. The caller may start the call either by dialing an ETN
number (8+LOCATION+Extension), a UNP number (extension) or place
the call from the white pages directory via the browser interface.
The called gateway may be configured to deliver the call directly
to the called telephone. When the call arrives at the gateway
server, the gateway server alerts the analog trunk. When the call
is answered by the PBX, the gateway server plays the configured
prefix string followed by the extension number. The call will then
alert directly at the called telephone.
[0153] The caller will hear normal ringing throughout the process
until the called telephone is answered. The net effect is that the
invention reduces two-stage dialing into a one-stage addressing
method.
[0154] In the following descriptions of several functions of the
integrated voice gateway system of the invention, reference will be
had to FIGS. 4-47 and 50-58 which illustrate the configuration of
the gateway networks and the components which support the functions
described. In the interest of simplifying the FIGs., only those
components which are necessary to describe the respective functions
are depicted in the corresponding FIGs. For example, the telephone
network software and hardware (FIG. 3) will be represented by the
respective software drivers (e.g., analog driver 67 representing
the trunk 66, analog driver 67 and analog trunk hardware 68).
[0155] In certain instances in which signals are depicted, although
connections between components are not explicitly depicted,
reference numerals coupled to the signals are understood to be
referring to the described interface (e.g., station analog port,
trunk, etc.). In the descriptions of the functions, a telephone
which is coupled to a PBX in a company's gateway network will be
referred to as a gateway telephone, and a telephone which is
outside the company and is coupled to the PST NETWORK will be
referred to as a PST NETWORK telephone. The gateway network and its
components at the calling party's end will generally be referred to
as the "caller" components, e.g. "caller gateway server". The
gateway network and its components at the called party's end will
generally be referred to as the "called" components, e.g. "called
gateway server".
[0156] In the description of the operation of an integrated voice
gateway system of the invention in FIGS. 4-47 and 50-58, in general
components comprising the gateway network at the caller end of a
telephone call are identified by their respective reference
numerals shown in FIGS. 2-3 (e.g. caller gateway server 26) and
components comprising the gateway network at the called end of a
telephone call will have as their reference numerals 100 plus the
respective reference numeral of the corresponding component of
gateway network at the caller end (e.g. called gateway server 126).
Additional components outside both the caller gateway network and
the called gateway network will have as their reference numerals
200, 300, 400, etc., plus the respective reference numeral of the
corresponding component of gateway network at the caller end (e.g.
PST NETWORK telephone 238).
[0157] In FIGS. 4-47 and 50-58, unless otherwise specified in a
particular method or scenario, the interface between the PBX and
the gateway server may be illustrated as an analog trunk interface
and the telephone drivers in the gateway servers may be illustrated
as analog drivers. However, as illustrated in FIG. 3 and described
in reference to FIG. 3 and elsewhere herein, the interface between
the PBX and the gateway server may include analog trunk, DS-1
(T1/E1, PRI, QSIG) and/or analog station lines, with each interface
supported by a corresponding telephone driver. Therefore, the
illustration of the interface between the PBX and the gateway
server as an analog trunk and the telephone drivers in the gateway
as analog drivers is by way of illustration, and in no way limits
the respective described operations to the particular interface
illustrated in the examples.
[0158] In FIGs. depicting methods or scenarios in which a call
hops-on to or hops-off from a gateway network, a third telephone
company central office will be identified as CO3 13.
[0159] In the description of the operation of an embodiment of an
integrated voice gateway system of the invention with respect to
FIGS. 4-58, telephone calls are generally described as being
initiated by a caller lifting a handset and dialing a telephone
number. Likewise, the connection is generally described as being
made when a called party lifts the handset and answers the call.
The integrated computer telephone system of the invention provides
the user with an integrated, comprehensive, and easy to use PC Call
Control capability via a web browser interface. The PC Call Control
capability is described below. It is understood that all of the
methods and scenarios of operation illustrated by the FIGs., and
described herein, may be controlled by the user from the telephone
via DTMF buttons or from the desktop workstation via the web
browser interface. The PC Call Control features of the integrated
voice gateway system of the invention are described below.
[0160] Basic PST NETWORK Call
[0161] In a preferred embodiment, the integrated computer telephone
system of the invention provides the capability to place a
telephone call from a caller gateway telephone to a called gateway
telephone via the PST NETWORK. Referring to FIG. 4, a caller (not
illustrated) initiates a call by picking up the handset on the
caller telephone 38 and dialing an ARS code, e.g. 9, plus a PST
NETWORK telephone number or other digit string. The caller PBX 34
reviews the dialed number against the information in the ARS tables
to select a trunk group. It may then modify the digit string,
deleting and inserting digits for proper addressing. The caller PBX
34 delivers the call to CO1 12. CO1 12 routes the telephone call
through the PST NETWORK 16 to CO2 14. CO2 14 delivers the call to
the called PBX 134 via an available trunk and may transmit a subset
of the called telephone number. The called telephone 138 rings and
is answered by the called party (not illustrated).
[0162] Basic VoIP Call
[0163] In a preferred embodiment, the gateway network provides the
capability to place a telephone call from a caller gateway
telephone to a called gateway telephone via an IP network. This is
referred to herein as a VoIP call. It is also referred to as
"Inter-PBX Toll Bypass," because, as the term indicates, a long
distance toll between remote PBXs is avoided by using the IP
network.
[0164] Referring to FIG. 5, a caller (not illustrated) initiates a
call by picking up the handset on the caller telephone 38 and
dialing an ARS code, e.g. "9" for an off-net call or "8" for an
on-net call, plus a PST NETWORK telephone number or other digit
string. The caller PBX 34 reviews the digital number against the
information in the ARS tables and selects a trunk group 35 coupled
to the caller gateway server 26.
[0165] The caller PBX 34 may modify the dialed digit string,
deleting and inserting digits for proper addressing on a trunk in
that group. The caller gateway analog driver 67 receives the call.
The caller gateway server 26 performs internal operations to
determine the IP address of the called gateway server 126.
Referring again to FIG. 3, within the caller gateway server 26, the
gateway engine 50 requests the gatekeeper agent 52 to get an
address. The gatekeeper agent 52 places an H.323 compliant request
to the gateway gatekeeper 53. The gateway gatekeeper 53 references
tables in the gateway database 51 to determine the called gateway
server 126 and its address. The caller gateway VoIP driver 62
transmits packets addressed to the IP address of the called gateway
server 126 via the IP network 18. The caller gateway server 26 and
called gateway server 126 communicate via the IP network 18 to
initiate a duplex H.323 call. The called gateway server 126 then
selects a telephone trunk 135 to deliver the call to the called PBX
134. The called gateway server 126 initiates the call, including
the called telephone number, to the called PBX 134. The called PBX
134 interprets the received telephone number to select a called
telephone 138 to ring. The called telephone 138 rings and when
answered by the called party (not illustrated) the connection is
made. The connection event may propagate through the system.
[0166] Hop-off to PST NETWORK Call
[0167] In a preferred embodiment, the gateway network provides the
capability to place a telephone call to an outside-of-the-company
PST NETWORK destination via the IP network. A user in the company
can call a long distance PST NETWORK destination by dialing the
telephone number as usual. The caller gateway network will set up
the call to be carried via the IP network to a called gateway
server within the company which is closest to the destination
telephone, and make a PST NETWORK connection to "hop-off" to the
PST NETWORK destination.
[0168] The system administrator for each gateway network determines
which local hop-off destinations the gateway network will support
and configures the gateway server accordingly. The system
administrator also configures the gateway server to identify those
gateway servers from which the local gateway server will accept
hop-off calls. The gateway servers can be configured to support
hop-off to local PST NETWORK calls and hop-off to long distance PST
NETWORK calls. The ARS table of the PBX in the originating gateway
network is configured accordingly for the hop-off calls to be
routed to the gateway server.
[0169] In preferred embodiments of the invention, there are several
different methods in which hop-off to PST NETWORK may be
implemented. The different methods take into consideration
variations in the configurations of gateway networks at different
installations, e.g. PBX configuration and capability, CTI
capabilities, additional hardware availability and voice channel
capacity.
[0170] Table 10 identifies differences in the configuration for
three hop-off to PST NETWORK methods in preferred embodiments of
the invention.
10TABLE 10 Hop-off to PST NETWORK Methods T1 Analog trunk station
channels per ports per hop-off hop-off CTI call (at call (at PBX
Method Transparent support destination) destination) support A
Transparent No 0 1 None B Transparent No 1 1 (only Trunk to during
trunk setup) transfer C Transparent No 1 0 Trunk to trunk call
[0171] Hop-off to PST NETWORK will be described with respect to
FIGS. 6-14.
[0172] FIGS. 6-14 depict certain components of a caller gateway
network 4 and a called gateway network 104 which support the
respective hop-off to PST NETWORK methods. Connections between the
components are not shown in order to simplify the FIGs. The set up
of the hop-off and the resulting PST NETWORK call are depicted by a
heavy solid line. An arrow head on a solid line indicates the
direction of data flow or call flow, as appropriate. A solid line
without an arrow head indicates the data or call flows in both
directions.
[0173] Hop-off to PST NETWORK method "A", listed in Table 10,
implements a transparent hop-off to PST NETWORK. One analog station
port is used at the destination end of the call during hop-off to
PST NETWORK and for the remainder of the call. No T1 trunk channels
are required for the hop-off. Method "A" does not use CTI
support.
[0174] Hop-off to PST method "A" will be described with reference
to FIGS. 6-7. All steps described below are at the called gateway
network 104. Referring to FIG. 6, upon receiving a VoIP call from
the caller gateway server 26, the analog station driver 174 in the
called gateway server 126 places a call from an analog station 175
(75 in FIG. 3) to the hop-off destination called PST NETWORK
telephone 238. Referring to FIG. 7, the called gateway server 126
then connects the TDM bus 84 (FIG. 3) time slot of the new PST
NETWORK call with that of the incoming VoIP call, completing the
hop-off to PST NETWORK call.
[0175] Hop-off to PST NETWORK method "B", listed in Table 10,
implements a transparent hop-off to PST NETWORK. One analog station
port is used at the destination end of the call only during setup
of the hop-off to PST NETWORK. One T1 trunk channel is used during
setup of the hop-off and for the remainder of the call. The PBX
includes trunk-to-trunk transfer capability. Method "B" does not
use CTI support.
[0176] Hop-off to PST NETWORK method "B" will be described with
reference to FIGS. 8-12. Referring to FIG. 8, upon receiving a call
from the caller gateway server 26, the called gateway server 126
makes a call from an analog station 174 in the called gateway
server 126 to a T1 trunk 137 in the called gateway network 104 by
dialing a specified "hop-off to gateway trunk" telephone number.
Referring to FIG. 9, the called gateway server 126 answers the call
at the gateway trunk 137 and recognizes the call as a hop-off to
PST NETWORK call. Referring to FIG. 10, the called gateway server
126 makes a hook-flash transfer to the hop-off destination
telephone 238 number. Referring to FIG. 11, the called gateway
server 126 hangs up the analog station 133. Referring to FIG. 12,
the called gateway server 126 connects the TDM bus 84 (FIG. 3) time
slot of the new hop-off call with the time slot of the incoming
VoIP call.
[0177] Hop-off to PST NETWORK method "C", listed in Table 10,
implements a transparent hop-off to PST NETWORK. One T1 trunk
channel is used during setup of the hop-off and for the remainder
of the call. No analog ports are used. The PBX includes trunk to
trunk call, i.e. tie trunk to CO trunk, capability. Method "C" does
not use CTI support.
[0178] Hop-off to PST NETWORK method "C" will be described with
reference to FIGS. 13-14. Referring to FIG. 13, upon receiving a
call from the caller gateway server 26, the called gateway server
126 makes a call from a T1-tie-trunk channel to the called, i.e.
hop-off, PST NETWORK number. Referring to FIG. 14, the called
gateway server 126 connects the TDM bus 84 time slot of the new
hop-off call with the time slot of the incoming VoIP call.
[0179] Hop-on to VoIP Call
[0180] In a preferred embodiment, the gateway network provides the
capability to place a telephone call from a PST NETWORK telephone
to a telephone on a distant gateway network via a VoIP call. This
capability can be combined with the hop-off to PST NETWORK
capability, described above, to enable a user to place a long
distance call from a caller PST NETWORK telephone to a called PST
NETWORK telephone by placing a local call to a local gateway
network. The telephone call is then carried via a VoIP call between
two gateway networks. Moreover, the destination gateway network for
the VoIP call may be a remote gateway network or the local gateway
which receives the call from the PST NETWORK telephone.
[0181] It will be seen below that in scenarios in which the called
gateway is local to the caller telephone (scenarios C and D,
below), the connection to the called telephone will not actually be
a VoIP call. However, in such scenarios, the invention provides an
access mechanism to the company's telephone system whereby a user
must be identified and pass through a passcode security scheme.
Calls placed by the user are identified by that user's caller ID
(for all calls, local and remote). This feature allows companies to
choose to employ hop-on whereby a toll free access number may be
given to employees so that they may call into the company, and
hop-off, and the billing for the call will be linked to the
company's PBX rather than the user's calling card.
[0182] Table 11 identifies scenarios of hop-on to VoIP calls in
preferred embodiments of the invention.
11TABLE 11 Hop-on to VoIP Scenarios Called Called Scenario
Telephone Gateway A Gateway Remote B PST Remote NETWORK (hop-off) C
Gateway Local D PST Local NETWORK (hop-off)
[0183] FIGS. 15-18 depict certain components of a caller gateway
network 4 and a called gateway network 104 which support the
respective scenarios of hop-on to VoIP. Connections between the
components are not shown in order to simplify the FIGs. All four
hop-on to VoIP scenarios are initiated with a common set of steps.
The steps common to all four hop-on to VoIP scenarios will be
described with respect to FIG. 15.
[0184] Referring to FIG. 15, a caller (not illustrated) at a PST
NETWORK telephone 238 lifts the handset and dials a "Remote Access"
telephone number for the local caller gateway network 4. The call
is received at CO1 12 which alerts the caller PBX 34 with the call.
The caller PBX 34 routes the call to the caller gateway server 26.
The caller gateway server 26 answers the call and interacts with
the caller via interactive voice response (IVR). Using dual tone
multi-frequency (DTMF) touch tones, the caller responds to voice
prompts which may include the caller's ID, password, etc. The
caller gateway server 26 then authenticates the caller against
information in the gateway database image of the NDS directory
information. If the caller gateway server 26 is able to
authenticate the caller, the caller gateway server 26 then provides
the caller with a dial tone. The caller then dials the telephone
number of the desired called telephone. Based on the dialed
telephone number, the caller gateway server selects a
destination.
[0185] In hop-on to VoIP scenario "A", the called telephone is a
gateway telephone in a remote gateway network. Scenario "A" will be
described with reference to FIG. 16. The remaining steps are the
same as the corresponding steps for a basic VoIP call described
above. The caller gateway server 26 selects the called gateway
server 126. The caller gateway VoIP driver 62 transmits packets
addressed to the IP address of the called gateway network 126 via
the IP network 18. The caller gateway server 26 and called gateway
server 126 communicate via the IP network 18 to establish a duplex
H.323 call. The called gateway server 126 then selects a telephone
trunk 135 to deliver the call to the called PBX 134. The called
gateway server 126 transmits the called telephone number to the
called PBX 134. The called PBX 134 interprets the received
telephone number to select a called telephone 138 to ring. The
called telephone 138 rings and is answered by the called party (not
illustrated).
[0186] In hop-on to VoIP scenario "B", the called telephone is a
PST NETWORK telephone located near a remote gateway network. As
indicated above for the steps common to all three hop-on to VoIP
scenarios, the caller gateway server 26 searches the caller gateway
routing table to select a destination gateway network, and selects
the called gateway network 126. The remainder of the call setup may
employ any one of the three hop-off to PST NETWORK scenarios
described above.
[0187] In hop-on to VoIP scenario "C", the called telephone is a
gateway telephone coupled to the caller gateway network 4. Scenario
"C" will be described with reference to FIG. 17. The caller gateway
server 26 (which is also the called gateway server) selects a
telephone trunk 135 to deliver the call to the caller PBX 34 and
transmits the called telephone number to the caller PBX 34. The
caller gateway server 26 couples the inbound caller's trunk 35 with
the trunk 135 for the called telephone 338. The caller PBX 34
interprets the telephone number to select a telephone to ring. The
called telephone 338 rings and is answered by the called user (not
illustrated).
[0188] In hop-on to VoIP scenario "D", the called telephone is a
PST NETWORK telephone located near the caller gateway network 4.
Scenario "D" will be described with respect to FIG. 18. The caller
gateway server 26 (which is also the called gateway server) selects
a telephone trunk 135 to deliver the call to the caller PBX 34 and
transmits the called telephone number to the caller PBX 34. The
caller gateway server 26 couples the inbound caller's trunk 35 with
the trunk 135 for the called telephone 438. The caller PBX 34
interprets the telephone number and determines that the call is for
a local PST NETWORK telephone. The caller PBX 34 selects an
external trunk coupled to CO1 12 and dials the destination
telephone number. CO1 12 routes the call to the called telephone
438. The called telephone 438 rings and is answered by the called
user (not illustrated).
[0189] Fallback to PST NETWORK
[0190] In a preferred embodiment, the gateway server constantly
monitors the quality of service (QoS) during VoIP network calls
using the standard realtime transport control protocol (RTCP). The
QoS may be specified in terms of end-to-end delay, IP packet loss
and jitter. If the QoS falls below a predetermined level set by a
system administrator, the gateway server sets up an alternate
connection over the PST NETWORK and switches the call to the PST
NETWORK connection.
[0191] The caller can also initiate a fallback to PST NETWORK if
the caller decides that the quality of the voice transmission has
deteriorated to an unacceptable level. The caller can initiate a
fallback to PST NETWORK by entering a specified DTMF key sequence
on the telephone, e.g. a combination of the "star" (*) and "pound
sign" (#) keys. A system administrator can configure a gateway
server to allow or disallow caller-initiated fallback to PST
NETWORK.
[0192] In preferred embodiments of the invention, there are several
different methods in which fallback to PST NETWORK may be
implemented. The different methods take into consideration
variations in the configurations of gateway networks at different
installations, e.g. PBX configuration and capability, CTI
capabilities, additional hardware availability and voice channel
capacity. In addition, some of the methods allow fallback to PST
NETWORK to be transparent to the user, while other methods do not
provide transparent fallback to PST NETWORK. In the case of
transparent fallback to PST NETWORK, the users will simply perceive
that the quality of voice suddenly improves. In the case of
non-transparent fallback to PST NETWORK, the conversation will be
interrupted by the gateway server while the fallback to PST NETWORK
takes place.
[0193] Table 12 identifies differences in the configuration for
methods of fallback to PST NETWORK in preferred embodiments of the
invention.
12TABLE 12 Fallback to PST NETWORK Methods T1 Analog Trunk station
channels per ports per fallback fallback call call (at CTI (at each
each end PBX Method Transparent support end of call) of call)
support A Transparent No 1 1 Hunt group for gateway network analog
lines B Transparent No 2 1 (only PST during NETWORK setup) trunk to
tie trunk transfer; Hunt group for gateway network analog lines C
Transparent No 2 0 Trunk to trunk call D Non- Yes 0 0 None (except
Transparent CTI support) E Non- Yes 0 1 (only Hunt group
Transparent during for gateway setup) network analog lines (in
addition to CTI)
[0194] Fallback to PST NETWORK will be described with respect to
FIGs. 19-43. FIGS. 19-43 depict certain components of a caller
gateway network 4 and a called gateway network 104 which support
the respective methods of fallback to PST NETWORK. Connections
between the components are not shown in order to simplify the FIGs.
An ongoing VoIP telephone call is represented by a heavy dashed
line. The set up of the fallback and the resulting PST NETWORK call
are depicted by a heavy solid line. Arrow heads at one end of a
dashed line or solid line indicate the direction of data flow or
call flow. A dashed line or solid line without an arrow head
indicates the call or data flows in both directions.
[0195] Fallback to PST NETWORK method "A", listed in Table 12,
implements a transparent fallback to PST NETWORK. One T1 channel
and one analog station port are used at each end of the call during
fallback to PST NETWORK and for the remainder of the call. The PBX
includes a hunt group for the gateway network analog stations.
Method "A" does not use CTI support.
[0196] Fallback to PST NETWORK method "A" will be described with
reference to FIGS. 19 to 22. Referring to FIG. 19, an ongoing VoIP
call is routed between a caller telephone 38 and a called telephone
138 through the caller PBX 34 and called PBX 134, the caller
gateway server 26 and the called gateway server 126, through the IP
network 18. In fallback to PST NETWORK method "A", when the caller
gateway server 26 determines that the QoS has fallen below the
level specified by the system administrator, the caller gateway
server 26 initiates a call from an analog station in the caller
gateway server 26 to the hunt group of analog stations in the
called gateway server 126. The call initiation, and subsequent
signaling, is routed from the caller station analog driver 74
through the caller PBX 34, the PST NETWORK 16 (including the
respective CO's 12,14), and the called PBX 134 to the called
station analog driver 174 in the called gateway server 126.
Referring to FIG. 20, the called gateway server 126 sends a
"fallback ready" DTMF tone back to the caller gateway server 26.
The DTMF tone is routed from the called gateway server 126 through
the called PBX 134, the PST NETWORK 16 and the caller PBX 34 to the
called gateway server 26. Referring again to FIG. 19, when the
caller gateway server 26 receives the fallback ready DTMF tone, the
caller gateway server 26 sends the original called telephone number
to the called gateway server 126, and then waits for a short
period, e.g. 200 milliseconds (msec), to allow the called gateway
server 126 to receive the telephone number. Referring to FIG. 21,
the caller gateway server 26 and the called gateway server 126 then
connect the respective TDM bus 84 (FIG. 3) time-slots of the new
PST NETWORK call with that of the respective T1 channels of the
original VoIP call, thereby establishing the telephone call via the
PST NETWORK 16. Referring to FIG. 22, the caller gateway server 26
and called gateway server 126 then disconnect the original VoIP
call. Fallback to PST NETWORK method "B", listed in Table 12,
implements a transparent fallback to PST NETWORK. Two T1 channels
are used at each end of the call during fallback to PST NETWORK and
for the remainder of the call. One analog station port is used at
each end only during fallback to PST NETWORK. The PBX includes
trunk to trunk transfer capability, including both CO trunk to tie
trunk and CO trunk to CO trunk. Method "B" does not use CTI
support.
[0197] Fallback to PST NETWORK method "B" will be described with
reference to FIGS. 23 to 29. Referring to FIG. 23, an ongoing VoIP
call is routed between a caller telephone 38 and a called telephone
138 through the caller PBX 34 and called PBX 134, the caller
gateway server 26 and the called gateway server 126, through the IP
network 18. In fallback to PST NETWORK method "B", when the caller
gateway server 26 determines that the QoS has fallen below the
level specified by the system administrator, the caller gateway
server 26 initiates a call from an analog station 73 in the caller
gateway server 26 to the hunt group of analog stations in the
called gateway server 126. The call initiation, and subsequent
signaling, is routed from the caller station analog driver 74 in
the caller gateway server 26 through the caller PBX 34, the PST
NETWORK 16 (including the respective CO's 12, 14), and the called
PBX 134 to the called station analog driver 174 in the called
gateway server 126. Referring to FIG. 24, the called gateway server
126 sends a "fallback confirm" DTMF tone back to the caller gateway
server 26. The DTMF tone is routed from the caller gateway server
126 through the called PBX 134, the PST NETWORK 16 and the caller
PBX 34 to the called gateway server 26. Referring again to FIG. 23,
when the caller gateway server 26 receives the fallback confirm
DTMF tone, the caller gateway server 26 sends the original caller
and called telephone numbers to the called gateway server 126.
Referring to FIG. 25, both the caller gateway server 26 and the
called gateway server 126 place a hook-flash transfer to the
respective caller gateway network trunk 35 and called gateway
network trunk 135, respectively, by dialing a "fallback to gateway
network trunk" number. Continuing to refer to FIG. 25, both the
caller gateway server 26 and called gateway server 126 answer the
call at the respective gateway network trunks 67, 167 and recognize
the call as a fallback call. Referring to FIG. 26, both the caller
gateway server 26 and called gateway server 126 then hang up the
respective analog stations 74, 174. Referring to FIG. 27, the
called gateway server 126 sends a "fallback ready" DTMF tone to a
new trunk channel for the PST NETWORK call, and then waits for a
short period, e.g. 200 msec, to allow the caller gateway server 26
to receive the DTMF tone. Referring to FIG. 28, the caller gateway
server 26 and the called gateway server 126 then connect the
respective TDM bus 84 (FIG. 3) time-slot of the new trunk 35
channel with that of the T1 channel of the original VoIP call,
thereby establishing the telephone call via the PST NETWORK 16.
Referring to FIG. 29, the caller gateway server 26 and called
gateway server 126 then disconnect the original VoIP call.
[0198] Fallback to PST NETWORK method "C", listed in Table 11,
implements a transparent fallback to PST NETWORK. Two T1 channels
are used at each end of the call during fallback to PST NETWORK and
for the remainder of the call. No analog station ports are used.
The PBX uses trunk to trunk call capability, i.e. tie trunk to CO
trunk on the caller gateway server side, and CO trunk to tie trunk
on the called gateway server side. The PBX is configured to enable
a trunk to trunk call.
[0199] Fallback to PST NETWORK method "C" will be described with
reference to FIGS. 30 to 33. Referring to FIG. 30, an ongoing VoIP
call is routed between a caller telephone 38 and a called telephone
138 through the caller PBX 34 and called PBX 134, the caller
gateway server 26 and the called gateway server 126, through the IP
network 18. In fallback to PST NETWORK method "C", when the caller
gateway server 26 determines that the QoS has fallen below the
level specified by the system administrator, the caller gateway
server 26 initiates a call from a tie trunk channel to the tie
trunk channel of the called gateway server 126. The call is
initiated by dialing a specified telephone number. This step may be
a multi-step process, and the implementation may be PBX specific.
After initiating the call, the caller gateway server 26 waits to
receive a "fallback ready" DTMF tone. Referring to FIG. 31, after
the called gateway server receives the tie-trunk call, the called
gateway server 126 sends the "fallback ready" DTMF tone to the
caller gateway server 26. Referring again to FIG. 30, the caller
gateway server 26 sends the original called telephone number to the
called gateway server 126, and then waits for a short period, e.g.
200 msec. Referring to FIG. 32, the caller gateway server 26 and
the called gateway server 126 then connect the respective TDM bus
84 time-slot of the new trunk channel with that of the T1 channel
of the original VoIP call, thereby establishing the telephone call
via the PST NETWORK 16. Referring to FIG. 33, the caller gateway
server 26 and called gateway server 126 then disconnect the
original VoIP call.
[0200] Fallback to PST NETWORK method "D", listed in Table 11,
implements a non-transparent fallback to PST NETWORK. No Ti
channels are used for the PST NETWORK call after the fallback
process. No analog station ports are used. The PBX uses CTI. The
gateway servers exchange proprietary messages among themselves
using IP sessions which are separate from those used for the voice
call. Fallback to PST NETWORK method "D" may be used if the IP
connection between the caller gateway server and called gateway
server is still good enough to support transmission of data
messages. If the IP connection is not adequate for the caller
gateway server and called gateway server to exchange data messages,
the respective gateway servers may fallback to a PST NETWORK call
using method "E" which will be described below.
[0201] Fallback to PST NETWORK method "D" will be described with
reference to FIGS. 34 to 38. Referring to FIG. 34, an ongoing VoIP
call is routed between a caller telephone 38 and a called telephone
138 through the caller PBX 34 and called PBX 134, the caller
gateway server 26 and the called gateway server 126, through the IP
network 18. In fallback to PST NETWORK method "D", when the caller
gateway server 26 determines that the QoS has fallen below the
level specified by the system administrator, the caller gateway
server 26 initiates a "fallback request" message over the IP
network 18. The "fallback request" message contains the caller and
called telephone numbers. The caller gateway server waits to
receive a "fallback ready" message. Referring to FIG. 35, after
receiving the "fallback request" from the caller gateway server 26,
the called gateway server 126 sends a "fallback ready" message to
the caller gateway server 26 over the IP network 18. Referring to
FIG. 36, the caller gateway server 26 manages the TDM bus 84 time
slots to announce the fallback to both the caller and called
parties. Referring to FIG. 37, the caller gateway server 26 uses
the CTI link to place the current VoIP call on hold. The caller
gateway server 26 then uses the CTI link to make a PST NETWORK call
from the caller telephone 38 to the called telephone 138. The
called gateway server 126 detects the incoming call and uses the
CTI link to place the VoIP call on hold and to pick up the PST
NETWORK call. Referring to FIG. 38, the caller gateway server 26
and called gateway server 126 then disconnect the original VoIP
call.
[0202] In fallback to PST NETWORK method "E", listed in Table 11,
no T1 channels are used for the PST NETWORK call after the fallback
process. One analog station port is used during the fallback to PST
NETWORK process. The PBX includes CTI and has a hunt group for the
gateway network analog stations.
[0203] Fallback to PST NETWORK method "E" will be described with
reference to FIGS. 39 to 46. Referring to FIG. 39, an ongoing VoIP
call is routed between a caller telephone 38 and a called telephone
138 through the caller PBX 34 and called PBX 134, the caller
gateway server 26 and the called gateway server 126, through the IP
network 18. In fallback to PST NETWORK method "E", when the caller
gateway server 26 determines that the QoS has fallen below the
level specified by the system administrator, the caller gateway
server 26 initiates a telephone call from an analog station in the
caller gateway server 26 to the hunt group of analog stations in
the called gateway server 126. Referring to FIG. 40, the called
gateway server 126 sends a "fallback confirm" DTMF tone to the
caller gateway server 26.
[0204] Referring again to FIG. 39, the caller gateway server 26
sends the caller and called telephone numbers to the called gateway
server 126. Referring to FIG. 41, both the caller gateway server 26
and the called gateway server 126 manage the TDM bus 84 time slots
to announce the fallback to PST NETWORK to the caller and called
parties, respectively. Referring to FIGS. 42-45, the caller gateway
server 26 and called gateway server 126 use CTI to put the current
VoIP call on hold (FIG. 42); then to put the new PST NETWORK call
on hold (FIG. 43); and then to make a call from the analog station
in the respective gateway networks to the caller (FIG. 44), and
answer the call for the caller (FIG. 45). Referring to FIG. 46, the
caller gateway server 26 and called gateway server 126 then hang up
on the respective analog stations, and disconnect the original VoIP
call.
[0205] Fallback to PST NETWORK During Call Setup
[0206] In addition to providing the capability to fallback to PST
NETWORK during a VoIP call, the gateway server provides the
capability to fallback to the PST NETWORK during setup of a call if
the call cannot be connected through the called gateway server.
Fallback to PST NETWORK during call setup may employ any of the
five methods described above for fallback to PST NETWORK during a
call. The method employed will depend on the configuration of the
particular caller gateway network, e.g. PBX configuration and
capability, CTI capabilities, additional hardware availability and
voice channel capacity. However, in each of the five methods
described above, fallback to PST NETWORK during call setup does not
include the steps which keep the VoIP call connected until the PST
NETWORK call is completed, since there is no current VoIP call to
maintain. The fallback to PST NETWORK during call setup capability
provided by the gateway server of the invention is an improvement
over current systems. In many current systems, if a caller gateway
placing a call to a remote gateway cannot access the remote
gateway, the caller gateway will "busy out" all of its trunks, or
at least a group of trunks allocated to the remote destination.
Then, as succeeding gateways find either the remote gateway or the
initial caller gateway inaccessible, they will "busy out" their own
respective trunks. This "domino" effect can lead to the entire
network being brought down because an individual segment of the
network is down. However, the gateway server avoids this problem by
simply setting up the call to be routed back through the PBX. In
the gateway network of the invention, there is no need for the
caller gateway to busy itself out merely because the caller gateway
found a remote called gateway to be inaccessible.
[0207] Path Replacement
[0208] The gateway server supports redirection of an incoming call
from a first PBX, and its associated gateway server, to a second
PBX, and its associated gateway server, as a result of a call
forward (including call transfer, or follow-me). If both the call
before (the initial call) and the call after (the final call) a
call forward are VoIP calls, the final call can take a direct path
between the caller gateway server and called (transfer) gateway
server. This "path replacement" feature eliminates unnecessary
loops after a call forward.
[0209] VoIP is sensitive to tandem compression, i.e., when a call
is converted to and from a VoIP call twice in series during the
call's transmission. Tandem compression results in a substantial
drop in voice quality, often to unacceptable quality levels. In a
preferred embodiment, the gateway server of the invention provides
a path replacement feature which substantially improves the quality
of voice transmission in a call forwarded call, and improves the
utilization of gateway network resources. The quality of voice is
substantially improved, because path replacement eliminates the
tandem VoIP calls after a call forward. The utilization of gateway
network resources is substantially improved because -an unnecessary
loop is avoided. After a call forward, there are two PBX's and
their respective gateway servers involved in the call instead of
three PBX's and gateway servers.
[0210] Path replacement is best described with an example: A call
from Boston to Los Angeles is transferred by the Los Angeles party
to a New York destination. In current systems, there would be two
calls coupled in the Los Angeles PBX, i.e. a call between Boston
and Los Angeles and a call between New York and Los Angeles. With
IP telephony, this would result in an unacceptable tandem
compression arrangement. However the gateway server recognizes that
a direct and shorter path exists, namely direct communication
between Boston and New York gateway networks. The gateway server
replaces the routing path to place one call following the direct
and shorter path, and with a single compression path. In
implementing a path replacement, the gateway servers exchange
messages to communicate with each other. The gateway servers use
CTI to set up a path replacement.
[0211] Path Replacement for Call Transfer
[0212] A gateway network user can transfer an incoming call to
another gateway network telephone. If an incoming call is a VoIP
call, and if the call is transferred to a remote gateway user via
VoIP, the gateway server will implement path replacement to
eliminate the intermediate PBX loop back. As a result, there will
be one direct VoIP link in the transferred call.
[0213] In the path replacement for call transfer methods describes
below, the original call is placed from the caller telephone at the
caller gateway network to the called telephone at the called
gateway network, and is then transferred to the transfer telephone
at the transfer gateway network. The call transfer may be either
unsupervised or supervised, and may be initiated by the called user
from a web browser CTI application or from the telephone.
[0214] Unsupervised Call Transfer from the Browser
[0215] To initiate an unsupervised call transfer, the called user
clicks an "unsupervised transfer" button displayed on a browser
menu. The called gateway server receives the unsupervised call
transfer request, and sends a call transfer message to the caller
gateway server. The caller gateway server receives the call
transfer request message and sets up a VoIP call to the transfer
telephone at the transfer gateway network. The caller gateway
server then disconnects the original call to the called
telephone.
[0216] Supervised Call Transfer from the Browser
[0217] To initiate a supervised call transfer, the called user
clicks a "supervised transfer" button displayed on a browser menu.
The called gateway server receives the supervised call transfer
request, uses CTI to place the call on hold, and places a call from
the called gateway server to the transfer telephone at the transfer
gateway server. After the call to the transfer telephone is
connected, the called user clicks a "transfer" menu entry to
complete the supervised call transfer. The called gateway server
receives the transfer request and sends a call transfer message to
the caller gateway server. The caller gateway server sets up a VoIP
call to the transfer telephone. The caller gateway server and
transfer gateway server manage the TDM bus time slots to connect
the caller telephone and transfer telephone via the new direct VoIP
call. The caller gateway server and transfer gateway server
disconnect the original call from the called gateway server.
[0218] Call Transfer from the Telephone
[0219] The called user may initiate a call transfer, with path
replacement, using the DTMF buttons on the telephone. The called
user initiates the call transfer by entering a transfer code or
pressing a transfer button on the telephone, depending on the PBX
configuration, and then dials the transfer telephone number. The
called PBX places the current call on hold and sends the call to
the called gateway server. The called gateway server receives the
call from the PBX and initiates the VoIP call to the transfer
telephone. The called user enters a supervised or unsupervised
transfer DTMF sequence, again PBX dependent. The called gateway
server receives a transferred CTI event and sends a call transfer
message to the caller gateway server. The caller gateway server
receives the transfer message and sets up a VoIP call to the
transfer telephone. The caller gateway server manages the TDM bus
time slots to connect the caller telephone to the new VoIP call to
the transfer telephone. The caller gateway server then disconnects
the original call to the called telephone.
[0220] Path Replacement for Call Forward
[0221] The gateway network users can set up a call forward, with
path replacement, from a web browser CTI application or from the
telephone. In either case, call forward is a PBX feature, and the
operation can be carried out by the PBX alone without the gateway
server's involvement. However, if the incoming call is via VoIP and
is forwarded to a remote site also via VoIP, the gateway server
will provide call forward with path replacement so that the
intermediate PBX loop back is eliminated. As a result, there will
be just one direct VoIP link in the forwarded call.
[0222] Upon receiving an H.323 call setup message, the called
gateway server checks to determine if the called user has call
forward set up. The called gateway server uses CTI to send an
inquiry to the PBX. If the user has call forward set up, and if the
call forward destination is at a remote gateway network PBX, the
called gateway server sends a "gateway call reroute" message back
to the caller gateway server. Upon receiving the call reroute
message, the caller gateway server sets up the original call to the
transfer gateway server and transfer telephone.
[0223] Path Replacement for Follow-Me
[0224] The gateway server allows users to redirect incoming
telephone calls to any telephone, cellular phone, pager, etc., at
other locations, e.g. conference room, home, etc. Users may also
set up filters so that only calls from selected caller(s) are
redirected. The gateway server can implement the follow me
capability with path replacement.
[0225] Upon receiving an H.323 call setup message, the called
gateway server checks the gateway database to determine if the user
has follow me set up. If the called user has follow me set up, and
if the destination is at a remote gateway server or other H.323
telephone, the called gateway server sends a "gateway call reroute"
message back to the caller gateway server. The caller gateway
server sets up the original call directly to the remote gateway
server or H.323 telephone. The follow me feature of the integrated
voice gateway system of the invention is described below.
[0226] Real-Time Fax over the IP Network
[0227] The gateway server supports real-time fax transmission over
the IP network (FoIP). The caller gateway server forwards the fax
signals from the caller fax machine immediately across the IP
network to the called gateway server. The called gateway server, in
turn sends the signals to the called fax machine. The caller
gateway server sends signals from the called fax machine back to
the caller gateway server via the IP network. The caller gateway
server send the signals to the caller fax machine. Real-time fax
transmission over the IP network is provided- the same immediacy of
delivery that users are used to with fax transmission over the PST
NETWORK.
[0228] Inter-PBX Toll Bypass for Real-Time Fax
[0229] In a preferred embodiment, the integrated voice gateway
system of the invention supports the routing of a fax call from a
stand-alone fax machine (or fax server) over the IP network. This
feature is basically the same as "Inter-PBX Toll Bypass for
Real-Time Voice", i.e. the basic VoIP call described above with
reference to FIG. 5. The gateway engine 50 (FIG. 3) provides
automatic fax detection. Fax calls can be routed to a gateway
server automatically by the configuration of the PBX ARS table in
the same manner as is done for voice calls. A PBX trunk coupled to
a gateway server can be dynamically shared between voice and fax
calls.
[0230] This feature can be provided independent of Inter-PBX Toll
Bypass for voice calls. If a company decides that the quality of
voice over IP is not acceptable for its purposes, the integrated
voice gateway system of the invention can still provide for FoIP.
In this case, the PBX stations for the fax machines are assigned a
special "Class of Service", and calls originating from these
stations are routed by the caller PBX to the caller gateway
server.
[0231] When FoIP is supported in conjunction with VoIP, the gateway
server can also be configured so that VoIP calls are routed via the
company's intranet, and fax calls are routed via the Internet to
take advantage of free bandwidth on the Internet.
[0232] Hop-off to PST NETWORK for Real-Time Fax
[0233] In a preferred embodiment, the integrated voice gateway
system of the invention supports a fax call from within the company
to an outside PST NETWORK fax machine via the IP network and the
PST NETWORK. A user in the company, can send a fax to an outside
fax machine. The fax call is carried via the IP network to the
gateway server which is the closest to the called fax machine, and
from there a PST NETWORK connection is made from the called gateway
server to the called fax machine.
[0234] Supported hop-off destinations are determined by the system
administrator of the destination gateway servers. Both hop-off via
local PST NETWORK call and hop-off via long distance PST NETWORK
call are supported. The ARS table (or routing table by other names)
of the originating PBX needs to be configured accordingly for the
hop-off calls to be routed to the gateway server.
[0235] Hop-off to PST NETWORK methods are listed in Table 10. and
described above with reference to FIGS. 6-14.
[0236] Redirection of Incoming Fax to Printer
[0237] In a preferred embodiment, the integrated voice gateway
system of the invention supports the use of laser printers as fax
machines. A pseudo fax number can be defined for a printer by the
administrator. Once a printer is assigned a pseudo fax number, the
printer can receive faxes sent to that pseudo number just like a
fax machine. The fax gateway 54 (FIG. 3) in the called gateway
server 126 converts the received fax into a printable form before
sending the received fax to the print queue. This feature allows
the simultaneous transmission and receipt of faxes between company
sites without busy signals. It also supports the use of plain paper
for printing faxes.
[0238] Fax Multi-Cast
[0239] In a preferred embodiment, the integrated voice gateway
system of the invention supports the multi-cast of a fax to a group
of recipients. A pseudo fax number representing a group of
recipients (i.e. fax distribution list) can be defined by the
administrator or a user. A fax sent to a "pseudo fax number" which
represents a group is multi-casted to all recipients in the
group.
[0240] Fax multi-cast saves users' time, and reduces the traffic
load in the company's network. When more than one recipient of a
multi-cast group is on the same called gateway server, the caller
gateway server sends only one copy of the fax to the called gateway
server. The called gateway server then fans out the fax to each of
the recipients.
[0241] PC Call Control
[0242] The invention provides the user with desktop CTI
capabilities. The user may dial, answer, hang-up, transfer,
conference, forward, place a call on hold, unhold, and drop a call
from the desktop workstation. The user can dial touch tone digits,
e.g. in response to IVR commands. The user can also set the DND
indicator for all calls or selected calls, and manage multiple call
appearances, e.g. select one call to answer and select another call
to go to voicemail. The white pages and the individual frequent
contact lists from the enterprise directory are available for the
user to select destinations for dialing, transfers and
conferencing. The call log is also available at the desktop
workstation. The PC call control interface is delivered as a Java
applet through the web browser.
[0243] Current CTI applications only provide the user a personal
telephone book or an application specific directory. Current CTI
applications do not provide the user with access to the enterprise
directory. In the integrated voice gateway system of the invention,
the PC call control capability is integrated with the IP telephone
voice gateway, and provides the user with a white pages directory,
based upon the enterprise directory, to serve as a phone book
directory, and integrated with a CTI application.
[0244] Since the PC call control feature is browser based, there is
no desktop application to install, and the PC call control
capability is compatible with multiple computers and operating
systems. This is illustrated in FIGS. 47 and 48. FIG. 47
illustrates a current system in which a CTI server 502 and a
workstation 503 are coupled via a LAN 501. The CTI application
CTI_APP 504 and CTI dynamic link library (dll) CTI.dll 505. The
CTI_APP 504 and CTI.dll 505 are both installed in the workstation
503. This can be very expensive, and present a complex logistical
problem in a large organization to install, maintain and update the
CTI_APP 504 and CTI.dll 505 as required for new features, bug
fixes, operating system upgrades and the like. In the integrated
voice gateway system of the invention, as illustrated in FIG. 48,
there is no need to install applications, dlls, and the like in all
the users' workstations. The CTI server 97, gateway server 26, web
server 92 and workstation 24 are all coupled via the company's LAN
22. The user client 95 is a commercially available web
browser-based GUI application. There is no need to install special
applications, dlls, or the like, as all PC call control
capabilities are provided via the web browser user client 95.
Installation, maintenance and upgrade of the call control
application is accomplished as necessary only on the respective
servers. The user begins by logging in via a browser screen. Once
the user is logged in, the user can receive "screen pops" from the
gateway server 26. Screen pops are windows and dialog boxes which,
for example, identify the calling and called parties, and provide
other information to the user as is described below.
[0245] Virtual Desktop
[0246] The integrated voice gateway system of the invention
provides a virtual desktop which allows a computer browser and a
telephone at a location other than a user's regular office, e.g. an
"alternate office" or a "virtual office", to be logically
associated with the user. As used herein, an alternate office may
be another office within the company, and a virtual office may be
at a location off the company's premises.
[0247] An alternate office within the company is any location that
has access to both a gateway telephone, and a desktop workstation
having a browser, the workstation coupled to the company's data
network. Reference FIG. 49, the integrated voice gateway system of
the invention supports a user working in an alternate office by
providing the user the capability to: redirect desired inbound
calls to the telephone in the alternate office, and receive caller
ID screen pops on the desktop workstation identifying that the call
is for that user; place calls from the telephone in the alternate
office and have the user's own caller ID sent to the call's
destination; and, have access to the full set of browser based
desktop call control (e.g., white pages, transfer) that are
available at the user's regular desk. As illustrated in FIG. 49,
the user first logs in at the remote workstation 524 via the user
client 595 browser interface in the alternate office. The login
information includes the telephone number of the remote telephone
538. The gateway engine 550 in the remote gateway server 526 causes
the information to be stored in the gateway database 551 in the
remote gateway server 526 and to be sent to the user's primary
gateway server 26 to be stored in the gateway database 51 in the
primary gateway server 26.
[0248] The information stored in the gateway database 51 in the
primary gateway server may include a filter set up by the user to
limit the users whose calls are forwarded to the alternate office.
Operation of the follow me feature of the integrated voice gateway
system of the invention is described below.
[0249] Traveling Class of Service
[0250] The class of service is a set of user attributes which
indicate the capabilities that are available to a user. The
attributes include both licensing levels and feature activation.
The class of service attributes are referenced at different points
during operation of the gateway server, and include, for example,
when a user logs in--to determine which client to deliver via the
web browse; at an originating gateway server--to determine which
features are available to a user; and to be transported with a call
to a called gateway server--so that feature access may also be
addressed at the destination.
[0251] As indicated above in the description of the Virtual Desktop
feature, the class of service available to a user follows the user
when the user logs in at an alternate office.
[0252] Virtual PBX Features
[0253] The integrated voice gateway system of the invention couples
the PBX's in an enterprise in one single Virtual PBX (VPBX). This
enables the system of the invention to provide several useful
end-user features which are collectively referred to herein as VPBX
features. This set of VPBX features is an important set of features
which set has not previously been available in IP telephony
systems.
[0254] The gateway server relies on the CTI connection to the PBX
to provide most of the VPBX features. The integration of the
gateway server with the enterprise directory services systems
enables the gateway server to provide the full range of VPBX
features described herein. As an alternative to CTI, the gateway
server can also obtain much of the information needed to provide
VPBX features via PRI and QSIG interfaces. Table 13 shows the VPBX
features which can be supported depending on the interfaces which
are available. It can be seen that all of the features can be
supported in a system having a CTI link between the PBX and the
gateway server, and either a T1/E1 tie trunk or an analog CO trunk.
In a configuration having a QSIG interface with no CTI link, all
the features can be provided except for dynamic caller ID for calls
which originate from the PST NETWORK or if the caller and called
telephones are both coupled to the same PBX. The remaining
configurations, not having a CTI link between the PBX and the
gateway server do not support path replacement, callback on busy or
call alert, and only a configuration having a PRI CO trunk or T1/E1
in-band signaling, without a CTI link, can support dynamic caller
ID for calls placed from a caller telephone to a called telephone
with both telephones "on net".
13TABLE 13 VPBX Feature Support No CTI and PRI No CTI CO CTI and
Trunk and T1/E or T1/E 1 T1/E 1 Tie- 1 Tie Trunk No with Trunk or
CTI In- or Analog and Band Analog CO QSI ANI CO Trunk G Signaling
Trunk Toll Bypass X X X X Hop-Off to PST X X X X NETWORK Hop-On
from X X X X PST NETWORK Fallback to PST X X X X NETWORK Fail-Safe
X X X X Operation Path X X -- -- Replacement Dynamic Caller X X X
-- ID (on net calls) Dynamic Caller X ID (off-net calls, i.e. PST
NETWORK and intra-PBX calls) Callback on X X -- -- Busy Call Alert
on X X -- -- Busy
[0255] Table 14 shows the features for forwarding calls to
alternate telephone numbers which can be supported from a user
client depending on the interfaces which are available. It can be
seen that all of the features can be supported in a system having a
CTI link between the PBX and the gateway server, and either a T1/E1
tie trunk or an analog CO trunk. In a configuration having a QSIG
interface with no CTI link, all the features can be provided except
for follow-me for calls which originate off-net. The remaining
configurations, not having a CTI link between the PBX and the
gateway server also do not support filtered follow-me for on-net or
off-net calls.
14TABLE 14 Follow-me Feature Support No CTI CTI and No and T1/E CTI
T1/E 1 and 1 Tie- QSI Tie Trunk G Trunk or or or Analog PRI Analog
CO CO CO Trunk Trunk Trunk Intelligent Follow-me Follow-me (on-net
calls) X X X Follow-me (off-net calls) X Scheduling via Browser X X
X Turn on/off via any phone X X X Voice Mail Coverage X X X
Filtered Follow-me (on-net calls) X X Filtered Follow-me (off-net
calls) X -- -- Alternate Office: Alternate Office: Identify User X
X X Calls Remote H.323 User NetMeeting Integration X X X
[0256] Table 15 shows advanced features which can be supported from
a user client depending on the interfaces which are available. It
can be seen that all of the features can be supported in a system
having a CTI link between the PBX and the gateway server, and
either a T1/E1 tie trunk or an analog CO trunk. In a configuration
having no CTI link available, only the enterprisee and personal
directories are supported, and the call log for on-net calls.
15TABLE 15 Advanced Feature Support No CTI and QSIG or PRI CO CTI
Trunk and or T1/E1 Tie- T1/E1 Tie Trunk Trunk or or Analog CO
Analog CO Trunk Trunk Directory Enterprise Directory X X Personal
Directory X X Call Log Call Log for On-net calls X X Call Log for
Off-net calls X -- Desktop Call Control X -- Make Call X -- Answer
Call X -- Hang Up Call X -- Hold Call X -- Transfer Call X --
Forward Call X -- Display of Active Calls X -- Do Not Disturb X
--
[0257] The provision of a screen-pop to a user's desktop
workstation is a useful interface for most of the VPBX features.
Screen-pops may be accompanied by audible sounds and alerts to
provide additional emphasis or information to the user. If the user
does not have a desktop workstation, or if the user does not log
into the gateway server, then the gateway server may provide IVR as
the user interface for the VPBX features.
[0258] VPBX features provided by the integrated voice gateway
system of the invention may include: Dynamic Caller ID, Call Log,
Callback on Busy, Call Alert, Call Alert via Must Answer Station,
Follow Me, and Virtual Desktop, each of which will be described
below. The invention also supports conventional PBX features, e.g.
Ring Through, etc.
[0259] Dynamic Caller ID
[0260] The integrated voice gateway system of the invention
provides the capability to display the caller ID to the called
party by a screen-pop on the desktop workstation at the same time
the telephone rings.
[0261] For many large corporate desktop users, current systems
provide caller ID only when a fellow employee calls from within the
same PBX system. Calls from employees at other corporate locations
only provide the trunk number of the remote location, not the
calling telephone number or name. Providing caller ID (including
name, telephone number, and other relevant information about the
caller) allows the desktop worker to interrupt work, or, for users
with multiple telephone lines, to interrupt a current conversation,
to answer important calls without answering every call. On PBX
networks where caller ID is provided on the telephone display via
proprietary channel signaling, a current limitation is that in a
time sharing office environment, the caller ID cannot be
dynamically changed. In a typical office environment, a telephone
is assigned to an employee. In this case, the caller name is the
name of the employee to whom the caller telephone is assigned. In a
time sharing office situation, different employees use the office
and the telephone at different times. Additional limitations in
current systems are that the PBXs must be from the same vendor, and
the PBXs must be connected by leased lines, and the PBX data base
of caller names must be entered at each site.
[0262] Reference FIG. 50, the gateway server provides dynamic
caller ID, i.e. the telephone number with the correct caller name,
based on who is logged on from the office desktop workstation at
the time the call is made. If there is no user logged on at the
time a call is made, the default information for that telephone is
used.
[0263] If the desktop worker's telephone is being forwarded to
another extension, and a CTI event is generated with the
forwarding, then the caller ID screen pop will appear with the
ringing call at the forwarded extension. In addition, the original
called party ID will also be displayed on the screen pop of the
forwarded call.
[0264] The caller ID feature can support calls between gateway
telephones, i.e. between two telephones coupled to the same PBX in
a gateway network, or between telephones coupled to two PBXs in
different gateway networks. For calls originating from telephones
outside a gateway network (e.g. PST NETWORK telephone, internet
telephone), the caller ID feature can provide the caller ID to the
gateway server by the PBX, through CTI (if caller ID is transmitted
by the PST NETWORK and by the PBX to the CTI link), or by a VoIP
connection.
[0265] The caller ID feature relies on CTI or inband ANI, PRI or
QSIG trunk types at the caller gateway server to provide the
caller's telephone number. The caller ID feature also relies on the
desktop workstation display at the called party's desktop. The
enterprise directory provides the caller name and associated
information (e.g. title, department, etc.) with the calling
number.
[0266] FIG. 50 illustrates how the caller ID is obtained at the
caller gateway server. The caller (not illustrated) picks up the
handset on the caller telephone and dials the desired telephone
number. The caller PBX accesses a trunk 35 to the caller gateway
server 26, and dials the call. The caller gateway server receives
the telephone number from the caller PBX on a PRI trunk or over the
CTI link.
[0267] The caller gateway PBX 34 delivers the call to the caller
gateway server 26, and, as the call is delivered, the caller PBX 34
also passes the caller ID (i.e. the caller's telephone number) to
the caller gateway server 26 via an inband ANI, PRI, QSIG or CTI
link. In the case of an ISDN PRI link, the caller PBX 34 may use a
call setup message to initiate the call. The caller ID can be
transmitted as part of the call setup message. The caller gateway
server 26 receives the caller ID as part of the setup message, and
the caller PBX 34 and caller gateway server 26 continue to set up
the call. In the case of a QSIG link, the PBX uses a call setup
message to initiate a call on the QSIG link. The caller ID
information is transmitted as part of the call setup message. The
caller gateway server 26 receives the caller ID as part of the
setup message, and the caller PBX 34 and caller gateway server 26
continues to establish the call. The CTI link 98 is a separate link
from the trunks. To pass the caller ID via the CTI link, the PBX
places a call to the caller gateway server 26 using a trunk. While
the trunk call is being initiated, the CTI link 98 transmits an
event message indicating the call. The event message includes the
trunk ID, the called telephone number, and the caller's caller ID.
The caller gateway server 26 associates the call being received on
the trunk with the CTI link 98 message, and associates the caller
ID with the trunk. Using the CTI link 98 to pass the caller ID
supports instances in which analog or T1 trunks are used which do
not provide caller ID information from the caller PBX 34.
[0268] The caller gateway server 26 uses the caller's telephone
number to access additional caller ID information in the gateway
database, i.e. the local image of the enterprise directory data.
The caller gateway server 26 initiates an H.323 VoIP call with the
called gateway server 126 over the IP network 18. As the call is
placed, the caller gateway server 26 sends the caller ID
information to the called gateway server 126 using an H.323
extension, e.g. User Information Extension (UIE).
[0269] The called gateway server 126 sets up the call with the
called PBX 134, and may include the caller ID for the called PBX to
pass to the called telephone 138. The called PBX rings the called
telephone 138, and, if the called telephone 138 has a caller ID
display, the called PBX 134 may include the caller ID for display
at the called telephone. The called gateway server 126 checks its
gateway database 151 to determine if the called party has a browser
logged on to the called gateway server 126, and if that browser is
logically associated with the called telephone 138. If the called
gateway server 126 determines that the called party has a browser
logged on, and is associated with the called telephone 138, then
the called gateway server 126 delivers the caller ID information to
the called desktop workstation via a browser applet. The browser
applet results in a screen pop in the browser window at the called
desktop workstation. Both the caller gateway server 26 and called
gateway server 126 log the calls, and include the caller ID
information in the call logs. A description of the Call Log feature
follows below.
[0270] Call Log
[0271] The call log provides a log of outgoing calls and incoming
calls including answered calls, abandoned calls and ring through
calls for a desktop user. The call log includes the time of call,
name and telephone number of the caller, and the result of the
call, e.g. forwarded to voice mail, hang-up, inbound/outbound, etc.
The call log may be sorted by time. The desktop user can access the
call log via a gateway server client or a browser. As is the case
with all screen pops, the call log is available to users only when
they are logged in to the gateway network. Users can make a return
call by clicking any inbound call entry in the call log. The
entries in the call log can be imported into a user's personal
phone book. The call log is maintained on the gateway server and
will continue to log calls even if the user does not log on to the
gateway network. Entries in the call log can be deleted,
individually and as a group. A user may click a "details" button to
access the detailed NDS information for users who are parties to
incoming and outgoing calls.
[0272] Reference FIG. 51, When the caller makes a call from the
caller telephone 38, the caller gateway server 26 opens a call log
record for the caller. Caller ID information is obtained from the
enterprise directory 90 for both the caller and called parties and
is inserted into the call log record. When the call arrives at the
called gateway server 126, a call log record is opened for the
called party. Caller ID information for both the caller and called
parties is inserted in the call log record in the called gateway
server 126. When the call is over, or if for some reason the call
is not completed, e.g. caller is busy, additional information (e.g.
result, duration, etc.) is inserted in the call log records at both
the caller gateway server 26 and called gateway server 126.
[0273] Destination Busy
[0274] The integrated voice gateway system of the invention
provides several options for a caller at a gateway telephone
attempting to call a party at another gateway telephone which is
currently busy. The caller may elect to cancel the call or may
select one of the options which include: Callback on Busy, Call
Alert and Ring Through. These options will be described below.
Common to each option is first the determination that a called
gateway telephone is busy.
[0275] Referring to FIG. 52, a normal call is propagated within the
integrated voice gateway system, either within a single gateway
network, or as a VoIP call between two gateway networks. FIG. 52
illustrates such a call as a VoIP call between two gateway
networks. As part of its normal processing function, the caller
gateway server 126 uses the called CTI link 198 to the called PBX
134 to maintain the idle/busy status of telephones on the called
PBX 134. When the called gateway server 126 receives the call from
the caller gateway server 26, the called gateway server 126 checks
the status of the called telephone 138. The called gateway server
126, on determining that the called telephone 138 is busy, notifies
the caller gateway server 26 of the busy status. The called gateway
server 26 receives the busy notice and checks its user logon data
to determine if the caller at the caller telephone 38 is currently
logged in from a browser. If the caller is logged in, the caller
gateway server 126 sends information to the caller's browser 95 to
inform the caller that the called telephone 138 is busy. The
caller's browser 95 provides a screen pop to the caller indicating
that the called telephone 126 is busy. The screen pop also provides
the caller with several options from which to choose. The options
may include: cancel the call, request a callback, request a call
alert or request a ring through. If the caller is not logged in
from a browser, the caller may be provided similar options via an
IVR interface.
[0276] Callback on Busy
[0277] The integrated voice gateway system of the invention
provides the capability for a caller, if the called telephone is
busy, to request that a callback be automatically set up when the
called telephone is no longer busy. This feature is not available
to most desktop users of current systems since telephone calls are
typically immediately forwarded to voice mail systems when a called
telephone is busy. Some PBXs offer delayed call forward on busy to
allow callers to set callback before the call is forwarded to
voice-mail, and some voice mail systems offer callers an option to
select callback before taking a message. However, these options
require that the PBXs be upgraded, and a requested callback may be
canceled if the caller telephone is used before the callback is
completed. If callback on busy is provided across a network by PBX
vendors, the callback option will only work if both the caller and
called telephone systems are from the same vendor. The integrated
computer telephone system of the invention provides a callback on
busy capability which works across networks of mixed telephone
systems.
[0278] Reference FIG. 53, the callback option may be provided to
the caller via IVR or via a screen pop. If the caller requests a
callback be set up, then the gateway servers 4, 104 will
automatically set up the call when the called party hangs up the
current call.
[0279] When the callback call takes place, both the caller and
called parties will be provided with the other party's caller ID.
In the caller ID screen pop, it is also noted that the call is a
callback call.
[0280] If, when the gateway servers set up the callback call, the
original caller telephone is busy, the original caller will receive
a screen-pop to the effect that the callback is taking place. The
caller will have the option to hang up or place the current call on
hold to initiate the callback call, or ignore the callback
notification. If the caller ignores the callback notification, i.e.
continues the current call for more than a specified time, e.g. 15
seconds, the callback will be canceled.
[0281] If a called party has multiple callback requests pending,
then the callbacks may be serviced on a first-in-first-out (FIFO)
basis, or on a priority basis, e.g. based on class of service of
the caller, urgency, etc.
[0282] Call Alert
[0283] The integrated voice gateway system of the invention
provides the capability for a caller to request a call alert if the
called telephone is busy. For current desktop users, there is no
capability to send a call waiting signal to a busy party since
telephone calls are typically immediately forwarded to voice mail
systems when a called telephone is busy. The ability of the
integrated computer telephone system of the invention to provide
caller ID on all intra-company calls regardless of location is an
important part of the call alert feature. In addition, the unique
ability of the integrated voice gateway system of the invention to
allow remote users to send messages to describe their urgent need
to talk to a busy party is a significant advance in desktop to
desktop communication.
[0284] The call alert option may be provided to the caller via IVR
or via a screen pop. If the caller chooses to request the alert via
a screen pop, the caller may include an optional message, e.g. to
inform the called party of the purpose of the call. The optional
message may be selected from a set of pre-established messages, or
may be a message created by the caller.
[0285] The call alert is delivered to the called party in a
screen-pop on the called party's desktop workstation. The caller ID
and optional message from the caller will be displayed. The called
party can then take the call by hanging up or placing the current
call on hold, acknowledge the call alert, or ignore the call alert
by continuing the current call for more than a specified time, e.g.
15 seconds. If the called party ignores the call alert, the caller
may be given the option to either ring through or set up a
callback. The option to ring through or call back may be provided
via IVR or screen pop. If the called party has multiple lines, then
a call alert will be activated only if all lines are busy.
[0286] The call alert feature requires that both the caller and
called telephones are gateway telephones, and the called party is
logged on to the gateway server via the browser interface. The call
alert feature uses CTI on both the caller gateway server and called
gateway server for on/off hook status and to determine if the
called party hangs up or places the current call on hold. The call
alert feature also relies on the directory to provide caller ID for
a call alert screen pop presented to the called party.
[0287] The privilege to use call alert may be configurable by the
system administrator on a user by user basis.
[0288] If a user prefers not to be disturbed by call alert
messages, the user can set a Do not Disturb (DND) indicator on the
user's telephone. The DND indicator may be set via a screen pop
provided on the user's desktop workstation.
[0289] FIGS. 54 and 55 illustrate a call alert scenario using the
browser client and screen pops. Referring to FIG. 54, the caller
types a message and clicks a call alert button in the caller user
client 95. The call alert message is passed to the caller gateway
server 26, and then over the IP network 18 to the called gateway
server 126. The called gateway server 126 passes the call alert
message to the called user client 195. The call alert message
appears via a screen pop in the called user client 195. The called
user may elect to accept or reject the call alert by clicking an
appropriate button in the call alert screen pop. If the called user
accepts the call alert, a message is passed to the called gateway
server 126. The called CTI driver 180 passes a message to the
called PBX 134 to place the current call on hold. The called analog
driver 167 delivers the new call to the called PBX 134. The called
PBX 134 rings the called telephone 138.
[0290] Referring to FIG. 55, if the called user rejects the call
alert, the rejection message is passed to the called gateway server
126 and the called user client 195 closes the screen pop. If the
called user takes no action, and the call alert times out, the
called gateway server 126 passes a message to the called user
client 195 to close the call alert screen pop.
[0291] If the call alert times out or is rejected, after closing
the screen pop, the called gateway server 126 sends a call alert
rejected message to the caller gateway server 26 via the IP network
18. The caller gateway server 26 passes the call alert rejection
message to the caller user client 95. The rejection message
includes applicable options for the caller to select.
[0292] Ring Through
[0293] The integrated voice gateway system of the invention
provides the capability for a caller to request a ring through if
the called telephone is busy. The ring through option follows
normal PBX call coverage options which may typically forward calls
to a user's voice mail or a Must Answer Station. The ring through
option will be described with reference to FIG. 56.
[0294] The description of Destination Busy above concluded with the
caller being provided several options, via browser or IVR,
including ring through. If the caller is logged on via a browser,
the caller would select the ring through option in the browser
window at the caller workstation. The browser passes the selection
to the caller gateway server. If the caller is not logged on, the
caller would select the ring through option by pressing a
designated key on the telephone. The caller gateway server 26
detects the DTMF tone selecting the ring through option. The caller
gateway server 26 then notifies the called gateway server 126 that
the caller has requested to ring through. The called gateway server
126 places an inbound call to the called PBX 134 for the called
telephone 138. Since the called telephone 138 is busy, the called
PBX 134 follows the normal process set up for the PBXs in the
system, e.g. voice mail, must-answer station, etc.
[0295] Call Alert Via Must-Answer Station
[0296] The integrated voice gateway system of the invention
provides the capability for a caller to request a call alert if the
called telephone is busy and the caller is not using a gateway
telephone. In current systems, a caller typically forwards a call
to a designated (e.g. "must answer") station, e.g. by pressing "0"
after being forwarded to voice mail. In a large company, the
attendant at a must-answer station is typically located remotely
from the called party and hence cannot walk over to the called
party and slip a notice that the caller needs to urgently talk to
the called party.
[0297] When a caller from outside a gateway network, e.g. a PST
NETWORK telephone, places a call to a gateway telephone, and the
called gateway telephone is busy, the caller may elect to transfer
to a must-answer station. An attendant at the must-answer station
can assist the caller by providing a call alert, for the outside
caller, on the co-located workstation of the busy gateway
telephone.
[0298] Follow Me The integrated computer telephone system of the
invention provides the capability for users to redirect incoming
telephone calls arriving at their regular PBX station to any
telephone or internet phone. The system of the invention also
provides users with the capability to set up filters so that only
calls from selected callers are redirected. Calls not forwarded can
be sent to the normal PBX call coverage options, e.g.
voice-mail.
[0299] In current PBX systems, users can program the PBX to call
forward all calls to an inside-the-PBX or outside-the-PBX location.
However, this generally needs to be done from the user's desktop
telephone. In order to program the PBX from an outside location,
expensive equipment for telecommuting must generally be attached to
the PBX. These current systems offer only an IVR interface, but no
browser interface. In current PBX systems there is no way to link
caller ID to call forwarding. Hence, filtered call forwarding is
not possible in the current systems. The telephone to which the
calls are redirected may be another gateway telephone (coupled to
the same or a different PBX as the user's telephone), or a PST
NETWORK telephone (e.g. remote telephone 338), etc. The redirection
can be set up as a one-time event or a recurring (e.g., daily)
event. However, at any point in time, only one redirection may be
in effect.
[0300] Follow me setup and operation will be described with
reference to FIGS. 57-58. Referring to FIG. 57, the follow me
feature may be setup via the browser or and IVR interface. If a
browser is available, the user accesses follow me setup screens via
the browser, reviews current options, and may make changes to the
configuration. The browser and gateway server exchange data during
the interaction.
[0301] If a browser is not available, for example, if the user is
setting up the follow me feature from a PST NETWORK telephone, the
user may set up follow me by calling a specified telephone number
and interacting through an IVR interface. If the user calls from a
remote telephone, the system may first authenticate the user's
identity. For real time call processing, the user's follow me data
is stored in the gateway server's local database. The user's follow
me settings are stored in the enterprise directory as part of that
user's data.
[0302] The follow me setup may include several options. For
example, the user may schedule follow me periods as one time or
periodic recurring events with a different destination telephone
number selected for each event (e.g., car phone during the commute
home, and home telephone in the evening). The user may set up
numerous scheduled events. The user may also use an override option
to use an unscheduled alternate destination. The users may
configure the system to filter calls based on caller ID, and
forward only calls from a list of callers selected by the user. The
user may assemble a list of callers from the enterprise white pages
and a frequent contact list. The user may create a different filter
for each scheduled follow me period.
[0303] Referring to FIG. 58, an incoming call to a called telephone
138 coupled to a called PBX 134, may come via a VoIP call from a
caller telephone 38 coupled to a caller PBX 34; via a PST NETWORK
call from a caller telephone 438 coupled to the PST NETWORK 16; or
from a caller telephone 538 coupled to the called PBX 134. In the
case of a local PBX or PST NETWORK call, the called PBX 134 sends a
CTI event to the called gateway server 126. The called gateway
server 126 checks whether follow me is active for the called party,
and, if a filter is active, if the caller matches the filter. If no
filter is active, all calls are forwarded. If the caller does not
match an active filter, the call not forwarded, and is simply
delivered to the called telephone 138. If a match is found, the
called gateway server 126 initiates a call to the follow me
destination telephone. If the original call was an internal PBX
call or a call from a PST NETWORK telephone, the gateway server
uses the CTI link to redirect the call to the called gateway server
126. If the original call is a VoIP call, the call is normally
directed to the called gateway server 126, and the called gateway
server 126 can redirect the call.
[0304] The called gateway server 126 plays a message for the caller
indicating that the call is being forwarded. When the forwarded
call is answered, the gateway server offers a greeting to the
answering party. The answering party replies with an accept code,
e.g. DTMF tones, thereby authenticating the answering party. The
caller and called party are then connected. If the call forwarded
to the destination is not answered, or if the correct accept code
is not provided, the caller is provided a message and the call is
re-routed to the original called telephone to go through normal PBX
coverage options, e.g. voice-mail.
[0305] While various embodiments and features of the invention have
been described, those skilled in the art will recognize that
variations and additions to those features and functions can be
made within the scope of the invention. The invention is therefore
intended to be limited only by the scope of the appended
claims.
* * * * *