Field of the Invention
The invention relates to the integration of computer-telephony and search technology. 
Discussion of the State of the Art
FIG.  1 is an illustration of a conventional computer-telephony integration 15 (CTI) system.  An incoming call 60 is received by a switch 90.  The switch passes information about the call to a CTI server 80.  The information passed may include, for example, a calling line identification (CLI), sometimes known as automatic number identification (ANI), and/or a dialed number identification.  Switch 90 is also provided with an interactive voice response (IVR) unit 95 which may be used to obtain additional information from the caller, for example an account number or such like.  This additional information may also be passed to CTI server 80.  In some implementations, various messages may be played to the caller as part of the initial call handling, for example to allow a caller to specify the type of desired action, for example to make a new booking, amend a previous booking, or some other query.  Caller input 25 in response to this information can then be used subsequently in determining how to handle the call. 
Switch 90 routes the call through telephone network 101 to a telephone 121 belonging to an agent 120.  For example, switch 90 may route a particular incoming call 60 to agent 120B having telephone 121B. CTI server 80 may instruct switch 90 which particular agent to forward the incoming call to.  In other implementations, switch 90 may make this decision through some other mechanism, such as agent availability (and notify CTI server 80 accordingly). 
In addition to telephone 121, each agent 120 is also provided with a workstation 122.  CTI server 80 has access to a customer relationship management (CRM) database 70.  CTI server 80 can use information about a particular call provided by switch 90 to look up information relating to the caller in CRM database 70.  For example, this information may represent a name and address of a party associated with a particular calling line identification, as well as any information about previous orders that this person may have made, and so on.  CTI server 80 can then provide this information to workstation 122 associated with agent 120 who receives the call in order to assist the agent in handling the caller.  For example if the incoming call 60 is to be routed to telephone 121B of agent 120B, then CTI server accesses information about the caller from CRM database 70 and forwards this information to corresponding workstation 122B.
If no agent is free to handle incoming call 60, switch 90 may put the caller in a queue.  While the caller is in a queue, switch 90 may provide the caller with marketing messages, information about queue status, and so on.  These messages may be sourced from IVR 95 or switch 90 themselves. 
In some circumstances, a call may be handled automatically without having to reach an agent 120.  For example, a caller may ring to obtain an account balance.  IVR system 95 may be able to obtain the account number from the caller, perform appropriate security checks (for example, accepting an input PIN), access one or more account balances from a server 201 via a link (not shown) between IVR 95 and computer network 102, and then provide relevant balances to the caller, for example by using text-to-speech systems well-known in the art. 
Call centers having CTI such as shown in FIG.  1 have been around for many years.  In many cases systems such as the one shown in FIG.  1 are internal to a particular organization.  In other words, switch 90 represents a PBX and telephone network 101 represents an internal telephone network of the organization.  Likewise computer network 102 represents an internal computer network (such as an intranet) of the organization. 
An alternative configuration, sometimes referred to as SPE (service provider equipment) involves locating CTI server 80 within a general telephone network, with switch 90 being a central office switch or other network-resident switch that forms part of an overall network run by a carrier.  In this configuration, telephone network 101 may be a public switch telephone network (PSTN) and computer network 102 may be the Internet.  There may be additional equipment (not shown in FIG.  1) to link workstations 122 to computer network 102 and/or telephones 121 to telephone network 101.  For example, workstations 122 may be attached to an internal network, such as an Ethernet, which is then linked to computer network 102 by a router and firewall (for example; other network architectures are common in the art), while telephones 121 may be linked to telephone network 101 by an automatic call distribution (ACD) unit. 
There are some drawbacks associated with the architecture of FIG.  1.  For example, CTI server 80 may be relatively expensive.  In addition, it is necessary to provide CTI server 80 with access to CRM database 70.  Generally this requires CTI server 80 to be able to submit queries to CRM database 70 and to be able to understand the responses, for example by providing CTI server 80 with access to a database application programming interface (API) supported by CRM database 70.  In practice, many smaller call centers do not have a CTI server 80; rather workstations 122 typically access CRM database 70 directly, without using (or benefiting from) any telephony information acquired by switch 90. 
WO 00/54485 discloses a system for administering call set-up in a telecommunications network.  A web page stores call handling data for a caller in extensible markup language (XML) or some other predetermined format.  Such a web page typically contains an identifier and title, a policy type and owner, and various rules.  Upon connection of a call to a switch 90, information associated with a call is converted to keywords for a search engine to locate a web page corresponding to (or at least relevant to) the initiating caller, thereby allowing the call to be handled accordingly. 
It is common for organizations to outsource CTI and/or call center operations to one or more third parties.  This strategy may be adopted by very small organizations, which may only have one incoming telephone line, as well as by larger organizations.  In some cases third parties may provide CTI services to assist the organization in handling calls itself, while in other cases third parties may be responsible for complete handling of calls (i.e. the original organization is not involved at all in handling calls). 
One problem with third party call center models concerns provision of access for CTI service provider (i.e. the third party) to CRM database 70 of a client (i.e. an organization on whose behalf the hosted telephony service is being provided).  For example, a client may provide CTI server 80 with its own copy of CRM database 70, but this copy may not always be up to date.  In addition, CTI server 80 may now have to support access to potentially multiple different CRM database 70 formats for multiple different clients, adding significantly to cost and complexity of CTI server 80.  Furthermore certain CRM data may be unavailable to service provider, which may in turn limit the functionality that CTI server 80 can provide. 
Another difficulty is that smaller organizations may not have the capacity to maintain a proper CRM database 70.  This has generally meant that such small clients have not been able to benefit from full CTI services.