A SYSTEM AND METHOD FOR CONTROLLING TELEPHONE CALLS THROUGH A CROSS PLATFORM ENABLED INTERNET BROWSER

Abstract: A system and method for controlling telephone cals through a platform independent enabled Internet browser (Figure4) with real-time display of screen pops and user directories.

Description: A System and Method For Controlling Telephone Calls Through a Cross Platform Enabled Internet Browser Technical field of the invention The present invention pertains, in general, to computer networks and telephone systems, and more specifically, to a system and method for controlling telephone systems through a computer network, using an Internet browser. This invention is applicable to both digital, packet-based telephone networks, and to those which utilize traditional, analog, voice-transmission technology. Background of the invention When computer telephony technology emerged in the late 1980's, the primary goal was to provide users with control of the telephony network through software. The traditional computer telephony applications consisted of voice-mail and auto attendants. Notwithstanding, as the technology developed, users began to demand control over the telephony network at the desktop. The first type of desktop computer telephony solutions were basic "screen pop" applications. These applications were designed to receive the caller's telephone number, to retrieve information from a customer/contact database using that number, and, finally, to display associated caller information on the desktop screen. More recently, call control applications have been developed which simplify the usability of the telephone, for example, by performing complex tasks like transferring and conferencing. To date, call control applications are available for specific desktop platforms only, thus, their usefulness is limited throughout the enterprise, and, more importantly, is limited to the local area network. Moreover, systems involving "call transferring" do not provide the recipient/client with the option of placing the call on hold, putting it into voice mail, etc. Further, when a user originates a call from a foreign country or domestic hotel - either of which impose surcharges on calls - services such as International callback, and thus high pre-paid costs, may be required. In addition, the multitude of cumbersome DTMF entries, upwards of 30 digits, may also be necessary. Summary of the invention Thus, the present invention is directed to addressing the deficiencies of the prior work discussed above, and specifically, this invention provides the ability to offer call control for both (a) local area network, and (b) the Internet, independent of computer platform, and further to provide the user with the option of manipulating the call, such as by placing it on hold, putting it into voice mail, etc. Users of this invention may also simply click a button to enter a phone number for dialing. To attain the primary objective, the present invention provides a system and method for controlling calls through a web browser, by utilizing TCP/IP sockets to send packet data between client and server, for the purpose of directing the telephone network. The system comprises a server based telephone module which comprises a Telephony Server, connected to the computer network, provides the interface between client software elements which attempt to control telephone call and telephone equipment. This Telephony Server may be integrated with either external telephone equipment, or with an integral telephone switch. Connectivity to the computer network from the Telephony Server is required to receive commands and/or to send events to a client on the network. The Telephony Server must include the following software elements: (1 ) a Telephony Integration Module (TIM) designed to integrate with a telephone system for the purpose of monitoring and control of the telephone network; (2) a Web Server capable of presenting a lightweight user interface over HTML to the client; (3) an Event Server designed to receive events from the TIM, and to pass them to the client; and (4) a Call Control Module capable of receiving commands passed by the client, then sending them to the TIM. The software-based Telephony Integration Module (TIM) may include hardware necessary to control a Central Office Switch, PBX, Key System, Packet Switch; or, may be integrated with a communications server. The details of such integration, and how it is accomplished, is not pertinent to the definition of this invention. This invention presumes that a layer of software exists on a computer system that is both capable of providing real-time events occurring on the telephone system, and capable of providing direct telephone-call control. The PC-based Telephony Server can be integrated into many different telecommunications environments. Some of the most commonly used are described below: • Stand-alone: The simplest configuration, phone lines from the phone company are connected directly to the Telephony Server • Behind a PBX: The most usual configuration for a Telephony Server in a business environment. The Telephony Server will be connected as one or more extension in a group attached to the company telephone system. • In front of a PBX: This situation allows the Telephony Server to intercept a call before it is passed through to a conventional PBX. The system further comprises a client based module which comprises client software (which in the preferred embodiment is based on a cross- platform compatible language, and in an especially preferred embodiment, is Java based) that is downloaded, then executed within the environment of a web browser, providing connection to the Telephony Server. As events occur on the telephone network, the Event Server communicates to the client, which then responds with a request to the Web Server for an updated web page. By this mechanism, the need for dynamic HTML is eliminated, thus, support for many different client types is possible. This invention assumes a specialized computing hardware platform. The voice processing industry is built around one fundamental component: the voice board. A voice board, also called a speech card, is an IBM PC or AT compatible expansion card, which can perform voice-processing functions. Dialogic, Natural Micro Systems and Pika Techonolgies provide these types of boards. These voice-processing boards can be installed in a standard PC server. Thus, the present invention contemplates a system and method for controlling phone calls through Telephony Server and a cross platform enabling internet browser module on the PC/client side for controlling telephone calls with real time display and user directories comprising: (1 ) A software-based telephone switch or a computer telephony server with the capability to integrate with an external telephone network. (2) A web server capable of delivering text and graphic pages over a TCP/IP based network connection. (3) A server side TCP/IP component that connects to the computer telephony server and provides events and enables call control to the client TCP/IP component. The client server TCP/IP connection is established and maintained through an outbound socket and inbound socket. (4) A client side cross platform enabled component that connects to the server in to provide real-time client display as events on the server occurs. Brief description of the drawings For a more complete understanding of the present invention and its advantages, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which: Figure 1. Illustrates a computer network and telephone system that forms an environment within which the present invention can operate. Figure 2. Illustrates a how the server components inter-operate to achieve the primary goal. Figure 3. Illustrates how the client browser components inter-operate to achieve the primary goal. Detailed description of the Invention Referring initially to Figure 1 , which illustrates a computer network that forms an environment within which the present invention can operate. The network is illustrated as including a telephone instrument along with a client PC connected to a computer network. Other telephone instruments may be coupled to the PC for the transmission of voice over the computer network. The definition of transmission of voice over the computer network is not defined within the current invention. However, the present invention is capable of controlling calls that occur regardless of the transmission system, whether over the PSTN, PBX, or a computer network. Figure 1 illustrates the preferred embodiment of how the Telephone Server can be connected to an external telephone switch. All the telephone instruments and the PSTN are connected to the PBX. The Telephone Server and the Packet-Based voice server are connected to the PBX over analog telephone lines. The Telephony Server module has special telephony hardware for the purpose of connecting and controlling the PBX and usually comprises any type of computer but in a preferred embodiment will be a server, such as one made by Dell Computers of Austin, TX (USA). This usually comes in the form of a combination of analog voice ports and a Computer Telephony port provided by the PBX vendor. Figure 2 illustrates the primary software components required in the Telephony Server module. The Telephone Integration Module (TIM) uses hardware and software to connect to an external or internal telephone switch. As events occur on this first telephone system, the TIM notifies the Event Server control module of state changes within that network or system. Similarly, the Client Call Control module sends commands to the TIM to trigger state changes in the telephone network. The Web Server transports commands and events to/from the client over the computer network. This arrangement permits the client to receive real time notification on his computer (which is in communication with a telephone system which may be either a single telephone or an entire telephone network) regarding the incoming call on the first telephone network. With this notification transported to the cross platform/platform independent enabled component (preferably a browser, as further detailed herein), the client or user is provided with options (such as answering the call, forwarding it to voice mail, etc.) which can be effectuated, via the client computer, to either the second telephone system (in the case of where the client wishes to answer the currently incoming call from the first telephone system), or back to the server based telephone module which will manipulate the call in other ways on the first telephone, such as by placing the call in voice mail, etc. Thusiy provided, the client is enabled, through the present invention, for receiving and acting upon - at a potentially distant location or different phone number - incoming calls which are originally received at a home or office base. Figure 3 displays a typical, call process flow as it is handled by the Telephony Server module elements defined in Figure 2. For the purpose of this discussion, a user currently connected to the Web Access system via the internet has received a call at the telephone instrument. Step 1 , notification of the call is sent to the Event Server module by the Telephone Integration Module (TIM). Step 2, the Event Server module notifies the client module (i.e. preferably Java clients running in a remote web browser portion) that an inbound call is in progress. Step 4, the user decides to accept or reject the call by selecting an option from the new web page received from the web server. Step 5, if the user chooses to accept the call, the Client Call Control module will receive notification from the web server to forward the call to the telephone number or IP address where the user is currently located; otherwise, the user may choose to send the call to voice mail, which is activated by the Client Call Control module. In reference to Figure 4, illustrated are the primary components of the client system. The client system has a cross-platform language enabled browser (such as a Java-enabled web browser), typically those marketed under the trademarks Microsoft Internet Explorer or Netscape Navigator which are resident on a computer such as a personal computer or laptop available from International Business Machines of Armonk NY (USA). When the user logs on to the Web Access, a cross platform augmentation (which, in the preferred embodiment, will be a Java-client) is downloaded and activated within the context of the web browser, thus connecting to the Event Server using the computer network and forming the client module. Figure 5 diagrams the client system process for notification of an inbound call. For the purpose of discussion, a user currently connected to the Web Access system via the Internet has received a call at their telephone instrument. Step 1 , notification of the inbound call is delivered to the Java- client from the Event Server module. Step 2, the Java-client requests a new web page from the Web Server, displaying the inbound caller ID information (such as provided through South Western Bell ™) along with the available call options. Step 3, the user may decide to accept the call, which sends a response to the Web Server which instructs the Client Call Control module to activate the TIM. Step 4, if the user decides to reject the call, the Java-client sends a response to the Web Server which instructs the Client Call Control module to send the call to voice mail. Hence, the present invention provides a system and method for dynamically controlling and routing calls to remote users of a telephone system. The method and apparatus here explicitly contemplates use in all types of phone systems, whether traditional telephone systems or advanced communication server based. Thus, the present invention is not specific to any computer or telephone network protocol, in accordance with the general system elements, which comprise (1 ) Telephone Server which has the required elements described in figure 2, and (2) a Java-enabled Web Browser with the elements described in Figure 4. The foregoing has outlined rather broadly the features and technical advantages of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of the invention will be described hereinafter which for the subject of the claims of the invention. It should be appreciated by those skilled in the art that the conception and the specific embodiment disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same purposes of the present invention. It should also be realized by those skilled in the art that such equivalent constructions do not depart from the spirit and scope of the invention as set forth in the appended claims.

Claims: CLAIMS We claim: 1. A computer based apparatus for controlling telephone calls comprising: a server based telephone module for notifying a client of telephone calls and for directing telephone calls to the client from a first telephone system to a second telephone system, as directed by the client; and a client based module provided in a platform independent format for receiving said telephone calls and for notifying said client of said telephone calls, and for providing said client with options for responding to said telephone calls in real time. 2. A computer based method for controlling telephone calls comprising: enabling a client to log into a first computer in communication with a first telephone system, from a second computer of said client, wherein said second computer is in communication with a second telephone system; directing telephone calls in the first telephone system to the second computer of said client in real time; and providing said client with announcement of and response options for responding to said telephone calls in real time. AMENDED CLAIMS [received by the International Bureau on 03 October 2000 (03.10.00); original claims 1 and 2 replaced by new claims 1-35 (7 pages)] We claim: 1. A computer based system for managing telephone calls to a telephone system over a computer network, comprising: an event mo dule for monitoring a te lephone network for a te lephone call directed to said telephone system to provide a received call; a client module connected to said computer network for receiving and displaying call information related to said received calls in real-time; and a web server for delivering call information related to said received call and a plurality of call options for disposing said received call to said client module in real-time over said computer network; wherein said client module is operable to receive a call option from said plurality of call options selected by a user associated with said telephone system; and wherein said web server is operable to route said received call in accordance with said selected call option. 2. The system of claim 1 , wherein said call information includes at least identification and telephone number of a calling party. 3. The system of claim 1 , wherein said plurality of call options includes at least accepting said received call on said telephone system, accepting said received call on a remote telephone system, sending said received call to a voice mail system, forwarding said received call to another party and placing said received call on hold. 4. The system of claim 1, wherein said web server delivers at least one page of call information and call options; and wherein said page includes graphical and textual information. 5. The system of claim 1, wherein said client module is a java-client. 6. The system of claim 1, wherein said telephone system is a telephone. 7. The system of claim 1, wherein said telephone system is a PBX. 8. The system of claim 1, wherein said telephone system is a central office switch. 9. The system of claim 1, wherein said web server includes a light weight user interface. 10. The system of claim 1, wherein said web server is operable to be remotely accessible by said user, thereby enabling said user to seamlessly accept said received call from a remote telephone system. 11. The system of claim 1 , wherein said computer network is a LAN. 12. The system of claim 1, wherein said computer network is an Internet. 13. A computer based system for managing telephone calls to a telephone system, comprising: an event module for monitoring a computer network for a telephone call directed to said telephone system to provide a received call; a client module connected to said computer network for receiving and displaying call information related to said received calls in real-time; and a web server for delivering call information related to said received call and a plurality of call options for disposing said received call to said client module in real-time over said computer network; wherein said client module is operable to receive a call option from said plurality of call options selected by a user associated with said telephone system; and wherein said web server is operable to route said received call in accordance with said selected call option. 14. The module of claim 13, wherein said call information includes at least identification and IP address of a calling party. 15. The system of claim 13, wherein said web server delivers at least one page of call information and call options; and wherein said page includes graphical and textual information. 16. The system of claim 13, wherein said client module is a java-client. 17. A computer based system for managing a telephone switching system having a plurality of telephones connected thereto over a computer network, comprising; a client module associated with each telephone and connected said computer network for receiving and displaying call information relating to each telephone call in real-time; an event module for monitoring a telephone network for a telephone call directed to a telephone in said plurality of telephones to provide a received call for said telephone; and a web server for delivering call information related to said received call and a plurality of call options for disposing said received calls to a client module associated with said telephone over said computer network; wherein said client module is operable to receive a call option from said plurality of call options selected by a user associated with said telephone; and wherein said web server is operable to route said received call in accordance with said selected call option. 18. The system of claim 17, wherein said call information includes identification and telephone number of a calling party. 19. The system of claim 17, wherein said web server delivers at least one page of call information and call options; and wherein saidpage includes graphical and textual information. 20. The system of claim 17, wherein said client module is a java-client. 21. The system of claim 17, wherein said plurality of call options includes at least accepting said received call on said telephone system, accepting said received call on a remote telephone system, sending said received call to a voice mail system, forwarding said received call to another party and placing said received call on hold. 22. The system of claim 17, wherein said web server is operable to be remotely accessible by said user, thereby enabling said user to seamlessly accept said received call from a remote telephone system. 23. The system of claim 17, wherein said telephone switching system is a PBX. 24. A computer based method for managing telephone calls to a telephone system over a computer network, comprising the steps of: monitoring a telephone network for a telephone call directed to said telephone system to provide a received call; delivering call information related to said received call and a plurality of call options for disposing said received call to a client module in real-time over said computer network, displaying said call information and said plurality of call options to a user associated with said telephone system in real-time by said client module; receiving from said client module a call option from said plurality of call options selected by said user over said computer network; and routing said received call in accordance with said selected call option. 25. The method of claim 24, wherein said call information includes at least identification and telephone number of a calling party. 26. The method of claim 25, wherein the step of delivering delivers at least one page of call information and call options; wherein said page includes graphical and textual information; and wherein the step of displaying displays said page to said user. 27. The method of claim 24, wherein said client module is a java-client. 28. The method of claim 24, wherein said plurality of call options includes at least accepting said received call on said telephone system, accepting said received call on a remote telephone system, sending said received call to a voice mail system, forwarding said received call to another party and placing said received call on hold. 29. The method of claim 24, wherein said computer network is a LAN. 30. The method of claim 24, wherein said computer network is an Internet. 31. A computer based method for managing a telephone switching system having a plurality of telephones connected thereto over a computer network, comprising the steps of: monitoring a telephone network for a call directed to a telephone in said plurality of telephones to provide a received call for said telephone; and delivering call information related to said received call and a plurality of call options for disposing said received calls to a client module associated with said telephone in real-time over said computer network; displaying said call information relating to said received call and said plurality of call options to a user associated with said telephone in real-time by said client module; receiving from said client module a call option from said plurality of call options selected by said user over said computer network; and routing said received call in accordance with said selected call option. 32. The method of claim 31, wherein said call information includes at least identification and telephone number of a calling party. 33. The method of claim 31, wherein the step of delivering delivers at least one page of call information and call options; wherein said page includes graphical and textual information; and wherein the step of displaying displays said page to said user. 34. The method of claim 31 , wherein said client module is a java-client. 35. The method of claim 31 , wherein said plurality of call options includes at least accepting said received call on said telephone system, accepting said received call on a remote telephone system, sending said received call to a voice mail system, forwarding said received call to another party and placing said received call on hold.

Inventors: BOEHRER TRACY, JOHNSON STEVE, NANCE NICK, PORTER MATHEW, BOEHRER, TRACY, JOHNSON, STEVE, NANCE, NICK, PORTER, MATHEW
Applicants: BOEHRER TRACY, COM2001 COM, JOHNSON STEVE, NANCE NICK, PORTER MATHEW, BOEHRER, TRACY, COM2001.COM, JOHNSON, STEVE, NANCE, NICK, PORTER, MATHEW
Application year: 2000
Main classification: H04J3
IPC codes: H04M3, H04M7, H04M11