WO2001040963A1 - Internet service system - Google Patents

Internet service system Download PDF

Info

Publication number
WO2001040963A1
WO2001040963A1 PCT/US2000/032153 US0032153W WO0140963A1 WO 2001040963 A1 WO2001040963 A1 WO 2001040963A1 US 0032153 W US0032153 W US 0032153W WO 0140963 A1 WO0140963 A1 WO 0140963A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
assistant
concierge
communication
web site
Prior art date
Application number
PCT/US2000/032153
Other languages
French (fr)
Inventor
Elliott S. Weissbluth
Jed N. Weissbluth
Shaugn M. Davenport
Jason T. White
James G. Cates
Joshua M. Berne
Amy W. Au
Original Assignee
Lightflow.Com, 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 Lightflow.Com, Inc. filed Critical Lightflow.Com, Inc.
Priority to AU17936/01A priority Critical patent/AU1793601A/en
Publication of WO2001040963A1 publication Critical patent/WO2001040963A1/en

Links

Classifications

    • 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
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Definitions

  • the present invention relates in general to an Internet service system, and in particular to an Internet service system which provides Internet users with real-time communication with an assistant, customer service representative or concierge who facilitates ease of use of the Internet, assists the user in creating personal user web pages and facilitates user transactions through the Internet.
  • the Internet has created a new electronic marketplace in which businesses are finding it difficult to turn Internet shoppers (i.e., people who access a web site to find product or service information) into Internet buyers (i.e., people who access a web site and buy a product or service).
  • Internet shoppers i.e., people who access a web site to find product or service information
  • Internet buyers i.e., people who access a web site and buy a product or service.
  • customer service is the primary reason customers return to a site;
  • key to growing e-commerce profits is to maintain customer loyalty by offering live online customer service from representatives;
  • 63 percent of Internet users will not buy over the Internet until they receive more human interaction; and
  • the Internet service system of the present invention overcomes the above problems associated with the Internet by providing: (a) each user of the system with easily accessible real-time communication with an assistant or concierge who is part of a team of Internet assistants or concierges who are dedicated to assisting the system users in using the Internet; (b) users of a web site with easily accessible real-time communication with web site assistants, customer service representatives ("CSRs") or concierges who are dedicated to assisting the web site users to obtain information from the web site, consummate transactions through the web site, and provide other customer service through the web site; and (c) users of a web site with one or more user specific personal pages which facilitate use and re-use of the web site, consummation of transactions via the web site and communication of information between the users and the business via the business web site.
  • CSRs customer service representatives
  • the Internet service system of the present invention is referred to herein for brevity as the "system” and the user's dedicated or personal web site or page, home page, web site or Internet desktop is referred to herein as the "user's web site,” “dedicated web site” or “personal web site” or “personal page.”
  • the scope of the invention is not intended to be limited by such abbreviations or any other abbreviated terms used herein to describe the present invention, components or processes thereof.
  • One embodiment of the Internet service system of the present invention provides each user or group of users with a general dedicated or personal web site, Internet desktop or personal web page.
  • the Internet service system enables the user to access through this personal web site or page to contact a member of a team of Internet concierges to obtain assistance at any time desired by the user.
  • the user's web page includes a communication button or link which the user can click on at any time to reach an Internet assistant or concierge provided by the system of the present invention.
  • the system establishes real-time audio and visual communication between the user and an assistant or concierge through a communication page or dialog box which the system displays on the user's computer screen adjacent to the user's web page.
  • the system preferably employs an architecture that enables it to be adapted to any video conferencing or video client system standard. In this way, the system establishes such communication between the user and the assistant or concierge.
  • the system of the present invention preferably employs broadband technologies to increase the speed of data transmission between the user and the assistant to facilitate such real-time two-way audio and at least one- way video streaming (i.e., system to user), although it should be appreciated that the system is or may be adapted to work through currently available modem communication technology (i.e., 56k dial-up).
  • the audio communication is fully duplexed to enable the assistant or concierge and the user to verbally communicate simultaneously.
  • the system is preferably adapted to reduce the video feed and to maintain the audio feed or communication intact.
  • the system of the present invention is capable of analyzing connection quality and is preferably adapted to vary the fidelity of the audio and video feeds in order to maintain the best audio communication.
  • the system simultaneously establishes conventional chat or textual communication between the user and the assistant or concierge through the communication page, alternatively referred to herein as the concierge communication page.
  • the textual communication enables the user and assistant or concierge to communicate.
  • the system enables the user to contact an Internet assistant or concierge by conventional or cellular telephone communications.
  • the system When communication is established between the user and the assistant or concierge, the system displays the concierge communication page on the user's computer screen adjacent to the user's web page.
  • the system may also display a timer on the user's screen to enable the user to determine how long the user has been in communication with the assistant or concierge.
  • the concierge communication page includes a video box or window for displaying the video of the assistant or concierge and textual boxes or windows for displaying the textual communications between the user and the assistant or concierge.
  • the system provides each assistant, CSR or concierge with a working terminal and a user emulation terminal.
  • the working terminal runs an assistant, CSR or concierge application which provides the assistant or concierge information regarding the user and the user's web site, and enables the assistant or concierge to build or change the user's web site or redirect the user's browser.
  • the working terminal enables the assistant or concierge to textually communicate with the user and includes an audio-visual conferencing client which enables the concierge to orally and visually communicate with the user.
  • the emulation terminal emulates the user's computer (i.e., the browser on the user's computer).
  • the user emulator terminal displays what the user is viewing on the user's computer such as the user's web site displayed by the user's browser and the concierge communication page displayed by the user's browser.
  • the system of the present invention thus enables the assistant or concierge to see exactly what the user sees on the user's computer through the user emulator terminal.
  • the system and specifically the assistant application enables the assistant or concierge to build, change or modify the user's web site or redirect the user's browser to another web site and to see the exact changes to the user's web site on the user emulator terminal.
  • This enables the assistant or concierge to assist the user in real-time to use the Internet and to customize the user's web site or personal web page.
  • the user's web site thus evolves in real-time as the user describes to the concierge the desired services on the user's web site, the desired information and links to other web sites on the user's web site and the desired look and feel of the user's web site.
  • the system thus enables the user and the assistant or concierge to simultaneously view shared data and enables the concierge to see and control the user's HTML pages.
  • the system provides the assistant, CSR or concierge with a single terminal which performs the combined functions of both the working terminal and emulation terminal.
  • the assistant or concierge accesses the assistant application, communicates with the user and views the emulation of the user's computer through a single computer terminal.
  • the system enables an assistant or concierge to access and change the user's web site when the user is not connected to the assistant or concierge or the user's web site. For instance, if the user hears about a new web site on the radio in the user's car, the user can call the system, contact an assistant or concierge and have the assistant or concierge place a link to the desired new web site on the user's web site.
  • the user can have the assistant or concierge conduct other research for the user and place the results on the user's web site.
  • the user can access this information at the user's convenience.
  • the assistant or concierge could provide more complex research results to the user via e-mail or other suitable result delivery tools (i.e., facsimile, mail, etc.).
  • the Internet service system of the present invention including the user's general or dedicated personalized web page is available regardless of the mechanism the user uses to access the Internet (i.e., dial-up access, DSL, cable, wireless, satellite or other technology).
  • the system can be adapted to route users to specific assistants or concierges (if available) to increase the likelihood that each user communicates with the same assistant or concierge or limited number of assistants or concierges on a regular basis to develop personalized relationships between the user and the designated assistants or concierges which dramatically increases the user's comfort level and therefore increases the user's use of the Internet.
  • the system enables the user to feel comfortable using the Internet and specific web site implementing the system of the present invention as discussed below because the user knows there is an assistant or concierge waiting to assist the user if the user needs such assistance.
  • the system can also store information regarding the interest of the users and passwords of the user which enables the assistants or concierges to suggest, offer and provide Internet services to users.
  • Each Internet assistant or concierge provides continuous friendly assistance and customer service to the users of the system. It should be appreciated that the assistant or concierge can communicate with the user in English or alternatively, in other languages as desired by the user. If the user indicates that the user desires communication in a designated language, the system of the present invention can be adapted to assign assistants or concierges fluent in such language to assist such user or provide translation software to enable English-speaking assistants or concierges to communicate in foreign languages.
  • the system can be adapted to employ voice recognition systems to capture user request and corresponding assistant's or concierge's responses to create a database which eventually enable users to ask a question of an automated or virtual concierge and receive the same response that was previously provided to other users making the same request.
  • the system also can be adapted to dynamically generate a web page based on user profiles.
  • the system could be adapted to create a database which includes links and other information users of certain profiles have on their personal or dedicated web sites.
  • the system could be adapted to determine the user profiles of new users (such as the sex, address, age and income) and generate a suggested web page for the new user based on this information, the database and other demographic information.
  • the system includes an assistant application which enables the assistant or concierge to communicate with the user, to edit the user's web page and to perform other functions of the system of the present invention as mentioned above.
  • the assistant application includes a login window which requires the assistant or concierge to enter his or her username and password to use the assistant application.
  • the assistant application presents the concierge with a main window prior to connection with a user which provides the assistant's or concierge's personal identification and other information unique to the assistant or concierge.
  • the assistant application updates the main window of the assistant application viewed by the assistant or concierge to indicate the user's personal identification, web site information and other information which may be needed for the assistant or concierge to assist the user.
  • This main window displays the textual communication between the concierge and the user in the user text box or window and the assistant text box or window.
  • the assistant or concierge can type in a textual message to the user in the entry text box or window of the main window.
  • the edit window of the assistant application enables the assistant or concierge to change the user's web site as indicated above.
  • the edit window includes a tree abstraction or structure of objects that are present on the user's web site. As explained below, the concierge highlights the object in the tree abstraction to obtain the information which is unique to the specific object highlighted.
  • the assistant application By highlighting the appropriate objects in the tree abstraction, the assistant application produces the relevant information in the edit window which enables the assistant or concierge to edit such information and thus change the user's web site.
  • the assistant or concierge can make temporary changes to the user's web site, review these changes and then permanently make these changes to the user's web site. This enables the assistant or concierge to alter what the user sees on the user's web site.
  • the assistant or concierge may place the appropriate URL for candles.com in the appropriate location in the edit window. This places the link on the user's web site. To enable the user to view the link or location of the link on the user's web site, the assistant or concierge must commit to or permanently make this change to the user's web site. When the assistant or concierge commits to this change, the assistant application saves this change to the appropriate database. Upon redirecting the user's browser to the user's URL, the user will see this link on the user's web page and the assistant or concierge will see this link on the user emulator terminal.
  • the assistant application does not require highlighting the object in a tree abstraction.
  • the assistant application provides graphical representations of the user's web site. These graphical representations can be modified by selecting an item and then editing the properties of that item. For example, edits may be made to the object in a drag and drop manner. Particular attributes of an object may be accessed and changed by editing the object's properties. Such editing is achieved through a variety of ways, such as right clicking on the object to view a menu of properties of the object and selecting properties from a context menu or selecting an object and clicking the properties button in the tool bar. It should be appreciated that the assistant application could be configured in any suitable manner.
  • the user may use the system's telephone number to contact a member of the Internet assistant or concierge team as mentioned above.
  • An assistant or concierge will assist the user in initializing their computer, in learning about how to use the user's browser and in connecting to the system. Thereafter, the user may use this telephone connection at any designated time to contact an assistant or concierge.
  • the user can contact an assistant or concierge at such time.
  • the assistant or concierge can conduct the search and can place an appropriate link on the user's web page whereby the user can access that link at a convenient time for the user.
  • the system may also be adapted to enable the assistant or concierge to control (i.e., move and click) the mouse of the user. This enables the assistant or concierge to explain to the user how to perform certain functions and allows the user to watch and learn how to perform certain functions on the Internet.
  • the system could further be employed to monitor a user's use of the Internet. For instance, if a parent wanted to monitor a child's use and exploration of the Internet, the system could emulate the user's browser on the emulation terminal.
  • the assistant or concierge may communicate with the user and may redirect the user's site. It should be appreciated that an assistant or concierge monitoring such use of the Internet will preferably have a plurality of user emulator terminals or multiple windows on a single terminal to enable the assistant or concierge to simultaneously monitor a plurality of users.
  • the system could employ a file transfer protocol infrastructure or a Virtual Private Network (“VPN”) concept and infrastructure. Similar to conventional VPNs, each user accesses the user's own data via the user's web site. The system thereby enables the users to store all their contacts, e- mail addresses, calendars, word processing documents, spreadsheets, stock portfolios, banking information, pictures, and other data on their web site which the user may access from any compatible computer or Internet accessible device in the world.
  • VPN Virtual Private Network
  • the Internet service system of the present invention accordingly provides many advantages to users and potential users of the Internet.
  • One embodiment of the system generally enables each user to build or select the contents of the user's web site tailored to the user's interests without the clutter, advertisements and other obstacles currently present on many web sites and throughout the Internet.
  • one embodiment of the Internet service system of the present invention provides an easily accessible system for providing assistance to users in using the Internet; (b) substantially reduces the need for users to seek assistance from individual web site proprietors; (c) reduces the need for the users of the Internet to have experience with technology or the Internet; (d) assists users with all Internet questions, problems and requests; (e) assists users in accessing and navigating the Internet; (f) enables users to request searches on the Internet for web sites and information for the users; (g) conducts searches for users and places the results of the searches on the user's customized secure web site; (h) reviews web sites and research topics for the users thereby reducing the need for the users to conduct searches or wade through lengthy search results; (i) selects Internet features and services which suit the users' needs; (j) develops and creates customized secure web sites for users; (k) changes or modifies the customized web sites of users; (I) removes technical jargon and other obstacles from the Internet; (m) accomplishes other tasks for the users; (a) provides an easily accessible
  • a web site has a communication link to an assistant and wherein the web site is adapted to provide a personal page on the web site for each user of the site as discussed below.
  • the personal web page for a user enables pertinent information about a transaction between a user and the web site implementor such as a business to be stored and effectively communicated to both the user and the implementor.
  • This embodiment of the present invention thereby facilitates rapid and efficient information exchange and promotes communication between the user and the system implementor.
  • the system enables the assistant to help the user create a personal web page on the web site containing information of interest to the user as well as to the implementor regarding the user.
  • the user or assistant may include information, tools and links that supplements the information gleaned from the web site.
  • the user's personal page enables this information to be subsequently accessed by the user and an assistant. Access by an assistant to the information enables the assistant to immediately know and understand information (such as available products or services and price quotes) provided to the user as well as the user's interest.
  • the personal web page also creates an on going communication channel between the user and the implementor of the web site.
  • This communication channel can be used to convey further information to the user during or after a transaction (between the user and the web site implementor). This communication channel can also be used to obtain feedback from the user and answer the user's questions regarding the products or services. Moreover, this direct communication channel facilitates further transactions between the user and implementor of the web site. It is therefore an advantage of the present invention to provide an Internet service system to assist users in using the Internet.
  • a further advantage of the present invention is to provide a system for enabling businesses to interact with customers through their web site before, during and after transactions.
  • a still further advantage of the present invention is to provide a personal page for a user on a business's web site which facilitates transactions and communications between the users and the business and helps consummate transactions therebetween.
  • Figs. 1 is an illustration of an example user web site and concierge communication page provided to users by one embodiment of the Internet service system of the present invention
  • Fig. 2 is an illustration of a customized user web site of one embodiment of the Internet service system of the present invention
  • FIG. 3 is an illustration of a plurality of different tools, applications, links and files or objects which can be stored or accessed through a user web site of one embodiment of the Internet service system of the present invention
  • Fig. 4 is a schematic diagram of the network of one embodiment of the Internet service system of the present invention
  • Fig. 5 is a schematic diagram of a concierge cluster of the one embodiment of Internet service system of present invention
  • Fig. 6 is a schematic diagram of the connection between a user and concierge provided by one embodiment of the Internet service system of the present invention
  • Fig. 7 is a flowchart of the overall user interaction with one embodiment of the Internet service system of the present invention.
  • Fig. 8 is a flowchart of the concierge application initiation and connection process of one embodiment of the Internet service system of the present invention.
  • Fig. 9 is a flowchart of the concierge login process of one embodiment of the Internet service system of the present invention.
  • Fig. 10 is a flowchart of the redirection and assignment process of one embodiment of the Internet service system of the present invention.
  • Fig. 11 is a flowchart of the textual communication process of one embodiment of the Internet service system of the present invention
  • Fig. 12 is a flowchart of the audio-visual communication process of one embodiment of the Internet service system of the present invention.
  • Fig. 13 is a flowchart of the command applet process of one embodiment of the Internet service system of the present invention.
  • Fig. 14 is a flowchart of the page editing process of one embodiment of the Internet service system of the present invention.
  • Fig. 15 is a flowchart of the commit changes process of one embodiment of the Internet service system of the present invention.
  • Fig. 16 is a flowchart of the move object process of one embodiment of the Internet service system of the present invention
  • Fig. 17 is a flowchart of the add object process of one embodiment of the Internet service system of the present invention.
  • Fig. 18 is an illustration of the user login screen of one embodiment of the Internet service system of the present invention
  • Figs. 19A to 19J are illustrations of the concierge application windows provided to the concierge by one embodiment of the Internet service system of the present invention
  • Figs. 20A to 20C are illustrations of customized user web sites showing features, tools and applications which can be added to a user's web site to customize the user's web site in one embodiment of the Internet service system of the present invention
  • Fig. 21 is a schematic diagram of a network of an alternative embodiment of the Internet service system of the present invention
  • Figs. 22A through 22H are illustrations of concierge application or assistant application windows provided to the assistant or concierge by an alternative embodiment of the present invention.
  • the Internet service system of the present invention operates over and is accessible to users through the Internet, Publicly Switched Telephone Network ("PSTN”) and similar architected networks.
  • PSTN Publicly Switched Telephone Network
  • the Internet service system of the present invention can be adapted to any wired or wireless communication system or device.
  • the Internet is a cooperatively run, globally distributed collection of computer networks that exchange information via Transmission Control Protocol/Internet Protocol ("TCP/IP").
  • TCP/IP is the basic communication protocol which is the foundation of the Internet and all other protocols are built on top of TCP/IP.
  • the World Wide Web (the "web) is a hypertext information and communication system widely used on the Internet and built on top of TCP/IP.
  • Uniform resource locators are the scheme by which Internet resources are addressed on the web. URLs can point to numerous resources on the Internet, which are stored in databases on servers such as web pages, Hyper-Text Markup Language (“HTML”) documents or pages, data files, pictures, sound files, movie files and database search engines.
  • HTML Hyper-Text
  • One embodiment of the Internet service system of the present invention is adapted to simultaneously provide each of a plurality of users of the system with easily accessible real time communication with an assistant or concierge who is part of a team of Internet assistants or concierges who are dedicated to assist the users in using the Internet.
  • the Internet service system or system of the present invention is sometimes described herein primarily in relation to a single user, although the system of the present invention is adapted to be simultaneously used by multiple users.
  • an assistant, customer service representative (“CSR") or concierge are used interchangeably herein and concierge application and assistant application are used interchangeably herein.
  • CSR customer service representative
  • one embodiment of the Internet service system of the present invention includes a networked plurality series of servers including web servers 12, database servers 14, IMAP servers 16, NFS file servers 18, billing servers 20 and other servers (or services) 22 which may provide additional tools (Fig. 3).
  • the system 2 further includes a plurality concierge clusters 24 and a plurality of user computer terminals, Internet access devices, PSTN access devices or devices used to access similarly architected private networks 30.
  • the system 2 provides each user with a dedicated customizable password protected web site 4 (Fig. 1) which the user can access at any time through the Internet using a browser on the user's computer or other Internet access device.
  • the user's web site 4 may be customized at the direction of the user (by the user) with or without the assistance of the concierge.
  • the user's web site 4 includes a communication button or link 6 which the user can click on to request assistance from or communication with a concierge.
  • the system establishes real-time communication between an available concierge that has the highest probability of meeting the user's anticipated need as determined by the system using a concierge matching process as discussed below, and, preferably, with a concierge the user has previously communicated with.
  • the system 2 displays on the user's terminal a concierge communication page 8 adjacent to the display of the user's web site 4 (Fig. 1).
  • the user visually and textually communicates with the concierge through this concierge communication page 8.
  • the user also communicates orally with the concierge through the concierge communication page 8 although there is no indication of the oral communication on the concierge communication page 8.
  • this embodiment of the system 2 includes a plurality of web servers 12, as illustrated in Fig. 4, that serve the user web pages and provide configurable modules for handling access to and dynamic construction of pages requested by the users (in this embodiment).
  • the concierge assignment and the concierge redirection modules of the system 2 which are described below also run on the web servers 12.
  • the databases on the database servers 14 generally maintain the user information and other information necessary to generate the users' web pages (in this embodiment).
  • the database servers 14 generally store HTML code or text for each user's web page which lists or identifies the applet's on the user's web page and instructs the user's browser to place the applets on the user's screen.
  • the applets may be located on publicly available servers throughout the Internet or in a folder on the system 2, such as one of the web servers 12 or concierge main workstations.
  • the IMAP servers 16 generally receive and store the user's e-mail and to facilitate e-mail use.
  • the NFS file servers 18 generally store user files and generated user web pages.
  • the billing servers 20 generally keep track of each user's use of the system, specifically including the communication time between the users and the concierges.
  • the system 2 includes a plurality of databases on the database servers which store the relevant and necessary information for the system to operate.
  • the majority of the tools produce pieces of HTML code for including different elements in a web page.
  • Web server configuration files and other pure text files can also be generated from tools in this database.
  • the main purpose of these tools is to produce HTML for web pages, which is a language with a natural tree structure emulated by these tools.
  • the system also includes: (i) a user database which contains general data for each user, including names, locations, and various personal details to be made available to the concierge; (ii) a concierge database which contains personal information on concierges; (iii) an active concierge database which contains real-time information on which concierges are logged into the system and which, if any, users they are connected to; (iv) a concierge history database which keeps track of all times that concierges have spent logged on and additional per-concierge-session tracking information; (v) a history database which keeps track of all concierge-user interaction (if desired), recording any chatting, recording the audio and video feeds that are sent and received during the concierge session; (vi) a passwords database which contains usernames and associated passwords to various services including a password for accessing the system, other passwords for other services on the Internet, and digital images and encrypted identification keys for more advanced identification schemes at the user request; (vii) a preferences database for storing information regarding user's preferences; and (viii) a pages database which stores for each
  • the pages database also includes external pages that are not completely defined within the context of tools and parameters from the tools database. These pages specify an external method for obtaining the relevant data.
  • the system copies data from an external source to the target location based on the page's name or creates symbolic links to files, obtain files from external sources.
  • this embodiment of the system 2 includes a plurality of concierge clusters 24.
  • Each concierge cluster 24 includes a concierge main workstation 26, a plurality of concierge working terminals 28 which communicate through the network with the concierge main workstation 26 and a plurality of user emulation terminals 29 which communicate through the network with the concierge main workstation 26.
  • the concierge main workstation 26 runs the concierge application and web services for users connected with concierges in the associated concierge cluster 24.
  • Each concierge has a concierge terminal 28 which displays the concierge application as discussed below and a user emulation terminal 29 which displays the connected user's web site and the concierge communication page 8 to the concierge.
  • the emulation terminal 29 is integrated as a window or tab on the assistant application as illustrated in Figs. 22A to 22H, and thus the assistant or concierge needs to view only one terminal. This reduces the overall cost of implementing the system and the potential breakdowns in the system having two physical terminals for each assistant or concierge. This alternative embodiment of the assistant application is discussed in greater detail below.
  • a user may: (a) not be using his or her browser; (b) be browsing other web pages; (c) be at or using the user's web page but not communicating with a concierge; or (d) be at or using the user's web page and communicating with a concierge through the concierge communication page 8.
  • Each concierge terminal 28 consists of a Java based client application that includes a video conferencing client module that is adaptable for interaction using a number of different video conferencing protocols including, but not limited to, H.323 for audio, video and data communications across a number of different networks.
  • This architecture is applicable across numerous platforms. For example, any device with a Java Virtual Machine ("JVM") may be used as a concierge workstation.
  • Each client emulator 29 includes a browser 25 which displays the appropriate command applet which is communicating with the concierge application and is being served by the concierge main workstation.
  • JVM Java Virtual Machine
  • FIG. 6 illustrates the communications or interactions between (a) the system web server 12, (b) the concierge main workstation 26, the concierge terminal 28, and the client emulator 29 of the same concierge cluster, and (c) a user computer connected with the concierge terminal 28.
  • the X-server on the concierge terminal displays an instance of the concierge application (running on the concierge main workstation) on the screen of the concierge terminal 28.
  • the user's and emulator's chat applets and command applets send data to and receive data from the instance of the concierge application.
  • the main web server 12 and the concierge main workstation 26 both serve pages to the user's and emulator's browser. It should also be appreciated that the user's and emulator's chat and command applets must be served from the concierge main workstation 26 to enable the transfer of data between the applets and the concierge application. This restriction is determined by the Java security model. Java is a trademark of Sun Microsystems, Inc.
  • the videoconferencing clients on the concierge terminal and the user's computer enable the concierge and the user to communicate with real-time audio and video
  • the system enables the user to customize the user's web site with the assistance of a concierge.
  • the user's web site can include: (a) pointers to text documents 31 which are stored in data storage or databases 32; (b) pointers to spreadsheets 33 which are also stored in data storage or databases 32; (c) other files (not shown) stored in databases 32; (d) links 34 to web sites or Java applets 35; and (e) applets which enable the user to (i) upload and download text documents, spreadsheets, and other files in the database or from the NFS file servers, (ii) store links to the user's favorite web sites, (iii) provide access to additional applets, such as news and stock tickers, and e- mail applications.
  • Fig. 21 generally illustrates an alternative embodiment of the present invention in which the user accesses the system through an Internet access device, e.g., a computer terminal 604, via the Internet 606 or a PSTN access device, e.g., wired or wireless telephone 608, via an automated call distributor 610.
  • the communications through the Internet 606 are routed through a web server 612 and then to a multi-media switch 614.
  • the communications through the PSTN access device are routed to the automated call distributor 610 and then to the multi-media switch 614. It should thus be appreciated that both Internet and telephone communications with the system will be routed and handled through the same communication channel multi-media switch 614 in this embodiment.
  • the multimedia switch communicates the Internet and telephone communications to a call processing framework 628 which routes the calls to call centers as described below.
  • the call processing framework includes a customer queue 630 for maintaining incoming and waiting user communications, a matching process 632 for matching users with assistants, and service applets 634 for servers 628a in the call processing framework.
  • the call processing framework communicates with a lightweight directory access protocol 636 to provide for user authorization in a conventional manner.
  • the system is preferably adaptable to use by any Internet, wireless Internet, PTSN or similar network access device.
  • This includes, for example, PDA's, cell phones, Internet enabled appliances, such as a refrigerator, and the like.
  • the system is adaptable to any wired or wireless communication system or device.
  • web pages may be dynamically created each time a web page is requested. More specifically, when a user requests a web page, the user's request goes through the Internet to a web server.
  • the web server accesses a database to get the page information from the database to dynamically construct the page.
  • the database returns the requested data to the web server.
  • the web server builds and formats the page and then sends the page to the requester via the Internet. Accordingly, for each user request for each web page built, at least one connection is required to the database. If numerous users request the page at the same time, the database needs to be accessed for each user request. This substantially slows down the system.
  • the alternative preferred embodiment of the system of the present invention provides an alternative system for accessing and for obtaining the web pages.
  • a page is generated the first time or after a change, it is stored on a shared disc storage 620. More particularly, when a page is initially created (i.e., such as a user web page or a personal page as discussed below) the assistant or concierge application server 622 accesses the database 618 to format and build the page and then stores the built page in the shared disk storage 620; therefore, a page is not dynamically generated when the user requests that page (i.e., the page is already created). Each time that the page is changed, the new changed page is generated and stored in the shared disk storage 620.
  • this system enables multiple users and assistants to access the specified pages in a more efficient manner which requires less access of the database. This is especially important because many user web pages and personal pages will include objects therein rather than just links to other pages. Preferably, the user web pages or personal pages will be composite pages of selected objects from other pages.
  • This shared disk storage embodiment of the present invention thus creates a significantly more efficient system than if each page which includes objects which are taken from different pages needs to be dynamically rebuilt upon end user request.
  • Fig. 21 further illustrates that, in the preferred alternative embodiment of the present invention, system users 604 are routed into a particular call center 624a or 624b based on suitably intelligent IP routing which enables networks to understand information about applications which: (i) the user may want to run on the system, such as where the user is logging in from and what the user may do from such location; or (ii) can run on the system based on user characteristics, such as if there is not internet connection for video, the system will not send video signals. More specifically, the user 604 is routed to a call center that is most appropriate for the user based upon, for example, geographical location of the user, network topology, the time of day, etc.
  • Call centers are physical locations that run supporting software systems and have operational support.
  • call centers have server banks that host communities of software.
  • the communities of software are linked to a central nervous system that manages all communities as a federation as described in more detail in U.S. Patent No. 6,009,464.
  • the central nervous system is a home base to all persistent storage devices and software including the data bases described above, authentication services and a universal tupple space for the storage of objects.
  • the system is therefore platform independent, making it accessible to users of a variety of devices. Moreover, it requires no user configuration or setup for use of the system. It should be appreciated that several different routines or processes could be used to route callers to specific assistants, concierges or groups of assistants or concierges as described below.
  • the user enters the system URL into the user's conventional browser on the user's computer or other Internet access device (collectively referred to herein as the "user's computer").
  • the user's browser requests the system web page from the system web server 12 as indicated by block 40.
  • the user's browser determines if the user's browser has a cookie associated with the concierge communication page 8 as indicated by diamond 42.
  • the user's browser sends the cookie to the system web server 12 as indicated in block 44.
  • the system web server 12 validates the cookie as indicated by block 46. If the web server 12 determines as illustrated by diamond 48 that the cookie is not valid or if the user's browser does not have a cookie associated with the system URL, the system web server 12 sends the login form page 52 as illustrated in Fig. 18 to the user's browser as indicated by block 50. The user must enter the user's username and password into the login form page 52 and must submit the form to the system web server 12 as indicated by block 54 to use the system. The system web server 12 validates the username and password submitted by the user as indicated by block 56.
  • the system web server 12 determines if the username and password are valid as indicated by diamond 58. If the username and password are not valid, the system web server 12 sends the login form page 52 to the user's browser. The system may also display an invalid username or password message to the user.
  • the web server After a user provides a valid username and password, the web server sends a cookie (having the encrypted username and password) to the user's browser as indicated by block 57.
  • the browser stores the cookie on the user's computer as indicated by block 59.
  • the user will not be required to fill in a login form since the cookie (having the valid encrypted username and password) will be sent to the system web server by the user's browser.
  • the web server 12 determines if the user or user's browser requested the concierge communication page 8 as indicated by decision diamond 60. If the user's browser did not request the concierge communication page 8, the system web server 12 sends the requested page (i.e., the user's web page) to the user's browser as indicated by block 62. The user's browser displays the page sent by the system web server 12 as indicated by block 64. If the user's browser requested or subsequently requests the concierge communication page 8, the system 12 performs the redirection and assignment process (discussed in detail below) to assign a concierge to the user as indicated by block 66, and establishes communication between the concierge and the user as described below.
  • the redirection and assignment process discussed in detail below
  • the system 12 determines if a concierge is assigned to a user as indicated by diamond 68 and as described in detail below. If no concierge is available to be assigned to the user, the system web server 12 sends a busy page to the user's browser as indicated by block 70 and the user's browser displays the page (i.e., a concierge busy page) sent by the system web server 12 to the user's browser as indicated by block 64.
  • the system initiates a Java interface or communication between the concierge and the user including: (i) the textual communication process which facilitates two-way textual communication between the user and the assigned concierge; (ii) the audio-visual communication process which facilitates two-way audio-visual communication between the user and concierge; and (iii) the command applet process which facilitates communication of commands, data or signals between the user's computer and the concierge application as indicated by blocks 72, 74 and 76, respectively, and as described below.
  • the user at any time may click on the communication button or link 6 to facilitate or to establish communication with a concierge team member.
  • the system 2 finds the concierge, starts a billing routine which keeps track of the amount of time the user communicates with the concierge and provides communication between the user and the concierge.
  • the system also provides the selected concierge with the user's web site and other relevant information to enable the concierge to view the user's web site on the user emulator terminal 29.
  • the system 2 enables the assigned concierge to change the user's web site during the communication (or at any other time as requested by the user). The changes occur in real-time and the system 2 adjusts the appropriate databases with these changes as necessary.
  • the system 2 disconnects the communication between the user and concierge.
  • the user may be required to install a security certificate that enables the Internet system software to operate. The user can access the system from a variety of different devices via the security certificate, making the system platform independent.
  • security certificates is a common industry practice employed to protect computer users from potentially executing malicious code from unknown sources.
  • the system then retrieves the user's web site, adds any required dynamic content, and writes this back to the user's web browser. If a web server becomes unavailable, any sessions that are being hosted on that server will be lost. If the affected user has a security certificate, the system enables the user to log in without being prompted for a user ID and password. However, if the affected user does not have a security certificate, the user is required to go through the login process again.
  • the system 2 initiates the concierge application for the concierge as indicated by block 80.
  • the concierge application binds a port in the concierge main workstation through which the user's chat applet and command applet may connect to, send data to, and receive data from the concierge application as indicated by block 82.
  • the concierge application then initiates the concierge login process 83 generally illustrated in Fig. 9 and described below.
  • the concierge application waits for a connection to a user on the bound port as indicated by block 86. If no connection on the port is established, the concierge continues to wait for connection on the port as indicated by diamond 88.
  • the concierge application identifies the user and connection type as indicated by block 90.
  • the system 2 also notifies the concierge of the connection with the user as indicated by block 92.
  • the concierge application loads the user's web site in the web browser on the user emulator terminal as indicated in block 94 to facilitate the page editing process (discussed below) and as indicated by block 96.
  • the concierge application loads the concierge communication page 8 in another browser window on the user emulator as indicated by block 98 as generally illustrated in Fig. 1.
  • the textual communication process, audiovisual communication process and command applet process are also implemented as indicated by blocks 72, 74 and 76, respectively, and as mentioned above and described below.
  • the concierge application displays the login window (Fig. 19A) to the concierge on the concierge terminal as indicated by block 91.
  • the concierge application monitors the concierge terminal to determine if the concierge desires to exit the concierge application (i.e., presses the exit button) on the login window as indicated in by diamond 93. If the concierge desires to exit the concierge application, the concierge application terminates as indicated by block 95. If the concierge enters the concierge's username and password into the login window as indicated by block 97, the concierge application determines if the username and password are valid as indicated by diamond 99. If the username and password are not valid, the concierge application may send an invalid username or password notice to the concierge and awaits the user to enter a valid username and password or exit the concierge application.
  • the concierge is logged into the system as indicated by block 101 and the concierge application updates the appropriate database on the database servers 14 to include the port number of the bound port, the IP address of the concierge main workstation of the designated concierge cluster and the IP address of the concierge terminal in the cluster as indicated by block 103. Updating the database with the above-mentioned data indicates that the concierge is available for a user connection.
  • login processes such as retinal scanning process, finger print analysis or security tokes (e.g., access cards) may be used.
  • the redirection and assignment process determines which concierge is available to communicate with a user who has requested assistance from a concierge and insures that communication pages are served from the concierge main workstation to avoid Java security issues.
  • the system web server 12 runs the concierge redirection module which in turn runs the assignment module as indicated by blocks 102 and 104, respectively.
  • the assignment module queries the database on the database server 14 to verify if a concierge has been assigned to the user as indicated by block 106 and the system determines if the user already has an assigned concierge as indicated by diamond 108. If the user does not already have a concierge assigned to him or her, the assignment module queries the database to find an available concierge as indicated by block 110.
  • the assignment module preferably determines the most appropriate concierge for the user by giving preference to concierges with the most contact with the user, thus resulting in users building relationships with a select group of concierges they have communicated with most often.
  • the system preferably connects new users to new concierges with the least number of user communications to balance the number of users interacting with any given concierge.
  • the assignment module determines if there is an available concierge as indicated by diamond 112.
  • the redirection module redirects the user's browser to a busy page which indicates to the user that all concierges are busy and that the user should try again to recontact a concierge in a designated period of time as indicated by block 114. If there is one or more available concierges, the assignment module determines the most appropriate concierge of the available concierges for the user as indicated by bock 118 and assigns the appropriate available concierge to the user by updating the database to reflect the user-concierge assignment as indicated by block 118.
  • the concierge assignment module is preferably flexible.
  • the above is one example of the concierge assignment module.
  • the system may be configured to assign incoming calls to the concierge most likely to effectively answer the callers query based on observed patterns of caller behavior and known areas of concierge expertise.
  • concierge assignment module may vary by industry needs and application of the system.
  • the concierge assignment module is preferably a configurable module to meet the objectives of the system. If the user has a concierge assigned or the assignment module assigns an available concierge to the user, the assignment module notifies the redirection module that a concierge has been assigned to the user as indicated by block 120.
  • the assignment module also informs the redirection module of the port number bound by the concierge application, the IP address of the concierge main work station and the IP address of the concierge terminal as indicated by block 122.
  • the redirection module informs the concierge application of an incoming user connection as indicated by block 124.
  • the redirection module retrieves the concierge information (such as the concierge's name) from the appropriate database as indicated by block 126.
  • the redirection module retrieves the concierge communication page from the system NFS file server 18 as indicated by block 128. It should be noted that while it is preferred to use NFS file servers, any file serving mechanism or platform may be incorporated.
  • the redirection module incorporates the concierge information, port number, IP address and the IP address of the concierge terminal into the concierge communication page 8 as indicated by block 130.
  • the system web server 12 then sends the concierge communication page 8 to the user's browser as indicated by block 132.
  • the system web server 12 also sends the concierge communication page 8 to the browser on the user emulation terminal.
  • the user emulator terminal emulates the user's browser and then displays the web site which the user is viewing on the user emulator terminal.
  • the emulator preferably has a similar operating environment to the user's operating environment so that the concierge will be able to view exactly what the user views. For example, the concierge can see the user's web site that the user is viewing or is redirected to by the concierge.
  • TEXTUAL COMMUNICATION PROCESS The textual communication process 72 of the system 2, as illustrated in Fig. 11 , establishes real-time textual communication between the user and the assigned concierge. The textual communication is presented to the user and the concierge through the concierge communication page 8 as illustrated in Fig. 1 in combination with the audio-visual communication.
  • the concierge communication page 8 includes a text box or window 140 for displaying the concierge's written communication to the user, a text box or window 142 for displaying the user's written communication to the concierge, a text box or window 144 for the user to type his or her written communication, and a close button 148 for enabling the user to terminate communication with the concierge.
  • the user may hit the send button 146 or the enter button on the keyboard to send the data (i.e., textual message) to the concierge.
  • the chat applet detects this keyboard event, displays the user's input in the user text box 142 and sends the data to the appropriate concierge application.
  • the user's browser initiates a conventional chat applet for textual communication as indicated by block 152.
  • the chat applet establishes a connection to the assigned concierge port number and assigned concierge IP address previously specified by the concierge redirection module as indicated by block 154. Establishing a connection through the port number and IP address assigned through the redirection module enables data transfer between the chat applet and the appropriate instance of the concierge application (and thus, a textual communication pathway between the user and the appropriate concierge).
  • the chat applet sends the user identification data and connection type through the port to the concierge application as indicated by block 156.
  • the concierge application identifies the user and connection type as indicated by block 158 and loads the concierge communication page 8 in the browser on the user emulator terminal as indicated by block 160.
  • the user or the concierge may type in the chat window at any time communication is open between the user and the concierge.
  • the user's chat applet determines if the user types information in the chat window as indicated by diamond 162, or if the user closes the communication connection as indicated by diamond 176. If the user does not type in the chat window or if the user does not close the communication with the concierge, the user's chat applet waits for the user to type in the chat window or exit the communication process.
  • the chat applet sends the user input through the bound port as indicated by block 164.
  • the concierge application sends the user's input text to the user, concierge and emulator chat sockets as indicated by block 166.
  • the user's input is displayed in the user communication page 8, the concierge application chat window (Fig. 19B) and user emulator chat windows as indicated by block 168.
  • the concierge may also type in the chat window.
  • the system determines if the concierge types in the chat window as indicated by diamond 170. If the concierge types in the chat window and indicates that he or she wants to send the textual communication to the user, the concierge application sends the input to the user communication page 8, concierge application chat window (Fig. 19B) and emulator chat window as indicated by block 172.
  • the concierge input is displayed in the user communication page 8, concierge application chat window (Fig. 19B) and emulator chat windows as indicated by block 174. This textual communication process may be repeated at any time as desired by the user and the concierge until the user closes the connection.
  • the system monitors the concierge communication page to determine if the user closes the connection with the concierge as indicated by diamond 176. If the user closes the connection with the concierge, the system closes the connection between the user and the concierge as indicated by block 178.
  • the concierge application also logs the connection record to the appropriate database on the database servers 14 as indicated by block 180. The system updates the appropriate database to indicate that the concierge is available for another user connection.
  • the audio-visual process 74 of the system establishes audio-visual communication between the user and the assigned concierge simultaneously with the textual communication process 72 described above.
  • the system 2 initiates the video conferencing application as indicated by block 190.
  • the user's video conferencing application establishes the connection to the IP address of the concierge workstation previously specified by the concierge redirection module to establish a video conferencing link between the user and the concierge as indicated by block 192.
  • the user and the concierge communicate in real-time through visual and audio communications while connected as indicated by block 194. The user may continue communication for as long as desired.
  • the system may facilitate two-way fully duplexed audio communication (H. 323) and two-way real-time video communication (H.
  • the system may facilitate such communication using a number of conferencing applications and protocols. For example, Microsoft's Netmeeting may be employed as both a client-side browser plug-in and concierge side program or any other suitable audio and video communication systems.
  • the system monitors the concierge communication page 8 to determine if the user closes the connection with the concierge as indicated by diamond 196. If the user closes the connection or logs out of the user's computer system, the video conferencing application closes the connection between the user and the concierge as indicated by block 198.
  • the multimedia component functions with the audio and video hardware recognized by the computers operating system without any user configuration. Preferably, no plug-ins or software installations are required.
  • the audio and video is preferably continuously synchronized and streamed over Real-time Transport Protocol via a Uniform Datagram Packet (UDP) socket in real-time.
  • Receipt of the continuous audio and video data stream is delayed by, for example, (a) processing time from origin, (b) network latency, (c) processing time at destination, and (d) data buffering at destination.
  • This delay is monitored by intelligent control software that keeps time decay (measured as the difference between the point in time when the data was created to the time in which it is reproduced) at acceptable levels. This is accomplished by adjusting fidelity (the quality of the audio and video).
  • the fidelity of the data stream is optimized to maximize quality by the software depending on the amount of Internet bandwidth available to the user.
  • the software continuously monitors bandwidth and fidelity metrics, and intelligently determines the best combination to provide the user with the best possible real time multimedia experience without skipping or otherwise losing data segments.
  • a minimal amount of data buffering is used to provide basic fault tolerance over fluctuating network conditions to insure continuous stream integrity and prevent excessive interruption or skipping while minimizing the time delay experienced. If the software determines that the available fidelity does not fall within acceptable ranges, the software may either advise against a subset of functionality or make it unavailable such that video may be unavailable, while audio will function normally.
  • the system includes a command applet process 75, as illustrated in Fig. 13, for determining who the user is, the location of the user's data and to enable the concierge to access and modify the user's data, web site and to redirect the user's browser.
  • the user's browser loads the concierge communication page 8 and initiates the command applet as indicated by block 202.
  • the command applet establishes a connection to the bound port and IP address of the concierge work station previously specified by the concierge redirection module as indicated by block 204.
  • the command applet sends the data, including the user identification and command connection type through the bound port to the appropriate concierge application as indicated by block 206.
  • the concierge application identifies the user and connection type as indicated by block 208.
  • the concierge application loads the concierge communication page in the browser on the client emulator as indicated by block 210.
  • the concierge may manipulate the user's browser by entering the necessary information in the concierge application on the concierge terminal (Fig. 19B) and sending such command sequences through the concierge application to the user's command applet and the emulator's command applet as indicated by diamond 212.
  • the concierge application sends the command sequences (which are used to redirect the user's browser to a desired URL or alternative web page) through the bound port to the users and the emulators command sockets as indicated by block 214.
  • the user and emulation command applets identify the command sequence sent by the concierge application as indicated in block 216.
  • the command applet determines if a redirection command is received as indicated by diamond 218. If a redirection command is received, the user's browser and the user emulation browser are redirected to a specified URL in a specified browser window as indicated by block 220. Thereafter, the user and emulation command applet await further command sequences.
  • the system thus enables the concierge to redirect the user's browser to the desired web site.
  • the concierge can conduct a search and then direct the user's web site to the appropriate URL or place a link to the appropriate URL in the user's web site. The user can then visit the selected web site by clicking on the link that the concierge places on the user's web site.
  • the command applet determines if commands other than a redirection command is received from the concierge application as indicated by diamond 222.
  • the system may be adapted to enable the concierge to send other command sequences to the user's and emulator's command applet. If the concierge receives such a request from the user, the concierge sends an appropriate command sequence to implement the request and the desired behavior is implemented as indicated by block 224.
  • the system also determines if any errors occurred as indicated by diamond 226. If an error occurs, the command applet sends an error report through the bound port to the concierge application as indicated by block 228. The concierge application displays the error message to the concierge and awaits further commands as indicated by block 230. The system monitors the concierge communication page 8 to determine if the user closes the connection to the concierge as indicated by diamond 232. If the user closes the connection, the system 2 closes the connection between the command applet and the concierge application as indicated by block 234.
  • the system 2 includes a page editing process 240, as illustrated in Fig. 14, which enables the concierge to construct and revise the user's web site without having to program the HTML from scratch.
  • the system 2 enables the concierge and the user to see in substantially real-time the concierge updates of the user's web site.
  • the concierge opens the edit window (Fig. 19C) in the concierge application as indicated by block 242.
  • the concierge application retrieves the user information including the user's web site and personal information from the database as indicated by block 243 and displays this information to the concierge in the edit window as a tree abstraction (Fig. 19C) as indicated by block 244.
  • the concierge may then edit the user's web site.
  • the concierge may select any object in the tree abstraction to edit or change as indicated by diamond 245 and illustrated in Figs. 19C through 19F. If the concierge makes this selection, the information pertaining to the object is displayed in the edit window as indicated by block 246 and illustrated in Figs. 19C through 19F.
  • the concierge may make changes to the selected object information as indicated by diamond 247. If the concierge opts to make changes to the object information, the changes to the object information are made in the edit window as indicated by block 248. For instance, the concierge may choose to move an object from its current location in the tree abstraction of the user's web site (and thus the location of the object on the user's web site) as indicated by diamond 249.
  • the concierge application performs the move object process as indicated by block 250 and as described below.
  • the concierge may add an object in the edit window as indicated by diamond 251. If the concierge does so, the concierge application runs the add object process as indicated by block 252 and as described below.
  • the concierge may remove an object in the edit window as indicated by diamond 253. If the concierge does so, the concierge application removes the object from the tree abstraction of the user's web site in the edit window as indicated by block 254. If the concierge chooses not to add an object or perform any of the above functions, as indicated by diamond 255, the concierge can close the edit window as indicated by block 260.
  • the concierge may accept or commit to a change made in the concierge application edit window (as illustrated in Figs. 19C through 19F) as indicated by diamonds 256 and 258. If the concierge accepts or commits to a change in the edit window, the concierge application performs the commit changes process to save the changes temporarily made by the concierge to the object in the user's web site as indicated by blocks 257 and 259. If the concierge accepts the changes, the concierge application performs the commit changes process as indicated by block 257 (as described below) and closes the edit window as indicated by block 260. The concierge can also cancel the temporary changes as indicated by diamond 261. If the concierge does not cancel the changes to the object, the concierge may continue to edit the user's web site.
  • the concierge may thus restore the object to eliminate the temporary changes. If the concierge restores the object, the concierge application retrieves the user information from the database as indicated by block 243, reconstructs the last committed tree abstraction of the user's web site, and displays the reconstructed tree abstraction in the edit window. This process refreshes the view of the tree abstraction of the user's pages for the concierge.
  • the concierge can show the changes to the user's web site to the user by redirecting the user's browser by sending a redirect command to the user's URL as specified in the command applet process.
  • the system 2 may alternatively provide the concierge with a click, drag and drop graphical user interface ("GUI") which enables the concierge to build the user's HTML pages for the user's web site in real-time without having to program the HTML from scratch.
  • GUI graphical user interface
  • the concierge can modify the user's web site by adding, removing or modifying existing content through a document editor which is part of the assistant application.
  • the document editor is based on the XML standard and uses custom defined tags as nodes to provide the editor with an organizational structure.
  • modifications to the user's web site are made, they are made in real-time, and upon browser refresh. In this regard, the user is updated of those changes.
  • Dynamic generation of HTML components is accomplished through drag and drop functionality on the concierge's workstation, and is generated in memory, in real time. The altered custom web site is then sent to the user, and saved for retrieval upon browser refresh.
  • the user can change or modify the configuration of his/her own web site without the aid of a concierge or assistant.
  • the concierge application enables the concierge to commit to the changes temporarily made to the user's web site when the concierge indicates that he or she wishes to commit the changes (i.e., presses the update button illustrated in Figs. 19C through 19F) as indicated by diamond 258 in Fig. 14.
  • the concierge application updates the appropriate database in the database server 14 to reflect the changes to the user information as indicated by block 268.
  • the concierge application retrieves the user's updated web site information from the database as indicated by block 270.
  • the concierge application uses the information retrieved from the database to generate the user files, such as web pages or dynamically generated image files as indicated by block 272.
  • the concierge application determines if the source for the file to be generated is entirely derived from the tools in the database as indicated by diamond 274. If the source for the file to be generated is entirely derived from the tools in the database, the concierge application generates the user's files using the information retrieved from the database as indicated by block 276. If the source for the files to be generated is not entirely derived from the tools in the database, the concierge application generates the user's files using specifications from the database as indicated by block 278.
  • the concierge application enables the concierge to move objects on the user's web site, as illustrated in Fig. 16.
  • the concierge selects an object in the tree abstraction of the user's pages in the edit window as indicated by block 282. If the concierge chooses to move this object in the tree abstraction of the edit window as indicated by diamond 284, the concierge application moves the object from its parent node to another node in the tree abstraction as indicated by block 286.
  • the objects are moved from one node to another node in the tree abstraction using the button process illustrated in Figs. 19C through 19F, or preferably a click, drag and drop GUI process.
  • the concierge application enables the concierge to add one or more objects to the user's web site without having to program the HTML from scratch, as further illustrated in Fig. 17.
  • the concierge selects an object in the tree abstraction of the user's pages in the edit window as indicated by block 302 to indicate where the new or added object will be placed in the tree abstraction.
  • the concierge requests the concierge application to open the add object window (illustrated in Figs. 19G and 19H), as indicated by block 304.
  • the concierge application retrieves the information of all available objects from the database as indicated by block 306.
  • the concierge application constructs a tree abstraction of the object's information retrieved from the database and displays the tree abstraction in the add object window as indicated by block 308.
  • the add object window of the concierge application opens as indicated by block 310.
  • the add object window displays the pre-defined tools (as described below) provided by the system for the concierge to select an object to add to the user's web site.
  • the tree abstraction in the add object window (Figs. 19G and 19H) represent example available objects the concierge may add to the user's web site as also indicated by block 308.
  • the system determines if the concierge selects an object in the add object window before adding an object to user's web site as indicated by diamond 312.
  • the concierge chooses to add a selected object to a user's web site as indicated in diamond 314, the selected object appears as a child node of a selected object in the tree abstraction of the edit window as indicated by block 316.
  • the add object method may involve a click, drag and drop implementation in which the concierge selects the object to add from the add object window and drags the selected object to the appropriate node in the tree abstraction of the edit window. If the concierge chooses to restore the tree abstraction in the add object window as indicated by diamond 318, the concierge application retrieves the object information from the database as indicated by block 320.
  • the concierge application reconstructs the tree abstraction of objects with the information retrieved from the database and displays the newly constructed tree abstraction in the add object window as indicated by block 322, thus allowing the concierge to view a refreshed view of the objects tree abstraction. If the concierge chooses to add the selected object in the add object window (i.e., presses the okay button) as indicated by diamond 324, the selected object appears as a child node of a selected object in the tree abstraction of the edit window as indicated by block 326. The add object window is then closed as indicated by block 328. If the concierge chooses not to add the selected object (i.e., presses the cancel button in the add object window) as indicated by diamond 330, the add object window closes as indicated by block 332. Alternatively, the concierge may select another object in the add object window to add to the tree abstraction of the user's page in the edit window as indicated by diamond 312. The concierge may at any time close the add object window as indicated by block 332.
  • the system 2 of the present invention also enables the concierge to obtain and store the user's passwords for other Internet sites and to obtain, store, change or alter the user's preferences for the user's web site.
  • the concierge application provides a password window as illustrated in Fig. 191.
  • the concierge can enter the URL of a web site, the user's username and the user's password in this password window and save this information in a password database in the database servers 14 for future use.
  • This enables the concierge, on behalf of the user, to enter a secure web site or password-protected web site to perform a function or service for the user. This also enables the concierge to conduct such functions even though the user is not in communication with the concierge.
  • the concierge application includes a preferences window which enables the concierge to store preferences of the user. For instance, the user may have a desired look and feel for the user's web site that the user prefers. The concierge can easily store this information in the preferences database using the preferences window as illustrated in Fig. 19J.
  • Figs. 20A to 20C the user's web site can be customized as desired by the user.
  • the concierge will help the user customize the user's web site.
  • Fig. 20A illustrates a user web site 4 which identifies the name of the user and includes a communication button 6 below the name of the user.
  • Fig. 20B illustrates a user web site 4 with a border around the entire user web page, the identification of the user within the top border and the contact button 6 within the bottom border.
  • Fig. 20C illustrates that additional links, buttons or tools may be inserted on the user's web site 4.
  • the system provides a number of predefined tools, applications and links which the concierge can quickly select and place on the user's web site at the location desired by the user.
  • the user can link to a quote system 400 to obtain stock quotes, have links 402 to contact relatives, have links 404, 406 and 408, respectively, to voicemail, e-mail and other applications such as a set of clocks.
  • the user's web site can also include a list 410 of the user's files and documents which the user can access through the system, a list 412 of favorite web sites and a real-time feed 414 on certain stocks or other information. This illustrates how a user can place certain features on the user's web site in the order that they desire without having any technical skill by using the concierge to place these tools and applications on the user's web site.
  • FIG. 2 An alternative structure for the web site is illustrated in Fig. 2.
  • the user's web site in Fig. 2 illustrates that pictures can be placed on the user's web site and other applications such as clocks can be placed on the user's web site.
  • This web site also includes a search engine readily available from the user web site.
  • the system provides a plurality of internal system applets and external system applets which the concierge can use to develop the user's HTML pages for the user's web site.
  • the internally developed applets can be configurable such as search applets for submitting searches to a single specified search engine, search applets with a list of specified search engines, or search applets with a selection of categories of search engines.
  • the internally developed applets could also include favorite applets for storing favorite links, configuration applets for manipulating the layout of and preferences for the web site and web site beautification applets including dynamically generated graphical items such as buttons and borders as illustrated in Figs. 20A through 20C.
  • the applets can also be externally created such as an e-mail application, stock data charting and tracking, various other financial access applets, links to other secure access sites and news tickers to provide access to such sites.
  • FTP tree utility This enables users to upload and download files from personal folders on the NFS server 18 and enables users to create and delete folders.
  • FTP upload folder This enables users to upload files to personal folder on the NFS server 18.
  • Java Applets (stored on the web servers 12 and concierge main workstations)
  • news tickers This displays headlines for the day (clicking on the headline opens a browser window with the associated article).
  • clocks This is a simple clock (color, time- zone, size of text may be customized to user's preference).
  • search engines This enables users to search for a topic of choice using search sites and enables users to save searches for previously searched topics.
  • buttons This provides a button that may be used as a graphical representation of a hyperlink (text, color, and size of button may be customized to user's preference).
  • concierge chat applet This enables a user to communicate with a concierge through textual means.
  • third party form This enables a user submit a form to a third party to obtain information such as information such as flights for a given departure location, destination, date and time of departure and return.
  • head This provides a head tag which includes title of HTML page.
  • body This provides a body tag which indicates body of HTML page.
  • font This provides a font tag which indicates attributes of text (size, font, etc.). Italics This provides an italics tag which displays text in italics.
  • subscripting This provides a subscript tag which displays text as subscript.
  • tablerow This provides a table row tag which adds a table row structure to HTML page.
  • buttons This provides a button tag which adds a form button to HTML page.
  • formatted text This provides a formatted text.
  • image sized This provides an image tag which indicates source of image and size of area to display the image.
  • link anchor This provides a hyperlink tag which indicates a hyperlink in HTML page.
  • paragraph This provides a paragraph tag which indicates a new paragraph in HTML page.
  • CUSTOMER WAITING QUEUE Fig. 21 illustrates an alternative preferred embodiment of the present invention (as discussed above) in which a customer waiting queue 630 is provided.
  • the web site features may be, for example, the communication button, links to other web sites, pictures previously downloaded, various applications and other objects.
  • the communication button enables the user to directly contact a live concierge or assistant. If the user selects the communication button, a second browser window is opened and a web server extension is notified. At this time, an applet is loaded in the new browser window and begins to listen for a remote connection from the concierge system.
  • the web server extension contacts a remote queue service and adds the user to the customer waiting queue. To this extent, the user's applet continues searching for a queue until it receives a ticket. The queue, on the other hand, contacts the user's applet to verify that the user is valid and delivers a queue ticket. Once the applet has received a ticket, it waits to be connected with the concierge or assistant.
  • the customer waiting queue service is part of a self-healing, self- managing distributed computing framework.
  • the system preferably gathers metrics on system performance, network latency, hardware availability, user activities, concierge activities and other pertinent system management related data.
  • the customer queue is guaranteed to only execute on one network node by a local tupple space that participates in a transaction that conforms to ACID properties.
  • the tupple space contains an object that holds a proxy to the active service.
  • the customer waiting queue removes its proxy from space and checks the pointer. If the pointer is valid, the service ends and execution terminates. Otherwise, the proxy's pointer is added to the proxy and written back to space and the transaction is committed. If another service comes online while the transaction is open, the topple space will wait for the current transaction to finish. The transaction manager will automatically rollback a transaction if any of the participants become unavailable.
  • the customer waiting queue delivers a ticket to the applet after certain conditions are met.
  • the customer queue may deliver the ticket after the customer is verified and the customer's connection data has been permanently persisted to a local tupple space. This ensures that in the event of system failure, the queue, when restarted by the management framework can quickly recover all of the live customers that are waiting by reading them back from the tupple space.
  • a separate concierge queue is provided.
  • the concierge queue monitors the status of the concierges and gathers metrics on employee performance and habits.
  • the concierge matching algorithm process 632 includes a pluggable, matching algorithm that is used to match the first waiting user or customer to the best matching concierge for the user or customer.
  • the matching process is based on a configurable set of rules that are evaluated by a suitable rule engine.
  • each of the users are preferably stored in a queue waiting for assistants.
  • Each user has a series of attributes related to that user, for instance, the attributes could include the personal information, the user's interests, the user's age, the user's previous purchases, etc.
  • each assistant would be put in a queue waiting for users.
  • Each assistant has certain attributes such as the assistant's specialties, special knowledge, areas of expertise, language skills and which users the assistant has previously communicated with.
  • the queue calls the customer applet to make sure it is still alive and an event is sent to the chosen concierge's workstation.
  • the concierge may either accept the waiting customer or decline. If the customer is accepted by the concierge, a connection to the customer applet is established under a transaction as described above regarding the customer waiting queue, and the customer proxy is removed from the tupple space and the queue is notified of receipt. To this extent, the transaction is engaged. The concierge is then live with the customer.
  • a direct connection is established from the concierge's workstation to the customer's applet.
  • Such communication enables the concierge's workstation to invoke remote methods on the customer applet.
  • the communication also provides for text-based chat and audio/video communications where available.
  • the customer may communicate with their concierge via the text-based chat or a direct audio/video link depending upon the customer's hardware and Internet connection speed.
  • the multimedia component that is used provides two-way audio (e.g., up and down) and one-way video (e.g., down) between the two systems with a user activated option to send video back (e.g., up).
  • the chat component enables two-way text-based communication between the two systems.
  • a service framework provides artificial intelligence components that gather metrics on system performance, network latency, hardware availability, user activities, concierge activities, and other pertinent system management related data. From this information, the framework configures the system to run at an optimal and fail-safe performance level.
  • Services that operate under the framework can be one of several types, depending on the specific needs of a particular service. Services may be guaranteed to execute at only one instance within the community. Additionally, services may include dedicated hardware standing by to takeover requests in the event of a failure. Alternatively, distributed services may have multiple instances that are intelligently load balanced, based on hardware utilization and network latency. Moreover, services may simply release a proxy that performs its work on the local processor and has no contact with its originating server.
  • Services under the framework avail themselves to the world by announcing their presence to a service registrar that grants time based leases to services.
  • Service registrars are located via IP multicast. This discovery process locates all registrars within the community and continues to execute in a separate thread that listens for new registrars that may join over time.
  • Clients of the services use the same discovery process to find registrars with which the client may search for services that match a lookup query. This enables for clients to perform discovery and search for a service that may not be running yet and still find the desired service as soon as it becomes available. Services likewise can make a registration attempt either before or after a client searches for them and still be found.
  • Services can execute the registration process before a registrar is available to grant a lease and still be registered when the registrar does become available.
  • the service management framework supports the system and ensures that registrars are available for leasing and lookup and that an optimal number of business services are running to service a user's requests.
  • services recover from partial failure by attempting to restart on the originating computer. If the computer itself has failed, a new service is started on a different computer. Objects are designed such that failure will not result in a loss of state, so clients of a failed service will experience no interruption of service except possibly a slight delay while rerouting. If a service cannot be restarted for any reason, requests for this service are rerouted to the federation where a matching service is found in a different community until the local service can be restarted. In the event of total failure, requests are rerouted to the federation to be handled by a different community.
  • the system design is such that computers can be randomly unplugged and the system itself will not fail.
  • the federation which protects against total failure, is redundantly located in segregated logical, geographical locations, to prevent the federation from failing. If a federation becomes unavailable, the backup federation engages and resumes operation. Each community is capable of restarting itself and surviving failure by finding the federation.
  • the concierge has the ability to perform such searches on behalf of the customer through a search service.
  • the search services first through an affiliates database, then through a custom web site knowledge base, then on the Internet via a user selected search engine.
  • the search results are presented and the concierge may open a link to check search accuracy.
  • the concierge may redirect the customer's browser to one of the web sites found. When a redirect command is sent, the URL is logged and the web page is opened on the concierge workstation. Links to the loaded web page are changed to point to the system web servers and the modified web page is sent to the user's web browser.
  • the concierge may open new browsers on the user's computer as needed to invoke further redirect commands.
  • the Internet service system of the present invention preferably includes Internet concierge groups which work closely with sub-departments responsible for various aspects of the Internet. For example, a group may have the responsibility for evaluating and researching e-commerce issues and making recommendations to the Internet concierges. The concierges may suggest these recommendations to the users. If a user needs help beyond the concierge's skill, the concierge can request specific help from another concierge or an Internet researcher of the system of the present invention.
  • Internet concierges are preferably articulate, intelligent individuals with pleasant dispositions, highly developed social skills, a neat personal appearance and a high degree of motivation. Hotel concierges, human resources personnel, telephone operators and other customer service representatives are likely to be suitable Internet concierges.
  • the system researchers preferably include individuals with strong research skills and extensive Internet experience including librarians, recent college graduates, educators, analysts and data miners.
  • the system specifically addresses users' needs in response to a request and designs solutions particular to each user's needs.
  • the system may be adapted to track different requests by users to permit the efficient re- use of proven, previously configured solutions, and meet the unique needs of each user, rather than trying to meet all possible user needs.
  • the system also assures the quality of its service by frequently monitoring interactions between user and Internet concierges and closely monitoring user feedback.
  • the system includes an electronic gauge posted on the user's web site. The user can indicate their level of satisfaction with the system, from “poor” to "good” to “excellent.”
  • the present invention surpasses current internet based chat technology that requires users to manually enter queries that are answered by a silent, faceless entity.
  • the system enables users to push the communication button and instantly receive a live audio and video connection to a trained Internet concierge who can answer questions about how to use the Internet, create a customized web site for the user, and perform tasks that are too complex for all but the most sophisticated Internet users.
  • the system is also adapted to store and back-up an individual user's data, thus removing both user's concerns about data storage and rendering other storage/back-up media unnecessary.
  • the present invention is readily applicable to any web site, whereby a user of the system accesses another person's or entity's web site, such as a web site of a business, and such web site provides the user with real-time communication with an assistant or concierge who is dedicated to assisting users of such web site.
  • assistant preferably assists the user in navigating or exploring such site, finding information on such site, answering the user's questions regarding such site and the products or services available from such site, understanding and comparing such products and services, purchasing such products and services, implementing such transactions and obtaining feedback regarding such products and services.
  • the assistant uses an assistant application to create personal web page or personal page for the user or visitor accessible through the implementor or business web site (sometimes referred to herein as the business web site).
  • the personal page on the business web site contains any information desired by the user and is personalized for the user, and accessible only by the user (or other users designated by the user).
  • This embodiment promotes communication between the user and the implementor of the web site by creating a personal page for the user, that includes information of interest to the user.
  • the system enables an assistant to create a page solely accessible by the implementor (including its assistants) and the user (including the user's designees). The user can assess this personal page or return to this personal page to obtain information or purchase items or services, rather than turning to alternate channels for such information or purchases.
  • the assistant Based on the assistants audio, audio-visual and/or textual communication with the user, the assistant distills the somewhat overwhelming amount of information provided by the web site down to information that is of interest to the user. Specifically, in creating the personal page, the assistant ensures it is not cluttered with technical jargon or information that is useless to an individual user, which might otherwise prevent the user from returning to the page.
  • the assistant determines what type of information contained on the web site is useful to the user, and how that information may best be presented to the user in a useful format.
  • the assistant preferably ensures that the useful information (as defined by the user) is included on the user's personal page.
  • the assistant may insert icons, symbols, buttons, or tools (including, without limitation, voicemail links, email links, pictures and search engine) into the personal page, creating a page that is friendly to that user.
  • icons, symbols, buttons, or tools including, without limitation, voicemail links, email links, pictures and search engine.
  • the assistant instructs the user in the use of the page during its creation, increasing the user's comfort level and enjoyment. This not only increases the likelihood that the user will return to the page in the future, but increase the user's usage of the weB site and the consummation of transactions with the implementor of the web site.
  • the personal web page is preferably password protected and enables the user to visit and use the user's personal page at any time desired by the user.
  • the personal page is adapted to become a running dialog, a communication record, information exchange record and a transaction dialog between the user and the web site implementor.
  • EXAMPLE A The first example of an implementation of the present invention provides a customer who is interested in booking a cruise through a web site of a major cruise line.
  • the site provides an overwhelming number of the cruise line's product.
  • the customer is unable to decide which, if any, of the many itineraries and ships is right for her vacation. Many questions come to her mind, and she is frustrated that she can't ask those questions. She starts to think that maybe she had better log off of this site and look at other sites. Or she decides to call her travel agent. In either case, the cruise line business has lost the opportunity to sell to this customer at this point in time, for this particular trip and maybe forever.
  • the scenario starts the same, but at the point where the customer is presented with many complex options, she is able to click on an icon or communication button that says "Would you like personal help?" She clicks on this icon, and a live representative (i.e., an assistant, customer service representative, or concierge) from the cruise line's reservations department appears on the screen.
  • a live representative i.e., an assistant, customer service representative, or concierge
  • the cruise line would also have the option to make only live text chat or an audio channel available, at its discretion in accordance with the present invention.
  • the assistant can also, with the customer's permission, navigate the customer's browser in order to escort her to appropriate pages on the cruise line's web site or to appropriate sites on the internet, such as a site featuring scuba information for one of the stops on a cruise itinerary.
  • the assistant creates a personal web page or personal page for the customer that stores her favorite choices on a personal web page.
  • An illustration of a personal page is provided in Fig. 25.
  • the personal page includes cruise options, an object display such as the weather in the destination and links for other sites.
  • the personal page (a) enables the customer to subsequently access the personal page on her own, reviewing her choices by accessing links on the page, and showing her chosen options to, for instance, her spouse; and (b) on the next session, enables the customer to click a link on the personal page and be put back in touch with a live sales representative.
  • This person can use the information on the customer's personal page to immediately understand the state of the transaction between the business and the user, the information the user has obtained and prices quoted to the user.
  • the system of the present invention enables the assistant who helps the user to access the user's personal page simultaneously with the user.
  • the assistant can change or modify the user's personal page as necessary using the assistant application. It should also be appreciated that the functions previously mentioned with regard to the user's personal web site can be similarly employed in the personal page of the user and that the above-mentioned assistant or concierge functions can be similarly employed.
  • the creation and use of the personal page accessible by the user through the business web site accordingly helps the user obtain information and understand the transaction and help the business consummate the transaction and service the user's needs.
  • the customer can access the personal page to review their trip information and access help from a live representative at any time.
  • the business could regularly provide information to the customer regarding the cruise and could also provide links to other sites for cruise-related needs for the customer on the user's personal page.
  • the system can provide e-mail or other notifications as desired to the user of such additional information on the user's personal page.
  • the personal page After the cruise, the personal page gives the cruise line a private place to have a personalized dialogue with this customer, obtain feedback from the customer on the trip and deliver (manually or automatically by predefined business rules) information that will help turn this first-time buyer into a long-term loyal customer. Reservations, confirmations, previous orders, links, service applets, advertising, data, services, surfing suggestions and other information may be dynamically customized to fit the end-user's individual preferences and browsing patterns.
  • the personal page provides thereby a unique place for the businesses to customers during and after the sales process.
  • Businesses can use the a personal page as a customized entry point for: (i) customers to learn about products and services, execute transactions, and engage in one-to-one interaction with customer support personnel; or (ii) a dynamic corporate intranet through which corporate employees can access e-mail, HR information, company news, and other data.
  • the system thus focuses on empowering the human customer service representative and fostering a relationships between the consumer and the business, rather than technology designed to eliminate humans from the transaction process.
  • the system facilitates customizable personal pages which enable businesses to personalize their relationship with customers through targeted offerings and tailor-made services, and thereby reduce customer-switching rates.
  • the system enables businesses to be perceived as more trustworthy and to attract loyal customers through communication channels and the personal page which create a customer experience marked by convenience and ease.
  • a valuable customer of a financial services firm accesses the firm's web site and logs on by entering his user name and password.
  • the customer's personal page is the first screen viewed by the customer, and it contains the customer's content and services, including financial news, account activity, and advertisements for new financial products.
  • the customer may request a financial services agent (via the Internet or the telephone) and requests: (a) the execution of a stock transaction; (b) the transfer of funds from a money market account to a trading account; and (c) a link to a new financial newsletter. Then, the customer can wait online for the agent to complete the request or log off. The agent will perform the transactions based on the customer's instructions and record execution information.
  • the agent will modify the customer's personal page to add a link to the specified newsletter using drag-and-drop Java or HTML applets.
  • a record of prior activity and requests is maintained to help the firm's agents provide a higher level of customization to customers and expedite redundant tasks.
  • the agent can confirm completion of tasks: (a) verbally while the customer is online or, if the customer logs off; (b) by telephone; (c) by e-mail; or (d) by posting information on the customer's personal page.
  • a partner at a national law firm accesses the web site and logs on by entering his user name and password.
  • the partner's personal page is the first screen viewed, and it contains the partner's content and services, including news regarding a recent antitrust trial, a golf newsletter, and e-mail from clients.
  • the partner requests an assistant (via the Internet or the telephone) and requests: (a) a gift to be purchased and sent to a relative; (b) research on a secondary news source regarding developments in antitrust law; and (c) travel arrangements to a golf resort advertised in his newsletter.
  • the partner can wait for the assistant to complete the request or log off.
  • the assistant will shop for the gift based on the partner's instructions and record purchasing/tracking information, delivery date, and the gift message.
  • the assistant will book travel arrangements for the partner pursuant to the partner's instructions.
  • the assistant will research the secondary news site and, with the partner's permission, modify the personal page to add a link to the secondary news source using drag-and-drop Java or HTML applets.
  • a record of prior activity and requests is maintained to help the assistant provide a higher level of customization and expedite redundant tasks.
  • the assistant can confirm completion of the tasks verbally while the partner is online or, if the partner logs off, by telephone, or by e-mail.
  • FIG. 22A generally illustrates an interface provided to the assistant by the preferred alternative embodiment of the assistant application.
  • This interface 700 includes a textual communication section 702 for communicating with the user and a working section 704.
  • the interface illustrated in Fig. 22A illustrates that the assistant is not connected to or in communication with a user.
  • Fig. 22A also illustrates a communication request box 705 which informs the assistant that a user is waiting to speak to the assistant and enables the assistant to accept or decline speaking to the waiting user.
  • the assistant application After the assistant establishes communication with a user, the assistant application enables the assistant to perform a plurality of functions. These functions are accessible to the assistant in a conventional manner.
  • One function includes obtaining a user profile using the customer profile button 710 as illustrated in Fig. 22B.
  • the user profile includes basic information regarding the user.
  • the assistant can use a user emulator or customer browser button 712 to view the web site or web page displayed to the user by the user's browser. This replaces the separate emulation terminal provided in the above described embodiment of the present invention and thus enables the assistant to switch back and forth between viewing what the user sees and the page editor or other features available through the assistant application.
  • the assistant application includes a page editor button 714 which enables the assistant to access and edit the user's web page.
  • the assistant application further includes a browser function accessible through an agent browser button 716 which enables the user to search the Internet using the browser associated with the assistant application.
  • the assistant application also includes: (a) a redirect log accessible using redirect log button 718 which keeps track of where the user has been redirected to or sent to; (b) a chat log accessible using a chat log button 720 which keeps track of the textual communications between the user and assistant; (c) an edit log accessible through the edit log button 722 which keeps track of the changes the assistant makes to the user's web page or personal page; and (d) a comments function accessible through the comments button 724 which enables the assistant to enter comments and notes regarding the user.
  • the assistants who subsequently communicate with the user can access the comments section to learn about the user from previous assistants who have communicated with the user.
  • the page editing function of this embodiment of the assistant application is generally illustrated in Fig.
  • FIG. 22C which illustrates the visual representation of the user's page in object format provided to the assistant.
  • the assistant can drag, move, insert, replace and change these objects in the user's web page using a plurality of tools similar to the tools described with respect to the previous embodiment of the assistant application.
  • the page editor preferably includes a preview function as illustrated in Fig. 22D which enables the assistant to view the modified user's page without committing the changes.
  • the assistant uses the customer browser button to view the user's changed web page as illustrated at Fig. 22E.
  • the user can also use the customer browser to view another web page or web site viewed by the user as illustrated in Figs. 22F and 22G.
  • FIG. 22F and 22G illustrate two alternative web sites which are not part of the system of the present invention.
  • the assistant can direct the user's browser to any web site.
  • Fig. 22H further illustrates a function of the assistant application which enables the concierge to view how they look to the user to ensure that the assistant maintains a professional appearance.
  • SYSTEM SECURITY It should be appreciated that the system of the present invention can use VeriSign or RSA Security to employ advanced intrusion detection software to identify and respond to malicious activity targeted at the system network, and employ real-time correlation and audit trail processing to ensure user confidentiality and security.
  • the system can provide: (a) visual authentication using two-way video, whereby human assistants will be able to authenticate the end-user's identity by comparing the video image of the end-user with a digital picture of the end-user before proceeding with a sensitive transaction; (b) verbal code authentication using two-way audio, whereby human assistants will be able to authenticate the end-user's identity by requesting the end-user's code phrase before proceeding with a sensitive transaction; and (c) encryption using sophisticated encryption technology, to encrypt e-mail and use confidential data storage via the VPN.

Abstract

The present invention relates to an Internet service system (4) which provides users with real-time communication with an Internet concierge (8) to facilitate the use of the Internet.

Description

INTERNET SERVICE SYSTEM
PRIORITY CLAIM
This application claims the benefit of the U.S. Provisional Application Serial No. 60/168,178, filed November 30, 1999.
COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains or may contain material which is subject to copyright protection. The copyright owner has no objection to the photocopy reproduction by anyone of the patent document or the patent disclosure in exactly the form it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
DESCRIPTION
The present invention relates in general to an Internet service system, and in particular to an Internet service system which provides Internet users with real-time communication with an assistant, customer service representative or concierge who facilitates ease of use of the Internet, assists the user in creating personal user web pages and facilitates user transactions through the Internet.
BACKGROUND OF THE INVENTION
Business and personal use of the Internet exponentially increased in the 1990's and will continue to increase in the twenty-first century. Millions of people have access to or use the Internet and millions of web sites are accessible via the Internet. An estimated 900 million URLs were registered in 1998, and the number of registered URL's is expected to be above 13 billion in 2003.
Nevertheless, vast numbers of people are not using the Internet or are not benefiting from the full potential of the Internet because they are intimidated or frustrated by: (i) computers; (ii) the disorganized nature of the Internet; (iii) difficulties in navigating the Internet; (iv) technical jargon; (v) confusing Internet technology; (vi) complications in obtaining information from the Internet; and (vii) other obstacles faced while using the Internet and web sites on the Internet. For example, Internet search engines require users to learn relatively complex search techniques. Searches using such systems often produce hundreds or thousands of matches which the user cannot easily or quickly review or decipher. Other potential uses of the Internet are inhibited by incompatible software and technical glitches. People who experience difficulties with the Internet often do not know how or where to obtain assistance. When help is available, lengthy waits for customer service, software crashes and struggles with unfamiliar jargon and technology often sour the experience.
The vast majority of Internet sites do not provide readily accessible personalized high-quality customer service. According to a 1999 Jupiter Communications survey, ninety percent of online customers prefer human interaction and forty percent of all respondents said they would be more comfortable with online purchases if there were more human contact. According to a Dell Computer survey, nearly sixty percent of the respondents indicated that they would be interested in assistance in computer and Internet use. Despite the apparent demand reflected by these surveys, the Jupiter Communications survey indicates that only ten percent of online merchants offer chat or callback buttons for communicating with users or customers. Consequently, most online vendors offer little or no real customer service. Moreover, many web sites take a long period of time to answer customer inquiries, never reply to customer inquiries or do not accept customer e-mail.
Similarly, many of the current Internet content and access providers or portals also do not offer an adequate level of personalized assistance to Internet users in general, and particularly to potential users with psychological barriers to adopting new technology such as the Internet.
This problem is even more potentially disastrous for businesses. The Internet has created a new electronic marketplace in which businesses are finding it difficult to turn Internet shoppers (i.e., people who access a web site to find product or service information) into Internet buyers (i.e., people who access a web site and buy a product or service). This is, in part, because most business or commercial e-commerce web sites are largely technology-driven, and designed to create high-tech vending machines that require customer self-service. While users may be able to self-manage certain transactions without assistance, there are many points in product and service purchase transactions which require a more dynamic flow of information between buyers and sellers than provided by currently existing e-commerce web sites. This is especially true for higher cost products and complex services. Potential customers are frustrated when they cannot rapidly or easily obtain this information through the web site, and consequently, many businesses with web sites are losing sales because their web sites are unable to react to immediate customer questions.
Existing e-commerce web sites are thus a step backward in customer services and interactivity. The desire to automate people out of the sales process, along with the use of new electronic technology, has resulted in a new marketplace with substantial sales conversion inefficiencies and dramatic customer service problems.
More specifically, with the emergence of the Internet as a globally accessible, fully interactive medium, numerous transactions that have traditionally been conducted in person, through the mail or over the telephone are increasingly being conducted through the Internet without human intermediaries (referred to herein as "disintermediation"). The recent rise in popularity of Internet auctioneers (such as eBay), Internet portals (such as Yahoo!), and business portals (such as VerticalNet) have contributed to a rapid expansion of sales to consumers and businesses via the Internet. Generally, online auctions, portals, exchanges and other self- service web sites tend to emphasize technology over human intermediaries. Proponents of online disintermediation point to the reduction of market inefficiencies and transaction costs as reasons for the success of portals, auctions and exchanges.
Despite the apparent popularity of online portals, auctions and exchanges, users are having an increasingly difficult time finding the information they are looking for on the Internet in general, and on specific web sites due in part to the vast amount of content, services and e- commerce available through the Internet. As mentioned above, an estimated 900 million URLs were registered in 1998, and that number is expected to rise above 13 billion in 2003. Computer-driven Internet search engines often generate hundreds or thousands of results that require time, patience and a discerning eye to locate relevant information. Even successful searches do not guarantee complete or relevant information. One source indicates that a search on Yahoo! covers merely 7.6 percent of the estimated Internet. Thus, even well designed web sites require users to dig blindly through layers of information rather than offering an efficient, intuitive user experience. Search engines and automated customer support are less than satisfactory solutions that typically yield non-specific or inaccurate results. Inevitably, users become frustrated, resulting in abandoned visits to web sites, lost sales to businesses, further fact-finding sessions, and useless online shopping trips. Many business web sites are thus not facilitating product or service purchases as anticipated Contrary to the popular belief that people prefer self-directed online transactions because such transactions can be faster, less expensive and more convenient than transactions conducted through human intermediaries, only 2 percent of households trade equities online, and less than 0.1 percent of households purchase airline tickets through airline web sites. The Harvard Business Review has explained that "many companies have bought into the myth that the Internet is a self-service channel. They assume they should let their online customers help themselves to whatever product or service they need, be it reserving their own airline tickets or configuring their own automobiles. The problem is that when a company does less, the customer ends up doing more and most customers don't want to do more. In may cases, self-service sites just leave customers frustrated and annoyed."
Other studies indicate that: (i) customer service is the primary reason customers return to a site; (ii) the key to growing e-commerce profits is to maintain customer loyalty by offering live online customer service from representatives; (iii) 57 percent of online consumers actively look for web sites that offer good customer service; (iv) 63 percent of Internet users will not buy over the Internet until they receive more human interaction; and (v) nearly 35 percent of recent online shoppers said they would buy more if they could interact with a sales person in real time.
Most importantly, for businesses, sources indicate that 70 percent of online shoppers abandon their electronic shopping carts before completing a transaction, and according to IBM's research, "the reason they stopped was because they needed answers to questions about their purchase that weren't available on-site . . . They wanted to speak to a human being, not send e-mail messages."
Accordingly, there is a need for easy to use, readily accessible internet-based systems and web sites which: (i) emphasize convenience over technology-driven self-service features; (ii) enable businesses to consummate a higher percentage of transactions or sales through their web sites; (iii) enable businesses to interact with customers before, during and after a transaction; (iv) enable business to assist and provide personal service and information to their customers through their web site; (v) provide high quality personalized service to Internet users; (vi) facilitate ease of use of the Internet and such web sites; (vii) reduce the fear of the Internet from potential users; (viii) enable Internet users to realize the extraordinary utility of the Internet; (ix) reduce the frustration and labor associated with navigating the Internet; (x) reduce the atomized and disorganized nature of the Internet; (xi) substantially reduce the technical, psychological and other obstacles to the Internet; and (xii) and personalize web sites.
SUMMARY OF THE INVENTION
The Internet service system of the present invention overcomes the above problems associated with the Internet by providing: (a) each user of the system with easily accessible real-time communication with an assistant or concierge who is part of a team of Internet assistants or concierges who are dedicated to assisting the system users in using the Internet; (b) users of a web site with easily accessible real-time communication with web site assistants, customer service representatives ("CSRs") or concierges who are dedicated to assisting the web site users to obtain information from the web site, consummate transactions through the web site, and provide other customer service through the web site; and (c) users of a web site with one or more user specific personal pages which facilitate use and re-use of the web site, consummation of transactions via the web site and communication of information between the users and the business via the business web site.
The Internet service system of the present invention is referred to herein for brevity as the "system" and the user's dedicated or personal web site or page, home page, web site or Internet desktop is referred to herein as the "user's web site," "dedicated web site" or "personal web site" or "personal page." However, the scope of the invention is not intended to be limited by such abbreviations or any other abbreviated terms used herein to describe the present invention, components or processes thereof.
One embodiment of the Internet service system of the present invention provides each user or group of users with a general dedicated or personal web site, Internet desktop or personal web page. The Internet service system enables the user to access through this personal web site or page to contact a member of a team of Internet concierges to obtain assistance at any time desired by the user. In this embodiment, the user's web page includes a communication button or link which the user can click on at any time to reach an Internet assistant or concierge provided by the system of the present invention. When the user indicates that the user seeks assistance or desires to communicate with an Internet assistant or concierge by clicking on this button, the system establishes real-time audio and visual communication between the user and an assistant or concierge through a communication page or dialog box which the system displays on the user's computer screen adjacent to the user's web page. The system preferably employs an architecture that enables it to be adapted to any video conferencing or video client system standard. In this way, the system establishes such communication between the user and the assistant or concierge.
The system of the present invention preferably employs broadband technologies to increase the speed of data transmission between the user and the assistant to facilitate such real-time two-way audio and at least one- way video streaming (i.e., system to user), although it should be appreciated that the system is or may be adapted to work through currently available modem communication technology (i.e., 56k dial-up). The audio communication is fully duplexed to enable the assistant or concierge and the user to verbally communicate simultaneously. Further, if the available bandwidth diminishes, the system is preferably adapted to reduce the video feed and to maintain the audio feed or communication intact. Moreover, the system of the present invention is capable of analyzing connection quality and is preferably adapted to vary the fidelity of the audio and video feeds in order to maintain the best audio communication. In this embodiment, the system simultaneously establishes conventional chat or textual communication between the user and the assistant or concierge through the communication page, alternatively referred to herein as the concierge communication page. If there is a problem with the audio or visual communications between the user and the assistant or concierge, or if the user's computer is unable to process the audio or visual communications, the textual communication enables the user and assistant or concierge to communicate. Additionally, if there is a problem with the user's computer, if the user is not at a computer (or other Internet accessible device) or if the user does not know how to use a computer, the system enables the user to contact an Internet assistant or concierge by conventional or cellular telephone communications.
When communication is established between the user and the assistant or concierge, the system displays the concierge communication page on the user's computer screen adjacent to the user's web page. The system may also display a timer on the user's screen to enable the user to determine how long the user has been in communication with the assistant or concierge. The concierge communication page includes a video box or window for displaying the video of the assistant or concierge and textual boxes or windows for displaying the textual communications between the user and the assistant or concierge.
In one embodiment, the system provides each assistant, CSR or concierge with a working terminal and a user emulation terminal. The working terminal runs an assistant, CSR or concierge application which provides the assistant or concierge information regarding the user and the user's web site, and enables the assistant or concierge to build or change the user's web site or redirect the user's browser. The working terminal enables the assistant or concierge to textually communicate with the user and includes an audio-visual conferencing client which enables the concierge to orally and visually communicate with the user. The emulation terminal emulates the user's computer (i.e., the browser on the user's computer). Specifically, when communication is established between a user and an assistant or concierge, the user emulator terminal displays what the user is viewing on the user's computer such as the user's web site displayed by the user's browser and the concierge communication page displayed by the user's browser. The system of the present invention thus enables the assistant or concierge to see exactly what the user sees on the user's computer through the user emulator terminal.
The system and specifically the assistant application enables the assistant or concierge to build, change or modify the user's web site or redirect the user's browser to another web site and to see the exact changes to the user's web site on the user emulator terminal. This enables the assistant or concierge to assist the user in real-time to use the Internet and to customize the user's web site or personal web page. The user's web site thus evolves in real-time as the user describes to the concierge the desired services on the user's web site, the desired information and links to other web sites on the user's web site and the desired look and feel of the user's web site. The system thus enables the user and the assistant or concierge to simultaneously view shared data and enables the concierge to see and control the user's HTML pages. In an alternative preferred embodiment of the present invention, the system provides the assistant, CSR or concierge with a single terminal which performs the combined functions of both the working terminal and emulation terminal. The assistant or concierge accesses the assistant application, communicates with the user and views the emulation of the user's computer through a single computer terminal. In one embodiment, the system enables an assistant or concierge to access and change the user's web site when the user is not connected to the assistant or concierge or the user's web site. For instance, if the user hears about a new web site on the radio in the user's car, the user can call the system, contact an assistant or concierge and have the assistant or concierge place a link to the desired new web site on the user's web site. Similarly, the user can have the assistant or concierge conduct other research for the user and place the results on the user's web site. The user can access this information at the user's convenience. Alternatively, the assistant or concierge could provide more complex research results to the user via e-mail or other suitable result delivery tools (i.e., facsimile, mail, etc.). The Internet service system of the present invention including the user's general or dedicated personalized web page is available regardless of the mechanism the user uses to access the Internet (i.e., dial-up access, DSL, cable, wireless, satellite or other technology).
In one embodiment, the system can be adapted to route users to specific assistants or concierges (if available) to increase the likelihood that each user communicates with the same assistant or concierge or limited number of assistants or concierges on a regular basis to develop personalized relationships between the user and the designated assistants or concierges which dramatically increases the user's comfort level and therefore increases the user's use of the Internet. The system enables the user to feel comfortable using the Internet and specific web site implementing the system of the present invention as discussed below because the user knows there is an assistant or concierge waiting to assist the user if the user needs such assistance. The system can also store information regarding the interest of the users and passwords of the user which enables the assistants or concierges to suggest, offer and provide Internet services to users. Each Internet assistant or concierge provides continuous friendly assistance and customer service to the users of the system. It should be appreciated that the assistant or concierge can communicate with the user in English or alternatively, in other languages as desired by the user. If the user indicates that the user desires communication in a designated language, the system of the present invention can be adapted to assign assistants or concierges fluent in such language to assist such user or provide translation software to enable English-speaking assistants or concierges to communicate in foreign languages. The system can be adapted to employ voice recognition systems to capture user request and corresponding assistant's or concierge's responses to create a database which eventually enable users to ask a question of an automated or virtual concierge and receive the same response that was previously provided to other users making the same request. In one embodiment, the system also can be adapted to dynamically generate a web page based on user profiles. Specifically, the system could be adapted to create a database which includes links and other information users of certain profiles have on their personal or dedicated web sites. The system could be adapted to determine the user profiles of new users (such as the sex, address, age and income) and generate a suggested web page for the new user based on this information, the database and other demographic information.
In one embodiment, the system includes an assistant application which enables the assistant or concierge to communicate with the user, to edit the user's web page and to perform other functions of the system of the present invention as mentioned above. The assistant application includes a login window which requires the assistant or concierge to enter his or her username and password to use the assistant application. The assistant application presents the concierge with a main window prior to connection with a user which provides the assistant's or concierge's personal identification and other information unique to the assistant or concierge. When the assistant or concierge is connected with a user, the assistant application updates the main window of the assistant application viewed by the assistant or concierge to indicate the user's personal identification, web site information and other information which may be needed for the assistant or concierge to assist the user. It should be appreciated that the system may employ any other suitable user and assistant identification systems such as verbal authorization, retinal scan, finger print analysis, and access card or key devices. This main window displays the textual communication between the concierge and the user in the user text box or window and the assistant text box or window. The assistant or concierge can type in a textual message to the user in the entry text box or window of the main window. The edit window of the assistant application enables the assistant or concierge to change the user's web site as indicated above. The edit window includes a tree abstraction or structure of objects that are present on the user's web site. As explained below, the concierge highlights the object in the tree abstraction to obtain the information which is unique to the specific object highlighted. By highlighting the appropriate objects in the tree abstraction, the assistant application produces the relevant information in the edit window which enables the assistant or concierge to edit such information and thus change the user's web site. The assistant or concierge can make temporary changes to the user's web site, review these changes and then permanently make these changes to the user's web site. This enables the assistant or concierge to alter what the user sees on the user's web site.
For example, the assistant or concierge may place the appropriate URL for candles.com in the appropriate location in the edit window. This places the link on the user's web site. To enable the user to view the link or location of the link on the user's web site, the assistant or concierge must commit to or permanently make this change to the user's web site. When the assistant or concierge commits to this change, the assistant application saves this change to the appropriate database. Upon redirecting the user's browser to the user's URL, the user will see this link on the user's web page and the assistant or concierge will see this link on the user emulator terminal.
However, another preferred embodiment of the assistant application of the present invention does not require highlighting the object in a tree abstraction. In the preferred embodiment, the assistant application provides graphical representations of the user's web site. These graphical representations can be modified by selecting an item and then editing the properties of that item. For example, edits may be made to the object in a drag and drop manner. Particular attributes of an object may be accessed and changed by editing the object's properties. Such editing is achieved through a variety of ways, such as right clicking on the object to view a menu of properties of the object and selecting properties from a context menu or selecting an object and clicking the properties button in the tool bar. It should be appreciated that the assistant application could be configured in any suitable manner.
It should be appreciated that if the user does not know how to use the user's computer at all, the user may use the system's telephone number to contact a member of the Internet assistant or concierge team as mentioned above. An assistant or concierge will assist the user in initializing their computer, in learning about how to use the user's browser and in connecting to the system. Thereafter, the user may use this telephone connection at any designated time to contact an assistant or concierge. Specifically, if a user wants an assistant or concierge to conduct a search for the user and place the search results on the user's web site, the user can contact an assistant or concierge at such time. The assistant or concierge can conduct the search and can place an appropriate link on the user's web page whereby the user can access that link at a convenient time for the user. This saves a significant amount of time for the users in searching the Internet or a particular business web site. Also, this enables the user to essentially conduct searches on the Internet without being directly connected to the Internet. In one embodiment, the system may also be adapted to enable the assistant or concierge to control (i.e., move and click) the mouse of the user. This enables the assistant or concierge to explain to the user how to perform certain functions and allows the user to watch and learn how to perform certain functions on the Internet. In one embodiment, the system could further be employed to monitor a user's use of the Internet. For instance, if a parent wanted to monitor a child's use and exploration of the Internet, the system could emulate the user's browser on the emulation terminal. If the assistant or concierge sees that the user is visiting undesirable sites or viewing offensive content as designated by the parent, the assistant or concierge may communicate with the user and may redirect the user's site. It should be appreciated that an assistant or concierge monitoring such use of the Internet will preferably have a plurality of user emulator terminals or multiple windows on a single terminal to enable the assistant or concierge to simultaneously monitor a plurality of users.
The system could employ a file transfer protocol infrastructure or a Virtual Private Network ("VPN") concept and infrastructure. Similar to conventional VPNs, each user accesses the user's own data via the user's web site. The system thereby enables the users to store all their contacts, e- mail addresses, calendars, word processing documents, spreadsheets, stock portfolios, banking information, pictures, and other data on their web site which the user may access from any compatible computer or Internet accessible device in the world.
The Internet service system of the present invention accordingly provides many advantages to users and potential users of the Internet. One embodiment of the system generally enables each user to build or select the contents of the user's web site tailored to the user's interests without the clutter, advertisements and other obstacles currently present on many web sites and throughout the Internet. More specifically, one embodiment of the Internet service system of the present invention: (a) provides an easily accessible system for providing assistance to users in using the Internet; (b) substantially reduces the need for users to seek assistance from individual web site proprietors; (c) reduces the need for the users of the Internet to have experience with technology or the Internet; (d) assists users with all Internet questions, problems and requests; (e) assists users in accessing and navigating the Internet; (f) enables users to request searches on the Internet for web sites and information for the users; (g) conducts searches for users and places the results of the searches on the user's customized secure web site; (h) reviews web sites and research topics for the users thereby reducing the need for the users to conduct searches or wade through lengthy search results; (i) selects Internet features and services which suit the users' needs; (j) develops and creates customized secure web sites for users; (k) changes or modifies the customized web sites of users; (I) removes technical jargon and other obstacles from the Internet; (m) accomplishes other tasks for the users; (n) provides access to information, services and features available on the Internet which are unknown to the user; (o) enables the user to save time and efficiently use the Internet; (p) provides a convenient way for users to access the Internet; (q) facilitates fulfillment of goods and services brought over the Internet; (r) provides a system that has a mechanism by which the user can change the configuration of his/her own web site without the aid of an assistant or concierge if so desired; (s) increases the transition to automation by simplifying for users automated functions that, prior to having human assistance, were prohibitively confusing, intimidating or difficult and thereby provide a bridge to automation; and (t) facilitates the necessary level of assistance for establishing user self-sufficiency on the Internet.
The above described features, functions and advantages of this embodiment of the present invention are also provided in the alternative embodiments of the Internet service system of the present invention wherein a web site has a communication link to an assistant and wherein the web site is adapted to provide a personal page on the web site for each user of the site as discussed below. The personal web page for a user enables pertinent information about a transaction between a user and the web site implementor such as a business to be stored and effectively communicated to both the user and the implementor.
This embodiment of the present invention thereby facilitates rapid and efficient information exchange and promotes communication between the user and the system implementor. The system enables the assistant to help the user create a personal web page on the web site containing information of interest to the user as well as to the implementor regarding the user. The user or assistant may include information, tools and links that supplements the information gleaned from the web site. The user's personal page enables this information to be subsequently accessed by the user and an assistant. Access by an assistant to the information enables the assistant to immediately know and understand information (such as available products or services and price quotes) provided to the user as well as the user's interest. The personal web page also creates an on going communication channel between the user and the implementor of the web site. This communication channel can be used to convey further information to the user during or after a transaction (between the user and the web site implementor). This communication channel can also be used to obtain feedback from the user and answer the user's questions regarding the products or services. Moreover, this direct communication channel facilitates further transactions between the user and implementor of the web site. It is therefore an advantage of the present invention to provide an Internet service system to assist users in using the Internet.
A further advantage of the present invention is to provide a system for enabling businesses to interact with customers through their web site before, during and after transactions.
A still further advantage of the present invention is to provide a personal page for a user on a business's web site which facilitates transactions and communications between the users and the business and helps consummate transactions therebetween. Other objects, features and advantages of the invention will be apparent from the following detailed disclosure, taken in conjunction with the accompanying sheets of drawings, wherein like numerals refer to like parts, components or processes.
BRIEF DESCRIPTION OF THE DRAWINGS
Figs. 1 is an illustration of an example user web site and concierge communication page provided to users by one embodiment of the Internet service system of the present invention;
Fig. 2 is an illustration of a customized user web site of one embodiment of the Internet service system of the present invention;
Fig. 3 is an illustration of a plurality of different tools, applications, links and files or objects which can be stored or accessed through a user web site of one embodiment of the Internet service system of the present invention; Fig. 4 is a schematic diagram of the network of one embodiment of the Internet service system of the present invention;
Fig. 5 is a schematic diagram of a concierge cluster of the one embodiment of Internet service system of present invention; Fig. 6 is a schematic diagram of the connection between a user and concierge provided by one embodiment of the Internet service system of the present invention;
Fig. 7 is a flowchart of the overall user interaction with one embodiment of the Internet service system of the present invention;
Fig. 8 is a flowchart of the concierge application initiation and connection process of one embodiment of the Internet service system of the present invention;
Fig. 9 is a flowchart of the concierge login process of one embodiment of the Internet service system of the present invention;
Fig. 10 is a flowchart of the redirection and assignment process of one embodiment of the Internet service system of the present invention;
Fig. 11 is a flowchart of the textual communication process of one embodiment of the Internet service system of the present invention; Fig. 12 is a flowchart of the audio-visual communication process of one embodiment of the Internet service system of the present invention;
Fig. 13 is a flowchart of the command applet process of one embodiment of the Internet service system of the present invention;
Fig. 14 is a flowchart of the page editing process of one embodiment of the Internet service system of the present invention;
Fig. 15 is a flowchart of the commit changes process of one embodiment of the Internet service system of the present invention;
Fig. 16 is a flowchart of the move object process of one embodiment of the Internet service system of the present invention; Fig. 17 is a flowchart of the add object process of one embodiment of the Internet service system of the present invention;
Fig. 18 is an illustration of the user login screen of one embodiment of the Internet service system of the present invention; Figs. 19A to 19J are illustrations of the concierge application windows provided to the concierge by one embodiment of the Internet service system of the present invention;
Figs. 20A to 20C are illustrations of customized user web sites showing features, tools and applications which can be added to a user's web site to customize the user's web site in one embodiment of the Internet service system of the present invention;
Fig. 21 is a schematic diagram of a network of an alternative embodiment of the Internet service system of the present invention; and Figs. 22A through 22H are illustrations of concierge application or assistant application windows provided to the assistant or concierge by an alternative embodiment of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
The Internet service system of the present invention operates over and is accessible to users through the Internet, Publicly Switched Telephone Network ("PSTN") and similar architected networks. The Internet service system of the present invention can be adapted to any wired or wireless communication system or device. Generally, the Internet is a cooperatively run, globally distributed collection of computer networks that exchange information via Transmission Control Protocol/Internet Protocol ("TCP/IP"). TCP/IP is the basic communication protocol which is the foundation of the Internet and all other protocols are built on top of TCP/IP. The World Wide Web (the "web") is a hypertext information and communication system widely used on the Internet and built on top of TCP/IP. Uniform resource locators ("URLs") are the scheme by which Internet resources are addressed on the web. URLs can point to numerous resources on the Internet, which are stored in databases on servers such as web pages, Hyper-Text Markup Language ("HTML") documents or pages, data files, pictures, sound files, movie files and database search engines.
One embodiment of the Internet service system of the present invention is adapted to simultaneously provide each of a plurality of users of the system with easily accessible real time communication with an assistant or concierge who is part of a team of Internet assistants or concierges who are dedicated to assist the users in using the Internet. For simplicity, the Internet service system or system of the present invention is sometimes described herein primarily in relation to a single user, although the system of the present invention is adapted to be simultaneously used by multiple users. Also for simplicity, an assistant, customer service representative ("CSR") or concierge are used interchangeably herein and concierge application and assistant application are used interchangeably herein. It should also be appreciated that several of the figures include one or more of the following trademarks used by the assignee of this application in a current embodiment of the present invention: (a) LIGHTFLOW; (b)
LIGHTFLOW.COM; (c) YOUR CONCIERGE CONNECTION; (d) CALL CONCIERGE; (e) CONTACT PERSONAL ASSISTANT; and (f) CONTACT CONCIERGE. It should be appreciated that these trademarks are not part of the system of the present invention.
DEDICATED WEB SITE EMBODIMENT
Referring now to Figs. 1 to 6, one embodiment of the Internet service system of the present invention, generally indicated by numeral 2, includes a networked plurality series of servers including web servers 12, database servers 14, IMAP servers 16, NFS file servers 18, billing servers 20 and other servers (or services) 22 which may provide additional tools (Fig. 3). The system 2 further includes a plurality concierge clusters 24 and a plurality of user computer terminals, Internet access devices, PSTN access devices or devices used to access similarly architected private networks 30. The system 2 provides each user with a dedicated customizable password protected web site 4 (Fig. 1) which the user can access at any time through the Internet using a browser on the user's computer or other Internet access device. The user's web site 4 may be customized at the direction of the user (by the user) with or without the assistance of the concierge. The user's web site 4 includes a communication button or link 6 which the user can click on to request assistance from or communication with a concierge. As discussed in detail below, when the user clicks on the communication button 6, the system establishes real-time communication between an available concierge that has the highest probability of meeting the user's anticipated need as determined by the system using a concierge matching process as discussed below, and, preferably, with a concierge the user has previously communicated with. The system 2 displays on the user's terminal a concierge communication page 8 adjacent to the display of the user's web site 4 (Fig. 1). The user visually and textually communicates with the concierge through this concierge communication page 8. The user also communicates orally with the concierge through the concierge communication page 8 although there is no indication of the oral communication on the concierge communication page 8.
Generally, this embodiment of the system 2 includes a plurality of web servers 12, as illustrated in Fig. 4, that serve the user web pages and provide configurable modules for handling access to and dynamic construction of pages requested by the users (in this embodiment). The concierge assignment and the concierge redirection modules of the system 2 which are described below also run on the web servers 12. The databases on the database servers 14 generally maintain the user information and other information necessary to generate the users' web pages (in this embodiment). The database servers 14 generally store HTML code or text for each user's web page which lists or identifies the applet's on the user's web page and instructs the user's browser to place the applets on the user's screen. The applets may be located on publicly available servers throughout the Internet or in a folder on the system 2, such as one of the web servers 12 or concierge main workstations. The IMAP servers 16 generally receive and store the user's e-mail and to facilitate e-mail use. The NFS file servers 18 generally store user files and generated user web pages. The billing servers 20 generally keep track of each user's use of the system, specifically including the communication time between the users and the concierges.
More specifically, the system 2 includes a plurality of databases on the database servers which store the relevant and necessary information for the system to operate. This includes a tools database on the database server which includes the tools which the concierge uses to build and change the user's web site as described below. As discussed below, the majority of the tools produce pieces of HTML code for including different elements in a web page. Web server configuration files and other pure text files can also be generated from tools in this database. The main purpose of these tools is to produce HTML for web pages, which is a language with a natural tree structure emulated by these tools.
The system also includes: (i) a user database which contains general data for each user, including names, locations, and various personal details to be made available to the concierge; (ii) a concierge database which contains personal information on concierges; (iii) an active concierge database which contains real-time information on which concierges are logged into the system and which, if any, users they are connected to; (iv) a concierge history database which keeps track of all times that concierges have spent logged on and additional per-concierge-session tracking information; (v) a history database which keeps track of all concierge-user interaction (if desired), recording any chatting, recording the audio and video feeds that are sent and received during the concierge session; (vi) a passwords database which contains usernames and associated passwords to various services including a password for accessing the system, other passwords for other services on the Internet, and digital images and encrypted identification keys for more advanced identification schemes at the user request; (vii) a preferences database for storing information regarding user's preferences; and (viii) a pages database which stores for each user within the system a collection of pages which all have a file name and path associated with them. The pages database also includes external pages that are not completely defined within the context of tools and parameters from the tools database. These pages specify an external method for obtaining the relevant data. The system copies data from an external source to the target location based on the page's name or creates symbolic links to files, obtain files from external sources.
As illustrated in Fig. 4, this embodiment of the system 2 includes a plurality of concierge clusters 24. Each concierge cluster 24 includes a concierge main workstation 26, a plurality of concierge working terminals 28 which communicate through the network with the concierge main workstation 26 and a plurality of user emulation terminals 29 which communicate through the network with the concierge main workstation 26. The concierge main workstation 26 runs the concierge application and web services for users connected with concierges in the associated concierge cluster 24. Each concierge has a concierge terminal 28 which displays the concierge application as discussed below and a user emulation terminal 29 which displays the connected user's web site and the concierge communication page 8 to the concierge. In an alternative preferred embodiment of the present invention, the emulation terminal 29 is integrated as a window or tab on the assistant application as illustrated in Figs. 22A to 22H, and thus the assistant or concierge needs to view only one terminal. This reduces the overall cost of implementing the system and the potential breakdowns in the system having two physical terminals for each assistant or concierge. This alternative embodiment of the assistant application is discussed in greater detail below.
At any one time, several of the concierge working terminals 28 and emulation terminals 29 will be connected or in communication with users (i.e., busy) and several concierge terminals 28 and emulation terminals 29 will not be connected to users (i.e., idle and awaiting connection to users). At any one time, a user may: (a) not be using his or her browser; (b) be browsing other web pages; (c) be at or using the user's web page but not communicating with a concierge; or (d) be at or using the user's web page and communicating with a concierge through the concierge communication page 8.
As further illustrated in Figs. 5 and 6, for each concierge, the concierge application runs on the concierge main workstation 26. Each concierge terminal 28 consists of a Java based client application that includes a video conferencing client module that is adaptable for interaction using a number of different video conferencing protocols including, but not limited to, H.323 for audio, video and data communications across a number of different networks. This architecture is applicable across numerous platforms. For example, any device with a Java Virtual Machine ("JVM") may be used as a concierge workstation. Each client emulator 29 includes a browser 25 which displays the appropriate command applet which is communicating with the concierge application and is being served by the concierge main workstation. Fig. 6 illustrates the communications or interactions between (a) the system web server 12, (b) the concierge main workstation 26, the concierge terminal 28, and the client emulator 29 of the same concierge cluster, and (c) a user computer connected with the concierge terminal 28. The X-server on the concierge terminal displays an instance of the concierge application (running on the concierge main workstation) on the screen of the concierge terminal 28. The user's and emulator's chat applets and command applets send data to and receive data from the instance of the concierge application. The main web server 12 and the concierge main workstation 26 both serve pages to the user's and emulator's browser. It should also be appreciated that the user's and emulator's chat and command applets must be served from the concierge main workstation 26 to enable the transfer of data between the applets and the concierge application. This restriction is determined by the Java security model. Java is a trademark of Sun Microsystems, Inc. The videoconferencing clients on the concierge terminal and the user's computer enable the concierge and the user to communicate with real-time audio and video.
As illustrated in Figs. 1 , 2 and 3, the system enables the user to customize the user's web site with the assistance of a concierge. As illustrated in Fig. 3, the user's web site can include: (a) pointers to text documents 31 which are stored in data storage or databases 32; (b) pointers to spreadsheets 33 which are also stored in data storage or databases 32; (c) other files (not shown) stored in databases 32; (d) links 34 to web sites or Java applets 35; and (e) applets which enable the user to (i) upload and download text documents, spreadsheets, and other files in the database or from the NFS file servers, (ii) store links to the user's favorite web sites, (iii) provide access to additional applets, such as news and stock tickers, and e- mail applications.
Fig. 21 generally illustrates an alternative embodiment of the present invention in which the user accesses the system through an Internet access device, e.g., a computer terminal 604, via the Internet 606 or a PSTN access device, e.g., wired or wireless telephone 608, via an automated call distributor 610. The communications through the Internet 606 are routed through a web server 612 and then to a multi-media switch 614. Similarly, the communications through the PSTN access device are routed to the automated call distributor 610 and then to the multi-media switch 614. It should thus be appreciated that both Internet and telephone communications with the system will be routed and handled through the same communication channel multi-media switch 614 in this embodiment. The multimedia switch communicates the Internet and telephone communications to a call processing framework 628 which routes the calls to call centers as described below. The call processing framework includes a customer queue 630 for maintaining incoming and waiting user communications, a matching process 632 for matching users with assistants, and service applets 634 for servers 628a in the call processing framework. The call processing framework communicates with a lightweight directory access protocol 636 to provide for user authorization in a conventional manner.
The system is preferably adaptable to use by any Internet, wireless Internet, PTSN or similar network access device. This includes, for example, PDA's, cell phones, Internet enabled appliances, such as a refrigerator, and the like. As such, the system is adaptable to any wired or wireless communication system or device.
It is known that web pages may be dynamically created each time a web page is requested. More specifically, when a user requests a web page, the user's request goes through the Internet to a web server. The web server accesses a database to get the page information from the database to dynamically construct the page. The database returns the requested data to the web server. The web server builds and formats the page and then sends the page to the requester via the Internet. Accordingly, for each user request for each web page built, at least one connection is required to the database. If numerous users request the page at the same time, the database needs to be accessed for each user request. This substantially slows down the system.
As illustrated in Fig. 21 , the alternative preferred embodiment of the system of the present invention provides an alternative system for accessing and for obtaining the web pages. After a page is generated the first time or after a change, it is stored on a shared disc storage 620. More particularly, when a page is initially created (i.e., such as a user web page or a personal page as discussed below) the assistant or concierge application server 622 accesses the database 618 to format and build the page and then stores the built page in the shared disk storage 620; therefore, a page is not dynamically generated when the user requests that page (i.e., the page is already created). Each time that the page is changed, the new changed page is generated and stored in the shared disk storage 620. Accordingly, this system enables multiple users and assistants to access the specified pages in a more efficient manner which requires less access of the database. This is especially important because many user web pages and personal pages will include objects therein rather than just links to other pages. Preferably, the user web pages or personal pages will be composite pages of selected objects from other pages. This shared disk storage embodiment of the present invention thus creates a significantly more efficient system than if each page which includes objects which are taken from different pages needs to be dynamically rebuilt upon end user request.
Fig. 21 further illustrates that, in the preferred alternative embodiment of the present invention, system users 604 are routed into a particular call center 624a or 624b based on suitably intelligent IP routing which enables networks to understand information about applications which: (i) the user may want to run on the system, such as where the user is logging in from and what the user may do from such location; or (ii) can run on the system based on user characteristics, such as if there is not internet connection for video, the system will not send video signals. More specifically, the user 604 is routed to a call center that is most appropriate for the user based upon, for example, geographical location of the user, network topology, the time of day, etc.
Call centers are physical locations that run supporting software systems and have operational support. In addition, call centers have server banks that host communities of software. The communities of software are linked to a central nervous system that manages all communities as a federation as described in more detail in U.S. Patent No. 6,009,464. In this regard, the central nervous system is a home base to all persistent storage devices and software including the data bases described above, authentication services and a universal tupple space for the storage of objects. The system is therefore platform independent, making it accessible to users of a variety of devices. Moreover, it requires no user configuration or setup for use of the system. It should be appreciated that several different routines or processes could be used to route callers to specific assistants, concierges or groups of assistants or concierges as described below.
It should be appreciated that certain of the system processes described below are described in conjunction with the embodiment in which the system dynamically generates each page; however, it should be appreciated that the system can store and access the appropriate pages as described above.
USER INTERACTION WITH SYSTEM
Referring now to Figs. 7 to 18, and particularly to Fig. 7, to access the system 2 through the Internet, the user enters the system URL into the user's conventional browser on the user's computer or other Internet access device (collectively referred to herein as the "user's computer"). The user's browser requests the system web page from the system web server 12 as indicated by block 40. The user's browser determines if the user's browser has a cookie associated with the concierge communication page 8 as indicated by diamond 42.
If the user's browser has a cookie associated with the concierge communication page 8, the user's browser sends the cookie to the system web server 12 as indicated in block 44. The system web server 12 validates the cookie as indicated by block 46. If the web server 12 determines as illustrated by diamond 48 that the cookie is not valid or if the user's browser does not have a cookie associated with the system URL, the system web server 12 sends the login form page 52 as illustrated in Fig. 18 to the user's browser as indicated by block 50. The user must enter the user's username and password into the login form page 52 and must submit the form to the system web server 12 as indicated by block 54 to use the system. The system web server 12 validates the username and password submitted by the user as indicated by block 56. The system web server 12 determines if the username and password are valid as indicated by diamond 58. If the username and password are not valid, the system web server 12 sends the login form page 52 to the user's browser. The system may also display an invalid username or password message to the user.
After a user provides a valid username and password, the web server sends a cookie (having the encrypted username and password) to the user's browser as indicated by block 57. The browser stores the cookie on the user's computer as indicated by block 59. The next time a user's browser requests the user's web page, the user will not be required to fill in a login form since the cookie (having the valid encrypted username and password) will be sent to the system web server by the user's browser.
Thus, if the username and password are valid, or if the cookie is valid, the web server 12 determines if the user or user's browser requested the concierge communication page 8 as indicated by decision diamond 60. If the user's browser did not request the concierge communication page 8, the system web server 12 sends the requested page (i.e., the user's web page) to the user's browser as indicated by block 62. The user's browser displays the page sent by the system web server 12 as indicated by block 64. If the user's browser requested or subsequently requests the concierge communication page 8, the system 12 performs the redirection and assignment process (discussed in detail below) to assign a concierge to the user as indicated by block 66, and establishes communication between the concierge and the user as described below. Generally, the system 12 determines if a concierge is assigned to a user as indicated by diamond 68 and as described in detail below. If no concierge is available to be assigned to the user, the system web server 12 sends a busy page to the user's browser as indicated by block 70 and the user's browser displays the page (i.e., a concierge busy page) sent by the system web server 12 to the user's browser as indicated by block 64. If a concierge is assigned to the user, the system initiates a Java interface or communication between the concierge and the user including: (i) the textual communication process which facilitates two-way textual communication between the user and the assigned concierge; (ii) the audio-visual communication process which facilitates two-way audio-visual communication between the user and concierge; and (iii) the command applet process which facilitates communication of commands, data or signals between the user's computer and the concierge application as indicated by blocks 72, 74 and 76, respectively, and as described below.
The user at any time may click on the communication button or link 6 to facilitate or to establish communication with a concierge team member. Upon receipt of a request for a team member, as discussed in detail below, the system 2 finds the concierge, starts a billing routine which keeps track of the amount of time the user communicates with the concierge and provides communication between the user and the concierge. The system also provides the selected concierge with the user's web site and other relevant information to enable the concierge to view the user's web site on the user emulator terminal 29. The system 2 enables the assigned concierge to change the user's web site during the communication (or at any other time as requested by the user). The changes occur in real-time and the system 2 adjusts the appropriate databases with these changes as necessary. Upon the user's request to terminate the communication between the user and the concierge, the system 2 disconnects the communication between the user and concierge. In another embodiment, the user may be required to install a security certificate that enables the Internet system software to operate. The user can access the system from a variety of different devices via the security certificate, making the system platform independent. The use of security certificates is a common industry practice employed to protect computer users from potentially executing malicious code from unknown sources.
Existing customers can securely log on to their account and access their personal web site. Similar to the logon system described above, user authentication occurs when the user enters a user ID and password. The user ID and password is passed over a secure channel to web server extensions, for example Industry Standard ISAPI web servers, that are programmed to validate the user's authenticity and create a passport that authorizes access to the system. If the logon attempt is successful, the system creates a session that contains the user's authentication passport and other general user information such as, the user's name and login ID.
In this example, the system then retrieves the user's web site, adds any required dynamic content, and writes this back to the user's web browser. If a web server becomes unavailable, any sessions that are being hosted on that server will be lost. If the affected user has a security certificate, the system enables the user to log in without being prompted for a user ID and password. However, if the affected user does not have a security certificate, the user is required to go through the login process again.
CONCIERGE APPLICATION INITIATION AND CONNECTION
As indicated above and as illustrated in Fig. 8, before establishing the connection or communication between the concierge and the user, the system 2 initiates the concierge application for the concierge as indicated by block 80. The concierge application binds a port in the concierge main workstation through which the user's chat applet and command applet may connect to, send data to, and receive data from the concierge application as indicated by block 82. The concierge application then initiates the concierge login process 83 generally illustrated in Fig. 9 and described below. The concierge application waits for a connection to a user on the bound port as indicated by block 86. If no connection on the port is established, the concierge continues to wait for connection on the port as indicated by diamond 88.
If a connection on the port is established, the concierge application identifies the user and connection type as indicated by block 90. The system 2 also notifies the concierge of the connection with the user as indicated by block 92. The concierge application loads the user's web site in the web browser on the user emulator terminal as indicated in block 94 to facilitate the page editing process (discussed below) and as indicated by block 96. The concierge application loads the concierge communication page 8 in another browser window on the user emulator as indicated by block 98 as generally illustrated in Fig. 1. The textual communication process, audiovisual communication process and command applet process are also implemented as indicated by blocks 72, 74 and 76, respectively, and as mentioned above and described below.
CONCIERGE LOGIN PROCESS
Referring now to Fig. 9, before the concierge uses the concierge application as mentioned above, the concierge must login to the concierge application. The concierge application displays the login window (Fig. 19A) to the concierge on the concierge terminal as indicated by block 91. The concierge application monitors the concierge terminal to determine if the concierge desires to exit the concierge application (i.e., presses the exit button) on the login window as indicated in by diamond 93. If the concierge desires to exit the concierge application, the concierge application terminates as indicated by block 95. If the concierge enters the concierge's username and password into the login window as indicated by block 97, the concierge application determines if the username and password are valid as indicated by diamond 99. If the username and password are not valid, the concierge application may send an invalid username or password notice to the concierge and awaits the user to enter a valid username and password or exit the concierge application.
If the username and password are valid, the concierge is logged into the system as indicated by block 101 and the concierge application updates the appropriate database on the database servers 14 to include the port number of the bound port, the IP address of the concierge main workstation of the designated concierge cluster and the IP address of the concierge terminal in the cluster as indicated by block 103. Updating the database with the above-mentioned data indicates that the concierge is available for a user connection.
It should be appreciated that the present invention could utilize any suitable login processes. By way of example, and not limitation, login processes such as retinal scanning process, finger print analysis or security tokes (e.g., access cards) may be used.
REDIRECTION AND ASSIGNMENT PROCESS The redirection and assignment process, as illustrated in Fig. 10, determines which concierge is available to communicate with a user who has requested assistance from a concierge and insures that communication pages are served from the concierge main workstation to avoid Java security issues. Upon receiving such request, the system web server 12 runs the concierge redirection module which in turn runs the assignment module as indicated by blocks 102 and 104, respectively.
The assignment module queries the database on the database server 14 to verify if a concierge has been assigned to the user as indicated by block 106 and the system determines if the user already has an assigned concierge as indicated by diamond 108. If the user does not already have a concierge assigned to him or her, the assignment module queries the database to find an available concierge as indicated by block 110. The assignment module preferably determines the most appropriate concierge for the user by giving preference to concierges with the most contact with the user, thus resulting in users building relationships with a select group of concierges they have communicated with most often. The system preferably connects new users to new concierges with the least number of user communications to balance the number of users interacting with any given concierge. The assignment module determines if there is an available concierge as indicated by diamond 112. If there is not an available concierge, the redirection module redirects the user's browser to a busy page which indicates to the user that all concierges are busy and that the user should try again to recontact a concierge in a designated period of time as indicated by block 114. If there is one or more available concierges, the assignment module determines the most appropriate concierge of the available concierges for the user as indicated by bock 118 and assigns the appropriate available concierge to the user by updating the database to reflect the user-concierge assignment as indicated by block 118.
The concierge assignment module is preferably flexible. The above is one example of the concierge assignment module. As indicated above and discussed in detail below, the system may be configured to assign incoming calls to the concierge most likely to effectively answer the callers query based on observed patterns of caller behavior and known areas of concierge expertise. Moreover, concierge assignment module may vary by industry needs and application of the system. To this extent, the concierge assignment module is preferably a configurable module to meet the objectives of the system. If the user has a concierge assigned or the assignment module assigns an available concierge to the user, the assignment module notifies the redirection module that a concierge has been assigned to the user as indicated by block 120. The assignment module also informs the redirection module of the port number bound by the concierge application, the IP address of the concierge main work station and the IP address of the concierge terminal as indicated by block 122. The redirection module informs the concierge application of an incoming user connection as indicated by block 124. The redirection module retrieves the concierge information (such as the concierge's name) from the appropriate database as indicated by block 126. The redirection module retrieves the concierge communication page from the system NFS file server 18 as indicated by block 128. It should be noted that while it is preferred to use NFS file servers, any file serving mechanism or platform may be incorporated. The redirection module incorporates the concierge information, port number, IP address and the IP address of the concierge terminal into the concierge communication page 8 as indicated by block 130. The system web server 12 then sends the concierge communication page 8 to the user's browser as indicated by block 132. The system web server 12 also sends the concierge communication page 8 to the browser on the user emulation terminal.
As indicated above, the user emulator terminal emulates the user's browser and then displays the web site which the user is viewing on the user emulator terminal. The emulator preferably has a similar operating environment to the user's operating environment so that the concierge will be able to view exactly what the user views. For example, the concierge can see the user's web site that the user is viewing or is redirected to by the concierge. TEXTUAL COMMUNICATION PROCESS The textual communication process 72 of the system 2, as illustrated in Fig. 11 , establishes real-time textual communication between the user and the assigned concierge. The textual communication is presented to the user and the concierge through the concierge communication page 8 as illustrated in Fig. 1 in combination with the audio-visual communication. The concierge communication page 8 includes a text box or window 140 for displaying the concierge's written communication to the user, a text box or window 142 for displaying the user's written communication to the concierge, a text box or window 144 for the user to type his or her written communication, and a close button 148 for enabling the user to terminate communication with the concierge. After typing the textual message, the user may hit the send button 146 or the enter button on the keyboard to send the data (i.e., textual message) to the concierge. Generally, the chat applet detects this keyboard event, displays the user's input in the user text box 142 and sends the data to the appropriate concierge application.
More specifically, the user's browser initiates a conventional chat applet for textual communication as indicated by block 152. The chat applet establishes a connection to the assigned concierge port number and assigned concierge IP address previously specified by the concierge redirection module as indicated by block 154. Establishing a connection through the port number and IP address assigned through the redirection module enables data transfer between the chat applet and the appropriate instance of the concierge application (and thus, a textual communication pathway between the user and the appropriate concierge). The chat applet sends the user identification data and connection type through the port to the concierge application as indicated by block 156. The concierge application identifies the user and connection type as indicated by block 158 and loads the concierge communication page 8 in the browser on the user emulator terminal as indicated by block 160. The user or the concierge may type in the chat window at any time communication is open between the user and the concierge. The user's chat applet determines if the user types information in the chat window as indicated by diamond 162, or if the user closes the communication connection as indicated by diamond 176. If the user does not type in the chat window or if the user does not close the communication with the concierge, the user's chat applet waits for the user to type in the chat window or exit the communication process.
If the user types a textual communication in the chat window and indicates that the user wants to send the textual communication to the concierge, the chat applet sends the user input through the bound port as indicated by block 164. The concierge application sends the user's input text to the user, concierge and emulator chat sockets as indicated by block 166. The user's input is displayed in the user communication page 8, the concierge application chat window (Fig. 19B) and user emulator chat windows as indicated by block 168.
The concierge may also type in the chat window. The system determines if the concierge types in the chat window as indicated by diamond 170. If the concierge types in the chat window and indicates that he or she wants to send the textual communication to the user, the concierge application sends the input to the user communication page 8, concierge application chat window (Fig. 19B) and emulator chat window as indicated by block 172. The concierge input is displayed in the user communication page 8, concierge application chat window (Fig. 19B) and emulator chat windows as indicated by block 174. This textual communication process may be repeated at any time as desired by the user and the concierge until the user closes the connection.
The system monitors the concierge communication page to determine if the user closes the connection with the concierge as indicated by diamond 176. If the user closes the connection with the concierge, the system closes the connection between the user and the concierge as indicated by block 178. The concierge application also logs the connection record to the appropriate database on the database servers 14 as indicated by block 180. The system updates the appropriate database to indicate that the concierge is available for another user connection.
AUDIO-VISUAL COMMUNICATION PROCESS The audio-visual process 74 of the system, as illustrated in Fig. 12, establishes audio-visual communication between the user and the assigned concierge simultaneously with the textual communication process 72 described above. The system 2 initiates the video conferencing application as indicated by block 190. The user's video conferencing application establishes the connection to the IP address of the concierge workstation previously specified by the concierge redirection module to establish a video conferencing link between the user and the concierge as indicated by block 192. The user and the concierge communicate in real-time through visual and audio communications while connected as indicated by block 194. The user may continue communication for as long as desired. The system may facilitate two-way fully duplexed audio communication (H. 323) and two-way real-time video communication (H. 323). The system may facilitate such communication using a number of conferencing applications and protocols. For example, Microsoft's Netmeeting may be employed as both a client-side browser plug-in and concierge side program or any other suitable audio and video communication systems. The system monitors the concierge communication page 8 to determine if the user closes the connection with the concierge as indicated by diamond 196. If the user closes the connection or logs out of the user's computer system, the video conferencing application closes the connection between the user and the concierge as indicated by block 198. The multimedia component functions with the audio and video hardware recognized by the computers operating system without any user configuration. Preferably, no plug-ins or software installations are required. The audio and video is preferably continuously synchronized and streamed over Real-time Transport Protocol via a Uniform Datagram Packet (UDP) socket in real-time. Receipt of the continuous audio and video data stream is delayed by, for example, (a) processing time from origin, (b) network latency, (c) processing time at destination, and (d) data buffering at destination. This delay is monitored by intelligent control software that keeps time decay (measured as the difference between the point in time when the data was created to the time in which it is reproduced) at acceptable levels. This is accomplished by adjusting fidelity (the quality of the audio and video). The fidelity of the data stream is optimized to maximize quality by the software depending on the amount of Internet bandwidth available to the user. The software continuously monitors bandwidth and fidelity metrics, and intelligently determines the best combination to provide the user with the best possible real time multimedia experience without skipping or otherwise losing data segments. A minimal amount of data buffering is used to provide basic fault tolerance over fluctuating network conditions to insure continuous stream integrity and prevent excessive interruption or skipping while minimizing the time delay experienced. If the software determines that the available fidelity does not fall within acceptable ranges, the software may either advise against a subset of functionality or make it unavailable such that video may be unavailable, while audio will function normally.
COMMAND APPLET PROCESS The system includes a command applet process 75, as illustrated in Fig. 13, for determining who the user is, the location of the user's data and to enable the concierge to access and modify the user's data, web site and to redirect the user's browser. The user's browser loads the concierge communication page 8 and initiates the command applet as indicated by block 202. The command applet establishes a connection to the bound port and IP address of the concierge work station previously specified by the concierge redirection module as indicated by block 204. The command applet sends the data, including the user identification and command connection type through the bound port to the appropriate concierge application as indicated by block 206.
The concierge application identifies the user and connection type as indicated by block 208. The concierge application loads the concierge communication page in the browser on the client emulator as indicated by block 210. The concierge may manipulate the user's browser by entering the necessary information in the concierge application on the concierge terminal (Fig. 19B) and sending such command sequences through the concierge application to the user's command applet and the emulator's command applet as indicated by diamond 212. The concierge application sends the command sequences (which are used to redirect the user's browser to a desired URL or alternative web page) through the bound port to the users and the emulators command sockets as indicated by block 214. The user and emulation command applets identify the command sequence sent by the concierge application as indicated in block 216. The command applet then determines if a redirection command is received as indicated by diamond 218. If a redirection command is received, the user's browser and the user emulation browser are redirected to a specified URL in a specified browser window as indicated by block 220. Thereafter, the user and emulation command applet await further command sequences.
If the user would like to explore a web site with the help of the concierge, the system thus enables the concierge to redirect the user's browser to the desired web site. Alternatively, if the user would like a search conducted, the concierge can conduct a search and then direct the user's web site to the appropriate URL or place a link to the appropriate URL in the user's web site. The user can then visit the selected web site by clicking on the link that the concierge places on the user's web site.
If a redirection command is not received, the command applet determines if commands other than a redirection command is received from the concierge application as indicated by diamond 222. The system may be adapted to enable the concierge to send other command sequences to the user's and emulator's command applet. If the concierge receives such a request from the user, the concierge sends an appropriate command sequence to implement the request and the desired behavior is implemented as indicated by block 224.
The system also determines if any errors occurred as indicated by diamond 226. If an error occurs, the command applet sends an error report through the bound port to the concierge application as indicated by block 228. The concierge application displays the error message to the concierge and awaits further commands as indicated by block 230. The system monitors the concierge communication page 8 to determine if the user closes the connection to the concierge as indicated by diamond 232. If the user closes the connection, the system 2 closes the connection between the command applet and the concierge application as indicated by block 234.
PAGE EDITING PROCESS The system 2 includes a page editing process 240, as illustrated in Fig. 14, which enables the concierge to construct and revise the user's web site without having to program the HTML from scratch. The system 2 enables the concierge and the user to see in substantially real-time the concierge updates of the user's web site. To edit the user's web site, the concierge opens the edit window (Fig. 19C) in the concierge application as indicated by block 242. The concierge application retrieves the user information including the user's web site and personal information from the database as indicated by block 243 and displays this information to the concierge in the edit window as a tree abstraction (Fig. 19C) as indicated by block 244. Upon the request from the user, the concierge may then edit the user's web site.
The concierge may select any object in the tree abstraction to edit or change as indicated by diamond 245 and illustrated in Figs. 19C through 19F. If the concierge makes this selection, the information pertaining to the object is displayed in the edit window as indicated by block 246 and illustrated in Figs. 19C through 19F. The concierge may make changes to the selected object information as indicated by diamond 247. If the concierge opts to make changes to the object information, the changes to the object information are made in the edit window as indicated by block 248. For instance, the concierge may choose to move an object from its current location in the tree abstraction of the user's web site (and thus the location of the object on the user's web site) as indicated by diamond 249. If the concierge does so, the concierge application performs the move object process as indicated by block 250 and as described below. The concierge may add an object in the edit window as indicated by diamond 251. If the concierge does so, the concierge application runs the add object process as indicated by block 252 and as described below. The concierge may remove an object in the edit window as indicated by diamond 253. If the concierge does so, the concierge application removes the object from the tree abstraction of the user's web site in the edit window as indicated by block 254. If the concierge chooses not to add an object or perform any of the above functions, as indicated by diamond 255, the concierge can close the edit window as indicated by block 260.
At any time the concierge may accept or commit to a change made in the concierge application edit window (as illustrated in Figs. 19C through 19F) as indicated by diamonds 256 and 258. If the concierge accepts or commits to a change in the edit window, the concierge application performs the commit changes process to save the changes temporarily made by the concierge to the object in the user's web site as indicated by blocks 257 and 259. If the concierge accepts the changes, the concierge application performs the commit changes process as indicated by block 257 (as described below) and closes the edit window as indicated by block 260. The concierge can also cancel the temporary changes as indicated by diamond 261. If the concierge does not cancel the changes to the object, the concierge may continue to edit the user's web site. The concierge may thus restore the object to eliminate the temporary changes. If the concierge restores the object, the concierge application retrieves the user information from the database as indicated by block 243, reconstructs the last committed tree abstraction of the user's web site, and displays the reconstructed tree abstraction in the edit window. This process refreshes the view of the tree abstraction of the user's pages for the concierge.
The concierge can show the changes to the user's web site to the user by redirecting the user's browser by sending a redirect command to the user's URL as specified in the command applet process.
The system 2 may alternatively provide the concierge with a click, drag and drop graphical user interface ("GUI") which enables the concierge to build the user's HTML pages for the user's web site in real-time without having to program the HTML from scratch. The concierge can modify the user's web site by adding, removing or modifying existing content through a document editor which is part of the assistant application. The document editor is based on the XML standard and uses custom defined tags as nodes to provide the editor with an organizational structure. When modifications to the user's web site are made, they are made in real-time, and upon browser refresh. In this regard, the user is updated of those changes. This enables each client to have a customized start page that an assistant can alter and modify based on the client's requests. Dynamic generation of HTML components is accomplished through drag and drop functionality on the concierge's workstation, and is generated in memory, in real time. The altered custom web site is then sent to the user, and saved for retrieval upon browser refresh.
In another embodiment, however, the user can change or modify the configuration of his/her own web site without the aid of a concierge or assistant.
COMMIT CHANGES PROCESS The concierge application enables the concierge to commit to the changes temporarily made to the user's web site when the concierge indicates that he or she wishes to commit the changes (i.e., presses the update button illustrated in Figs. 19C through 19F) as indicated by diamond 258 in Fig. 14. As further illustrated in Fig. 15, the concierge application updates the appropriate database in the database server 14 to reflect the changes to the user information as indicated by block 268. The concierge application retrieves the user's updated web site information from the database as indicated by block 270. The concierge application uses the information retrieved from the database to generate the user files, such as web pages or dynamically generated image files as indicated by block 272.
The concierge application determines if the source for the file to be generated is entirely derived from the tools in the database as indicated by diamond 274. If the source for the file to be generated is entirely derived from the tools in the database, the concierge application generates the user's files using the information retrieved from the database as indicated by block 276. If the source for the files to be generated is not entirely derived from the tools in the database, the concierge application generates the user's files using specifications from the database as indicated by block 278.
For example, in the case of a dynamically generated image, the information regarding the color, size, and other features for the image is stored in the database. The concierge application will run a suitable graphic application such as the GNU Image Manipulation Program (GIMP) with the specifications for the image retrieved from the database to generate the image file.
MOVE OBJECT PROCESS The concierge application enables the concierge to move objects on the user's web site, as illustrated in Fig. 16. To move an object on the user's web site, the concierge selects an object in the tree abstraction of the user's pages in the edit window as indicated by block 282. If the concierge chooses to move this object in the tree abstraction of the edit window as indicated by diamond 284, the concierge application moves the object from its parent node to another node in the tree abstraction as indicated by block 286. The objects are moved from one node to another node in the tree abstraction using the button process illustrated in Figs. 19C through 19F, or preferably a click, drag and drop GUI process.
ADD OBJECT PROCESS The concierge application enables the concierge to add one or more objects to the user's web site without having to program the HTML from scratch, as further illustrated in Fig. 17. To add an object to the user's web site, the concierge selects an object in the tree abstraction of the user's pages in the edit window as indicated by block 302 to indicate where the new or added object will be placed in the tree abstraction. The concierge requests the concierge application to open the add object window (illustrated in Figs. 19G and 19H), as indicated by block 304. The concierge application retrieves the information of all available objects from the database as indicated by block 306. The concierge application constructs a tree abstraction of the object's information retrieved from the database and displays the tree abstraction in the add object window as indicated by block 308. The add object window of the concierge application opens as indicated by block 310. The add object window displays the pre-defined tools (as described below) provided by the system for the concierge to select an object to add to the user's web site. The tree abstraction in the add object window (Figs. 19G and 19H) represent example available objects the concierge may add to the user's web site as also indicated by block 308. The system determines if the concierge selects an object in the add object window before adding an object to user's web site as indicated by diamond 312.
If the concierge chooses to add a selected object to a user's web site as indicated in diamond 314, the selected object appears as a child node of a selected object in the tree abstraction of the edit window as indicated by block 316. Alternatively, the add object method may involve a click, drag and drop implementation in which the concierge selects the object to add from the add object window and drags the selected object to the appropriate node in the tree abstraction of the edit window. If the concierge chooses to restore the tree abstraction in the add object window as indicated by diamond 318, the concierge application retrieves the object information from the database as indicated by block 320. The concierge application reconstructs the tree abstraction of objects with the information retrieved from the database and displays the newly constructed tree abstraction in the add object window as indicated by block 322, thus allowing the concierge to view a refreshed view of the objects tree abstraction. If the concierge chooses to add the selected object in the add object window (i.e., presses the okay button) as indicated by diamond 324, the selected object appears as a child node of a selected object in the tree abstraction of the edit window as indicated by block 326. The add object window is then closed as indicated by block 328. If the concierge chooses not to add the selected object (i.e., presses the cancel button in the add object window) as indicated by diamond 330, the add object window closes as indicated by block 332. Alternatively, the concierge may select another object in the add object window to add to the tree abstraction of the user's page in the edit window as indicated by diamond 312. The concierge may at any time close the add object window as indicated by block 332.
OTHER CONCIERGE APPLICATION FUNCTIONS The system 2 of the present invention also enables the concierge to obtain and store the user's passwords for other Internet sites and to obtain, store, change or alter the user's preferences for the user's web site. Specifically, at the request of the concierge, the concierge application provides a password window as illustrated in Fig. 191. The concierge can enter the URL of a web site, the user's username and the user's password in this password window and save this information in a password database in the database servers 14 for future use. This enables the concierge, on behalf of the user, to enter a secure web site or password-protected web site to perform a function or service for the user. This also enables the concierge to conduct such functions even though the user is not in communication with the concierge. Similarly, the concierge application includes a preferences window which enables the concierge to store preferences of the user. For instance, the user may have a desired look and feel for the user's web site that the user prefers. The concierge can easily store this information in the preferences database using the preferences window as illustrated in Fig. 19J.
EXAMPLE CHANGES TO USER WEB SITE
Referring now to Figs. 20A to 20C, the user's web site can be customized as desired by the user. The concierge will help the user customize the user's web site. Fig. 20A illustrates a user web site 4 which identifies the name of the user and includes a communication button 6 below the name of the user. Fig. 20B illustrates a user web site 4 with a border around the entire user web page, the identification of the user within the top border and the contact button 6 within the bottom border. These figures illustrate the infinite alternatives of how the concierge can help the user customize the look of the user's web site.
Fig. 20C illustrates that additional links, buttons or tools may be inserted on the user's web site 4. Specifically, the system provides a number of predefined tools, applications and links which the concierge can quickly select and place on the user's web site at the location desired by the user. For instance, the user can link to a quote system 400 to obtain stock quotes, have links 402 to contact relatives, have links 404, 406 and 408, respectively, to voicemail, e-mail and other applications such as a set of clocks. The user's web site can also include a list 410 of the user's files and documents which the user can access through the system, a list 412 of favorite web sites and a real-time feed 414 on certain stocks or other information. This illustrates how a user can place certain features on the user's web site in the order that they desire without having any technical skill by using the concierge to place these tools and applications on the user's web site.
An alternative structure for the web site is illustrated in Fig. 2. The user's web site in Fig. 2 illustrates that pictures can be placed on the user's web site and other applications such as clocks can be placed on the user's web site. This web site also includes a search engine readily available from the user web site.
The system provides a plurality of internal system applets and external system applets which the concierge can use to develop the user's HTML pages for the user's web site. The internally developed applets can be configurable such as search applets for submitting searches to a single specified search engine, search applets with a list of specified search engines, or search applets with a selection of categories of search engines. The internally developed applets could also include favorite applets for storing favorite links, configuration applets for manipulating the layout of and preferences for the web site and web site beautification applets including dynamically generated graphical items such as buttons and borders as illustrated in Figs. 20A through 20C. The applets can also be externally created such as an e-mail application, stock data charting and tracking, various other financial access applets, links to other secure access sites and news tickers to provide access to such sites.
The following is a list of example tools preferably in the system for enabling a concierge to build a user's web site:
TOOL FUNCTION
ActiveX Controls (stored on the web servers 12)
FTP tree utility This enables users to upload and download files from personal folders on the NFS server 18 and enables users to create and delete folders.
FTP upload folder This enables users to upload files to personal folder on the NFS server 18.
Java Applets (stored on the web servers 12 and concierge main workstations)
news tickers This displays headlines for the day (clicking on the headline opens a browser window with the associated article).
clocks This is a simple clock (color, time- zone, size of text may be customized to user's preference). search engines This enables users to search for a topic of choice using search sites and enables users to save searches for previously searched topics.
calculator This is a simple calculator.
customizable button This provides a button that may be used as a graphical representation of a hyperlink (text, color, and size of button may be customized to user's preference).
stock charts This displays detailed real-time information regarding particular stocks for specified stock symbols.
stock ticker This displays real-time stock information.
email This enables a user to check, save, and send email.
concierge chat applet This enables a user to communicate with a concierge through textual means.
concierge command This enables a concierge to redirect applet the user's browser. Forms
third party form This enables a user submit a form to a third party to obtain information such as information such as flights for a given departure location, destination, date and time of departure and return.
HTML Tags
html This provides an HTML tag which indicates an HTML page.
head This provides a head tag which includes title of HTML page.
body This provides a body tag which indicates body of HTML page.
Formatting
big This provides a big tag which displays text in larger size.
bold This provides a bold tag which displays bold text.
center This provides a center tag which centers objects.
font This provides a font tag which indicates attributes of text (size, font, etc.). italics This provides an italics tag which displays text in italics.
monospace This provides a monospace tag which displays text in monospace style.
small This provides a small tag which displays text in smaller size.
subscripting This provides a subscript tag which displays text as subscript.
superscripting This provides a superscript tag which displays text as superscript.
Tables
tables This provides a table tag which adds a table structure to HTML page.
tablerow This provides a table row tag which adds a table row structure to HTML page.
Frames
frame This provides a frame tag which adds a frame to HTML page.
frameset This provides a frameset tag which adds a frame set to HTML page Pieces
break This provides a break tag which indicates new line or carriage return.
button This provides a button tag which adds a form button to HTML page.
formatted text This provides a formatted text.
horizontal line This provides a horizontal line tag which adds a horizontal line to HTML page.
image This provides an image tag which indicates source of image to display in HTML page.
image sized This provides an image tag which indicates source of image and size of area to display the image.
link anchor This provides a hyperlink tag which indicates a hyperlink in HTML page.
paragraph This provides a paragraph tag which indicates a new paragraph in HTML page.
pure HTML This enables the concierge to write HTML code to add to an HTML page. Sound
background sound This adds background sound to HTML page (loops through sound file while page is viewed).
Scripts
open browser window This opens a new browser window to specified URL.
rename This names a browser window, enabling the concierge to control the specific window.
clock This is a clock.
customizable menu This is a menu that may be customized with specified headings and hyperlinks.
CUSTOMER WAITING QUEUE Fig. 21 illustrates an alternative preferred embodiment of the present invention (as discussed above) in which a customer waiting queue 630 is provided. Specifically, after the user 604 logs on and retrieves his or her web site, the user may utilize any of a variety of web site features. The web site features may be, for example, the communication button, links to other web sites, pictures previously downloaded, various applications and other objects. The communication button enables the user to directly contact a live concierge or assistant. If the user selects the communication button, a second browser window is opened and a web server extension is notified. At this time, an applet is loaded in the new browser window and begins to listen for a remote connection from the concierge system. The web server extension contacts a remote queue service and adds the user to the customer waiting queue. To this extent, the user's applet continues searching for a queue until it receives a ticket. The queue, on the other hand, contacts the user's applet to verify that the user is valid and delivers a queue ticket. Once the applet has received a ticket, it waits to be connected with the concierge or assistant.
The customer waiting queue service is part of a self-healing, self- managing distributed computing framework. Generally, the system preferably gathers metrics on system performance, network latency, hardware availability, user activities, concierge activities and other pertinent system management related data.
The customer queue is guaranteed to only execute on one network node by a local tupple space that participates in a transaction that conforms to ACID properties. The tupple space contains an object that holds a proxy to the active service. At service initialization, the customer waiting queue removes its proxy from space and checks the pointer. If the pointer is valid, the service ends and execution terminates. Otherwise, the proxy's pointer is added to the proxy and written back to space and the transaction is committed. If another service comes online while the transaction is open, the topple space will wait for the current transaction to finish. The transaction manager will automatically rollback a transaction if any of the participants become unavailable. To guarantee the safety of a user or customer who has called in for a concierge, the customer waiting queue delivers a ticket to the applet after certain conditions are met. For example, the customer queue may deliver the ticket after the customer is verified and the customer's connection data has been permanently persisted to a local tupple space. This ensures that in the event of system failure, the queue, when restarted by the management framework can quickly recover all of the live customers that are waiting by reading them back from the tupple space.
MATCHING PROCESS In one preferred embodiment, a separate concierge queue is provided. The concierge queue monitors the status of the concierges and gathers metrics on employee performance and habits. The concierge matching algorithm process 632 includes a pluggable, matching algorithm that is used to match the first waiting user or customer to the best matching concierge for the user or customer. The matching process is based on a configurable set of rules that are evaluated by a suitable rule engine.
It should be appreciated that several different suitable routines or processes could be used to route users or customers to specific assistants, concierges or groups of assistants or concierges. In particular, the preferred system provides a predictive analysis matching system with certain designated weightings. For instance, each of the users are preferably stored in a queue waiting for assistants. Each user has a series of attributes related to that user, for instance, the attributes could include the personal information, the user's interests, the user's age, the user's previous purchases, etc. Similarly each assistant would be put in a queue waiting for users. Each assistant has certain attributes such as the assistant's specialties, special knowledge, areas of expertise, language skills and which users the assistant has previously communicated with. Any suitable system desired by the implement or can be used or can be employed to determine which user should be linked up with what assistant at any one point in time. It should be appreciated that, of course, the assistant which is best suited to communicate with a waiting user will vary depending on which assistants are available and which users are requesting service.
When an appropriate match is determined, the queue calls the customer applet to make sure it is still alive and an event is sent to the chosen concierge's workstation. The concierge may either accept the waiting customer or decline. If the customer is accepted by the concierge, a connection to the customer applet is established under a transaction as described above regarding the customer waiting queue, and the customer proxy is removed from the tupple space and the queue is notified of receipt. To this extent, the transaction is engaged. The concierge is then live with the customer.
Once the concierge is live with the customer, disaster recovery is preferably initiated on the customer by adding them to a federations live user tupple space and the customer session is established to log events that take place while the concierge is servicing the customer. When the customer disconnects, the concierge may continue serving the customer/user offline before closing the session and making his/herself available for a new connection. Should the concierge system fail while live, an immediate attempt is made to recover the customer by connecting them to a new concierge in a different community if necessary via the federation. In the event of a total system failure, waiting customers are rerouted to the federation to be serviced by an available community. Also, if the federation notices that a particular call center is overloaded with waiting customers, it will intelligently transfer waiting customers to different call centers where the wait time can be reduced or eliminated.
When a customer establishes communication with a concierge, a direct connection is established from the concierge's workstation to the customer's applet. Such communication enables the concierge's workstation to invoke remote methods on the customer applet. The communication also provides for text-based chat and audio/video communications where available. The customer may communicate with their concierge via the text-based chat or a direct audio/video link depending upon the customer's hardware and Internet connection speed. The multimedia component that is used provides two-way audio (e.g., up and down) and one-way video (e.g., down) between the two systems with a user activated option to send video back (e.g., up). The chat component enables two-way text-based communication between the two systems.
SERVICE FRAMEWORK
In another embodiment of the present invention, a service framework provides artificial intelligence components that gather metrics on system performance, network latency, hardware availability, user activities, concierge activities, and other pertinent system management related data. From this information, the framework configures the system to run at an optimal and fail-safe performance level. Services that operate under the framework can be one of several types, depending on the specific needs of a particular service. Services may be guaranteed to execute at only one instance within the community. Additionally, services may include dedicated hardware standing by to takeover requests in the event of a failure. Alternatively, distributed services may have multiple instances that are intelligently load balanced, based on hardware utilization and network latency. Moreover, services may simply release a proxy that performs its work on the local processor and has no contact with its originating server. Services under the framework avail themselves to the world by announcing their presence to a service registrar that grants time based leases to services. Service registrars are located via IP multicast. This discovery process locates all registrars within the community and continues to execute in a separate thread that listens for new registrars that may join over time. Clients of the services use the same discovery process to find registrars with which the client may search for services that match a lookup query. This enables for clients to perform discovery and search for a service that may not be running yet and still find the desired service as soon as it becomes available. Services likewise can make a registration attempt either before or after a client searches for them and still be found. Services can execute the registration process before a registrar is available to grant a lease and still be registered when the registrar does become available. The service management framework supports the system and ensures that registrars are available for leasing and lookup and that an optimal number of business services are running to service a user's requests.
Moreover, services recover from partial failure by attempting to restart on the originating computer. If the computer itself has failed, a new service is started on a different computer. Objects are designed such that failure will not result in a loss of state, so clients of a failed service will experience no interruption of service except possibly a slight delay while rerouting. If a service cannot be restarted for any reason, requests for this service are rerouted to the federation where a matching service is found in a different community until the local service can be restarted. In the event of total failure, requests are rerouted to the federation to be handled by a different community. The system design is such that computers can be randomly unplugged and the system itself will not fail.
In the event of total failure, such as loss of electrical power and network connectivity, service will not be interrupted for users of the herein described system. The federation, which protects against total failure, is redundantly located in segregated logical, geographical locations, to prevent the federation from failing. If a federation becomes unavailable, the backup federation engages and resumes operation. Each community is capable of restarting itself and surviving failure by finding the federation.
CONCIERGE SEARCHING
In another embodiment, the concierge has the ability to perform such searches on behalf of the customer through a search service. The search services first through an affiliates database, then through a custom web site knowledge base, then on the Internet via a user selected search engine. The search results are presented and the concierge may open a link to check search accuracy. Moreover, the concierge may redirect the customer's browser to one of the web sites found. When a redirect command is sent, the URL is logged and the web page is opened on the concierge workstation. Links to the loaded web page are changed to point to the system web servers and the modified web page is sent to the user's web browser. The concierge may open new browsers on the user's computer as needed to invoke further redirect commands.
INTERNET CONCIERGE GROUPS The Internet service system of the present invention preferably includes Internet concierge groups which work closely with sub-departments responsible for various aspects of the Internet. For example, a group may have the responsibility for evaluating and researching e-commerce issues and making recommendations to the Internet concierges. The concierges may suggest these recommendations to the users. If a user needs help beyond the concierge's skill, the concierge can request specific help from another concierge or an Internet researcher of the system of the present invention.
Internet concierges are preferably articulate, intelligent individuals with pleasant dispositions, highly developed social skills, a neat personal appearance and a high degree of motivation. Hotel concierges, human resources personnel, telephone operators and other customer service representatives are likely to be suitable Internet concierges. The system researchers preferably include individuals with strong research skills and extensive Internet experience including librarians, recent college graduates, educators, analysts and data miners.
By supporting the concierges with researchers or research departments, the system specifically addresses users' needs in response to a request and designs solutions particular to each user's needs. The system may be adapted to track different requests by users to permit the efficient re- use of proven, previously configured solutions, and meet the unique needs of each user, rather than trying to meet all possible user needs.
The system also assures the quality of its service by frequently monitoring interactions between user and Internet concierges and closely monitoring user feedback. In one alternative embodiment of the present invention, the system includes an electronic gauge posted on the user's web site. The user can indicate their level of satisfaction with the system, from "poor" to "good" to "excellent."
The present invention surpasses current internet based chat technology that requires users to manually enter queries that are answered by a silent, faceless entity. The system enables users to push the communication button and instantly receive a live audio and video connection to a trained Internet concierge who can answer questions about how to use the Internet, create a customized web site for the user, and perform tasks that are too complex for all but the most sophisticated Internet users.
The system is also adapted to store and back-up an individual user's data, thus removing both user's concerns about data storage and rendering other storage/back-up media unnecessary.
PERSONAL PAGE EMBODIMENT As indicated above, the present invention is readily applicable to any web site, whereby a user of the system accesses another person's or entity's web site, such as a web site of a business, and such web site provides the user with real-time communication with an assistant or concierge who is dedicated to assisting users of such web site. Such assistant preferably assists the user in navigating or exploring such site, finding information on such site, answering the user's questions regarding such site and the products or services available from such site, understanding and comparing such products and services, purchasing such products and services, implementing such transactions and obtaining feedback regarding such products and services.
In a further preferred embodiment of the present invention, the assistant uses an assistant application to create personal web page or personal page for the user or visitor accessible through the implementor or business web site (sometimes referred to herein as the business web site). The personal page on the business web site contains any information desired by the user and is personalized for the user, and accessible only by the user (or other users designated by the user). This embodiment promotes communication between the user and the implementor of the web site by creating a personal page for the user, that includes information of interest to the user. The system enables an assistant to create a page solely accessible by the implementor (including its assistants) and the user (including the user's designees). The user can assess this personal page or return to this personal page to obtain information or purchase items or services, rather than turning to alternate channels for such information or purchases.
Based on the assistants audio, audio-visual and/or textual communication with the user, the assistant distills the somewhat overwhelming amount of information provided by the web site down to information that is of interest to the user. Specifically, in creating the personal page, the assistant ensures it is not cluttered with technical jargon or information that is useless to an individual user, which might otherwise prevent the user from returning to the page. The assistant determines what type of information contained on the web site is useful to the user, and how that information may best be presented to the user in a useful format. The assistant preferably ensures that the useful information (as defined by the user) is included on the user's personal page. Further, based on the assistant's communication with the user, the assistant may insert icons, symbols, buttons, or tools (including, without limitation, voicemail links, email links, pictures and search engine) into the personal page, creating a page that is friendly to that user. It should be appreciated that the assistant instructs the user in the use of the page during its creation, increasing the user's comfort level and enjoyment. This not only increases the likelihood that the user will return to the page in the future, but increase the user's usage of the weB site and the consummation of transactions with the implementor of the web site.
The personal web page is preferably password protected and enables the user to visit and use the user's personal page at any time desired by the user. The personal page is adapted to become a running dialog, a communication record, information exchange record and a transaction dialog between the user and the web site implementor.
The following examples further explain this embodiment of the present invention by providing details on the method of using such personal pages to facilitate transactions between business and customers through the business' web site.
EXAMPLE A The first example of an implementation of the present invention provides a customer who is interested in booking a cruise through a web site of a major cruise line. The site provides an overwhelming number of the cruise line's product. The customer is unable to decide which, if any, of the many itineraries and ships is right for her vacation. Many questions come to her mind, and she is frustrated that she can't ask those questions. She starts to think that maybe she had better log off of this site and look at other sites. Or she decides to call her travel agent. In either case, the cruise line business has lost the opportunity to sell to this customer at this point in time, for this particular trip and maybe forever.
In the implementation of the system of the present invention, the scenario starts the same, but at the point where the customer is presented with many complex options, she is able to click on an icon or communication button that says "Would you like personal help?" She clicks on this icon, and a live representative (i.e., an assistant, customer service representative, or concierge) from the cruise line's reservations department appears on the screen. The cruise line would also have the option to make only live text chat or an audio channel available, at its discretion in accordance with the present invention.
This live representative is able to explain the product options and help counsel the customer to make the choice that is right for her. The assistant can also, with the customer's permission, navigate the customer's browser in order to escort her to appropriate pages on the cruise line's web site or to appropriate sites on the internet, such as a site featuring scuba information for one of the stops on a cruise itinerary.
As the customer begins to settle on a few possible cruise options, the assistant creates a personal web page or personal page for the customer that stores her favorite choices on a personal web page. An illustration of a personal page is provided in Fig. 25. The personal page includes cruise options, an object display such as the weather in the destination and links for other sites.
If the customer is not able to make a final decision during this session, the personal page: (a) enables the customer to subsequently access the personal page on her own, reviewing her choices by accessing links on the page, and showing her chosen options to, for instance, her spouse; and (b) on the next session, enables the customer to click a link on the personal page and be put back in touch with a live sales representative. This person can use the information on the customer's personal page to immediately understand the state of the transaction between the business and the user, the information the user has obtained and prices quoted to the user. The system of the present invention enables the assistant who helps the user to access the user's personal page simultaneously with the user. This enables the assistant to quickly and easily determine what information the user has, what stage of the process the user is at, and how the assistant can best serve or help the user. The assistant can change or modify the user's personal page as necessary using the assistant application. It should also be appreciated that the functions previously mentioned with regard to the user's personal web site can be similarly employed in the personal page of the user and that the above-mentioned assistant or concierge functions can be similarly employed.
The creation and use of the personal page accessible by the user through the business web site accordingly helps the user obtain information and understand the transaction and help the business consummate the transaction and service the user's needs.
After the sale and prior to the cruise, the customer can access the personal page to review their trip information and access help from a live representative at any time. The business could regularly provide information to the customer regarding the cruise and could also provide links to other sites for cruise-related needs for the customer on the user's personal page. The system can provide e-mail or other notifications as desired to the user of such additional information on the user's personal page.
After the cruise, the personal page gives the cruise line a private place to have a personalized dialogue with this customer, obtain feedback from the customer on the trip and deliver (manually or automatically by predefined business rules) information that will help turn this first-time buyer into a long-term loyal customer. Reservations, confirmations, previous orders, links, service applets, advertising, data, services, surfing suggestions and other information may be dynamically customized to fit the end-user's individual preferences and browsing patterns. The personal page provides thereby a unique place for the businesses to customers during and after the sales process.
Businesses can use the a personal page as a customized entry point for: (i) customers to learn about products and services, execute transactions, and engage in one-to-one interaction with customer support personnel; or (ii) a dynamic corporate intranet through which corporate employees can access e-mail, HR information, company news, and other data. The system thus focuses on empowering the human customer service representative and fostering a relationships between the consumer and the business, rather than technology designed to eliminate humans from the transaction process. The system facilitates customizable personal pages which enable businesses to personalize their relationship with customers through targeted offerings and tailor-made services, and thereby reduce customer-switching rates. The system enables businesses to be perceived as more trustworthy and to attract loyal customers through communication channels and the personal page which create a customer experience marked by convenience and ease.
EXAMPLE B In another example of an implementation of the present invention, a valuable customer of a financial services firm accesses the firm's web site and logs on by entering his user name and password. The customer's personal page is the first screen viewed by the customer, and it contains the customer's content and services, including financial news, account activity, and advertisements for new financial products. The customer may request a financial services agent (via the Internet or the telephone) and requests: (a) the execution of a stock transaction; (b) the transfer of funds from a money market account to a trading account; and (c) a link to a new financial newsletter. Then, the customer can wait online for the agent to complete the request or log off. The agent will perform the transactions based on the customer's instructions and record execution information. The agent will modify the customer's personal page to add a link to the specified newsletter using drag-and-drop Java or HTML applets. A record of prior activity and requests is maintained to help the firm's agents provide a higher level of customization to customers and expedite redundant tasks. The agent can confirm completion of tasks: (a) verbally while the customer is online or, if the customer logs off; (b) by telephone; (c) by e-mail; or (d) by posting information on the customer's personal page.
EXAMPLE C
In a further example of an implementation of the present invention, a partner at a national law firm accesses the web site and logs on by entering his user name and password. The partner's personal page is the first screen viewed, and it contains the partner's content and services, including news regarding a recent antitrust trial, a golf newsletter, and e-mail from clients. The partner requests an assistant (via the Internet or the telephone) and requests: (a) a gift to be purchased and sent to a relative; (b) research on a secondary news source regarding developments in antitrust law; and (c) travel arrangements to a golf resort advertised in his newsletter. The partner can wait for the assistant to complete the request or log off. The assistant will shop for the gift based on the partner's instructions and record purchasing/tracking information, delivery date, and the gift message. The assistant will book travel arrangements for the partner pursuant to the partner's instructions. The assistant will research the secondary news site and, with the partner's permission, modify the personal page to add a link to the secondary news source using drag-and-drop Java or HTML applets. A record of prior activity and requests is maintained to help the assistant provide a higher level of customization and expedite redundant tasks. At the partner's convenience, the assistant can confirm completion of the tasks verbally while the partner is online or, if the partner logs off, by telephone, or by e-mail.
ALTERNATIVE EMBODIMENT OF THE ASSISTANT APPLICATION A preferred alternative embodiment of the assistant application is generally illustrated in Figs. 22A to 22H. It should be appreciated that these figures illustrate that the communication page, the user browser emulation and the assistant application are all preferably accessible by an assistant using a single terminal. Fig. 22A generally illustrates an interface provided to the assistant by the preferred alternative embodiment of the assistant application. This interface 700 includes a textual communication section 702 for communicating with the user and a working section 704. The interface illustrated in Fig. 22A illustrates that the assistant is not connected to or in communication with a user. Fig. 22A also illustrates a communication request box 705 which informs the assistant that a user is waiting to speak to the assistant and enables the assistant to accept or decline speaking to the waiting user.
After the assistant establishes communication with a user, the assistant application enables the assistant to perform a plurality of functions. These functions are accessible to the assistant in a conventional manner. One function includes obtaining a user profile using the customer profile button 710 as illustrated in Fig. 22B. The user profile includes basic information regarding the user. The assistant can use a user emulator or customer browser button 712 to view the web site or web page displayed to the user by the user's browser. This replaces the separate emulation terminal provided in the above described embodiment of the present invention and thus enables the assistant to switch back and forth between viewing what the user sees and the page editor or other features available through the assistant application. The assistant application includes a page editor button 714 which enables the assistant to access and edit the user's web page. The assistant application further includes a browser function accessible through an agent browser button 716 which enables the user to search the Internet using the browser associated with the assistant application.
Preferably the assistant application also includes: (a) a redirect log accessible using redirect log button 718 which keeps track of where the user has been redirected to or sent to; (b) a chat log accessible using a chat log button 720 which keeps track of the textual communications between the user and assistant; (c) an edit log accessible through the edit log button 722 which keeps track of the changes the assistant makes to the user's web page or personal page; and (d) a comments function accessible through the comments button 724 which enables the assistant to enter comments and notes regarding the user. The assistants who subsequently communicate with the user can access the comments section to learn about the user from previous assistants who have communicated with the user. The page editing function of this embodiment of the assistant application is generally illustrated in Fig. 22C which illustrates the visual representation of the user's page in object format provided to the assistant. The assistant can drag, move, insert, replace and change these objects in the user's web page using a plurality of tools similar to the tools described with respect to the previous embodiment of the assistant application. When the assistant changes a user's page, the page editor preferably includes a preview function as illustrated in Fig. 22D which enables the assistant to view the modified user's page without committing the changes. After the assistant commits to the changes, the assistant uses the customer browser button to view the user's changed web page as illustrated at Fig. 22E. The user can also use the customer browser to view another web page or web site viewed by the user as illustrated in Figs. 22F and 22G. Figs. 22F and 22G illustrate two alternative web sites which are not part of the system of the present invention. It should be appreciated that the assistant can direct the user's browser to any web site. Fig. 22H further illustrates a function of the assistant application which enables the concierge to view how they look to the user to ensure that the assistant maintains a professional appearance. SYSTEM SECURITY It should be appreciated that the system of the present invention can use VeriSign or RSA Security to employ advanced intrusion detection software to identify and respond to malicious activity targeted at the system network, and employ real-time correlation and audit trail processing to ensure user confidentiality and security. The system can provide: (a) visual authentication using two-way video, whereby human assistants will be able to authenticate the end-user's identity by comparing the video image of the end-user with a digital picture of the end-user before proceeding with a sensitive transaction; (b) verbal code authentication using two-way audio, whereby human assistants will be able to authenticate the end-user's identity by requesting the end-user's code phrase before proceeding with a sensitive transaction; and (c) encryption using sophisticated encryption technology, to encrypt e-mail and use confidential data storage via the VPN. While the present invention is described in connection with what is presently considered to be the most practical and preferred embodiments, it should be appreciated that the invention is not limited to the disclosed embodiments, and is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the claims. Modifications and variations in the present invention may be made without departing from the novel aspects of the invention as defined in the claims, and this application is limited only by the scope of the claims.

Claims

CLAIMSThe invention is hereby claimed as follows:
1. A system for enabling an assistant to help a user in using an Internet which includes a plurality of web sites, said system comprising: a dedicated user web page; an Internet access device and a browser which co-act to enable the user to access said plurality of web sites and said dedicated user web page; an assistant application; a browser emulator connected to the assistant application; and a communication channel adapted to selectively connect the browser to the assistant application, whereby when the user communicates with the assistant through the communication channel, the browser emulator displays the web site or web page accessed by the browser to the assistant.
2. The system of Claim 1 , wherein the assistant application includes means for enabling the assistant to change the dedicated user web page.
3. The system of Claim 1 , wherein the assistant application includes means for enabling the assistant to redirect the browser to another of the plurality of web sites.
4. The system of Claim 1 , which includes a communication request link on said user web page.
5. The system of Claim 1 , wherein the communication channel includes data, audio, visual and textual communication channels between the dedicated user web page and the assistant application.
6. A system for assisting a user to use an Internet, said system comprising: a personal web page on the Internet for each user, accessible by the user; means for enabling a user to access the user's web page; means on the user's web page to request communication with a assistant; means for establishing communication between the user and the assistant; means for enabling the assistant to view the user's web page; and means for enabling the assistant to carry out activities on said user's web page.
7. The system of Claim 6, wherein said activities include said assistant redirecting said user to a web site or web page.
8. The system of Claim 6, wherein said activities include said assistant changing the content of said user's web page.
9. The system of Claim 6, wherein said activities include said assistant teaching said user about Internet use.
10. The system of Claim 6, wherein said activities include navigating the Internet for said user.
11. The system of Claim 6, wherein said activities include obtaining information from the Internet for said user and making said information accessible to the user via the user personal web page.
12. The system of Claim 6, wherein said communication means facilitates real-time, audio and visual communication between the assistant and the user.
13. The system of Claim 6, wherein said communication means enables said assistant and said user to verbally simultaneously communicate.
14. The system of Claim 6, wherein said communication means enables said assistant and said user to textually simultaneously communicate.
15. The system of Claim 6, which includes a communication page viewable by said user.
16. The system of Claim 6, which includes a communication page viewable by said user which displays graphical images of said assistant and textual boxes for displaying textual communications.
17. The system of Claim 6, which includes means for said user to upload computer data onto said web page for backing-up personal computer data of said user.
18. The system of Claim 6, which includes means for said user to store and retrieve personal data on said web page.
19. A method for facilitating Internet use, said method comprising the steps of: providing a customizable web page to a user; enabling the user to access the web page; providing an assistant to assist the user to customize the web page in response to the user's request; establishing communication between the user and the assistant upon receipt of the user's request; providing assistance requested by the user and updating the user's web page for the user as requested by the user; and terminating communication between the user and the assistant.
20. The method of Claim 19 wherein the step of establishing communication between the assistant and the user includes establishing real-time audio, visual and textual communication between the user and the assistant.
21. The method of Claim 19, wherein providing said assistance includes said assistant redirecting said user to a web site.
22. The method of Claim 19, wherein providing said assistance includes said assistant changing the content of said user's web page.
23. The method of Claim 19, wherein providing said assistance includes navigating the Internet for said user.
24. The method of Claim 19, wherein providing said assistance includes obtaining information for said user and enabling the user to access said information from the user's web page.
25. A method of providing assistance to a user of the Internet, comprising: providing a web page on the Internet; said user accessing said web page; said user using said web page to establish real-time communication with an assistant; said assistant providing assistance to said user; and said assistant terminating said assistance.
26. A system for providing customer service for a visitor of a web site, comprising: a web site having means for contacting an assistant; a browser used by said visitor to view said web site; and means for establishing communication between said visitor and said assistant; an emulator accessible by said assistant which emulates said browser; and an application accessible by said assistant which enables the assistant to redirect the browser.
27. A method for providing customer service for a visitor of a web site, comprising: providing a web site having a contact means for contacting an assistant; providing a browser used by said visitor to view said web site; said visitor activating said contact means; said assistant communicating with said visitor; said assistant accessing an emulator terminal which emulates said browser; and said assistant terminating communication with said visitor.
28. A system for providing users of the Internet with support in building and maintaining a web site, comprising: a web site on the Internet having content, accessible by the user; means for enabling said user to access said web site; means on said user's web site to request communication with an assistant; means for establishing communication between said user and said assistant; means for enabling said assistant to view said user's web site; and means for enabling said assistant to change said content of said web site.
29. The system of Claim 28, further comprising a means for said assistant to control HTML pages of said user's web site.
30. An Internet service system comprising: a browser; a browser emulator; a browser redirector; and a communication channel selectively connecting said browser, browser emulator and browser redirector.
31. A system for enabling an assistant to help a user consumate transactions using a web site, said system comprising: a dedicated user web page on said web site; an Internet access device and a browser which co-act to enable the user to access said web page; an assistant application; a browser emulator connected to the assistant application; and a communication channel adapted to selectively connect the browser to the assistant application, whereby when the user communicates with the assistant through the communication channel, the browser emulator displays the user web page accessed by the browser to the assistant.
32. The system of Claim 30, wherein the assistant application includes means for enabling the assistant to change the user web page.
33. The system of Claim 30, the user web page is adapted to include objects and links.
34. The system of Claim 1 , which includes a communication request link on said user web page.
35. A method for providing customer service for a user of a web site, said method comprising the steps of: said user accessing said web site; said user requesting communication with an assistant through said web site; said assistant communicating with said user through the web site; said assistant creating a personalized web page on said web site for said user; terminating said communication between said user and said assistant; and said user subsequently accessing said personalized web page.
36. The method of Claim 34, which includes storing selected information on the user's personal web page.
37. The method of Claim 34, which includes storing selected product or service information on the user's personal web page.
38. The method of Claim 34, which includes storing objects and links on the user's personal web page.
39. The method of Claim 34, which includes requesting further communication through user personalized web page.
40. The method of Claim 34, which includes enabling an assistant to view the user's personalized web page to understand previous information provided to the user.
41. The method of Claim 39, which includes enabling said assistant to consummate a transaction between the user and the implementor of the web site.
42. The method of Claim 40, which includes said implementor providing further to said user through said personalized after said consummation of said transaction.
43. The method of Claim 40, which includes said user providing feedback to said implementor through said personalized after said consummation of said transaction.
PCT/US2000/032153 1999-11-30 2000-11-27 Internet service system WO2001040963A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU17936/01A AU1793601A (en) 1999-11-30 2000-11-27 Internet service system

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US16817899P 1999-11-30 1999-11-30
US60/168,178 1999-11-30
US69197900A 2000-10-19 2000-10-19
US09/691,979 2000-10-19

Publications (1)

Publication Number Publication Date
WO2001040963A1 true WO2001040963A1 (en) 2001-06-07

Family

ID=26863866

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/032153 WO2001040963A1 (en) 1999-11-30 2000-11-27 Internet service system

Country Status (2)

Country Link
AU (1) AU1793601A (en)
WO (1) WO2001040963A1 (en)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080046333A1 (en) * 2004-08-19 2008-02-21 Jun Kawakita Sales Support System
US20080270248A1 (en) * 2007-04-25 2008-10-30 Microsoft Corporation System and device for social shopping on-line
US7729948B1 (en) * 2006-03-24 2010-06-01 Sprint Communications Company L.P. Systems and methods for enabling customer care assistance with self-service transactions
US7987492B2 (en) 2000-03-09 2011-07-26 Gad Liwerant Sharing a streaming video
US8160938B2 (en) 2008-05-29 2012-04-17 Red Hat, Inc. Systems and methods for automatic bid solicitation during transaction process
US8239283B2 (en) 2005-02-16 2012-08-07 Vistaprint Technologies Limited Product design system and method
US8666843B2 (en) * 2008-05-02 2014-03-04 Red Hat, Inc. Systems and methods for generating a synchronous sales stack for customer dialog
US9100132B2 (en) 2002-07-26 2015-08-04 The Nielsen Company (Us), Llc Systems and methods for gathering audience measurement data
US9197421B2 (en) 2012-05-15 2015-11-24 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US9210208B2 (en) 2011-06-21 2015-12-08 The Nielsen Company (Us), Llc Monitoring streaming media content
US9313544B2 (en) 2013-02-14 2016-04-12 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US9336784B2 (en) 2013-07-31 2016-05-10 The Nielsen Company (Us), Llc Apparatus, system and method for merging code layers for audio encoding and decoding and error correction thereof
US9380356B2 (en) 2011-04-12 2016-06-28 The Nielsen Company (Us), Llc Methods and apparatus to generate a tag for media content
US9609034B2 (en) 2002-12-27 2017-03-28 The Nielsen Company (Us), Llc Methods and apparatus for transcoding metadata
US9667365B2 (en) 2008-10-24 2017-05-30 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US9711152B2 (en) 2013-07-31 2017-07-18 The Nielsen Company (Us), Llc Systems apparatus and methods for encoding/decoding persistent universal media codes to encoded audio
US9762965B2 (en) 2015-05-29 2017-09-12 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US10003846B2 (en) 2009-05-01 2018-06-19 The Nielsen Company (Us), Llc Methods, apparatus and articles of manufacture to provide secondary content in association with primary broadcast media content
US10225584B2 (en) 1999-08-03 2019-03-05 Videoshare Llc Systems and methods for sharing video with advertisements over a network
US10467286B2 (en) 2008-10-24 2019-11-05 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US20210192607A1 (en) * 2019-12-18 2021-06-24 Loungeing, Inc. Systems and Methods for Real Time Online to Offline (O2O) Shopping in and Messaging to Physical Retail Stores
WO2023015172A1 (en) * 2021-08-03 2023-02-09 Fidelity Information Services, Llc Smart forms for automated configuration of solutions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026438A (en) * 1997-10-31 2000-02-15 Merrill Lynch & Co., Inc. Dynamic workstation configuration processor
US6061738A (en) * 1997-06-27 2000-05-09 D&I Systems, Inc. Method and system for accessing information on a network using message aliasing functions having shadow callback functions
US6064979A (en) * 1996-10-25 2000-05-16 Ipf, Inc. Method of and system for finding and serving consumer product related information over the internet using manufacturer identification numbers

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6064979A (en) * 1996-10-25 2000-05-16 Ipf, Inc. Method of and system for finding and serving consumer product related information over the internet using manufacturer identification numbers
US6061738A (en) * 1997-06-27 2000-05-09 D&I Systems, Inc. Method and system for accessing information on a network using message aliasing functions having shadow callback functions
US6026438A (en) * 1997-10-31 2000-02-15 Merrill Lynch & Co., Inc. Dynamic workstation configuration processor

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10225584B2 (en) 1999-08-03 2019-03-05 Videoshare Llc Systems and methods for sharing video with advertisements over a network
US10362341B2 (en) 1999-08-03 2019-07-23 Videoshare, Llc Systems and methods for sharing video with advertisements over a network
US10523729B2 (en) 2000-03-09 2019-12-31 Videoshare, Llc Sharing a streaming video
US7987492B2 (en) 2000-03-09 2011-07-26 Gad Liwerant Sharing a streaming video
US10277654B2 (en) 2000-03-09 2019-04-30 Videoshare, Llc Sharing a streaming video
US9100132B2 (en) 2002-07-26 2015-08-04 The Nielsen Company (Us), Llc Systems and methods for gathering audience measurement data
US9900652B2 (en) 2002-12-27 2018-02-20 The Nielsen Company (Us), Llc Methods and apparatus for transcoding metadata
US9609034B2 (en) 2002-12-27 2017-03-28 The Nielsen Company (Us), Llc Methods and apparatus for transcoding metadata
US20080046333A1 (en) * 2004-08-19 2008-02-21 Jun Kawakita Sales Support System
US8239283B2 (en) 2005-02-16 2012-08-07 Vistaprint Technologies Limited Product design system and method
US7729948B1 (en) * 2006-03-24 2010-06-01 Sprint Communications Company L.P. Systems and methods for enabling customer care assistance with self-service transactions
CN101669108A (en) * 2007-04-25 2010-03-10 微软公司 A system and device for social shopping on-line
US20080270248A1 (en) * 2007-04-25 2008-10-30 Microsoft Corporation System and device for social shopping on-line
US8666843B2 (en) * 2008-05-02 2014-03-04 Red Hat, Inc. Systems and methods for generating a synchronous sales stack for customer dialog
US8160938B2 (en) 2008-05-29 2012-04-17 Red Hat, Inc. Systems and methods for automatic bid solicitation during transaction process
US9667365B2 (en) 2008-10-24 2017-05-30 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US11386908B2 (en) 2008-10-24 2022-07-12 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US11256740B2 (en) 2008-10-24 2022-02-22 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US10467286B2 (en) 2008-10-24 2019-11-05 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US10134408B2 (en) 2008-10-24 2018-11-20 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US11809489B2 (en) 2008-10-24 2023-11-07 The Nielsen Company (Us), Llc Methods and apparatus to perform audio watermarking and watermark detection and extraction
US11948588B2 (en) 2009-05-01 2024-04-02 The Nielsen Company (Us), Llc Methods, apparatus and articles of manufacture to provide secondary content in association with primary broadcast media content
US10555048B2 (en) 2009-05-01 2020-02-04 The Nielsen Company (Us), Llc Methods, apparatus and articles of manufacture to provide secondary content in association with primary broadcast media content
US11004456B2 (en) 2009-05-01 2021-05-11 The Nielsen Company (Us), Llc Methods, apparatus and articles of manufacture to provide secondary content in association with primary broadcast media content
US10003846B2 (en) 2009-05-01 2018-06-19 The Nielsen Company (Us), Llc Methods, apparatus and articles of manufacture to provide secondary content in association with primary broadcast media content
US9681204B2 (en) 2011-04-12 2017-06-13 The Nielsen Company (Us), Llc Methods and apparatus to validate a tag for media
US9380356B2 (en) 2011-04-12 2016-06-28 The Nielsen Company (Us), Llc Methods and apparatus to generate a tag for media content
US11296962B2 (en) 2011-06-21 2022-04-05 The Nielsen Company (Us), Llc Monitoring streaming media content
US9838281B2 (en) 2011-06-21 2017-12-05 The Nielsen Company (Us), Llc Monitoring streaming media content
US11252062B2 (en) 2011-06-21 2022-02-15 The Nielsen Company (Us), Llc Monitoring streaming media content
US9210208B2 (en) 2011-06-21 2015-12-08 The Nielsen Company (Us), Llc Monitoring streaming media content
US9515904B2 (en) 2011-06-21 2016-12-06 The Nielsen Company (Us), Llc Monitoring streaming media content
US10791042B2 (en) 2011-06-21 2020-09-29 The Nielsen Company (Us), Llc Monitoring streaming media content
US11784898B2 (en) 2011-06-21 2023-10-10 The Nielsen Company (Us), Llc Monitoring streaming media content
US9209978B2 (en) 2012-05-15 2015-12-08 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US9197421B2 (en) 2012-05-15 2015-11-24 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US9313544B2 (en) 2013-02-14 2016-04-12 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US9357261B2 (en) 2013-02-14 2016-05-31 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US9711152B2 (en) 2013-07-31 2017-07-18 The Nielsen Company (Us), Llc Systems apparatus and methods for encoding/decoding persistent universal media codes to encoded audio
US9336784B2 (en) 2013-07-31 2016-05-10 The Nielsen Company (Us), Llc Apparatus, system and method for merging code layers for audio encoding and decoding and error correction thereof
US11057680B2 (en) 2015-05-29 2021-07-06 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US10694254B2 (en) 2015-05-29 2020-06-23 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US10299002B2 (en) 2015-05-29 2019-05-21 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US9762965B2 (en) 2015-05-29 2017-09-12 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US11689769B2 (en) 2015-05-29 2023-06-27 The Nielsen Company (Us), Llc Methods and apparatus to measure exposure to streaming media
US20210192607A1 (en) * 2019-12-18 2021-06-24 Loungeing, Inc. Systems and Methods for Real Time Online to Offline (O2O) Shopping in and Messaging to Physical Retail Stores
US11443366B2 (en) * 2019-12-18 2022-09-13 Loungeing, Inc. Systems and methods for real time online to offline (O2O) shopping in and messaging to physical retail stores
WO2023015172A1 (en) * 2021-08-03 2023-02-09 Fidelity Information Services, Llc Smart forms for automated configuration of solutions
US11683385B2 (en) 2021-08-03 2023-06-20 Fidelity Information Services. LLC Smart forms for automated configuration of solutions

Also Published As

Publication number Publication date
AU1793601A (en) 2001-06-12

Similar Documents

Publication Publication Date Title
WO2001040963A1 (en) Internet service system
US7162436B1 (en) System and method for pairing providers with consumers of online goods and services
KR100261377B1 (en) A method and apparatus for performing computer-based on-line commerce using an intelligent agent
US10374984B2 (en) Method and apparatus for providing content to a computing device
KR100280755B1 (en) A system for conducting computer-based on-line commerce using intelligent agents to collect packages of related items
US6999987B1 (en) Screening and survey selection system and method of operating the same
US20160253700A1 (en) System and method for automated advocate marketing with digital rights registration
US7644023B2 (en) Portfolio synchronizing between different interfaces
US7930411B1 (en) Network-based verification and fraud-prevention system
Muther Customer relationship management: Electronic customer care in the new economy
US20020032646A1 (en) System and method of automated brokerage for risk management services and products
US20030014489A1 (en) Method and apparatus for a site-sensitive interactive chat network
US20070244769A1 (en) User interaction for trading system and method
US20110161202A1 (en) Method and apparatus for enabling real-time bi-directional transactions on a network
KR20010020585A (en) Method, system and computer program product for providing customer service over the world-wide web
WO2000065773A2 (en) Portal system and method
US20050209932A1 (en) Interactive online marketplace system and method
Louvieris et al. Managing customer behaviour dynamics in the multi-channel e-business environment: Enhancing customer relationship capital in the global hotel industry
EP1222587A2 (en) System, method, and article of manufacture for electronic merchandising in an e-commerce application framework
WO2001016851A2 (en) System, method, and article of manufacture for decision support in an e-commerce application framework
Moon et al. A next generation multimedia call center for internet commerce: IMC
JP2004501411A (en) Method and apparatus for providing intelligent suggestions for online activities to a user based on the user's knowledge of data from multiple web-services
US20040253966A1 (en) Networked service providers spontaneously respond and prepared to fulfill user's location-dependent requests
Coughlan et al. Evaluating the effectiveness of customers’ communication experiences with online retailers–a study of e-mortgages
KR100774083B1 (en) System and method for on-line stock trading counselling

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 TR 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