Note: Descriptions are shown in the official language in which they were submitted.
CA 02239038 2001-10-30
APPLICATION CALL ROUTING
FIELD OF THE INVENTION
This invention relates to communication systems
such as telephone systems, and in particular to a method
of processing an incoming call.
BACKGROUND TO THE INVENTION
Integration of communications and the general
purpose computer provides increased flexibility to the
telephone user, allowing enhanced services to be
provided to the user. An integrated system which
provides computer-telephone integration (CTI) is
described in U.S. patent number 5,657,446 granted
August 12, 1997 entitled LOCAL AREA COMMUNICATIONS
SERVER SYSTEM.
CTI systems allow computer software to be used,
to provide services to devices used by the user, such as
monitoring and/or control of telephone sets, facsimile
machines, trunks, etc. However, CTI systems and PABXs
do not allow incoming calls to access a device which is
not associated with a telephone line, but which
otherwise can make or answer telephone calls, such as
dual tone multifrequency (dtmf) generators, text to
speech converters, automatic voice generators, other
voice response processors, etc.
SUMMARY OF THE INVENTION
The present invention is a method of processing
calls in a communication system which utilizes a
directory number as an address to a CTI software program
which can deal with a call. As a result, an incoming
call can be routed to the CTI software program instead
of a real device, and the CTI software program can
control devices such as an automatic voice generator,
etc., and perform functions such as electing to answer
the call, cause the call to be disconnected, or transfer
the call to another device or another CTI software
program.
1
CA 02239038 2006-06-08
In accordance with an embodiment of the
invention, a method of processing calls in a
communication system is comprised of storing, in a
memory associated with a server to which telephone
sets are connected and which server can send and
receive messages to and from logical devices,
telephone directory numbers associated with the
telephone sets and a further telephone directory
number associated with a logical address of a logical
device, comprising receiving and incoming call to the
further directory number, looking up the logical
address, sending a message to the logical device
related to receipt of the incoming call and
controlling further progress of the call by the
logical device.
The present invention seeks to provide a method
of processing incoming calls in a telephone
communication system having a server connected to a
public switched telephone network, and to which
telephone sets are connected each telephone set having
a computer work station associated therewith, each
workstation having a workstation memory, a memory
associated with the server, the server being adapted
to send and receive messages to and from a computer-
telephony integration (CTI) program resident in said
workstation memory, said method comprising: storing in
said server memory telephone directory numbers
associated with the telephone sets and a further
telephone directory number associated with a logical
address of said CTI program, said server receiving an
incoming call to said further directory number,
looking up said logical address of said CTI program,
2
CA 02239038 2006-06-08
sending a first message to the CTI program related to
receipt of the incoming call and controlling further
progress of the incoming call by said CTI program and
said CTI program responding to said first message by sending
a second message to the server to connect a voice response
unit to a line carrying the incoming call.
BRIEF INTRODUCTION TO THE DRAWINGS
A better understanding of the invention will be
obtained by considering the detailed description
below, with reference to the following drawings, in
which:
Figure 1 is a block diagram of a system on which
the present invention can be implemented,
Figures 2A and 2B when placed together as shown
in figure 2C form a flow chart of an embodiment of the
invention, and
Figure 3 is a block diagram of a representative
service script and software agent.
DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION
The invention can be implemented in a system such
as described in the aforenoted U.S. patent number
5,657,446 granted August 12, 1997 entitled LOCAL AREA
COMMUNICATIONS SERVER SYSTEM. Pertinent portions of
the architecture of the system described in that
patent application are reproduced in Figure 1. It
should also
2a
CA 02239038 2006-06-08
be noted that the system can be implemented using the
invention described in U.S. patent number 5,802,396
granted September 1, 1998, entitled ADAPTIVE
COMMUNICATION SYSTEM.
With reference to Figure 1, a communications
server 1 is connected to a local area network (LAN) 3,
to which a computer 5, having a memory 7, is connected.
Server based applications are stored in a memory 9.
Telephone sets 11 are also connected to the server 1.
The server is also connected to a public switched
telephone network (PSTN) via trunks 13. A device such
as a voice response unit 15 is connected to the server.
In normal operation, when an incoming call is
received (e.g. from the PSTN), the server receives the
called number from the trunk 13, determines that the
call is for telephone set 11, and causes telephone set
il to ring. The telephone set answers the call in a
normal manner.
The server also has record that computer 5 is
associated with telephone set 11, and sends a.message to
the computer which invokes a CTI computer software
program stored in memory 7. Typically, this can cause
the CTI program to place an icon representative of a
telephone ringing on the display of the computer. When
the user answers the telephone set, the server may send
a status message to the CTI program, which causes the a
CTI program to change the displayed icon, and offer the
user various options, such as call transfer, etc.
If the call is not answered, the server may
cause the voice response unit such as a voice mail
system to record a message from the caller, and then
send the computer a message which causes the CTI program
3
CA 02239038 1998-OS-29
to place a "message waiting" icon or message on the
display of the computer.
In all cases, however, the CTI program responds
to messages from the server which result from calls to a
specific hardware device specified by the called number.
In accordance with an embodiment of the
invention, the CTI software itself is assigned a
specific telephone directory number. This allows an
incoming call to access the CTI software by directory
to number. In this manner, for example, a completely
automated call process can be implemented, to a logical,
rather than to a physical device such as a telephone,
telephone answering machine, facsimile machine, etc.
To implement the above, the memory 9 of the
server has a database which, in addition to retaining
the directory numbers of physical devices, also retains
the directory numbers of logical devices such as the CTI
software. Access to the CTI software device can be
obtained by translation to a logical address via a
2o logical number tree database lookup or via an index
database lookup. In any of the above ways, or by in
other ways setting a monitor 17 on the directory number
19 of the logical device in the database 21, the CTI
software program is made able to receive events messages
relating to the call status of the called telephone
number.
With reference to Figures 2A and 2B, when a call
arrives at the server from the PSTN, the server looks up
the directory number in its database. If the called
number is for a local line, the server connects the call
to a local telephone set or other physical device as
described earlier.
4
CA 02239038 1998-OS-29
However, if the called number is the directory
number of the CTI software program, from the located
directory number, the server obtains the logical address
23 of the CTI software program stored in conjunction
with, or otherwise accessible from (e. g. via pointer)
the directory number. The server then sends a message
to the CTI program (e. g. stored in memory 7 of computer
5) informing it of the call. The CTI program at the
local address is accessed and begins operating.
Depending on a status which may have been set by
a user or by an installer, the CTI program can send a
reply message to the server to disconnect the call.
Alternatively the CTI program can answer the call,
performing a CTI service or commanding the server to
perform a voice response processing function regarding
the incoming call. It could alternatively send a
message to the server or to another device or to another
CTI program, transferring the call to the other device,
CTI program or to the server for further processing.
The voice response processing can for example
include such functions as tone detection, tone
generation, dtmf detection, dtmf generation, voice file
transmission, voice recording, receiving or sending of
facsimile messages, perform text to speech or speech to
text transmission and/or recording, etc.
For example, an incoming call to a CTI program
can cause the call to be routed to any of plural CTI
programs stored in memory 7 of computer 5, each of which
can function as an order taking agent for respective
different products. The CTI program, once invoked by
the server sending an incoming call message to the CTI
program logical address corresponding to the called
directory number, can send a message to the server to
5
CA 02239038 2001-10-30
connect a voice synthesizer to the line or trunk from
which the incoming call was received, and via messages
sent to the server, cause the voice synthesizer to name
the company, give a greeting, and ask the caller details
of the call, such as the caller's name, address,
identity of product to be ordered (which can be tailored
due to the unique directory number called), etc. It can
send messages to the server to connect a voice to data
converter, a dtmf receiver, etc. to the line, and to
translate the spoken messages from the caller and/or
dialed digits corresponding to instructions provided by
the caller to data, and to transmit the data to the CTI
program. The CTI program can then record the data and
via further processing, prepare an order detail to
either an automated warehouse or to a human order-taker.
It may be seen that the provision of a directory
number for a logical device, as distinct from a physical
device, can provide automated services in a highly
efficient manner.
2o Figure 3 illustrates the creation of a service
using a software agent for a system as described in
U.S. patent 5,802,396 entitled ADAPTIVE COMMUNICATION
SYSTEM. A service is prepared as a sequence comprised
of plural basic service tasks 27. This is compiled into
25 a script 29, which is downloaded into a functional group
agent 30. The script is invoked by a trigger at the
script process input 31, which trigger is obtained when
a goal represented by the service is requested by the
agent-based communication system.
The basic services can be for example the steps
noted above with regard to Figures 2A and 2B, and can
include other steps such as printing orders or other
6
CA 02239038 1998-OS-29
subject matter on a printer, operating an alarm or
notification signal (such as ringing a bell or sending a
message to a device or other system once there has been
a certain number of orders received, or if stock is low,
etc.).
The trigger can be the aforenoted monitor on the
directory number of the logical device, such as the CTI
software.
The result is that a telephone directory number,
which previously could only invoke physical devices such
as telephone lines or hunt groups of telephone lines,
can now invoke a service. The service can be created by
the end user, using many different telephony and non-
telephony basic services.
A person understanding this invention may now
conceive of alternative structures and embodiments or
variations of the above. All those which fall within
the scope of the claims appended hereto are considered
to be part of the present invention.
7