WO2001027784A1 - Web-based communication system and method - Google Patents

Web-based communication system and method Download PDF

Info

Publication number
WO2001027784A1
WO2001027784A1 PCT/US2000/028554 US0028554W WO0127784A1 WO 2001027784 A1 WO2001027784 A1 WO 2001027784A1 US 0028554 W US0028554 W US 0028554W WO 0127784 A1 WO0127784 A1 WO 0127784A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
agent
communication
applet
voice communication
Prior art date
Application number
PCT/US2000/028554
Other languages
French (fr)
Inventor
Bahram Dean Ansari
Vincent Zimmerman
Original Assignee
Netdive, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netdive, Inc. filed Critical Netdive, Inc.
Priority to AU80248/00A priority Critical patent/AU8024800A/en
Publication of WO2001027784A1 publication Critical patent/WO2001027784A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1818Conference organisation arrangements, e.g. handling schedules, setting up parameters needed by nodes to attend a conference, booking network resources, notifying involved parties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the present invention relates generally to computer networks, and more particularly to a system and method for implementing text, image and voice communication through a web-based interface.
  • An embodiment of the present invention includes a method and apparatus for network-based communication.
  • a user activates the communication system by pressing or otherwise activating a call button.
  • the call button is linked to an applet embedded in the page containing the call button.
  • the applet interacts with a server computer to establish communication between the user and an agent.
  • Non-voice communications are routed through the server computer.
  • Voice communications pass between the user and the agent in a direct peer-to-peer fashion.
  • Figure 1A is a block diagram showing use of a server to route of non- voice communications between a customer client computer and an agent client computer 104.
  • Figure 1 B is a block diagram showing direct routing of voice communications between a customer client computer and an agent client computer 104.
  • Figure 2 is a block diagram of a typical customer client computer as used in the network of Figure 1.
  • Figure 3 is a block diagram of a typical customer client computer as used in the network of Figure 1.
  • Figure 4 is a block diagram of a typical server computer as used in the network of Figure 1.
  • Figure 5 is a block diagram showing an embodiment of the interaction that occurs between the customer client computer, the agent client computer, and the server computer in implementing communication through a web- based interface according to the present invention.
  • Figure 6 shows a first screen of an exemplary agent user interface.
  • Figure 7 shows a second screen of the exemplary agent user interface.
  • Figure 1 depicts an exemplary operating environment of the invention.
  • the system and method of the invention utilizes client/server architecture, which distributes processing between a client computer and a server computer.
  • the invention is described below in the context of an exemplary implementation wherein voice communication is effected between a website customer, located at a first client computer, and an agent located at a second client computer. It should be appreciated that the implementation described below is offered by way of example only, and is not intended to limit the invention to any particular use or configuration.
  • a customer client computer 102, an agent client computer 104, and a server 106 are each coupled to a network 110.
  • Network 110 will comprise a packet switched network, such as the Internet, and enables communication between and among the various computers coupled thereto.
  • An administrator application which may be implemented in a separate administrator computer 108 or which may be integral to the agent client computer 104, is operative to interact with the server application 414 in facilitating administration of agents, configuration of applets, and administration of call routing and other communication functions.
  • non-voice communications such as text or image communications
  • voice communications are routed directly between the customer client computer 102 and the agent client computer 104 (using peer- to-peer architecture).
  • FIG. 2 is a block diagram illustrating details of a typical customer client computer 102.
  • the customer client computer 102 includes a central processing unit (CPU) 202 for executing instructions and performing operations therein.
  • a microphone 204 for generating and transmitting electrical signals representative of audio signals received from a user, and audio speakers 206 for amplifying and projecting transmitted signals to a user, are coupled to an audio input/output interface 208 (e.g., sound card) for signal processing and augmenting.
  • Computer memory 212 is also provided for storing programs and data required for computer operation.
  • a network interface 224 such as a modem, for connecting to a network 110 is provided to receive and transmit data over the network 110.
  • These components intercommunicate through, and are coupled by, a data bus 226.
  • a memory 212 may comprise any of various types of RAM and/or
  • An operating system 222 is stored in the memory 212 for managing other programs in the computer 102 and operating the CPU 202.
  • a JavaTM-enabled web browser 220 such as Netscape Navigator® or Microsoft Internet Explorer, is also stored in the memory 212.
  • the web browser 220 is an application program that uses the Hypertext Transfer Protocol (HTTP) to make requests of web servers throughout the Internet on behalf of the browser user and is capable of supporting embedded JavaTM applets.
  • HTTP Hypertext Transfer Protocol
  • applets or small computer applications
  • an applet is a computer program, usually quite small in comparison to a plug-in or stand alone application, which can be embedded in an HTML (Hypertext Markup Language) document, e.g., a web page.
  • HTML Hypertext Markup Language
  • JavaTM applets are generally controlled by a larger application, such as the web browser 220, and are typically downloaded from a source coupled to the Internet and executed on the user's computer.
  • a communication applet 216 stored in the memory 212 and initiated by the customer at the computer 102, and a voice communication applet 218, also stored in memory 212 and initiated by either the customer or the agent at their respective computers, execute within the agent client 104 as well as within the customer client 102. Details regarding the applets 216 and 218 are described below. Applet installation and configuration infor ⁇ iation is referenced in Appendix A.
  • FIG. 3 is a block diagram illustrating details of a typical agent client computer 104. Similar to the customer client computer 102 and as described above, the agent client computer 104 also includes a central processing unit (CPU) 302, microphone 304 and audio speakers 306 coupled to an audio input/output interface 308, memory 312, and a network interface 324 coupled to a network 110. These components intercommunicate through a data bus 326.
  • a display device 330 such as a monitor, and other input/output devices 310, such as keyboard and mouse, may also be coupled to the bus 326.
  • the agent memory 312 which may comprise various types of RAM and/or ROM, also stores an operating system 322 and a JavaTM-enabled web browser 320. Noteworthy differences between the customer memory 212 and the agent memory 312, are that the agent memory 312 comprises a JavaTM runtime environment (JRE) 328 providing a JavaTM platform on which to run an agent application 314, which is described below.
  • JRE JavaTM runtime environment
  • a JRE consists of the JavaTM virtual machine (JVM), the JavaTM platform core classes, and supporting files and is the smallest set of executables and files that constitute the standard JavaTM platform.
  • JavaTM which may currently exist or may be developed in the future.
  • the agent application 314 is a software program preferably written in JavaTM, that typically executes on the agent computer 104, thereby enabling establishment of web-based communication between users. While active, the agent application 314 awaits incoming calls from customers and, when calls are received, allows the agent to accept or reject the calls. When an agent accepts a call, a communication applet 216 is automatically downloaded to the agent computer 104, thereby enabling text communication.
  • the agent application 314 facilitates secure communication through encryption, and allows the agent to supplement text communication with images 436 or interactive slides 438.
  • the agent application 314 further provides status information to the customer as to whether the agent is currently online or offline. More description of the agent application 314 is provided in the discussion of Figure 5.
  • FIG. 4 is a block diagram illustrating the details of a typical server computer 106 of the present invention.
  • the server computer 106 includes a CPU 402 for executing instructions and performing operations therein, miscellaneous input/output devices 410 for user-computer interaction, memory 412, and a network interface 424 connected to the network 110. These components intercommunicate through data bus 426.
  • the server memory 412 comprises a JavaTM runtime environment 428 providing a JavaTM platform on which to run a server application 414, for enabling and managing the communication between customer client computer 102 and agent client computer 104.
  • the server application 414 functions include launching user interface windows on the client computers, facilitating the applet download operations to the client computers 102 and 104, and facilitating administrative functions through the administrator application.
  • An operating system 422 (e.g., UNIX or Windows®) for managing other programs in the computer, an HTTP (Hypertext Transfer Protocol) web server 432 program for serving the files that form web pages to web users, and web pages 430 are stored in memory 412 .
  • Images 436 e.g., GIF or JPEG
  • slides 438 e.g., GIF or JPEG
  • the server memory 412 further comprises a call button applet 214, a communication applet 216, and a voice communication applet 218, which are downloaded from the server computer 106 to the client computers 102 and 104 when requested by the client users through client computers 102 and 104.
  • Call button applet 214 is embedded within certain web pages 430 from which communication initiation is intended.
  • a web page containing a call button applet 214 is downloaded by a user at a customer client computer 102, an interactive call button icon (not shown) on the customer client computer monitor 228 is displayed.
  • the call button icon is capable of indicating whether an agent is connected to the network and able to receive calls.
  • the call button can also be a call-routed button.
  • a call from a customer client computer 102 to an agent client computer 104 may be initiated by the customer clicking on the call button icon.
  • the agent may accept a communication request form the customer through the agent application 314 interface.
  • the call button applet 214 running on the customer client computer 102, instructs the customer web browser 220 and the agent web browser 320 to download the communication applet 216 from a server and execute the applet 216 to enable communication.
  • Text exchange and all other non-voice communication between the customer client computer 102 and the agent client computer 104 is enabled upon loading and execution of communication applet 216 on the customer client computer 102 and the agent client computer 104.
  • image and interactive slide exchange is initiated by the agent using a communication control tool component of the agent application 314 running on the agent client computer 104.
  • images 436 and/or interactive slides 438 are downloaded from the server 106 for display at the customer client computer 102 and the agent client computer 104.
  • the present invention may also be employed to send images 436 and slides 438 to the agent client computer 104 at the initiation of a customer at the customer client computer 102.
  • Voice communication applet 218 is then downloaded from the server 106 to the customer client computer 102 and the agent client computer 104 upon initiation by either party through interaction with a graphical button on respective user interfaces, thereby instantaneously enabling real-time voice communication between the customer and the agent over the network 110.
  • Figure 5 depicts an embodiment of the interaction that occurs between the customer client computer 102 ( Figure 1 ), the agent client computer 104 ( Figure 1 ), and the server computer 106 ( Figure 1 ) in implementing text, image and voice communication through a web-based interface according to the present invention.
  • reference numerals corresponding to activities on the customer client computer 102 are even- numbered and lower than 550
  • reference numerals corresponding to activities on the agent client computer 104 are odd-numbered
  • reference numerals corresponding to activities on the server computer 106 are even-numbered greater than 550.
  • the implementation described with reference to Figure 5 envisions a customer browsing the web searching for a particular product or type of product and clicking a hyperlink or typing a URL (Uniform Resource Locator) pursuant to block 502 in the appropriate web browser 220 field, to download and open the web pages 430 from the web server 432 of the server computer 106.
  • the web page (HTML document) 430 which may reside on server 106 or a different network server, is embedded with the call button applet 214 tag. Consequently, downloading and opening the web page 430 causes downloading of the call button applet 214 from the server 106 to the customer client computer 102.
  • the call button applet 214 then executes within the customer web browser 220, resulting in display of an interactive call button icon pursuant to block 504 on the customer's computer display 228.
  • this interactive icon has the capability of indicating to the customer whether the agent is online or offline (if a single agent) or indicating that the call is being routed to the next available agent (if more than one agent).
  • the server functions of downloading the web page 430 and call button applet 214 are indicated in block 552.
  • the call button applet 214 sends a request from the customer client computer 102 over the network 110 to the server computer 106 requesting communication with an agent.
  • the server 106 transmits a query to the agent client computer 104 regarding whether the agent desires to accept the call.
  • the server computer 106 downloads the communication applet 216 to the customer client computer 102 and to the agent client computer 104.
  • the communication applet 216 then interacts with the agent application 314 to display a GUI 600 (see Figure 6) on the agent's display 330.
  • Communication applet 216 also executes within the customer web browser 220, resulting in display of a user interface on the customer computer display 228.
  • the customer and the agent may then conduct non-voice communications over the network 110 using the communication applet 216 running on the customer client computer 102 and the agent client computer 104 respectively, as shown in Figure 1A. This non- voice communication is represented by block 554 of Figure 5.
  • the communication applet 216 is configured to establish non-voice communications using the TCP/IP protocol.
  • communication applet 216 is preferably configured to establish non-voice communications using the HTTP protocol. This process is dynamic so that TCP/IP is tried first and HTTP is tried only when TCP/IP fails.
  • the agent may also initiate exchange of images 436 and interactive slides 438.
  • Image or slide exchange is initiated by the agent by clicking on the appropriate tab of the communication control tool interface (see Figure 7) on the agent client computer 104.
  • the agent may then choose an image from a list of available images stored on the server computer 106 for transmittal to and display upon the customer client computer 102 and the agent client computer 104.
  • the agent may also conduct an interactive slideshow with the customer as further described in Appendix C. As part of this slideshow, the agent has the ability to pan or otherwise select the areas of a slide being viewed.
  • the agent can also perform other image manipulations, such as zooming.
  • the image manipulations are transferred, in real-time, to the agent client compute 104. In effect, both agent and client see the same image. This allows the agent to interactively guide the customer though the slideshow.
  • Block 505/508 depicts that both the customer and the agent have the capability of initiating voice communication by clicking the appropriate button icon on their respective interfaces. For example, clicking on a voice communication button 608 ( Figure 6) results in a call to the server 106 to load the signed voice communication applet 218 for execution on the client computers 102 and 104 and to facilitate the launch of a new window at each client computer. Refer to Appendix B for available voice communication modes and settings. As depicted in block 507, if a customer initiates voice communication then the agent will be prompted to accept or reject the voice communication, whereas if the agent initiates the voice communication then voice communication is immediately established.
  • VoIP peer-to-peer voice over internet protocol
  • UDP user datagram protocol
  • the customer client computer 102 and agent client computer 104 then communicate directly without the necessity of routing the voice communication through the server 106, as depicted in Figure 1 B.
  • the use of peer-to-peer communication between the customer client computer 102 and agent client computer 104 works best for cases where an agent is interacting with a single customer. In some cases, individual agents will communicate with multiple customers in a conference call type of interaction. For these cases, the communication between the agent client computer 104 and the multiple customer client computers 102 is preferably routed through the server computer 106.
  • Figure 6 presents an exemplary agent user interface 600 which displays on the agent's display 330 upon execution of the communication applet 216.
  • Interactive button icons are presented to provide access to various forms of communication available to the agent, including white board 602, slide show 604, secure mode 606, and voice communication 608.
  • the agent can initiate each of these communication forms by clicking the appropriate button on the interface.
  • the agent is then able to actively deliver to the customer client computer 102, images and/or interactive slides that have been previously stored on server 106.
  • Figure 7 presents an exemplary agent user interface 700 which displays on the agent's display 330 upon the agent's appropriate interaction with the agent application 314 executing on the agent client computer 104.
  • Interface 700 facilitates non-voice image and interactive slideshow communication as described above.
  • One advantage of the invention is the availability at the customer client computer 102 of instantaneous voice communication between the customer and the agent. It is not necessary for the customer to download and install a large plug-in stand-alone software application or to have third-party software (e.g., Microsoft Netmeeting®) already installed and configured to conduct voice communication over the network 110. Furthermore, if the customer and the agent choose not to employ the voice capability, their respective computers 102 and 104 are not burdened by the unnecessary use of system resources by a voice over Internet protocol application. Those skilled in the art will recognize the advantages over the prior art of the system and method described herein.
  • the advantageous features include the availability to a customer of instantaneous VoIP communication through use of thin applets executing within a web browser, without the requirement of installing large, resource intensive software applications and without the requirement of computer system reconfiguration, plus the separation of the VoIP capability from the text capability thereby avoiding unnecessary system resource usage.
  • the CailSite Applet's files are packaged with the CailSite Server in the CailSite archive. If you have not installed the server yet, unpack the CailSite Archive before proceeding. If your web server runs on a Windows system, click here. If your web server runs on a UNIX system, click here.
  • the CailSite Applets files are located in the applet subdirectory of Callsite directory on your web server : http://www.yourdomain.com/callsite/applet
  • the applet directory contains the following :
  • Pager.class The Button Applet that will be added to the Agent's web page that customer's call him or her from.
  • VoiceApplet.jar The archive file with the client Applet for voice communication (for Netscape users).
  • VoiceApplet.cab The archive file with the client Applet for voice communication (for Explorer users).
  • Warning : userName value MUST be in lowercase
  • the CailSite client Applet Button will appear indicating that John Doe is online. To call John Doe and establish communication with him, just click on the button.
  • CailSite Applets Parameters o configure the Button and communication Applets, you have to modify their parameters in the html pages either manually or automatically by using the Admin application.
  • This parameter is used in conjunction with the server's 'Timeout' variable. It identifies the URL of a CGI script that starts up the server program. This allows for unattended but discontinuous operation of the server, which can be useful to conserve system resources or when running large tasks during off hours.
  • Agent's user Login name Agent's user Login name.
  • Warning username is case sensitive. This name must exactly match the name of the Agent that was created by the Admin or was later set by the Agent himself and MUST be in lowercase Button's parameters in case of CalI_ outi . ng (Patent Pending)
  • buttonsBorderStyle "BIG_RELIEF” Style of the Communication Applet buttons display. You can choose between : BIG_RELIEF, MACOS, RELIEF, BIG_BEVEL, ROUNDED, BEVEL, WIN311, NO_BORDER.
  • a Web browser will launch which will load the applet that will enable Voice communication. After a few seconds the system will indicate that the "Voice communication is Activated".
  • the Agent can change these default settings by clicking on the Set Voice Preferences button
  • Voice communication is available only for customers with Windows 95/98 or NT and IE 4.0 or later or NS 4.0 or later Web browsers. Toward this CailSite allows you to instantly check the Customer's ability to engage in Voice communication. To do this:
  • CB is the default mode for CallSite's voice feature.
  • CB mode a button is added to the CailSite window to control transmission. To speak, click and hold this button. Release the button to stop talking and to let the other party to speak. When the other party is speaking, the Voice button displays 'Receive'.
  • the voice system In hands-free mode, the voice system continually monitors your microphone and transmits your voice whenever you speak, and automatically stops whenever you stop speaking.
  • the voice Applet Upon establishing a hands-free mode voice conversation, the voice Applet displays two monitor bars. The bar on the left indicates how loud you are speaking (transmitting). The bar on the right indicates the loudness of the voice that you are receiving (receiving).
  • the bar becomes red if either party is speaking too loudly, causing the sound quality to be degraded. In such case, the person speaking too loudly needs to lower the input gain on the microphone using the Windows control panel (Click on the "Sound volume” button).
  • Cp.dec settings Error correction setting Buffe resetting ou may select a custom voice setting by following these 4 steps :
  • the voice settings menu contains shortcuts to settings that work well in three common configurations :
  • the choice of a sound codec is critical to obtaining the best voice quality.
  • the Options window displays the bandwidth effectively used by the voice system according to the settings you have chosen. If the setting is larger than (or even too close to) the maximum bandwidth permitted by your Internet connection, you may experience breaks in transmission.
  • the picture below shows the different components of the text chat client.
  • the chat window is resizable.
  • the picture below shows how the chat area slider works.
  • the text messages are stored in a file called TextLog.txt located in the Agent Application directory.
  • the secure messages are not stored.

Abstract

A method and apparatus for network-based communication are provided. For a typical embodiment, a user (102) activates the communication system by pressing or otherwise activating a call button. The call button is an applet embedded in a web page. The applet interacts with a server component residing on a server computer (106) to establish communication between the user and an agent (104). Non-voice communications are routed through the server computer(106) and become available instantly between the customer (102) and the agents (104). In the case of one-to-one communication, voice communications pass between the user (102) and the agent (104) in a direct peer-to-peer fashion. For one-to-many communications, voice communications are routed though the server computer (106).

Description

WEB-BASED COMMUNICATION SYSTEM AND METHOD
FIELD OF THE INVENTION
The present invention relates generally to computer networks, and more particularly to a system and method for implementing text, image and voice communication through a web-based interface.
BACKGROUND OF THE INVENTION
Most organizations using websites for commercial purposes can benefit from instant communication and document sharing with their current and potential customers. Commercial websites often serve as vehicles for obtaining new customers, for selling products and services, and for offering product support to existing customers. An invaluable component of marketing and support operations is the ability to speak with customers and potential customers on a person-to-person basis. Coupling the vast content and potential for distribution of an organization's website with the capability for person-to-person voice communication offers real-time global communication, thus collapsing the distance between an organization and its customers.
Conventional systems and methods for enabling real-time communications through a web-based interface are generally limited by permitting only exchange of text messages, by requiring download and installation of additional software, or both. Indeed, since many web-based voice communication packages require each user to download and install a bulky plug-in or stand alone application, users may be dissuaded from availing themselves of such voice communication packages and capabilities if they must first perform a lengthy and inconvenient download and installation procedure. Therefore, there is a need for a web-based voice communication system and method that does not require the user to download and install a large plug-in or stand-alone application. SUMMARY OF THE INVENTION
An embodiment of the present invention includes a method and apparatus for network-based communication. For a typical embodiment, a user activates the communication system by pressing or otherwise activating a call button. The call button is linked to an applet embedded in the page containing the call button. The applet interacts with a server computer to establish communication between the user and an agent. Non-voice communications are routed through the server computer. Voice communications pass between the user and the agent in a direct peer-to-peer fashion.
Advantages of the invention will be set forth, in part, in the description that follows and, in part, will be understood by those skilled in the art from the description herein. The advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims and equivalents.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate several embodiments of the invention and, together with the description, serve to explain the principles of the invention.
Figure 1A is a block diagram showing use of a server to route of non- voice communications between a customer client computer and an agent client computer 104.
Figure 1 B is a block diagram showing direct routing of voice communications between a customer client computer and an agent client computer 104.
Figure 2 is a block diagram of a typical customer client computer as used in the network of Figure 1. Figure 3 is a block diagram of a typical customer client computer as used in the network of Figure 1.
Figure 4 is a block diagram of a typical server computer as used in the network of Figure 1. Figure 5 is a block diagram showing an embodiment of the interaction that occurs between the customer client computer, the agent client computer, and the server computer in implementing communication through a web- based interface according to the present invention.
Figure 6 shows a first screen of an exemplary agent user interface. Figure 7 shows a second screen of the exemplary agent user interface.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Reference will now be made in detail to preferred embodiments of the invention, examples of which are illustrated in the accompanying drawings. Wherever convenient, the same reference numbers will be used throughout the drawings to refer to the same of like parts.
Figure 1 depicts an exemplary operating environment of the invention. The system and method of the invention utilizes client/server architecture, which distributes processing between a client computer and a server computer. The invention is described below in the context of an exemplary implementation wherein voice communication is effected between a website customer, located at a first client computer, and an agent located at a second client computer. It should be appreciated that the implementation described below is offered by way of example only, and is not intended to limit the invention to any particular use or configuration.
A customer client computer 102, an agent client computer 104, and a server 106 are each coupled to a network 110. Network 110 will comprise a packet switched network, such as the Internet, and enables communication between and among the various computers coupled thereto. An administrator application, which may be implemented in a separate administrator computer 108 or which may be integral to the agent client computer 104, is operative to interact with the server application 414 in facilitating administration of agents, configuration of applets, and administration of call routing and other communication functions.
As depicted in Figure 1A and described below, non-voice communications, such as text or image communications, between the customer client computer 102 and the agent client computer 104 are preferably routed through the server 106. As shown in Figure 1 B and further described below, voice communications are routed directly between the customer client computer 102 and the agent client computer 104 (using peer- to-peer architecture).
Figure 2 is a block diagram illustrating details of a typical customer client computer 102. The customer client computer 102 includes a central processing unit (CPU) 202 for executing instructions and performing operations therein. A microphone 204 for generating and transmitting electrical signals representative of audio signals received from a user, and audio speakers 206 for amplifying and projecting transmitted signals to a user, are coupled to an audio input/output interface 208 (e.g., sound card) for signal processing and augmenting. Computer memory 212 is also provided for storing programs and data required for computer operation. A network interface 224, such as a modem, for connecting to a network 110 is provided to receive and transmit data over the network 110. These components intercommunicate through, and are coupled by, a data bus 226. A display device 228, such as a monitor, and other input/output devices 210, such as keyboard and mouse, may also be coupled to the bus 226. A memory 212 may comprise any of various types of RAM and/or
ROM. An operating system 222 is stored in the memory 212 for managing other programs in the computer 102 and operating the CPU 202. In addition, a Java™-enabled web browser 220, such as Netscape Navigator® or Microsoft Internet Explorer, is also stored in the memory 212. In particular, the web browser 220 is an application program that uses the Hypertext Transfer Protocol (HTTP) to make requests of web servers throughout the Internet on behalf of the browser user and is capable of supporting embedded Java™ applets.
As described below, one feature of the invention is the utilization of applets, or small computer applications, to enable voice communication between users while avoiding the need to download large applications. As is known in the art, an applet is a computer program, usually quite small in comparison to a plug-in or stand alone application, which can be embedded in an HTML (Hypertext Markup Language) document, e.g., a web page. Java™ applets are generally controlled by a larger application, such as the web browser 220, and are typically downloaded from a source coupled to the Internet and executed on the user's computer.
During practice of the invention, a communication applet 216, stored in the memory 212 and initiated by the customer at the computer 102, and a voice communication applet 218, also stored in memory 212 and initiated by either the customer or the agent at their respective computers, execute within the agent client 104 as well as within the customer client 102. Details regarding the applets 216 and 218 are described below. Applet installation and configuration inforήiation is referenced in Appendix A.
Figure 3 is a block diagram illustrating details of a typical agent client computer 104. Similar to the customer client computer 102 and as described above, the agent client computer 104 also includes a central processing unit (CPU) 302, microphone 304 and audio speakers 306 coupled to an audio input/output interface 308, memory 312, and a network interface 324 coupled to a network 110. These components intercommunicate through a data bus 326. A display device 330, such as a monitor, and other input/output devices 310, such as keyboard and mouse, may also be coupled to the bus 326.
The agent memory 312, which may comprise various types of RAM and/or ROM, also stores an operating system 322 and a Java™-enabled web browser 320. Noteworthy differences between the customer memory 212 and the agent memory 312, are that the agent memory 312 comprises a Java™ runtime environment (JRE) 328 providing a Java™ platform on which to run an agent application 314, which is described below. As known in the art, a JRE consists of the Java™ virtual machine (JVM), the Java™ platform core classes, and supporting files and is the smallest set of executables and files that constitute the standard Java™ platform.
Although the embodiment of the invention described herein employs the Java™ programming language and environment, those skilled in the art will recognize that the system and method of the invention described herein could be practiced using programming languages with attributes similar to
Java™ which may currently exist or may be developed in the future.
The agent application 314 is a software program preferably written in Java™, that typically executes on the agent computer 104, thereby enabling establishment of web-based communication between users. While active, the agent application 314 awaits incoming calls from customers and, when calls are received, allows the agent to accept or reject the calls. When an agent accepts a call, a communication applet 216 is automatically downloaded to the agent computer 104, thereby enabling text communication. The agent application 314 facilitates secure communication through encryption, and allows the agent to supplement text communication with images 436 or interactive slides 438. The agent application 314 further provides status information to the customer as to whether the agent is currently online or offline. More description of the agent application 314 is provided in the discussion of Figure 5.
Figure 4 is a block diagram illustrating the details of a typical server computer 106 of the present invention. The server computer 106 includes a CPU 402 for executing instructions and performing operations therein, miscellaneous input/output devices 410 for user-computer interaction, memory 412, and a network interface 424 connected to the network 110. These components intercommunicate through data bus 426.
The server memory 412 comprises a Java™ runtime environment 428 providing a Java™ platform on which to run a server application 414, for enabling and managing the communication between customer client computer 102 and agent client computer 104. The server application 414 functions include launching user interface windows on the client computers, facilitating the applet download operations to the client computers 102 and 104, and facilitating administrative functions through the administrator application.
An operating system 422 (e.g., UNIX or Windows®) for managing other programs in the computer, an HTTP (Hypertext Transfer Protocol) web server 432 program for serving the files that form web pages to web users, and web pages 430 are stored in memory 412 . Images 436 (e.g., GIF or JPEG) and slides 438 (e.g., GIF or JPEG) are also stored on server 106 and are available to the agent for delivering information to the customer. The server memory 412 further comprises a call button applet 214, a communication applet 216, and a voice communication applet 218, which are downloaded from the server computer 106 to the client computers 102 and 104 when requested by the client users through client computers 102 and 104. Call button applet 214 is embedded within certain web pages 430 from which communication initiation is intended. When a web page containing a call button applet 214 is downloaded by a user at a customer client computer 102, an interactive call button icon (not shown) on the customer client computer monitor 228 is displayed. The call button icon is capable of indicating whether an agent is connected to the network and able to receive calls. The call button can also be a call-routed button. A call from a customer client computer 102 to an agent client computer 104 may be initiated by the customer clicking on the call button icon. The agent may accept a communication request form the customer through the agent application 314 interface. Once the call has been accepted, the call button applet 214, running on the customer client computer 102, instructs the customer web browser 220 and the agent web browser 320 to download the communication applet 216 from a server and execute the applet 216 to enable communication. Text exchange and all other non-voice communication between the customer client computer 102 and the agent client computer 104 is enabled upon loading and execution of communication applet 216 on the customer client computer 102 and the agent client computer 104. In the implementation described, image and interactive slide exchange is initiated by the agent using a communication control tool component of the agent application 314 running on the agent client computer 104. Upon initiation by the agent through appropriate interaction with the communication control interface (see Figure 7), images 436 and/or interactive slides 438 are downloaded from the server 106 for display at the customer client computer 102 and the agent client computer 104. Those skilled in the art will appreciate, however, that the present invention may also be employed to send images 436 and slides 438 to the agent client computer 104 at the initiation of a customer at the customer client computer 102.
Voice communication applet 218 is then downloaded from the server 106 to the customer client computer 102 and the agent client computer 104 upon initiation by either party through interaction with a graphical button on respective user interfaces, thereby instantaneously enabling real-time voice communication between the customer and the agent over the network 110.
Figure 5 depicts an embodiment of the interaction that occurs between the customer client computer 102 (Figure 1 ), the agent client computer 104 (Figure 1 ), and the server computer 106 (Figure 1 ) in implementing text, image and voice communication through a web-based interface according to the present invention. For reference value, it is noted that reference numerals corresponding to activities on the customer client computer 102 are even- numbered and lower than 550, reference numerals corresponding to activities on the agent client computer 104 are odd-numbered, and reference numerals corresponding to activities on the server computer 106 are even-numbered greater than 550.
The implementation described with reference to Figure 5 envisions a customer browsing the web searching for a particular product or type of product and clicking a hyperlink or typing a URL (Uniform Resource Locator) pursuant to block 502 in the appropriate web browser 220 field, to download and open the web pages 430 from the web server 432 of the server computer 106. In this example, the web page (HTML document) 430, which may reside on server 106 or a different network server, is embedded with the call button applet 214 tag. Consequently, downloading and opening the web page 430 causes downloading of the call button applet 214 from the server 106 to the customer client computer 102. The call button applet 214 then executes within the customer web browser 220, resulting in display of an interactive call button icon pursuant to block 504 on the customer's computer display 228. As discussed above, this interactive icon has the capability of indicating to the customer whether the agent is online or offline (if a single agent) or indicating that the call is being routed to the next available agent (if more than one agent). The server functions of downloading the web page 430 and call button applet 214 are indicated in block 552.
If and when a customer wants to initiate communication with an agent, the customer clicks on the interactive call button icon as depicted in block 506. Upon detecting a mouse click on the call button icon, the call button applet 214 sends a request from the customer client computer 102 over the network 110 to the server computer 106 requesting communication with an agent. The server 106, in turn, transmits a query to the agent client computer 104 regarding whether the agent desires to accept the call.
Upon acceptance of the call by an agent through interaction with the agent application 314, pursuant to block 501 , the server computer 106 downloads the communication applet 216 to the customer client computer 102 and to the agent client computer 104. The communication applet 216 then interacts with the agent application 314 to display a GUI 600 (see Figure 6) on the agent's display 330. Communication applet 216 also executes within the customer web browser 220, resulting in display of a user interface on the customer computer display 228. The customer and the agent may then conduct non-voice communications over the network 110 using the communication applet 216 running on the customer client computer 102 and the agent client computer 104 respectively, as shown in Figure 1A. This non- voice communication is represented by block 554 of Figure 5. For the presently preferred embodiment the communication applet 216 is configured to establish non-voice communications using the TCP/IP protocol. In cases where a TCP/IP link cannot be established (e.g., where communication applet 216 is operating inside of a firewall) communication applet 216 is preferably configured to establish non-voice communications using the HTTP protocol. This process is dynamic so that TCP/IP is tried first and HTTP is tried only when TCP/IP fails.
As discussed above and pursuant to block 503, in addition to exchange of text, the agent may also initiate exchange of images 436 and interactive slides 438. Image or slide exchange is initiated by the agent by clicking on the appropriate tab of the communication control tool interface (see Figure 7) on the agent client computer 104. The agent may then choose an image from a list of available images stored on the server computer 106 for transmittal to and display upon the customer client computer 102 and the agent client computer 104. The agent may also conduct an interactive slideshow with the customer as further described in Appendix C. As part of this slideshow, the agent has the ability to pan or otherwise select the areas of a slide being viewed. The agent can also perform other image manipulations, such as zooming. The image manipulations are transferred, in real-time, to the agent client compute 104. In effect, both agent and client see the same image. This allows the agent to interactively guide the customer though the slideshow.
Block 505/508 depicts that both the customer and the agent have the capability of initiating voice communication by clicking the appropriate button icon on their respective interfaces. For example, clicking on a voice communication button 608 (Figure 6) results in a call to the server 106 to load the signed voice communication applet 218 for execution on the client computers 102 and 104 and to facilitate the launch of a new window at each client computer. Refer to Appendix B for available voice communication modes and settings. As depicted in block 507, if a customer initiates voice communication then the agent will be prompted to accept or reject the voice communication, whereas if the agent initiates the voice communication then voice communication is immediately established. Utilizing Java™ network classes, peer-to-peer voice over internet protocol (VoIP) communication is established through a transfer protocol for exchanging user datagram protocol (UDP) packets, depicted in blocks 509 and 510. Refer to Appendix C for the operation and technical implementation of the VoIP communication. Once the server application 414 performs operations necessary for establishment of VoIP (i.e. identifying customer, identifying appropriate codecs [reference Appendix C], locating computer peripherals, etc.), the server application 414 is no longer necessary for supporting voice communication between the customer and the agent. Indeed, after the server application 414 in conjunction with the voice communication applet 218 have established a voice communication channel, the customer client computer 102 and agent client computer 104 then communicate directly without the necessity of routing the voice communication through the server 106, as depicted in Figure 1 B. The use of peer-to-peer communication between the customer client computer 102 and agent client computer 104 works best for cases where an agent is interacting with a single customer. In some cases, individual agents will communicate with multiple customers in a conference call type of interaction. For these cases, the communication between the agent client computer 104 and the multiple customer client computers 102 is preferably routed through the server computer 106.
Figure 6 presents an exemplary agent user interface 600 which displays on the agent's display 330 upon execution of the communication applet 216. Interactive button icons are presented to provide access to various forms of communication available to the agent, including white board 602, slide show 604, secure mode 606, and voice communication 608. The agent can initiate each of these communication forms by clicking the appropriate button on the interface. As depicted in blocks 556 and 503, the agent is then able to actively deliver to the customer client computer 102, images and/or interactive slides that have been previously stored on server 106. Figure 7 presents an exemplary agent user interface 700 which displays on the agent's display 330 upon the agent's appropriate interaction with the agent application 314 executing on the agent client computer 104. Interface 700 facilitates non-voice image and interactive slideshow communication as described above.
One advantage of the invention is the availability at the customer client computer 102 of instantaneous voice communication between the customer and the agent. It is not necessary for the customer to download and install a large plug-in stand-alone software application or to have third-party software (e.g., Microsoft Netmeeting®) already installed and configured to conduct voice communication over the network 110. Furthermore, if the customer and the agent choose not to employ the voice capability, their respective computers 102 and 104 are not burdened by the unnecessary use of system resources by a voice over Internet protocol application. Those skilled in the art will recognize the advantages over the prior art of the system and method described herein. The advantageous features include the availability to a customer of instantaneous VoIP communication through use of thin applets executing within a web browser, without the requirement of installing large, resource intensive software applications and without the requirement of computer system reconfiguration, plus the separation of the VoIP capability from the text capability thereby avoiding unnecessary system resource usage.
Other embodiments will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. It is intended that the specification and examples be considered as exemplary only, with a true scope of the invention being indicated by the following claims and equivalents. CailSite AppSets
Install the Client Applets on the web server
The CailSite Applet's files are packaged with the CailSite Server in the CailSite archive. If you have not installed the server yet, unpack the CailSite Archive before proceeding. If your web server runs on a Windows system, click here. If your web server runs on a UNIX system, click here.
The CailSite Applets files are located in the applet subdirectory of Callsite directory on your web server : http://www.yourdomain.com/callsite/applet
The applet directory contains the following :
• Pager.class : The Button Applet that will be added to the Agent's web page that customer's call him or her from.
• CallSite.jar : The archive file to speed up CailSite applet download (for Netscape users).
• CallSite.jar : The archive file to speed up CailSite applet download (for Explorer users).
• VoiceApplet.jar : The archive file with the client Applet for voice communication (for Netscape users).
• VoiceApplet.cab : The archive file with the client Applet for voice communication (for Explorer users).
• Various .class Applet files applet files that are called by the Button Applet.
Note : For the CailSite System to work, the Applet's files NEED to be on the same web server as the CailSite Server.
Figure imgf000015_0001
k CailSite Applets
Add the Button Applet to html Pages
Assuming that John Doe at your company has a Listener installed and running, you can add the following Applet code to any Web page that you want him to be called from. Substitute domain name, full name, and user name accordingly.
Those are the mandatory information, but there is a lot of additional parameters to set the behavior of CailSite Buttons and Communication Applets. See the Configuration section.
<APPLET
CODE="Pager.class"
CODEBASE="http://www.mydomain.com/caIlsite/appIet"
WIDTH = 100 HEIGHT=20
ALIGN =bottom>
<PARAM NAME=fullName VALUE="John Doe">
<PARA NAME=userName VALUE="jdoe">
</APPLET>
Warning : userName value MUST be in lowercase
To test your CailSite system, load the page containing the above Applet code into any Web browser.
The CailSite client Applet Button will appear indicating that John Doe is online. To call John Doe and establish communication with him, just click on the button.
You can place the HTML applet code on any page, even if it's not located within the same directory as the CailSite package. You can even place it on a page that resides on a different server or site.
CailSite Applets
CailSite Applets Parameters o configure the Button and communication Applets, you have to modify their parameters in the html pages either manually or automatically by using the Admin application.
Here are described all the parameters with sample values.
Button's parameters shared by simple calls and call routing
The following parameters are used to set the behavior of CailSite call button's inside Web pages: name="port" value="46680"
Communication port used by the CailSite server. Default port is 46680. name="autoPage" value="true"
If the value is true : the button Applet will check the Agent status (Online/Offline) every minute. If the value is false : the user will have to reload the page where the button is to see if the Agent status has changed. name="webmaster" value="webmaster@netdϊve.com"
Agent webmaster's email. name="picture" value="/caUsite/appIetPict/callButton.gif"
Relative path to the picture displayed on the button (web site directory is considered as root directory).
Figure imgf000017_0001
vaIue="CIick to call"
Text that is displayed on the Button if there is no picture. name="wakeUp" value="http:// w .mydomaϊn.com/caHsite/startcs.cgϊ"
Path to startcs.cgi script.
This parameter is used in conjunction with the server's 'Timeout' variable. It identifies the URL of a CGI script that starts up the server program. This allows for unattended but discontinuous operation of the server, which can be useful to conserve system resources or when running large tasks during off hours.
Button's parameters in case. of sϊmpjejcall
To configure a Button Applet to call a specific Agent directly, use the following parameters : name="fullName" va!ue="John Doe"
Agent's full name name="userName" vaIue="john"
Agent's user Login name.
Warning : username is case sensitive. This name must exactly match the name of the Agent that was created by the Admin or was later set by the Agent himself and MUST be in lowercase Button's parameters in case of CalI_ outi.ng (Patent Pending)
You can configure a CailSite Button to call a group of Agents instead of a single Agent. In this case, customers calls are automatically routed to the next available Agent. While the CailSite system is looking for an available Agent, some images (ad banners) can be displayed to the customer.
Use the following parameters to configure the Button Applet to call a group of Agents : name="group" value="netdive" the server-side group name (see the Call Routing section of the server guide). name="groupName" value="NetDIVE team" the groupname that is displayed to the customer. name="group ail" value="support@netdive.com" the group email address.
While the CailSite system is looking for an available Agent, some images can be displayed to the customer. To specify the images to display while the customer is waiting, use the following parameters : name="waitImgSϊze" value="478x70"
Size of the images. name="waitlmgl" vaIue="appletPict/ads/adl.gϊf|3" name="waitlmg2" va1ue="appIetPϊct/ads/ad2.gϊfl3" name="waitlmg3" value="appIetPict/ads/ad3.gif|4" name="waitlmg4" value="appletPict/ads/ad4.gif|4"
Images names, location and displaying duration in seconds.
You can specify as much images as you want by raising the parameter name of one each time.
Customize the client Applets interface
To customize the Button and Communication Applets colors, pictures and texts, use the following parameters : name="background" value="192:192:192"
Color of the Button and Communication Applets background color in RGB values (0 to 255). name="foreground" value="0:0:0"
Color of the Button and Communication Applets foreground (text, button labels) color in RGB values.
Tip : If you choose a dark background, choose a light foreground, and vice versa. name="buttonBorderStyle" value="BIG_RELIEF" Style of the Communication Applet buttons display. You can choose between : BIG_RELIEF, MACOS, RELIEF, BIG_BEVEL, ROUNDED, BEVEL, WIN311, NO_BORDER.
BIG_RELIEF MACOS Ite≤testi^B RELIEF ROUNDED WIN311
Figure imgf000019_0001
name="chatWe!comeMsg" value="Welcome to NetDIVE !!!\nwww. netdive.com"
Title displayed when the user enters the Communication Applet. Use \n to start a new line. name="chatHeIp sg" value="This message can be personalized. \nlt can have several lines."
Message displayed when the user enters the Communication Applet. Use \n to start a new line. name="chatButtonColor" value="90:190:180"
Communication Applet buttons colors. name="chatBgCoIor" value="90:190:180"
Color of the chat area (where the messages are displayed) background. This color should be light since messages color is black.
Parameters to customize the information form :
You can modify the information form by adding / removing some fields, changing the picture and the texts that are displayed.
Use the following parameters to customize the information form : name="wϊthForm" value="true" if the value is true : the user will have to fill the information form before calling the Agent (or group). if the value is false : the user will call the Agent (or group) directly when he clicks on the button. name="photo" vaIue="/caIlsite/appletPict/photo.gif"
Path to the Agent's picture (server directory is considered as root directory). name="resume" value="Sales Manager"
A short description of the Agent or the group. Use \n to start a new line. name="formComment" va!ue="PIease enter the following information :"
Text to display at the form top. name="forml" value="TextField |name]Your name :" First form element. name="form2" vaIue="TextFϊeldl email I Your email :"
Second form element. name="form3" value="TextFϊeldl company! Your company :"
Third form element.
You can specify as much as form elements as you want (incremented from 1 to n).
Each form value has to be specified as following :
ElementType j Label displayed on paging window [ Label displayed to users.
The possible form elements are :
• TextFϊeld
• TextArea
• CheckBox
• Separator (it doesn't need any labels)
An example :
<PARAM NAME="FORMl" VALUE="TextField|name| Your name :">
<PARAM NAME="FORM2" VALUE="TextField|emaillYour email :">
<PARAM NAME="FORM3" VALUE="TextField| companyiYour company :">
<PARAM NAME="F0RM4" VALUE="Separator">
<PARAM NAME="FORM4" VALUE="CheckboxlSalesInfol Click here if you need sales info">
<PARAM NAME="FORM3" VALUE= "TextArea 1 comments! Comments :">
Voice Chat Application
Quick Start o activate CallSite's Voice feature (Patent Pending) :
1. Click on the Voice communication button |
2. A Web browser will launch which will load the applet that will enable Voice communication. After a few seconds the system will indicate that the "Voice communication is Activated".
3. Hold down the big green button and start speaking.
Thats how easy and instantaneous CallSite's Voice communication feature is.
Please note that when you initially enable Voice communication, the default Voice settings are in effect which are:
1 - Ji_rnode of communication 2. 33.6 Kb/Sec bandwidth 3- 1 second Buffer length
The Agent can change these default settings by clicking on the Set Voice Preferences button
■Set voice preferences.
Refer to Voice Communication Modes and Advanced Voice Features for details about the Voice Settings.
NOTE: If a Customer initiates Voice communication then the Agent will be prompted to Accept or Reject Voice communication. If an Agent initiates Voice communication then it is immediately established. When the Customer requests Voice communication you will be notified in the text dialog area with a notice as illustrated below :
allSite '■- Voice communication ISj,
■john wants to engage voice communication with you. f;f'
■BTifrHfll
Also Voice communication is available only for customers with Windows 95/98 or NT and IE 4.0 or later or NS 4.0 or later Web browsers. Toward this CailSite allows you to instantly check the Customer's ability to engage in Voice communication. To do this:
• Click on the Customers name in the User list
• Click on the Info button under the User list
CailSite will then indicate to you whether the Customer is capable of engaging Voice communication or not. Voice Chat Application Switching between Hands-Free Mode &. CB Mode o switch between "Hand free mode" and "CB mode" :
1 . SfWM ||f^ Click on the "Set voice preferences" button to open the voice preference window.
2. click on the "Stop sound" button since settings can't
Figure imgf000022_0001
be modified if sound is activated
3. Hand Free mode Check or uncheck the "Hands Free mode" option
4. Click on the "Start sound" button
Using CailSite in CB Mode
CB is the default mode for CallSite's voice feature. In CB mode, a button is added to the CailSite window to control transmission. To speak, click and hold this button. Release the button to stop talking and to let the other party to speak. When the other party is speaking, the Voice button displays 'Receive'.
Figure imgf000022_0002
Using CailSite in Hands-Free Mode
In hands-free mode, the voice system continually monitors your microphone and transmits your voice whenever you speak, and automatically stops whenever you stop speaking.
Upon establishing a hands-free mode voice conversation, the voice Applet displays two monitor bars. The bar on the left indicates how loud you are speaking (transmitting). The bar on the right indicates the loudness of the voice that you are receiving (receiving).
Figure imgf000023_0001
The bar becomes red if either party is speaking too loudly, causing the sound quality to be degraded. In such case, the person speaking too loudly needs to lower the input gain on the microphone using the Windows control panel (Click on the "Sound volume" button).
Voice Chat Application Advanced Voice communication Settings
Cp.dec settings Error correction setting Buffe resetting ou may select a custom voice setting by following these 4 steps :
1. Set vbicepreference Click on the "Set voice preferences" button to open the voice preference window.
2. Then click on the "Stop sound" button since settings can't be modified if sound is activated 3. menus to modify the settings
Figure imgf000024_0001
button
The voice settings menu contains shortcuts to settings that work well in three common configurations :
• low bandwidth Internet dial-up connections
• high bandwidth Internet dial-up connections
• ISDN, Tl or Intranet connections.
We recommend custom settings only if the performance of the default settings seems less than optimal.
Transmitting voice over the Internet consumes large amounts of bandwidth. Using data compression, an intelligible conversation can be held over a common modem connection but at the expense of some of the sound quality. It is possible to carry voice over a 14.4 Kbps modem, although a higher bandwidth connection will yield a voice quality that is closer to the original.
Codec Setting
The choice of a sound codec is critical to obtaining the best voice quality. The Options window displays the bandwidth effectively used by the voice system according to the settings you have chosen. If the setting is larger than (or even too close to) the maximum bandwidth permitted by your Internet connection, you may experience breaks in transmission.
Default Codec Settings :
• Low bandwidth for dial-up connections of 14.4Kb to 28.8Kb Medium bandwidth for dial-up connections of 33.6Kb to 64Kb High bandwidth for ISDN or Tl Connections
Error Correction Setting
If you are experiencing low voice quality, it is possible that voice data is being lost due to network congestion. This can be remedied using CallSite's error correction techniques, which increases the reliability of your connection at the expense of some bandwidth.
Buffer Setting
If you are experiencing breaks in transmission, it might be due to network congestion or to a connection which does not transmit data smoothly. Choosing larger buffer values can help considerably.
CailSite Text Chat Application
Overview
The picture below shows the different components of the text chat client.
The chat window is resizable.
CailSite menu Sub ject area C hat area Communi cation control buttons
Figure imgf000026_0001
The picture below shows how the chat area slider works.
Figure imgf000026_0002
Figure imgf000027_0001
Messages logs :
The text messages are stored in a file called TextLog.txt located in the Agent Application directory.
The secure messages are not stored.

Claims

WHAT IS CLAIMED IS:
1. A method for implementing network-based communication between a plurality of users, comprising the steps of: providing a first machine-executable application, whereby the first application presents an interactive icon to the first user; providing a second machine-executable application to the first user and to a second user in response to a first action by the first user, whereby the second application enables network-based communication between the first and second users; and providing a third machine-executable application to the first and second users in response to a second action by the first or second user, whereby the third application enables network-based audio communication between the first and second users.
2. A method for network-based communication between a user and an agent, the method comprising the steps of: activating an applet to process an interactive command received from a user; providing, by the applet, communications options to the user, the communications options including options for voice and non-voice communication; and establishing, by the applet, communication between the user and the agent in response to selection by the user of one of the communication options.
3. A method as recited in claim 2 wherein the establishing step further comprises the step of establishing non-voice communication between the user and the agent passing through an intermediate server computer.
4. A method as recited in claim 3 wherein the non-voice communication between the user and the agent includes an interactive whiteboard.
5. A method as recited in claim 3 wherein the non-voice communication between the user and the agent includes a slide show.
6. A method as recited in claim 3 wherein the establishing step further comprises the steps of: attempting to establishing non-voice communication using the TCP/IP protocol; and establishing non-voice communication using the HTTP protocol if the attempting step fails.
7. A method as recited in claim 2 wherein the establishing step further comprises the step of establishing peer-to-peer voice communication between the user and the agent.
8. A method as recited in claim 7 wherein the peer-to-peer voice communication is performed using the UDP/IP protocol.
9. A method as recited in claim 2 wherein the applet is a Java™ applet.
10. A data storage medium having machine-readable code stored thereon, the machine-readable code comprising instructions executable by an array of logic elements, the instructions defining a method comprising the steps of: activating an applet to process an interactive command received from a user; providing, by the applet, communications options to the user, the communications options including options for voice and non-voice communication; and establishing, by the applet, communication between the user and the agent in response to selection by the user of one of the communication options.
11. A data storage medium as recited in claim 11 wherein the establishing step further comprises the step of establishing non-voice communication between the user and the agent passing through an intermediate server computer.
12. A data storage medium as recited in claim 11 wherein the establishing step further comprises the step of establishing non-voice communication between the user and the agent passing through an intermediate server computer.
13. A data storage medium as recited in claim 11 wherein the non- voice communication between the user and the agent includes an interactive whiteboard.
14. A data storage medium as recited in claim 11 wherein the establishing step further comprises the steps of: attempting to establishing non-voice communication using the
TCP/IP protocol; and establishing non-voice communication using the HTTP protocol if the attempting step fails.
15. A data storage medium as recited in claim 10 wherein the establishing step further comprises the step of establishing peer-to-peer voice communication between the user and the agent.
16. A data storage medium as recited in claim 15 wherein the peer- to-peer voice communication is performed using the UDP/IP protocol.
17. A data storage medium as recited in claim 10 wherein the applet is a Java™ applet.
PCT/US2000/028554 1999-10-14 2000-10-13 Web-based communication system and method WO2001027784A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU80248/00A AU8024800A (en) 1999-10-14 2000-10-13 Web-based communication system and method

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US15961999P 1999-10-14 1999-10-14
US60/159,619 1999-10-14
US51311100A 2000-02-25 2000-02-25
US09/513,111 2000-02-25

Publications (1)

Publication Number Publication Date
WO2001027784A1 true WO2001027784A1 (en) 2001-04-19

Family

ID=26856130

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/028554 WO2001027784A1 (en) 1999-10-14 2000-10-13 Web-based communication system and method

Country Status (2)

Country Link
AU (1) AU8024800A (en)
WO (1) WO2001027784A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004017601A2 (en) * 2002-05-17 2004-02-26 Groove Networks, Inc. Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system
CN109600298A (en) * 2018-11-15 2019-04-09 安徽信果网络科技有限公司 A kind of mobile phone interface simulative display system based on wechat small routine

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6009469A (en) * 1995-09-25 1999-12-28 Netspeak Corporation Graphic user interface for internet telephony application
US6130933A (en) * 1996-02-02 2000-10-10 Genesys Telecommunications Laboratories, Inc. Apparatus and methods for coordinating telephone and data communications

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6009469A (en) * 1995-09-25 1999-12-28 Netspeak Corporation Graphic user interface for internet telephony application
US6130933A (en) * 1996-02-02 2000-10-10 Genesys Telecommunications Laboratories, Inc. Apparatus and methods for coordinating telephone and data communications

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004017601A2 (en) * 2002-05-17 2004-02-26 Groove Networks, Inc. Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system
WO2004017601A3 (en) * 2002-05-17 2004-05-13 Groove Networks Inc Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system
US7139798B2 (en) 2002-05-17 2006-11-21 Groove Networks, Inc. Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system
US7562115B2 (en) * 2002-05-17 2009-07-14 Microsoft Corporation Method and apparatus for connecting a secure peer-to-peer collaboration system to an external system
CN109600298A (en) * 2018-11-15 2019-04-09 安徽信果网络科技有限公司 A kind of mobile phone interface simulative display system based on wechat small routine

Also Published As

Publication number Publication date
AU8024800A (en) 2001-04-23

Similar Documents

Publication Publication Date Title
US8477919B2 (en) Interactive content for click-to-call calls
US8037191B2 (en) Low-level remote sharing of local devices in a remote access session across a computer network
EP1559004B1 (en) Session coupling
US7133895B1 (en) System and method of integrating collaboration systems with browser based application systems
US7552172B2 (en) Multi-windowed online application environment
US20080132218A1 (en) Method and Apparatus for Starting Applications
JP2004519747A (en) Methods and systems for network-based application adaptation, diagnostics, optimization and coping techniques
US20030097405A1 (en) Methods and systems for integrating with load balancers in a client and server system
US20070220111A1 (en) Personal communications browser client for remote use in enterprise communications
US7020700B1 (en) Client side socks server for an internet client
JP5023082B2 (en) Pushing asynchronous messages to web browsers
US6907450B1 (en) Method and apparatus for the synchronized representation of network contents
US20030041119A1 (en) Pervasive, personal data interactivity over voice-grade circuit-switched cellular networks
US20050171999A1 (en) Methods and apparatus for utilizing user software to communicate with network-resident services
JP2000148677A (en) Communication method, communication system and recording medium storing software product for controlling communication
WO2001027784A1 (en) Web-based communication system and method
WO2023109045A1 (en) Webrtc connection method and system
JP2001358745A (en) Method and system for providing adapted contents
KR20010006794A (en) Application presentation synchronizer
US20070220112A1 (en) Adaptively predicting and modifying a communications user interface
US10356133B2 (en) Automatic call initiation in response to selecting tags in electronic documents and applications
US20050015465A1 (en) System and method for client aware request dispatching in a portal server
KR200195541Y1 (en) Gateway server providing web-call service and web-call system
WO2006010193A1 (en) Voice calls over the internet
Yeo et al. A Multimedia Call Centre on the Internet

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase

Ref country code: JP

DPE2 Request for preliminary examination filed before expiration of 19th month from priority date (pct application filed from 20040101)