WO2001063514A1 - Applying dynamic user interfaces to multimedia communication via a computer network - Google Patents

Applying dynamic user interfaces to multimedia communication via a computer network Download PDF

Info

Publication number
WO2001063514A1
WO2001063514A1 PCT/US2000/016845 US0016845W WO0163514A1 WO 2001063514 A1 WO2001063514 A1 WO 2001063514A1 US 0016845 W US0016845 W US 0016845W WO 0163514 A1 WO0163514 A1 WO 0163514A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
multimedia communication
communication session
advertisement
multimedia
Prior art date
Application number
PCT/US2000/016845
Other languages
French (fr)
Inventor
John S. Eyles
Original Assignee
Eyles John S
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 Eyles John S filed Critical Eyles John S
Priority to AU2000257487A priority Critical patent/AU2000257487A1/en
Publication of WO2001063514A1 publication Critical patent/WO2001063514A1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Definitions

  • This invention relates to computer interfaces and, in particular, to a method, and related apparatus and article of manufacture, for generating dynamic user interfaces for multimedia communication.
  • Multimedia communication allows users, at different geographical locations, to participate in real-time communication via a computer that is connected to a network.
  • a user At each participating location, a user has, among other things, a video camera and a speaker that are each connected to the computer.
  • the communication typically involves the n-way, real-time transmission of multimedia data, including video data , audio data, and any other type of multimedia.
  • Video teleconferencing is a type of multimedia communication.
  • a video teleconference is a conference between two or more users via a telephone or network connection. During the conference, video images of the users are displayed, such that each user can see and hear the other users.
  • GUIs graphical user interfaces
  • Such GUIs generally include a pop- up menu for reducing the number of keystrokes required to begin, join, or control an n-way video teleconference.
  • These GUIs may also contain a "rolodex"-like call list, function "pushbuttons", and "slide controls.”
  • When a caller user initiates a teleconferencing session these GUIs typically display a teleconference session window on the user's monitor screen.
  • a caller user is a user that places a call, while a called user is a user that receives the call.
  • Some of these conventional GUIs include a resizable teleconference session window.
  • An Internet videochat system such as www.cuseemeworld.com (CU-SeeMe) is another type of multimedia communication.
  • the term chat refers to the real-time communication between two users via a computer.
  • a chat session takes place at a channel (commonly referred to as a chat room or virtual room).
  • a chat room or virtual room Once a chat has been initiated, either user can enter text by using an input device attached to the user' s computer. The entered text appears on the other user' s monitor.
  • a videochat session is similar to a chat session. The difference is that, when a chat is initiated, a video image of a user is displayed on the other user's monitor.
  • the CU-SeeMe Internet videochat system has a GUI.
  • the GUI allows users to limit the content of the videochat session, depending on the user's interest. For example, the user can limit the content of the videochat session to chat categories, such as football, gardening, and travel.
  • CU- SeeMe displays a list of the user-selected chat categories within the GUI.
  • each attribute e.g., background color, text color, font, number of frames, window size, etc.
  • GUI still remain constant. Neither a caller/called user nor a system administrator can customize or modify the attributes of the chat categories list or the attributes of the GUI.
  • Each of the conferencing systems described above utilize GUIs that are effectively unchangeable. These GUIs lack customizable components. Hence, every user that interacts with the GUIs experience the exact same look and feel. As a result, these multimedia communication systems tend to be generic and impersonal.
  • GUIs described above include other features, such as e-mail and/or video mail.
  • Both the e-rhail and video mail disadvantageously lack the ability to automatically display a message from a called user, when the called user fails to answer an incoming call.
  • e-mail and video mail display a called user' s message after the caller user performs the following steps: (a) open the caller user's inbox; and (b) select a message from the called user.
  • Some of the conventional GUIs described above include a collaboration option.
  • Collaboration allows a caller user and a called user to share a document during a teleconference session. That is, a called user and caller user can view and edit the same document (and vice versa).
  • Collaboration is disadvantageously inapplicable to web browser resources.
  • the present invention which addresses this need, resides in a method, apparatus, and an article of manufacture for generating a graphical user interface for a multimedia communication session in a manner that yields a dynamic, customized graphical user interface.
  • the method includes receiving user identification information from a first user, and dynamically creating a customized graphical user interface based on the user identification information.
  • the invention has utility for providing a user with a customized graphical user interface.
  • the method includes displaying targeted advertisements during the multimedia communication session by using demographic information and relationship information. Further, the method may include receiving a request from a first user to display the targeted advertisement to a second user during the multimedia communication session.
  • FIG. 1 schematically illustrates a hardware environment of an embodiment of the present invention, and more particularly, illustrates a typical distributed computer system
  • FIG. 2 is a block diagram that illustrates a viewer application GUI in accordance with an embodiment of the present invention
  • FIG.3 is a block diagram that illustrates user groups in accordance with an embodiment of the present invention.
  • FIG. 4 is a screen shot that illustrates a standard DCP template in accordance with an embodiment of the present invention
  • FIG.5 is a screen shot that illustrates a customized DCP in accordance with an embodiment of the present invention
  • FIG.6 is a flowchart that illustrates the steps performed to customize standardDCP template in accordance with an embodiment of the present invention
  • FIG. 7 is a flowchart that illustrates the steps performed to establish a multimedia communication session in accordance with an embodiment of the present invention
  • FIG. 8 is a flowchart that illustrates the steps performed to display a customized outgoing message in accordance with an embodiment of the present invention
  • FIG. 9 is a flowchart that illustrates the steps performed by the advertisement software in accordance with an embodiment of the present invention.
  • FIG. 10 is a flowchart that illustrates the steps performed to transmit advertisements from one user to another user in accordance with an embodiment of the present invention.
  • the present invention resides in a computer network based system that provides a dynamic, personalized GUI for multimedia communications over the Internet.
  • the dynamic, personalized GUI is referred to herein as the dynamic communications page (DCP), as opposed to being statically designed and fixed by the initial software developer.
  • DCP dynamic communications page
  • the DCP is dynamically generated when a caller/called user initiates a multimedia communication. It will be appreciated that the look and feel of the DCP is based on many factors, such as user preferences (e.g., attributes of the DCP page, such as the layout, color scheme, fonts, button styles, and overall theme), experience level, demographics (e.g., location, age, gender, income, etc.), time-of-day, date and any other relevant factor.
  • user preferences e.g., attributes of the DCP page, such as the layout, color scheme, fonts, button styles, and overall theme
  • experience level e.g., location, age, gender, income, etc.
  • demographics e.g., location, age, gender, income, etc.
  • time-of-day e.g., time-of-day, date and any other relevant factor.
  • the DCP works in conjunction with software that displays targeted advertisements (referred to herein as the advertisement software), and a section of the DCP is reserved for displaying the targeted advertisements.
  • the advertisement software targets advertisements to a caller/called user by using personal information about the caller/called user, including information related to the relationship (e.g., grandparentygrandchild, parent/child, sibling/sibling, etc.) between the caller user and the called user.
  • the advertisement software targets the advertisements during amulti edia communication, without interrupting the multimedia communication.
  • the advertisement software displays advertisements on the grandparent's monitor which relate to goods/services that grandparents are usually interested in, such as an airline advertisement listing the cost of flying from the grandparent's residence to the grandchild's residence.
  • the advertisement software displays advertisements on the grandchild's monitor that relate to goods/services which grandchildren are usually interested in, such as an advertisement about a toy.
  • These targeted advertisements may also be based on caller/called user experience level, time-of-day, date, and other relevant factors.
  • the advertisement forwarding software allows a user to send a universal resource locator (URL) from one user's computer to another user's computer. When the URL is received by the other user's computer, a browser displays the advertisement on the other user's monitor.
  • the advertisement forwarding software also forwards any web resource that is identifiable by a URL.
  • the DCP also contains a multimedia answering service.
  • This multimedia answering service users need not perform any of the following three steps: (a) open an inbox; (b) select a specific message; and (c) view message. Instead, the user receives an outgoing message when the called user fails to answer an incoming call. Therefore, the caller user only performs the following two steps: (a) call a user by initiating a multimedia conference with the user; and (b) when the called user fails to answer the incoming call, view a customized outgoing message.
  • FIG. 1 schematically illustrates the hardware environment of an embodiment of the present invention, and more particularly, illustrates a typical distributed computer system using the Internet 100 to connect client computers 102 executing client applications to a server computer 106 executing a variety of software, and to connect the server computer 106 to a database server 116.
  • a typical combination of resources may include client computers 102 that are personal computers or workstations, and a server computer 106 that is a personal computer, workstation, minicomputer, or mainframe. These systems are coupled to one another by various networks, including LANs, WANs, SNA networks, and the Internet.
  • the client computers 102 can represent either a caller user or a called user.
  • a caller user is a user that places a call, via the Internet 100 (or any computer network), to a third party user.
  • a called user is a user that receives the call from the caller user.
  • Each client computer 102 has a viewer application 104 and aforwarding application, referred to herein as the advertisement forwarding software 128.
  • the viewer application 104 allows a user to view and interact with the DCP 126.
  • the viewer application 104 has an embedded browser for displaying any web resource that has a URL.
  • the advertisement forwarding software 128 forwards target advertisements from one user's computer to another user's computer.
  • the advertisement forwarding software 128 also forwards any resource that has an identifiable URL or other appropriate locator.
  • the server computer 106 is a single server or server farm comprised of software components.
  • the server computer 106 also contains messaging and groupware components, as well as streaming video services.
  • the server software components include:
  • the advertisement software 108 manages the delivery of targeted advertisements to users.
  • the advertisement software 108 delivers advertising based on the relationship (e.g., grandparent grandchild, parent/child, sibling/sibling, etc.), between the caller users and the called users.
  • the advertisement software 108 also delivers advertising based on other factors, such as the time of the multimedia communication, the date of the multimedia communication, the geographic location of the caller/called users, and any other defined factors.
  • the directory services software 110 tracks user activity.
  • the directory service software maintains a record of users that are currently online and able to receive calls.
  • the record also contains the names of users that are offline and unable to receive calls. It is noted that users can only answer incoming calls when they are online.
  • the multimedia answering service software 112 provides message service functionality. Namely, the multimedia answering service software 112 answers an incoming call when the called user is offline or otherwise unable to answer the incoming call.
  • System component software 114 performs a variety of miscellaneous tasks, including generating and storing a DCP 126 for each user.
  • the DCP 126 is stored at the server computer 106.
  • the system component software 114 also interacts with the system administrator computer 130, and with the other software components.
  • the database server 116 is a single server or server farm comprised of software components that run in a standard relational database environment.
  • the database server 116 includes the following: (a) the main database 118, which is a repository for user and system related information; (b) the directory service database 120, which is a repository for directory information generated by directory services 110; (c) the advertisement software database 122, which is a repository for the advertisement software 108, containing information such as advertising content, schedules, and target markets; (d) the multimedia answering service mailbox (or database) 124, which is an index describing the location of multimedia files required for the operation of the multimedia answering service software 112.
  • the present invention includes four advantages features: (1) the viewer application 104 for viewing and interacting with the DCP 126; (2) the DCP 126 for providing a personalized GUI; (3) the advertisement software 108 for providing targeted advertisements, and the advertisement forwarding software 128 for forwarding these targeted advertisements; and (4) the multimedia answering service software 112 for providing an answering service.
  • a user Before using the viewer application 104, a user registers for access to the server computer
  • the system component software 114 When the user registers for access, the system component software 114 generates a unique user identification number (user ID). The user ID uniquely identifies each user - similar to the manner in which a social security card uniquely identifies each United States Citizen.
  • the system component software 114 may generate the user ID number by sequentially increasing the values of the user ID numbers. For example, the system component software 114 may assign a user ID of 1 to the first user and assign a user ID of 10 to the tenth user. Alternatively, the system component software 114 may use a random number generator to generate user IDs.
  • the system component software 114 stores the user ID in the main database 118.
  • the main database 118 only accepts unique user IDs. That is, the main database 118 will not allow the system component software 114 to store multiple user IDs with the same value.
  • the user ID uniquely identifies a record. This record is the personal record of the user. The record contains the user' s password, username, and any other relevant information about the user.
  • the system component software 114 uses the user ID to determine whether a user is authorized to access the server computer 106.
  • the viewer application 104 is stored at the chent computer 102.
  • the viewer application has a GUI. The GUI for the viewer application is separate from and different than the DCP 126.
  • the viewer application 104 Whenever a user requests a DCP 126, the viewer application 104 requests a password and a username from the user.
  • the username is used as a security token.
  • a user can provide the system administrator with the password and username when the user registers for access to the server computer 106. Alternatively, the user can also provide the username and password when the user invokes the viewer application 104 for the first time.
  • the system component software 114 stores both the password and username in the user's personal record.
  • the system adrninistrator is an individual who receives datafromcalled/caller users, stores the received data in the main database 118, and performs other system related functions.
  • the system administrator adds data to the user' s personal record by using the system administrator computer 130.
  • the system administrator receives data from a user when the user registers for access to the server computer 130.
  • the user may register by sending the system administrator information, including information relating to the user' s relationship to other authorized users, information relating to a user's preferences, and information relating to a user's experience level.
  • the system administrator stores the received user information in the personal record.
  • the system component software 114 uses the information contained in the personal record to generate a GUI for the viewer application 104.
  • the background color of the viewer application GUI may be pink and the font color may be purple.
  • the background color of the viewer application GUI may be black and the font color may be blue.
  • users are free to change the attributes (e.g., layout of page, background color, font, and overall them) of the viewer application GUI based on their individual preferences.
  • FIG..2 shows a block diagram of exemplary users and groups.
  • each user 200 and 202 can be in one or more groups, 204, 206 and 208.
  • group one 204 consists of people that work with user one 200
  • group three 208 consists of people that are related to user one 200.
  • group one 204 consists of people that also work with user two 202
  • group two 206 consists of people that are related to user two 202.
  • user one' s name is Bob
  • user two' s name is Jane
  • the system administrator assigns Bob (user one 200) to group one 204 and group three 208.
  • the system administrator assigns Jane (user two 304) to group one 204 and group two 206.
  • the system administrator stores Bob's group assignments in Bob's personal records and stores Jane's group assignments in Jane's personal record.
  • the groups 204, 206, and 208 are private and secure groups. That is, the groups are not publicly open to all users. Instead, when a user registers for access to the server computer 106, the user can provide a group password for each group. A user can also provide a group password subsequent to registration. The user obtains the group password from an authorized user. More specifically, an authorized user that has the group password may invite others into the group by distributing the group password. Hence, unlike many chat rooms, which are publicly open to all users, access to each group is by invitation only.
  • the system administrator stores the group password in the user's personal record. The system administrator will only assign the user to groups in which the user has provided a group password.
  • the viewer application 104 When a user uses the viewer application 104 for the second time, and during all subsequent sessions thereafter, the viewer application 104 will request that the user enter both the username and password. The viewer application 104 sends this information to the system component software 114, and the system component software 114 authenticates the user.
  • Each viewer application window has an embedded browser.
  • the browser displays specialized web pages that are generated using DHTML, XTML, HTML, Java code, and any other languages that are used to create documents on the World Wide Web (WWW).
  • the viewer application GUI consists of these displayed web pages.
  • FIG. 3 shows an exemplary viewer application GUI 300.
  • the toolbar 302 contains command buttons 304, 306, and 308. Each of these command buttons 304, 306, and 308 instruct the viewer application 104 to invoke a particular software component.
  • the advertisement forwarding software button 304 instructs the viewer application 104 to invoke the advertisement forwarding software 128
  • the multimedia answering service button 306 instructs the viewer application 104 to invoke the multimedia answering service software 112
  • the browser button 308 instructs the viewer application 104 to invoke its embedded browser.
  • the toolbar may also contain other command buttons without exceeding the scope of the present invention.
  • To illustrate the manner in which a user interfaces with the viewer application GUI 300 assume that a user clicks on the browser button 308. The viewer application 104 then invokes the browser application. Next, the browser application displays browser windows 312 within the viewer application GUI 300. Each browser window 310 has its own browser window toolbar 312.
  • the preferences section 314 allows users to further customize the viewer application GUI 300 by selecting the attributes (e.g., background color, text color, size, number of frames, etc.) of the viewer application GUI 300.
  • the user can also select the language that is displayed within the viewer application GUI 300.
  • the viewer application 104 stores the user' s preference selection in the user' s personal record. The next time the user accesses the viewer application 104, the viewer application 104 will display a customized viewer application GUI 300 that contains the user-selected preferences.
  • a caller user can request a DCP 126 from the viewer application 104. Before retrieving the DCP 126, the viewer application 104 requests and receives the username and the password from the caller user.
  • the viewer application 104 then sends the username and password to the system component software 114.
  • the system component software 114 authenticates the username and password. More specifically, the system component software 114, compares the username and password (collectively referred to as user identification information) to the user identification information stored in the main database 118. When a match is nonexistent, the server component software 114 denies access to the server computer 106, and hence, denies access to the DCP 126. On the other hand, when a match exists, the system component software 114 grants access to the server computer.
  • the system component software 114 When the system component software 114 grants access, the system component software 114 sends a message to the viewer application 104.
  • the system component software 114 then extracts the user information from the user' s personal record, and sends the user information to the advertisement software 108, directory services software 110, and multimedia answering service software 112.
  • the advertisement software 108 uses1heinformationtotargetrelevantadvertisements to the caller user.
  • the directory services software 110 uses the information to track whether other authorized users are online.
  • the multimedia answering service software 112 uses the information to display a personalized outgoing message to the caller user.
  • the directory services software 110 uses the username (also referred to as the token) to track whether the user is online or offline.
  • the directory services software 110 stores information in the directory services database 120 about the user's hardware conferencing tools. That is, the directory services database 120 contains information about whether a user has full multimedia capability, including audio, video, text, etc.; or limited multimedia capability (e.g., audio only, video only, or text only). Users provide information about their multimedia capability to the system administrator. The system administrator stores this information in the user's personal record. The directory services software 110 retrieves this information from the user's personal record and stores it in the directory service database 120.
  • the directory services database 120 also contains the user's computer address.
  • FIG. 4 shows a standard DCP template 400 that can be used in accordance with an embodiment of the present invention.
  • the standard DCP template 400 contains a work group 402 and a family group 404.
  • the standard DCP template 400 also contains a called user multimedia display window 406 and a caller user multimedia display window 408.
  • the standard DCP template 400 contains the following command buttons: an initiate multimedia communication button 410; a terminate multimedia communication button 412; a video option button 414; and a preferences option button 416.
  • the standard DCP template 400 further contains an advertisement section 418 for displaying targeted advertisements.
  • a Home button 420 for linking a user to home web page
  • a Leave Message button 422 for leaving a video message
  • a Send Ad button 424 that invokes the advertisement forwarding softwarel28
  • Check Multimedia Answering Service icon 426 that allows user to view multimedia messages
  • a Meet icon 428 that allows a users to enter into a multimedia chat.
  • the system component software 114 uses the information contained in the called user's personal record to dynamically customize the standard DCP template 400.
  • the system component software 114 dynamically customizes the standard DCP template by using standard Internet technologies, including HTML, DHTML, XML, Java code, etc.
  • the system component softwarel 14 is able to modify any aspect of the standard DCP 126 template 400 up to and including dynamically re- writing any code (e.g., Java code) that is inherent within the page.
  • the system component software 114 retrieves the user preference information from the user' s personal record.
  • the preference information includes details about the attributes of a DCP, such as the layout, color scheme, fonts, styles, button styles, and overall theme.
  • the system component software 114 also modifies the standard DCP template 400 based on a user' s sophistication or experience level.
  • the system component software 114 determines the level of a caller/called user's sophistication by checking the personal record. When the preference information is absent from the personal record, the system component software 114 looks at the user's prior usage pattern, identifying which features (e.g., command buttons) the caller/called user has invoked and the number of times in which the caller/called user has invoked each feature. Based on the usage pattern, the system component software 114 determines the skill/experience level of a user.
  • features e.g., command buttons
  • a user's skill/experience level may fall into one of three categories: novice, average or advanced. Of course, additional categories may be added without exceeding the scope of the present invention.
  • the names of the categories are descriptive. Namely, the novice category refers to a user who has a small amount of experience with the DCP 126.
  • the average category refers to a user that has some experience with the DCP 126.
  • the advanced category refers to a user that has a large amount of experience with the DCP 126.
  • the experience level is stored in the personal record.
  • the system component software 114 modifies the standard DCP template 400 by adding command buttons that reflect the user' s experience level. To illustrate, for a novice user, the system component software 114 may add a connect button, a disconnect button, and a volume button. For an advanced user, the system component software 114 may add a capture video button. Modifying the standard DCP template 400 according to the user' s experience level provides a user friendly environment because the learning curve for the DCP 126 is reduced.
  • the system component software 114 then checks the personal record for other information about the user, such as information concerning age, gender, residence, relationship to other users, etc.
  • the system component software 114 then sends all of the information (e.g., preferences, experience level, and other personal information) to the advertisement software 108.
  • the advertisement software 108 then compares this information, along with pre-set criteria (e.g., time of day, date, etc.) to the advertisements contained in the advertisement software database 122.
  • pre-set criteria e.g., time of day, date, etc.
  • the advertisement software 108 compares generic information such as the time of day and the date, to the advertisements contained in the advertisement software database 122.
  • the advertisement software 108 then creates a generic advertisement schedule.
  • This advertisement schedule is generic because it is not based on the personal preferences of a particular user. That is, the generic advertisement schedule is not based on information contained in a user's personal record. Instead, the generic advertisement schedule is based on conditions that are distinct from the user.
  • the system component software 114 generates the DCP 126 and displays the DCP 126 to the user.
  • FIG. 5 shows a DCP 126 that could be used in accordance with the present invention.
  • the difference between the DCP 126 and the standard DCP template 400 is that both the video button 414 and the preferences button 416 are missing.
  • the system component software 114 displays the DCP 126 to the user via the viewer application 104. The user initiates a multimedia communication session by clicking one of the command buttons 410 or 412.
  • FIG.6 is a flowchart that illustrates the steps performed to modify the standard DCP template
  • Block 600 represents the viewer application 104 being invoked by a user.
  • the viewer application 104 then receives user information (i.e., a username and password) from a user , as represented by block 602.
  • the viewer application 104 then sends that usemame and password
  • the user information (collectively referred to as the user information) to the system component software 114.
  • Block 604 is a decision block that represents the system component software 114 determining whether the user identification information is stored in the main database 118. When the user identification information is absent from the main database, the system component software 114 denies access and the present invention returns to block 602. Otherwise, when the user identification is stored in the main database the system component software 114 grants access and the present invention proceeds to block 606.
  • Block 606 represents the system component software 114 retrieving the standard DCP template 400 from the server computer memory. The system component software 114 then retrieves other personal information about the user from the user's personal record, as represented by block 608.
  • Block 610 represents the system component software modifying the standard DCP template 400 based on user preferences (e.g., page layout, location of video screens, demographics, background color, font, selection of command buttons, etc.).
  • Block 612 is a decision block that represents the system component software 114 determining whether the user's experience level (e.g., novice, average, advanced, etc.) is stored in the user's personal record. When the user's experience level is stored, the system component software 114 proceeds to block 614. Otherwise, the system component software 114 proceeds to block 616.
  • the user's experience level e.g., novice, average, advanced, etc.
  • Block 614 represents the system component software 114 modifying the standard DCP template 400 based on the user's experience level. More specifically, the system component software 114, displays command buttons based on a user's experience level. When the user's experience level is missing from the personal record, the system component software does not modify the standard DCP template 400. Instead, the system component software 114 displays all the command buttons that are contained in the standard DCP template 400.
  • Block 616 represents the system component software 114 retrieving group information from the user's personal record. For each group that the user is assigned to, the system component software 114 identifies all other users that are assigned to that group, as represented by block 618.
  • Block 620 represents the system component software determining whether each grouped user is online. More specifically, system component software 114 compares each grouped user to the names of the online users in the directory services database 120.
  • Block 622 represents the system component software 114 modifying the standard DCP template 400 by adding the group information.
  • Block 624 represents the system component software 114 by retrieving additional information from the personal record.
  • the system component software also retrieves information about the date and time from the server computer, as represented by block 626.
  • Block 628 represents the advertisement software 108 comparing the additional user information contained in the personal record to the advertisements contained in the advertisement software database 122.
  • Block 630 is a decision block that represents the advertisement software 108 determining whether a match was found. When a match is found, the system component software 114 modifies the standard DCP template 400 by adding the first targeted advertisement, as represented by block 632. Otherwise, when no match is found, the system component software 114 modifies the standard
  • Block 636 represents the system component software 114 adding miscellaneous information, such as the Meet icon 420, and navigational aids for the web browser. Finally, the system component software 114 transmits the DCP 126 to the viewer application 104 for display to the user by block 638.
  • the user can initiate a multimedia communication session by choosing one of two options. First, the user can initiate a multimedia session by clicking on a name contained in one of the groups displayed within the DCP 126. Second, a user can initiate a multimedia session by typing in the called user's computer address (commonly referred to as the e- mail address).
  • the system component software checks the directory services database 120 to determine whether the called user is online. When the called user is offline or otherwise unavailable, the multimedia answering service software 112 immediately displays an outgoing message. Alternatively, when the called user is available, the system component software 114 initiates the call.
  • the second option for initiating a multimedia communication session involves the user inputting the called user's computer address into the DCP 126.
  • the DCP 126 sends the inputted address to the system component software 114.
  • the system component software 114 compares the inputted address to the addresses contained in the main database 118. When no match exists, the system component software 114 establishes a multimedia communication session.
  • the DCP 126 displays the following message to the caller user "can't connect message.” Otherwise, when the called user answers, a connection between the caller user and called user is established.
  • the system component software 114 can check the directory services software 110 to determine whether the called user is online. When the called user is offline or otherwise unavailable, the multimedia answering service software immediately displays an outgoing message. Alternatively, when the called user is available, the system component software 114 initiates the call.
  • the called user's viewer application 104 For both connection options (i.e., clicking on a name contained in one of the groups and inputting a computer address), the called user's viewer application 104 prompts the called user to accept the incoming call. At this time, the caller user's usemame is displayed in the viewer application GUI 300, and the called user has the option to accept the call, or let it go to the multimedia answering service software 112.
  • the system component software 114 establishes a multimedia communications session. Once the session is established, the DCP 126 displays images and audio, so that the called user and caller user can see and hear each other. The system component software 114 then retrieves both the called user' s and caller user' s personal information from the main database 118.
  • the system component software 114 can only retrieve an authorized called user' s personal information (i.e., a user whose personal information was previously stored in the main database 118). When the called user is authorized to access the server, the system component software 114 identifies them by their usemame.
  • the advertisement software 108 compares the caller and called users' information to the advertisement software database 122 and creates a synchronized advertisement schedule. This synchronized advertisement schedule is created by, comparing the personal information of the caller user and the called user.
  • the advertisement software 108 uses this comparison to furtherrefine target- advertising campaigns to both the called and caller users. For example, assume the called user lives in Spain, and the caller user lives in Los Angeles. Assume further that the caller user has previously purchased airline tickets online.
  • the caller user may receive an advertisement for United Airlines, wherein the advertisement contains the latest fare specials on flights to Spain.
  • the advertisement software 108 also has the ability to display advertisements based on demographic information. Returning to the example above, assume that the called user also receives an advertisement for a hotel in Spain, and that the advertisement is displayed in Spanish.
  • a called/caller user can invoke the advertisement forwarding software 128 to forward the displayed advertisement to the other user.
  • the advertisement forwarding software 128 performs the following steps: One user (the sender) clicks the "Send All" push button 416.
  • the advertisement forwarding software 128 sends the URL of the resource as well as the usemame of the other user (the recipient), to the system component software 114.
  • the system component software cross-references the recipient usemame with the directory service database 120, thus, resolving the recipient' s computer network address.
  • the system component software 114 then "pushes" the advertisement to the recipient's viewer application 104, resulting in the advertisement being displayed in a new window.
  • the viewer application 104 invokes a default email function, resident on the client computer 102.
  • the viewer application 104 automatically attaches the resource (i.e., an advertisement) to an email message, and prompts the sender for the recipient's email address.
  • the system component software 114 and the viewer application 104 gather statistical information about the multimedia session.
  • the system component software 114 gathers information about the identify of the caller/called user, and the list of advertisements that caller/called user responded to.
  • the viewer appHcation 104 tracks the length of the session. This information is stored in the user's personal record. The information is not stored when the usemame is absent from the main database 118. The usemame is absent when the user has not previously used the viewer appHcation 104.
  • the session is terminated when one user cHcks on the hang up button 410.
  • the viewer appHcation 104 requests the called user's outgoing message from the multimedia answering service software 112.
  • the request includes the called user's usemame, which uniquely identifies that user to the multimedia answering service software 112.
  • the system component software 114 then cross-references the usemame with the usernames contained in the main database 118.
  • the caUed user' s multimedia answering service database 124 is accessed.
  • the system component software cross-references the caUer user' s usemame with directory service database 120 to determine the caller user's computer address.
  • the system component software 114 then sends the outgoing message to the caUer user's viewer appHcation 104, which displays the outgoing message.
  • a called user can have one or more outgoing messages.
  • outgoing messages can be used when a cHent is offline. They can also be used when a cHent is onHne and participating in a multimedia session. In the latter case, the caUed user is prompted concerning the incoming caU. The called user has the option of switching to the caller user, or sending the caUer user to multimedia answering service. This functionahty is similar to caU waiting feature of traditional telephones.
  • the multimedia answering service software 112 also gives the caller user the opportunity to leave a message (i.e., an incoming message) for the caUed user.
  • the multimedia answering service software 112 also has a message playback features and management features. These features aUow users to check, delete and otherwise manage their multimedia answering service messages.
  • the multimedia answering service software 112 does not display the same outgoing message to each caUer user. Instead, the multimedia answering service software 112 provides the option of displaying a unique outgoing message to each caller user, such that the unique outgoing message is only relevant to a specific caller.
  • the content of multimedia answering service outgoing message may be based on, among other things, the time of the multimedia communication session, the date of the session, the relationship between the caUed user and the caUer user, the geographic location of the caller/caUed users, and any other defined factors.
  • An exemplary multimedia answering service outgoing message may contain the following language: "Happy Birthday Grandmother. I am always happy to hear from you. I will call you later this evening.”
  • Block 700 represents the system component software 114 displaying the DCP 126 via the user's viewer appHcation 104.
  • the system component software 114 receives a request to initiate a multimedia communication session, as represented by block 702.
  • Block 704 is decision block that represents the system component software 114 determining whether the request contains a caUed users computer address. When the request does not contain the called users computer address, the system component software 114 proceeds to block 705. Otherwise, when the request contains the called users computer address, the system component software 114 proceeds to block 729.
  • Block 706 is decision block that represents the system component software 114 determining whether the called user is online. When the caUed user is offline, the system component software
  • Block 712 represents the system component software 114 initiating a multimedia communication session.
  • the system component software 114 determines whether the called user answers the incoming call, as represented by decision block 714.
  • the system component software invokes the multimedia answering service software 108 and returns to other processing, as represented, respectively, by blocks 708 and 710.
  • the system component software 114 retrieves the personal records of both the called user and the caller user, as represented by block 716.
  • Block 718 represents the system component software 114 sending the personal records to the advertisement software 108.
  • the advertisement software 108 then compares the personal records of the users to the advertisement software database 122 as represented by block 720.
  • Block 724 is a decision block that represents the system component software 114 determining whether the user wishes to forward an advertisement.
  • the system component software invokes the advertisement forwarding software 104, as represented by block 728.
  • Block 728 represents the system component software terminating the multimedia communication session when one user hangs up.
  • the system component software proceeds to block 729.
  • Block 730 is a decision block that represents the system component software 114 determining whether the called user answers.
  • the system component software 114 When the call user fails to answer, the system component software 114 returns a message indicating that the called user does not answer, and the system component software 114 terminates the multimedia communication session, as represented, respectively, by blocks 732 and 734.
  • the system component software 114 initiates a multimedia communication session, as represented by block 736.
  • the system component software 114 retrieves the caUer user's personal records, as represented by block 738.
  • Block 740 represents the system component software 114 sending the caUed user' s personal records to the advertisement software 108.
  • the advertisement software 108 then compares the called users personal record to the advertisement software database 122, as represented by block 742.
  • Block 744 represents the system component software 114 displaying the targeted advertisement to the caUer user.
  • the system component software 114 also displays soHcitation advertisements about registering to access the server and generic advertisements to the caUed user, as represented by block 746.
  • Block 748 represents the system component software 114 terminating the multimedia communication session when one user hangs up.
  • FIG.8 is a flowchart that iUustrates the steps performed by the multimedia answering service software 112 in accordance with an embodiment of the present invention.
  • Block 800 represents the multimedia answering service software 112 receiving arequest for an outgoing message.
  • Block 802 represents the multimedia answering service software 112 identifying the caUed user's outgoing messages in the multimedia answering service database 124.
  • Block 804 represents the multimedia answering service software 112 retrieving a called user's outgoing message from the multimedia answering service database 124.
  • the multimedia answering service software 112 displays the outgoing message via the user's viewer appHcation 104, as represented by block 806.
  • Block 808 is a decision block that represents the multimedia answering service software 112 determining whether the caller user wishes to leave an incoming message.
  • the multimedia answering service software 112 records that message and stores the message in the multimedia answering service database 124, as represented by block 810.
  • the system component software then terminates the multimedia communication session, as represented by block 812.
  • FIG. 9 is a flowchart that illustrates the steps performed by the advertisement software 108 in accordance with an embodiment of the present invention.
  • Block 900 represents the advertisement software 108 retrieving information relating to a relationship between a caller user and a called user from the main database 118. Based on the retrieved information, the advertisement software 108 displays one targeted advertisement to the caUer user and displays another targeted advertisement to the called user, as represented by block 902.
  • FIG. 10 is a flowchart that illustrates the steps performed by the advertisement forwarding software 128 in accordance with an embodiment of the present invention.
  • Block 1000 represents the advertisement forwarding software 128 receiving a request to forward an advertisement from one user to another user.
  • the advertisement forwarding software 128 then transmits the URL of the advertisement to the other user's viewer appHcation 104, as represented by block 1002.
  • the advertisement forwarding software then displays the advertisement to the other user via the viewer appHcation 104 as represented by block 1004.
  • the present invention provides a method, apparatus, and article of manufacture for generating a graphical user interface for a multimedia communication session in a manner that yields a dynamic, customized graphical user interface.

Abstract

A method, apparatus, and article of manufacture for generating a graphical user interface for a multimedia communication session between a plurality of client computers. In accordance with the present invention, an input is received from a first user. The input contains user identification information about the first user. It is then determined whether the user identification information is contained within a database that is connected to a server computer. A customized graphical user interface for the communication session is dynamically created based on the user identification information determined to be contained within the database.

Description

APPLYING DYNAMIC USER INTERFACES TO MULTIMEDIA COMMUNICATION VIA A COMPUTER NETWORK
BACKGROUND OF THE INVENTION
1. Field of the Invention This invention relates to computer interfaces and, in particular, to a method, and related apparatus and article of manufacture, for generating dynamic user interfaces for multimedia communication.
2. Description of Related Art
Multimedia communication allows users, at different geographical locations, to participate in real-time communication via a computer that is connected to a network. At each participating location, a user has, among other things, a video camera and a speaker that are each connected to the computer. The communication typically involves the n-way, real-time transmission of multimedia data, including video data , audio data, and any other type of multimedia.
Video teleconferencing is a type of multimedia communication. A video teleconference is a conference between two or more users via a telephone or network connection. During the conference, video images of the users are displayed, such that each user can see and hear the other users.
Many conventional video teleconferencing systems have graphical user interfaces (GUI) that allow users to learn and use the video teleconferencing features. Such GUIs generally include a pop- up menu for reducing the number of keystrokes required to begin, join, or control an n-way video teleconference. These GUIs may also contain a "rolodex"-like call list, function "pushbuttons", and "slide controls." When a caller user initiates a teleconferencing session, these GUIs typically display a teleconference session window on the user's monitor screen. A caller user is a user that places a call, while a called user is a user that receives the call. Some of these conventional GUIs, include a resizable teleconference session window.
Preexisting video teleconferencing systems of this nature, however, disadvantageously have an impersonal GUI. Except for the resizable session window, the look and feel of the GUI is effectively unchangeable. That is, neither a caller/called user nor a system administrator can adequately customize or modify the features of the GUI. Other video teleconferencing systems have GUIs that are displayed to a user via the Internet, such as www.fvc.com (FVC) and www.irisphone.com (IRIS). These systems are also impersonal and generic. More specifically, each of these teleconferencing systems prevent the user or system adrninistrator from modifying the features of the GUI. Hence, the look and feel of the GUI is designed and fixed by the initial software developer.
An Internet videochat system, such as www.cuseemeworld.com (CU-SeeMe) is another type of multimedia communication. The term chat refers to the real-time communication between two users via a computer. A chat session takes place at a channel (commonly referred to as a chat room or virtual room). Once a chat has been initiated, either user can enter text by using an input device attached to the user' s computer. The entered text appears on the other user' s monitor. A videochat session is similar to a chat session. The difference is that, when a chat is initiated, a video image of a user is displayed on the other user's monitor. The CU-SeeMe Internet videochat system has a GUI. The GUI allows users to limit the content of the videochat session, depending on the user's interest. For example, the user can limit the content of the videochat session to chat categories, such as football, gardening, and travel. CU- SeeMe displays a list of the user-selected chat categories within the GUI.
CU-SeeMe, however, disadvantageously has a GUI that is effectively unchangeable. That is, each attribute (e.g., background color, text color, font, number of frames, window size, etc.) of the
GUI remains constant. Further, even though the chat categories are changeable, the attributes of the
GUI still remain constant. Neither a caller/called user nor a system administrator can customize or modify the attributes of the chat categories list or the attributes of the GUI.
Each of the conferencing systems described above utilize GUIs that are effectively unchangeable. These GUIs lack customizable components. Hence, every user that interacts with the GUIs experience the exact same look and feel. As a result, these multimedia communication systems tend to be generic and impersonal.
Many of the conventional GUIs described above include other features, such as e-mail and/or video mail. Both the e-rhail and video mail, however, disadvantageously lack the ability to automatically display a message from a called user, when the called user fails to answer an incoming call. Instead, e-mail and video mail display a called user' s message after the caller user performs the following steps: (a) open the caller user's inbox; and (b) select a message from the called user.
Some of the conventional GUIs described above include a collaboration option. Collaboration allows a caller user and a called user to share a document during a teleconference session. That is, a called user and caller user can view and edit the same document (and vice versa). Collaboration, however, is disadvantageously inapplicable to web browser resources.
Thus, there is a definite need in the art for a technique of applying dynamic user interfaces to multimedia communication systems. Further, there is a definite need for generating a dynamic user interface that displays customized outgoing multimedia messages when a called user does not answer an incoming call, and that facilitates the sharing of web browser resources between users.
SUMMARY OF THE INVENTION The present invention, which addresses this need, resides in a method, apparatus, and an article of manufacture for generating a graphical user interface for a multimedia communication session in a manner that yields a dynamic, customized graphical user interface. In particular, the method includes receiving user identification information from a first user, and dynamically creating a customized graphical user interface based on the user identification information. The invention has utility for providing a user with a customized graphical user interface. In another aspect of the invention, the method includes displaying targeted advertisements during the multimedia communication session by using demographic information and relationship information. Further, the method may include receiving a request from a first user to display the targeted advertisement to a second user during the multimedia communication session.
BRIEF DESCRTPΠON OF THE DRAWINGS Referring now to the drawings in which like reference numbers represent corresponding parts throughout:
FIG. 1 schematically illustrates a hardware environment of an embodiment of the present invention, and more particularly, illustrates a typical distributed computer system;
FIG. 2 is a block diagram that illustrates a viewer application GUI in accordance with an embodiment of the present invention;
FIG.3 is a block diagram that illustrates user groups in accordance with an embodiment of the present invention;
FIG. 4 is a screen shot that illustrates a standard DCP template in accordance with an embodiment of the present invention; FIG.5 is a screen shot that illustrates a customized DCP in accordance with an embodiment of the present invention;
FIG.6 is a flowchart that illustrates the steps performed to customize standardDCP template in accordance with an embodiment of the present invention;
FIG. 7 is a flowchart that illustrates the steps performed to establish a multimedia communication session in accordance with an embodiment of the present invention;
FIG. 8 is a flowchart that illustrates the steps performed to display a customized outgoing message in accordance with an embodiment of the present invention;
FIG. 9 is a flowchart that illustrates the steps performed by the advertisement software in accordance with an embodiment of the present invention; and
FIG. 10 is a flowchart that illustrates the steps performed to transmit advertisements from one user to another user in accordance with an embodiment of the present invention.
DETAILED DESCRIPTION
In the following description, reference is made to the accompanying drawings which form a part hereof, and which is shown only by way of illustration a specific embodiment in which the invention may be practiced. It is to be understood that other embodiments may be utilized and changes may be made without departing from the scope of the present invention.
Overview
The present invention resides in a computer network based system that provides a dynamic, personalized GUI for multimedia communications over the Internet. The dynamic, personalized GUI is referred to herein as the dynamic communications page (DCP), as opposed to being statically designed and fixed by the initial software developer.
The DCP is dynamically generated when a caller/called user initiates a multimedia communication. It will be appreciated that the look and feel of the DCP is based on many factors, such as user preferences (e.g., attributes of the DCP page, such as the layout, color scheme, fonts, button styles, and overall theme), experience level, demographics (e.g., location, age, gender, income, etc.), time-of-day, date and any other relevant factor.
In addition to providing a GUI for multimedia communication, the DCP works in conjunction with software that displays targeted advertisements (referred to herein as the advertisement software), and a section of the DCP is reserved for displaying the targeted advertisements. The advertisement software targets advertisements to a caller/called user by using personal information about the caller/called user, including information related to the relationship (e.g., grandparentygrandchild, parent/child, sibling/sibling, etc.) between the caller user and the called user.
The advertisement software targets the advertisements during amulti edia communication, without interrupting the multimedia communication. To illustrate, assume a grandparent and grandchild are participating in a multimedia communication session. The advertisement software displays advertisements on the grandparent's monitor which relate to goods/services that grandparents are usually interested in, such as an airline advertisement listing the cost of flying from the grandparent's residence to the grandchild's residence. Similarly, the advertisement software displays advertisements on the grandchild's monitor that relate to goods/services which grandchildren are usually interested in, such as an advertisement about a toy. These targeted advertisements may also be based on caller/called user experience level, time-of-day, date, and other relevant factors.
During amultimedia communications session, called/caller users can forward advertisements displayed on their monitors to other users. The software that provides the capability to forward advertisements is referred to herein as the advertisement forwarding software. The advertisement forwarding software allows a user to send a universal resource locator (URL) from one user's computer to another user's computer. When the URL is received by the other user's computer, a browser displays the advertisement on the other user's monitor. The advertisement forwarding software also forwards any web resource that is identifiable by a URL.
The DCP also contains a multimedia answering service. With this multimedia answering service, users need not perform any of the following three steps: (a) open an inbox; (b) select a specific message; and (c) view message. Instead, the user receives an outgoing message when the called user fails to answer an incoming call. Therefore, the caller user only performs the following two steps: (a) call a user by initiating a multimedia conference with the user; and (b) when the called user fails to answer the incoming call, view a customized outgoing message.
Hardware Environment
FIG. 1 schematically illustrates the hardware environment of an embodiment of the present invention, and more particularly, illustrates a typical distributed computer system using the Internet 100 to connect client computers 102 executing client applications to a server computer 106 executing a variety of software, and to connect the server computer 106 to a database server 116. A typical combination of resources may include client computers 102 that are personal computers or workstations, and a server computer 106 that is a personal computer, workstation, minicomputer, or mainframe. These systems are coupled to one another by various networks, including LANs, WANs, SNA networks, and the Internet.
The client computers 102 can represent either a caller user or a called user. A caller user is a user that places a call, via the Internet 100 (or any computer network), to a third party user. A called user is a user that receives the call from the caller user. Each client computer 102 has a viewer application 104 and aforwarding application, referred to herein as the advertisement forwarding software 128. The viewer application 104 allows a user to view and interact with the DCP 126. The viewer application 104 has an embedded browser for displaying any web resource that has a URL. The advertisement forwarding software 128 forwards target advertisements from one user's computer to another user's computer. The advertisement forwarding software 128 also forwards any resource that has an identifiable URL or other appropriate locator.
The server computer 106 is a single server or server farm comprised of software components. The server computer 106 also contains messaging and groupware components, as well as streaming video services. The server software components include:
(1) The advertisement software 108 manages the delivery of targeted advertisements to users. In particular, the advertisement software 108 delivers advertising based on the relationship (e.g., grandparent grandchild, parent/child, sibling/sibling, etc.), between the caller users and the called users. The advertisement software 108 also delivers advertising based on other factors, such as the time of the multimedia communication, the date of the multimedia communication, the geographic location of the caller/called users, and any other defined factors.
(2) The directory services software 110 tracks user activity. In particular, the directory service software maintains a record of users that are currently online and able to receive calls. The record also contains the names of users that are offline and unable to receive calls. It is noted that users can only answer incoming calls when they are online.
(3) The multimedia answering service software 112 provides message service functionality. Namely, the multimedia answering service software 112 answers an incoming call when the called user is offline or otherwise unable to answer the incoming call.
(4) System component software 114 performs a variety of miscellaneous tasks, including generating and storing a DCP 126 for each user. The DCP 126 is stored at the server computer 106.
The system component software 114 also interacts with the system administrator computer 130, and with the other software components.
(5) The database server 116 is a single server or server farm comprised of software components that run in a standard relational database environment. The database server 116 includes the following: (a) the main database 118, which is a repository for user and system related information; (b) the directory service database 120, which is a repository for directory information generated by directory services 110; (c) the advertisement software database 122, which is a repository for the advertisement software 108, containing information such as advertising content, schedules, and target markets; (d) the multimedia answering service mailbox (or database) 124, which is an index describing the location of multimedia files required for the operation of the multimedia answering service software 112.
Dynamic User Interfaces The present invention includes four advantages features: (1) the viewer application 104 for viewing and interacting with the DCP 126; (2) the DCP 126 for providing a personalized GUI; (3) the advertisement software 108 for providing targeted advertisements, and the advertisement forwarding software 128 for forwarding these targeted advertisements; and (4) the multimedia answering service software 112 for providing an answering service. Before using the viewer application 104, a user registers for access to the server computer
106. When the user registers for access, the system component software 114 generates a unique user identification number (user ID). The user ID uniquely identifies each user - similar to the manner in which a social security card uniquely identifies each United States Citizen. The system component software 114 may generate the user ID number by sequentially increasing the values of the user ID numbers. For example, the system component software 114 may assign a user ID of 1 to the first user and assign a user ID of 10 to the tenth user. Alternatively, the system component software 114 may use a random number generator to generate user IDs. The system component software 114 stores the user ID in the main database 118.
The main database 118 only accepts unique user IDs. That is, the main database 118 will not allow the system component software 114 to store multiple user IDs with the same value. In the main database 118, the user ID uniquely identifies a record. This record is the personal record of the user. The record contains the user' s password, username, and any other relevant information about the user. When the user invokes the viewer application 104, the system component software 114 uses the user ID to determine whether a user is authorized to access the server computer 106. The viewer application 104 is stored at the chent computer 102. The viewer application has a GUI. The GUI for the viewer application is separate from and different than the DCP 126.
Whenever a user requests a DCP 126, the viewer application 104 requests a password and a username from the user. The username is used as a security token. A user can provide the system administrator with the password and username when the user registers for access to the server computer 106. Alternatively, the user can also provide the username and password when the user invokes the viewer application 104 for the first time. Once the username and password are received, the system component software 114 stores both the password and username in the user's personal record.
As usedherein, the system adrninistrator is an individual who receives datafromcalled/caller users, stores the received data in the main database 118, and performs other system related functions. The system administrator adds data to the user' s personal record by using the system administrator computer 130. The system administrator receives data from a user when the user registers for access to the server computer 130. The user may register by sending the system administrator information, including information relating to the user' s relationship to other authorized users, information relating to a user's preferences, and information relating to a user's experience level. The system administrator stores the received user information in the personal record.
The system component software 114 uses the information contained in the personal record to generate a GUI for the viewer application 104. For example, when the personal record contains information indicating that the user is a seven-year-old girl, the background color of the viewer application GUI may be pink and the font color may be purple. Similarly, when the personal record contains information indicating that the user is a eleven-year-old boy, the background color of the viewer application GUI may be black and the font color may be blue. Of course, users are free to change the attributes (e.g., layout of page, background color, font, and overall them) of the viewer application GUI based on their individual preferences.
Based on a user' s relationship to other authorized users, the system administrator assigns the user to one or more groups. The system administrator stores the group name in the user' s personal record. FIG..2 shows a block diagram of exemplary users and groups.
In FIG. 2, each user 200 and 202 can be in one or more groups, 204, 206 and 208. To illustrate, assume that group one 204 consists of people that work with user one 200, and that group three 208 consists of people that are related to user one 200. Assume further that group one 204 consists of people that also work with user two 202, and that group two 206 consists of people that are related to user two 202. For simplicity, assume that user one' s name is Bob and user two' s name is Jane. The system administrator assigns Bob (user one 200) to group one 204 and group three 208. The system administrator assigns Jane (user two 304) to group one 204 and group two 206. The system administrator stores Bob's group assignments in Bob's personal records and stores Jane's group assignments in Jane's personal record.
The groups 204, 206, and 208 are private and secure groups. That is, the groups are not publicly open to all users. Instead, when a user registers for access to the server computer 106, the user can provide a group password for each group. A user can also provide a group password subsequent to registration. The user obtains the group password from an authorized user. More specifically, an authorized user that has the group password may invite others into the group by distributing the group password. Hence, unlike many chat rooms, which are publicly open to all users, access to each group is by invitation only. The system administrator stores the group password in the user's personal record. The system administrator will only assign the user to groups in which the user has provided a group password.
When a user uses the viewer application 104 for the second time, and during all subsequent sessions thereafter, the viewer application 104 will request that the user enter both the username and password. The viewer application 104 sends this information to the system component software 114, and the system component software 114 authenticates the user.
Each viewer application window has an embedded browser. The browser displays specialized web pages that are generated using DHTML, XTML, HTML, Java code, and any other languages that are used to create documents on the World Wide Web (WWW). The viewer application GUI consists of these displayed web pages.
FIG. 3 shows an exemplary viewer application GUI 300. The toolbar 302 contains command buttons 304, 306, and 308. Each of these command buttons 304, 306, and 308 instruct the viewer application 104 to invoke a particular software component. For example, the advertisement forwarding software button 304 instructs the viewer application 104 to invoke the advertisement forwarding software 128; the multimedia answering service button 306 instructs the viewer application 104 to invoke the multimedia answering service software 112; and the browser button 308 instructs the viewer application 104 to invoke its embedded browser. Of course, the toolbar may also contain other command buttons without exceeding the scope of the present invention. To illustrate the manner in which a user interfaces with the viewer application GUI 300, assume that a user clicks on the browser button 308. The viewer application 104 then invokes the browser application. Next, the browser application displays browser windows 312 within the viewer application GUI 300. Each browser window 310 has its own browser window toolbar 312.
Although, the system component software 114 generates the viewer application GUI 300, the preferences section 314 allows users to further customize the viewer application GUI 300 by selecting the attributes (e.g., background color, text color, size, number of frames, etc.) of the viewer application GUI 300. The user can also select the language that is displayed within the viewer application GUI 300. The viewer application 104 stores the user' s preference selection in the user' s personal record. The next time the user accesses the viewer application 104, the viewer application 104 will display a customized viewer application GUI 300 that contains the user-selected preferences. A caller user can request a DCP 126 from the viewer application 104. Before retrieving the DCP 126, the viewer application 104 requests and receives the username and the password from the caller user. The viewer application 104 then sends the username and password to the system component software 114. The system component software 114 authenticates the username and password. More specifically, the system component software 114, compares the username and password (collectively referred to as user identification information) to the user identification information stored in the main database 118. When a match is nonexistent, the server component software 114 denies access to the server computer 106, and hence, denies access to the DCP 126. On the other hand, when a match exists, the system component software 114 grants access to the server computer.
When the system component software 114 grants access, the system component software 114 sends a message to the viewer application 104. The system component software 114 then extracts the user information from the user' s personal record, and sends the user information to the advertisement software 108, directory services software 110, and multimedia answering service software 112. The advertisement software 108uses1heinformationtotargetrelevantadvertisements to the caller user. The directory services software 110 uses the information to track whether other authorized users are online. The multimedia answering service software 112 uses the information to display a personalized outgoing message to the caller user.
With respect to the directory services, the directory services software 110 uses the username (also referred to as the token) to track whether the user is online or offline. When a user is online, the directory services software 110, stores information in the directory services database 120 about the user's hardware conferencing tools. That is, the directory services database 120 contains information about whether a user has full multimedia capability, including audio, video, text, etc.; or limited multimedia capability (e.g., audio only, video only, or text only). Users provide information about their multimedia capability to the system administrator. The system administrator stores this information in the user's personal record. The directory services software 110 retrieves this information from the user's personal record and stores it in the directory service database 120. The directory services database 120 also contains the user's computer address.
During the first multimedia communication session, the system sends a standard (or default) DCP template. The viewer application 104 displays the standard DCP template. FIG. 4 shows a standard DCP template 400 that can be used in accordance with an embodiment of the present invention. In this example, the standard DCP template 400 contains a work group 402 and a family group 404. The standard DCP template 400 also contains a called user multimedia display window 406 and a caller user multimedia display window 408. The standard DCP template 400 contains the following command buttons: an initiate multimedia communication button 410; a terminate multimedia communication button 412; a video option button 414; and a preferences option button 416. The standard DCP template 400 further contains an advertisement section 418 for displaying targeted advertisements.
Other features of the standard DCP template 400 include a Home button 420 for linking a user to home web page; a Leave Message button 422 for leaving a video message; a Send Ad button 424 that invokes the advertisement forwarding softwarel28 ; Check Multimedia Answering Service icon 426 that allows user to view multimedia messages; and a Meet icon 428 that allows a users to enter into a multimedia chat.
The system component software 114 uses the information contained in the called user's personal record to dynamically customize the standard DCP template 400. The system component software 114 dynamically customizes the standard DCP template by using standard Internet technologies, including HTML, DHTML, XML, Java code, etc. The system component softwarel 14 is able to modify any aspect of the standard DCP 126 template 400 up to and including dynamically re- writing any code (e.g., Java code) that is inherent within the page.
When modifying the standard DCP template 400, the system component software 114 retrieves the user preference information from the user' s personal record. The preference information includes details about the attributes of a DCP, such as the layout, color scheme, fonts, styles, button styles, and overall theme.
The system component software 114 also modifies the standard DCP template 400 based on a user' s sophistication or experience level. The system component software 114 determines the level of a caller/called user's sophistication by checking the personal record. When the preference information is absent from the personal record, the system component software 114 looks at the user's prior usage pattern, identifying which features (e.g., command buttons) the caller/called user has invoked and the number of times in which the caller/called user has invoked each feature. Based on the usage pattern, the system component software 114 determines the skill/experience level of a user.
Generally, a user's skill/experience level may fall into one of three categories: novice, average or advanced. Of course, additional categories may be added without exceeding the scope of the present invention. The names of the categories are descriptive. Namely, the novice category refers to a user who has a small amount of experience with the DCP 126. The average category refers to a user that has some experience with the DCP 126. The advanced category refers to a user that has a large amount of experience with the DCP 126.
Once the system component software 114 identifies the called/caller user' s experience level, the experience level is stored in the personal record. The system component software 114 modifies the standard DCP template 400 by adding command buttons that reflect the user' s experience level. To illustrate, for a novice user, the system component software 114 may add a connect button, a disconnect button, and a volume button. For an advanced user, the system component software 114 may add a capture video button. Modifying the standard DCP template 400 according to the user' s experience level provides a user friendly environment because the learning curve for the DCP 126 is reduced.
The system component software 114 then checks the personal record for other information about the user, such as information concerning age, gender, residence, relationship to other users, etc. The system component software 114 then sends all of the information (e.g., preferences, experience level, and other personal information) to the advertisement software 108. The advertisement software 108 then compares this information, along with pre-set criteria (e.g., time of day, date, etc.) to the advertisements contained in the advertisement software database 122. The advertisement software 108 then creates a targeted advertisement schedule for the user. That is, the advertisement software 108 creates a list of advertisements that can be displayed to the user during a multimedia communication session.
When the personal record lacks information about the user, the advertisement software 108 compares generic information such as the time of day and the date, to the advertisements contained in the advertisement software database 122. The advertisement software 108 then creates a generic advertisement schedule. This advertisement schedule is generic because it is not based on the personal preferences of a particular user. That is, the generic advertisement schedule is not based on information contained in a user's personal record. Instead, the generic advertisement schedule is based on conditions that are distinct from the user.
Once the advertisement schedule is created, the system component software 114 generates the DCP 126 and displays the DCP 126 to the user. FIG. 5 shows a DCP 126 that could be used in accordance with the present invention. The difference between the DCP 126 and the standard DCP template 400 is that both the video button 414 and the preferences button 416 are missing. The system component software 114 displays the DCP 126 to the user via the viewer application 104. The user initiates a multimedia communication session by clicking one of the command buttons 410 or 412.
FIG.6 is a flowchart that illustrates the steps performed to modify the standard DCP template
400. Block 600 represents the viewer application 104 being invoked by a user. The viewer application 104 then receives user information (i.e., a username and password) from a user , as represented by block 602. The viewer application 104 then sends that usemame and password
(collectively referred to as the user information) to the system component software 114.
Block 604 is a decision block that represents the system component software 114 determining whether the user identification information is stored in the main database 118. When the user identification information is absent from the main database, the system component software 114 denies access and the present invention returns to block 602. Otherwise, when the user identification is stored in the main database the system component software 114 grants access and the present invention proceeds to block 606.
Block 606 represents the system component software 114 retrieving the standard DCP template 400 from the server computer memory. The system component software 114 then retrieves other personal information about the user from the user's personal record, as represented by block 608. Block 610 represents the system component software modifying the standard DCP template 400 based on user preferences (e.g., page layout, location of video screens, demographics, background color, font, selection of command buttons, etc.). Block 612 is a decision block that represents the system component software 114 determining whether the user's experience level (e.g., novice, average, advanced, etc.) is stored in the user's personal record. When the user's experience level is stored, the system component software 114 proceeds to block 614. Otherwise, the system component software 114 proceeds to block 616. Block 614 represents the system component software 114 modifying the standard DCP template 400 based on the user's experience level. More specifically, the system component software 114, displays command buttons based on a user's experience level. When the user's experience level is missing from the personal record, the system component software does not modify the standard DCP template 400. Instead, the system component software 114 displays all the command buttons that are contained in the standard DCP template 400.
Block 616 represents the system component software 114 retrieving group information from the user's personal record. For each group that the user is assigned to, the system component software 114 identifies all other users that are assigned to that group, as represented by block 618. Block 620 represents the system component software determining whether each grouped user is online. More specifically, system component software 114 compares each grouped user to the names of the online users in the directory services database 120.
Block 622 represents the system component software 114 modifying the standard DCP template 400 by adding the group information.
Block 624 represents the system component software 114 by retrieving additional information from the personal record. The system component software also retrieves information about the date and time from the server computer, as represented by block 626.
Block 628 represents the advertisement software 108 comparing the additional user information contained in the personal record to the advertisements contained in the advertisement software database 122.
Block 630 is a decision block that represents the advertisement software 108 determining whether a match was found. When a match is found, the system component software 114 modifies the standard DCP template 400 by adding the first targeted advertisement, as represented by block 632. Otherwise, when no match is found, the system component software 114 modifies the standard
DCP template by adding a generic advertisement, as represented by block 634.
Block 636 represents the system component software 114 adding miscellaneous information, such as the Meet icon 420, and navigational aids for the web browser. Finally, the system component software 114 transmits the DCP 126 to the viewer application 104 for display to the user by block 638.
Once the DCP 126 is displayed, the user can initiate a multimedia communication session by choosing one of two options. First, the user can initiate a multimedia session by clicking on a name contained in one of the groups displayed within the DCP 126. Second, a user can initiate a multimedia session by typing in the called user's computer address (commonly referred to as the e- mail address).
When a user clicks on a name contained in one of the groups displayed within the DCP 126, the system component software checks the directory services database 120 to determine whether the called user is online. When the called user is offline or otherwise unavailable, the multimedia answering service software 112 immediately displays an outgoing message. Alternatively, when the called user is available, the system component software 114 initiates the call.
The second option for initiating a multimedia communication session, involves the user inputting the called user's computer address into the DCP 126. The DCP 126 sends the inputted address to the system component software 114. The system component software 114 compares the inputted address to the addresses contained in the main database 118. When no match exists, the system component software 114 establishes a multimedia communication session. When the called user fails to answer the incoming call, the DCP 126 displays the following message to the caller user "can't connect message." Otherwise, when the called user answers, a connection between the caller user and called user is established.
When a match exists between the called user ' s computer address and the main database, 118, the called user has previously used the viewer application 104. As a result, the system component software 114 can check the directory services software 110 to determine whether the called user is online. When the called user is offline or otherwise unavailable, the multimedia answering service software immediately displays an outgoing message. Alternatively, when the called user is available, the system component software 114 initiates the call.
For both connection options (i.e., clicking on a name contained in one of the groups and inputting a computer address), the called user's viewer application 104 prompts the called user to accept the incoming call. At this time, the caller user's usemame is displayed in the viewer application GUI 300, and the called user has the option to accept the call, or let it go to the multimedia answering service software 112. When the call is accepted, the system component software 114 establishes a multimedia communications session. Once the session is established, the DCP 126 displays images and audio, so that the called user and caller user can see and hear each other. The system component software 114 then retrieves both the called user' s and caller user' s personal information from the main database 118. Note, the system component software 114 can only retrieve an authorized called user' s personal information (i.e., a user whose personal information was previously stored in the main database 118). When the called user is authorized to access the server, the system component software 114 identifies them by their usemame. The advertisement software 108 compares the caller and called users' information to the advertisement software database 122 and creates a synchronized advertisement schedule. This synchronized advertisement schedule is created by, comparing the personal information of the caller user and the called user. The advertisement software 108 uses this comparison to furtherrefine target- advertising campaigns to both the called and caller users. For example, assume the called user lives in Spain, and the caller user lives in Los Angeles. Assume further that the caller user has previously purchased airline tickets online. The caller user may receive an advertisement for United Airlines, wherein the advertisement contains the latest fare specials on flights to Spain. The advertisement software 108 also has the ability to display advertisements based on demographic information. Returning to the example above, assume that the called user also receives an advertisement for a hotel in Spain, and that the advertisement is displayed in Spanish.
During this multimedia session a called/caller user can invoke the advertisement forwarding software 128 to forward the displayed advertisement to the other user. If two users are participating in a multimedia communication session (and both are registered users), the advertisement forwarding software 128 performs the following steps: One user (the sender) clicks the "Send All" push button 416. The advertisement forwarding software 128 sends the URL of the resource as well as the usemame of the other user (the recipient), to the system component software 114. The system component software cross-references the recipient usemame with the directory service database 120, thus, resolving the recipient' s computer network address. The system component software 114 then "pushes" the advertisement to the recipient's viewer application 104, resulting in the advertisement being displayed in a new window.
When the sender and recipient are not participating in a multimedia session, or when the recipient is not a registered user, the viewer application 104 invokes a default email function, resident on the client computer 102. The viewer application 104 automatically attaches the resource (i.e., an advertisement) to an email message, and prompts the sender for the recipient's email address.
The system component software 114 and the viewer application 104 gather statistical information about the multimedia session. The system component software 114 gathers information about the identify of the caller/called user, and the list of advertisements that caller/called user responded to. The viewer appHcation 104 tracks the length of the session. This information is stored in the user's personal record. The information is not stored when the usemame is absent from the main database 118. The usemame is absent when the user has not previously used the viewer appHcation 104. The session is terminated when one user cHcks on the hang up button 410. When the called user fails to answer an incoming caU, the viewer appHcation 104 requests the called user's outgoing message from the multimedia answering service software 112. The request includes the called user's usemame, which uniquely identifies that user to the multimedia answering service software 112. The system component software 114, then cross-references the usemame with the usernames contained in the main database 118. When the usemame exists, the caUed user' s multimedia answering service database 124 is accessed. Next, the system component software cross-references the caUer user' s usemame with directory service database 120 to determine the caller user's computer address. The system component software 114 then sends the outgoing message to the caUer user's viewer appHcation 104, which displays the outgoing message. A called user can have one or more outgoing messages.
These outgoing messages can be used when a cHent is offline. They can also be used when a cHent is onHne and participating in a multimedia session. In the latter case, the caUed user is prompted concerning the incoming caU. The called user has the option of switching to the caller user, or sending the caUer user to multimedia answering service. This functionahty is similar to caU waiting feature of traditional telephones.
The multimedia answering service software 112 also gives the caller user the opportunity to leave a message (i.e., an incoming message) for the caUed user. The multimedia answering service software 112 also has a message playback features and management features. These features aUow users to check, delete and otherwise manage their multimedia answering service messages.
The multimedia answering service software 112 does not display the same outgoing message to each caUer user. Instead, the multimedia answering service software 112 provides the option of displaying a unique outgoing message to each caller user, such that the unique outgoing message is only relevant to a specific caller. The content of multimedia answering service outgoing message may be based on, among other things, the time of the multimedia communication session, the date of the session, the relationship between the caUed user and the caUer user, the geographic location of the caller/caUed users, and any other defined factors. An exemplary multimedia answering service outgoing message may contain the following language: "Happy Birthday Grandmother. I am always happy to hear from you. I will call you later this evening."
When the outgoing message ends, the multimedia answering service software 112 (via the viewer appHcation 104) prompts the caller user to leave message. The caUer user can then record a message. The multimedia answering service software 112 then stores the message in the multimedia answering service database (or mailboxes) 124. Reference is now made to FIG. 7, in which block 700 represents the system component software 114 displaying the DCP 126 via the user's viewer appHcation 104. The system component software 114 then receives a request to initiate a multimedia communication session, as represented by block 702. Block 704 is decision block that represents the system component software 114 determining whether the request contains a caUed users computer address. When the request does not contain the called users computer address, the system component software 114 proceeds to block 705. Otherwise, when the request contains the called users computer address, the system component software 114 proceeds to block 729. Block 706 is decision block that represents the system component software 114 determining whether the called user is online. When the caUed user is offline, the system component software
114 invokes the multimedia answering service software 108 and returns to other processing, as represented, respectively, by blocks 708 and 710. Otherwise, when the caUed user is onHne, the present invention proceeds to block 712.
Block 712 represents the system component software 114 initiating a multimedia communication session. The system component software 114 then determines whether the called user answers the incoming call, as represented by decision block 714. When the caUed user fails to answer the incoming caU, the system component software invokes the multimedia answering service software 108 and returns to other processing, as represented, respectively, by blocks 708 and 710.
When the called user answers the incoming call, the system component software 114 retrieves the personal records of both the called user and the caller user, as represented by block 716.
Block 718 represents the system component software 114 sending the personal records to the advertisement software 108. The advertisement software 108 then compares the personal records of the users to the advertisement software database 122 as represented by block 720. The system component software
114 then displays the targeted advertisements to the caUer user and the called user.
Block 724 is a decision block that represents the system component software 114 determining whether the user wishes to forward an advertisement. When the user wishes to forward an advertisement, the system component software invokes the advertisement forwarding software 104, as represented by block 728.
Block 728 represents the system component software terminating the multimedia communication session when one user hangs up. When the initial request to initiate a multimedia communication session includes auser' s computer address, the system component software proceeds to block 729. Block 730 is a decision block that represents the system component software 114 determining whether the called user answers.
When the call user fails to answer, the system component software 114 returns a message indicating that the called user does not answer, and the system component software 114 terminates the multimedia communication session, as represented, respectively, by blocks 732 and 734. When the called user answers, the system component software 114 initiates a multimedia communication session, as represented by block 736. The system component software 114 then retrieves the caUer user's personal records, as represented by block 738.
Block 740 represents the system component software 114 sending the caUed user' s personal records to the advertisement software 108. The advertisement software 108 then compares the called users personal record to the advertisement software database 122, as represented by block 742.
Block 744 represents the system component software 114 displaying the targeted advertisement to the caUer user. The system component software 114 also displays soHcitation advertisements about registering to access the server and generic advertisements to the caUed user, as represented by block 746.
Block 748 represents the system component software 114 terminating the multimedia communication session when one user hangs up.
FIG.8 is a flowchart that iUustrates the steps performed by the multimedia answering service software 112 in accordance with an embodiment of the present invention. Block 800 represents the multimedia answering service software 112 receiving arequest for an outgoing message. Block 802 represents the multimedia answering service software 112 identifying the caUed user's outgoing messages in the multimedia answering service database 124. Block 804 represents the multimedia answering service software 112 retrieving a called user's outgoing message from the multimedia answering service database 124. The multimedia answering service software 112 then displays the outgoing message via the user's viewer appHcation 104, as represented by block 806.
Block 808 is a decision block that represents the multimedia answering service software 112 determining whether the caller user wishes to leave an incoming message. When the caUer user wishes to leave an incoming message, the multimedia answering service software 112 records that message and stores the message in the multimedia answering service database 124, as represented by block 810. The system component software then terminates the multimedia communication session, as represented by block 812.
FIG. 9 is a flowchart that illustrates the steps performed by the advertisement software 108 in accordance with an embodiment of the present invention. Block 900 represents the advertisement software 108 retrieving information relating to a relationship between a caller user and a called user from the main database 118. Based on the retrieved information, the advertisement software 108 displays one targeted advertisement to the caUer user and displays another targeted advertisement to the called user, as represented by block 902.
FIG. 10 is a flowchart that illustrates the steps performed by the advertisement forwarding software 128 in accordance with an embodiment of the present invention. Block 1000 represents the advertisement forwarding software 128 receiving a request to forward an advertisement from one user to another user. The advertisement forwarding software 128 then transmits the URL of the advertisement to the other user's viewer appHcation 104, as represented by block 1002. The advertisement forwarding software then displays the advertisement to the other user via the viewer appHcation 104 as represented by block 1004.
From the foregoing description, it should be apparent that the present invention provides a method, apparatus, and article of manufacture for generating a graphical user interface for a multimedia communication session in a manner that yields a dynamic, customized graphical user interface.
Although the invention has been described in detail with reference only to the presently preferred hardware environment, those of ordinary skill in the art will appreciate that various modifications can be made without departing from the invention. Accordingly, the invention is defined only by the following claims.

Claims

1. A method for generating a graphical user interface for a multimedia communication session between a pluraHty of cHent computers, the method comprising: receiving an input from a first user, wherein the input contains user identification information about the first user; determining whether the user identification information is contained within a database that is connected to a server computer; and dynamically creating a customized graphical user interface for the multimedia communication session, based on the user identification information determined to be contained within the database.
2. The method of claim 1, wherein the user identification information comprises a usemame and a password.
3. The method of claim 1 , wherein dynamically creating the customized graphical user interface for the multimedia communication session comprises dynamically creating the customized graphical user interface for the multimedia communication session by using both the user identification information and other personal information about the first user.
4. The method of claim 3, wherein the other personal information comprises preference information, experience level information, demographic information, and information relating to a relationship between the first user and other users.
5. The method of claim 4, wherein the method further comprises grouping each user relative to the personal information.
6. The method of claim 1 , wherein dynamically creating the customized graphical user interface for the multimedia communication session further comprises dynamically creating the customized graphical user interface for the multimedia communication session by using a time at which a request to initiate the multimedia communication session is received.
7. The method of claim 1 , wherein dynamically creating the customized graphical user interface for the multimedia communication session further comprises dynamically creating the customized graphical user interface for the multimedia communication session by using a date on which the request to initiate the multimedia communication session is received.
8. The method of claim 1 , wherein the displayed graphical user interface includes one or more web site pages.
9. The method of claim 1, wherein the graphical user interface includes one or more sections that are used to display real time multimedia data.
10. The method of claim 1, wherein the graphical user interface includes one or more multimedia communication controls, wherein each multimedia communication control controls one or more attributes of the graphical user interface.
11. The method of claim 1 , wherein the graphical user interface displays a targeted advertisement to the user by using the personal information stored in the database.
12. The method of claim 1 , wherein the graphical user interface displays a portion of the data that is contained within the database.
13. The method of claim 1, wherein the method further comprises: receiving a request from the first user to initiate the multimedia communication session between the first user and a second user; and initiating the multimedia communication session between the first user and the second user when the second user is available.
14. The method of claim 1, wherein the method further comprises: recording a customized outgoing message for the first user; and storing the recorded customized outgoing message in the database.
15. The method of claim 14, wherein the method further comprises, when the second user does not answer an incoming call, displaying the customized outgoing message to the first user.
16. The method of claim 15, wherein the method further comprises: receiving an incoming message from the first user; and storing the incoming message.
17. A method of displaying an advertisement during a multimedia communication session, the method comprising: retrieving information relating to a relationship between a first user and a second user from a database; and based on the retrieved information, displaying a targeted first advertisement to the first user and displaying a targeted second advertisement to the second user.
18. The method of claim 17, wherein the first advertisement is different from the second advertisement.
19. The method of claim 18, wherein the method further comprises: receiving a request from the first user to display the first advertisement to the second user; and displaying the first advertisement to the second user.
20. The method of claim 19, wherein the method further comprises: receiving a request from the second user to display the second advertisement to the first user; and displaying the second advertisement to the first user.
21. A method of providing a multimedia answering service, the method comprising: receiving a request from a first user to initiate a multimedia communication session with a second user; and when the second user does not answer an incoming call, displaying a customized outgoing multimedia message.
22. The method of claim 21, wherein the method further comprises: receiving an incoming multimedia message from the first user, wherein the incoming multimedia message is customized for the second user; and storing the incoming multimedia message.
23. A method for transmitting web browser resources during a multimedia communication session, the method comprising: receiving a request from a first user to display a web browser resource to a second user during the multimedia communication session; and displaying the web browser resource to the second user, without interrupting the multimedia communication session.
24. An apparatus for generating a graphical user interface for a multimedia communication session, comprising: a computer attached to a database; and a computer program, performed by the computer, that (a) receives an input from a first user, wherein the input contains user identification information about the first user, (b) determines whether the user identification information is contained within the database, and (c) dynamically creates a customized graphical user interface for the multimedia communication session, based on the user identification information determined to be contained within the database.
25. The apparatus of claim 24, wherein the user identification information comprises a use ame and a password.
26. The apparatus of claim 24, wherein the dynamic creation includes dynamically creating the customized graphical user interface for the multimedia communication session by using both the user identification information and other personal information about the first user.
27. The apparatus of claim 26, wherein the other personal information comprises preference information, experience level information, demographic information, and a definition of the first user's relationship to other users.
28. The apparatus of claim 27 wherein the apparatus further comprises a computer program, performed by the computer that groups each user relative to the personal information.
29. The apparatus of claim 24, wherein the dynamic creation further includes dynamically creating the customized graphical user interface for the multimedia communication session by using a time at which a request to initiate the multimedia communication session is received.
30. The apparatus of claim 24, wherein the dynamic creation further includes dynamically creating the customized graphical user interface for the multimedia communication session by using a date on which the request to initiate the multimedia communication session is received.
31. The apparatus of claim 24, wherein the displayed graphical user interface includes a web site page.
32. The apparatus of claim 24, wherein the graphical user interface includes a section that is used to display real time multimedia data.
33. The apparatus of claim 24, wherein the graphical user interface includes a multimedia communication control, wherein the multimedia communication control controls an attribute of the graphical user interface.
34. The apparatus of claim 24, wherein the graphical user interface includes a targeted advertisement, wherein the targeted advertisement is based on the personal information stored in the database.
35. The apparatus of claim 24, wherein the graphical user interface includes a portion of the data that is contained within the database.
36. The apparatus of claim 24, wherein the apparatus further comprises a computer program, performed by the computer, that (a) receives a request from the first user to initiate the multimedia communication session between the first user and a second user, and (b) initiates the multimedia communication session between the first user and the second user when the second user is available.
37. The apparatus of claim 24, wherein the apparatus further comprises a computer program, performed by the computer, that (a) records a customized outgoing message for the first user, and (b) stores the recorded customized outgoing message in the database.
38. The apparatus of claim37, wherein the apparatus further comprises a computer program, performed by the computer that displays the customized outgoing message to the first user when the second user does not answer an incoming call.
39. The apparatus of claim 38 , wherein the apparatus further comprises a computer program, performed by the computer that (a) receives an incoming message from the first user, and (b) stores the incoming message.
40. An apparatus for displaying an advertisement during a multimedia communication session, comprising: a computer attached to a database; and a computer program, performed by the computer that (a) retrieves information relating to a relationship between a first user and a second user from the database, and (b) based on the retrieved information, displays a targeted first advertisement to the first user and displays a targeted second advertisement to the second user.
41. The apparatus of claim 40 wherein the first advertisement is different from the second advertisement.
42. The apparatus of claim 41 , wherein the apparatus further comprises a computer program, performed by the computer that (a) receives a request from the first user to display the first advertisement to the second user, and (b) displays the first advertisement to the second user.
43. The apparatus of claim 42, wherein the apparatus further comprises a computer program, performed by the computer that (a) receives a request from the second user to display the second advertisement to the first user, and (b) displays the second advertisement to the first user.
44. An apparatus for providing a multimedia answering service, the apparatus comprising: a computer; and a computer program, performed by the computer that (a) receives a request from a first user to initiate a multimedia communication session with a second user, and (b) when the second user does not answer an incoming call, displays a customized outgoing multimedia message.
45. The apparatus of claim 44, wherein the apparatus further comprises a computer program, performed by the computer that (a) receives an incoming multimedia message from the first user, wherein the incoming multimedia message is customized for the second user, and (b) stores the incoming multimedia message.
46. An apparatus for transmitting web browser resources during a multimedia communication session, the apparatus comprising: a computer; and a computer program, performed by the computer that (a) receives a request from a first user to display a web browser resource to a second user during the multimedia communication session, and (b) displays the web browser resource to the second user without interrupting the multimedia communication session.
47. An article of manufacture comprising a computer program carrier readable by a computer and embodying one or more instructions executable by the computer to perform the method of generating a graphical user interface for a multimedia communication session between a pluraHty of cHent computers, the method comprising: receiving an input from a first user, wherein the input contains user identification information about the first user; determining whether the user identification information is contained within a database that is connected to a server computer; and dynamicaUy creating a customized graphical user interface for the multimedia communication session, based on the user identification information determined to be contained within the database.
48. The article of manufacture of claim 47, wherein the user identification information comprises a usemame and a password.
49. The article of manufacture of claim 47, wherein dynamically creating the customized graphical user interface for the multimedia communication session comprises dynamically creating the customized graphical user interface for the multimedia communication session by using both the user identification information and other personal information about the first user.
50. The article of manufacture of claim 49, wherein the other personal information comprises preference information, experience level information, demographic information, and information relating to a relationship between the first user and other users.
51. The article of manufacture of claim 50, wherein the method further comprises grouping each user relative to the personal information.
52. The article of manufacture of claim 47, wherein dynamically creating the customized graphical user interface for the multimedia communication session further comprises dynamically creating the customized graphical user interface for the multimedia communication session by using a time at which a request to initiate the multimedia communication session is received.
53. The article of manufacture of claim 47, wherein dynamically creating the customized graphical user interface for the multimedia communication session further comprises dynamically creating the customized graphical user interface for the multimedia communication session by using a date on which the request to initiate the multimedia communication session is received.
54. The article of manufacture of claim 47, wherein the displayed graphical user interface is includes one or more web site pages.
55. The article of manufacture of claim 47, wherein the graphical user interface includes one or more sections that are used to display real time multimedia data.
56. The article of manufacture of claim 47, wherein the graphical user interface includes one or more multimedia communication controls, wherein each multimedia communication control controls one or more attributes of the graphical user interface.
57. The article of manufacture of claim 47, wherein the graphical user interface displays a targeted advertisement to the user by using the personal information stored in the database.
58. The article of manufacture of claim 47, wherein the graphical user interface displays a portion of the data that is contained within the database.
59. The article of manufacture of claim 47, wherein the method further comprises: receiving a request from the first user to initiate the multimedia communication session between the first user and a second user; and initiating the multimedia communication session between the first user and the second user when the second user is available.
60. The article of manufacture of claim 47, wherein the method further comprises: recording a customized outgoing message for the first user; and storing the recorded customized outgoing message in the database.
61. The article of manufacture of claim 60, wherein the method further comprises, when the second user does not answer an incoming call, displaying the customized outgoing message to the first user.
62. The article of manufacture of claim 61 , wherein the method further comprises: receiving an incoming message from the first user; and storing the incoming message.
63. An article of manufacture comprising a computer program carrier readable by a computer and embodying an instruction executable by the computer to perform a method of displaying an advertisement during a multimedia communication session, the method comprising: retrieving information relating to a relationship between a first user and a second user from a database; and based on the retrieved information, displaying a targeted first advertisement to the first user and displaying a targeted second advertisement to the second user.
64. The article of manufacture of claim 63, wherein the first advertisement is different from the second advertisement.
65. The article of manufacture of claim 64, wherein the method further comprises: receiving a request from the first user to display the first advertisement to the second user; and displaying the first advertisement to the second user.
66. The article of manufacture of claim 65, wherein the method further comprises: receiving a request from the second user to display the second advertisement to first user; and displaying the second advertisement to the first user.
67. An article of manufacture comprising a computer program carrier readable by a computer and embodying one or more instructions executable by the computer to perform a method of providing a multimedia answering service, the method comprising: receiving a request from a first user to initiate a multimedia communication session with a second user; and when the second user does not answer an incoming call, displaying a customized outgoing multimedia message.
68. The article of manufacture of claim 67, wherein the method further comprises : receiving an incoming multimedia message from the first user, wherein the incoming multimedia message is customized for the second user; and storing the incoming multimedia message.
69. An article of manufacture comprising a computer program carrier readable by a computer and embodying one or more instructions executable by the computer to perform a method of transmitting web browser resources during a multimedia commumcation session, the method comprising: receiving a request from a first user to display a web browser resource to a second user during the multimedia communication session; and displaying the web browser resource to the second user, without interrupting the multimedia communication session.
PCT/US2000/016845 2000-02-22 2000-06-19 Applying dynamic user interfaces to multimedia communication via a computer network WO2001063514A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2000257487A AU2000257487A1 (en) 2000-02-22 2000-06-19 Applying dynamic user interfaces to multimedia communication via a computer network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US51066500A 2000-02-22 2000-02-22
US09/510,665 2000-02-22

Publications (1)

Publication Number Publication Date
WO2001063514A1 true WO2001063514A1 (en) 2001-08-30

Family

ID=24031666

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/016845 WO2001063514A1 (en) 2000-02-22 2000-06-19 Applying dynamic user interfaces to multimedia communication via a computer network

Country Status (2)

Country Link
AU (1) AU2000257487A1 (en)
WO (1) WO2001063514A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002098083A1 (en) * 2001-06-01 2002-12-05 Nexusedge Technologies Pte Ltd Method for exchange of data and user interface components
US6647390B2 (en) * 2001-04-30 2003-11-11 General Electric Company System and methods for standardizing data for design review comparisons
EP1496405A3 (en) * 2003-07-10 2006-11-02 Canon Kabushiki Kaisha Information processing method and information processing apparatus

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0367709A1 (en) * 1988-11-04 1990-05-09 International Business Machines Corporation Customization of user interface for application programs
WO1996025012A1 (en) * 1995-02-07 1996-08-15 British Telecommunications Public Limited Company Information services provision and management
WO1997026729A2 (en) * 1995-12-27 1997-07-24 Robinson Gary B Automated collaborative filtering in world wide web advertising
US5717923A (en) * 1994-11-03 1998-02-10 Intel Corporation Method and apparatus for dynamically customizing electronic information to individual end users
WO1999009658A2 (en) * 1997-08-15 1999-02-25 Inergy Online, Inc. Server-sided internet-based platform independent operating system and application suite

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0367709A1 (en) * 1988-11-04 1990-05-09 International Business Machines Corporation Customization of user interface for application programs
US5717923A (en) * 1994-11-03 1998-02-10 Intel Corporation Method and apparatus for dynamically customizing electronic information to individual end users
WO1996025012A1 (en) * 1995-02-07 1996-08-15 British Telecommunications Public Limited Company Information services provision and management
WO1997026729A2 (en) * 1995-12-27 1997-07-24 Robinson Gary B Automated collaborative filtering in world wide web advertising
WO1999009658A2 (en) * 1997-08-15 1999-02-25 Inergy Online, Inc. Server-sided internet-based platform independent operating system and application suite

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"DYNAMIC TIME-DEPENDENT USER INTERFACE MODIFICATION", IBM TECHNICAL DISCLOSURE BULLETIN,US,IBM CORP. NEW YORK, vol. 37, no. 1, 1994, pages 287 - 289, XP000428779, ISSN: 0018-8689 *
IRIS SYSTEMS LTD: "IRIS Phone - Version 2.5 for Microsoft Windows", USER'S MANUAL, 1997, XP002157000, Retrieved from the Internet <URL:http://irisphone.com/demo/irisdoc.zip> [retrieved on 20001221] *
KANNAN P K ET AL: "Marketing information on the I-Way - Data junkyard or information gold mine?", COMMUNICATIONS OF THE ACM, MARCH 1998, ACM, USA, vol. 41, no. 3, pages 35 - 43, XP002157002, ISSN: 0001-0782 *
WHITE PINE SOFTWARE, INC: "CU-SeeMe - Version 3.1.2", USER GUIDE, November 1998 (1998-11-01), XP002157001, Retrieved from the Internet <URL:ftp://ftp.cuseeme.com/pub/CU-SeeMe/cu312.pdf> [retrieved on 20001221] *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6647390B2 (en) * 2001-04-30 2003-11-11 General Electric Company System and methods for standardizing data for design review comparisons
WO2002098083A1 (en) * 2001-06-01 2002-12-05 Nexusedge Technologies Pte Ltd Method for exchange of data and user interface components
EP1496405A3 (en) * 2003-07-10 2006-11-02 Canon Kabushiki Kaisha Information processing method and information processing apparatus
US7421655B2 (en) 2003-07-10 2008-09-02 Canon Kabushiki Kaisha Presenting information indicating input modalities

Also Published As

Publication number Publication date
AU2000257487A1 (en) 2001-09-03

Similar Documents

Publication Publication Date Title
US11588763B2 (en) Virtual area communications
US10164919B2 (en) System and method for sharing content in an instant messaging application
US11874883B2 (en) Encapsulating virtual area based communicant assemblies
US10440072B2 (en) Systems and methods for communicating among meeting attendees via wireless telephones
US6519628B1 (en) Method and system for customer service using a packet switched network
US7568014B2 (en) Individually specifying message output attributes in a messaging system
US6466969B1 (en) Notification subsystem
US8930472B2 (en) Promoting communicant interactions in a network communications environment
US9077549B2 (en) Creating virtual areas for realtime communications
US8751572B1 (en) Multi-user chat search and access to chat archive
US7266583B2 (en) Method and system for providing contact management to chat session participants
US10366514B2 (en) Locating communicants in a multi-location virtual communications environment
US20050114527A1 (en) System and method for personal communication over a global computer network
US6934747B1 (en) Computer network indicating relatedness of attributes of monitored terminals
US20120246582A1 (en) Interfacing with a spatial virtual communications environment
US20030236835A1 (en) Network communication system and apparatus
US20100011300A1 (en) Sharing skins
US7702731B2 (en) System, method and program for facilitating an electronic chat session
WO2001063514A1 (en) Applying dynamic user interfaces to multimedia communication via a computer network
WO2002035782A2 (en) Method and device for transmitting streaming multimedia messages
Siyavudeen et al. PROVIDING ENHANCED AUGMENTED REALITY EXPERIENCES USING RELATIONSHIP AND CONTEXTUAL DATA
KR20020072906A (en) Customized multimedia communication system

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

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

AL Designated countries for regional patents

Kind code of ref document: A1

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

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

Ref country code: DE

Ref legal event code: 8642

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

Ref country code: JP