CHAT ROOM METHOD AND PROGRAM PERMITTING USERS TO COMMUNICATE WITH EACH OTHER WHILE BROWSING ANY WEBSITE
FIELD OF THE INVENTION The present invention relates generally to wide area computer networks, and more particularly to so-called "chat rooms" that are accessed via the Internet.
PRIOR ART U.S. Patent No. 5,694,163 (Harrison), issued December 2, 1997, discloses a method and apparatus for viewing on-line chat data incorporated in a broadcast television program. U.S. Patent No. 5,784,568 (Needham), issued July 21, 1998, discloses a multi-party audio chat system which allows individual user statements Lo be staged separately so that the statements are received in order. U.S. Patent No. 6,076,100 (Cottrille et. al), issued June 13, 2000, discloses a system and method for monitoring chat room conversations. U.S. Patent No. 6,061,716 (Moncreiff), issued May 9, 2000, discloses a computer chat room system which includes a number of chat rooms which is related to a program being broadcast over a TV or radio channel.
BACKGROUND OF THE INVENTION Use of and applications for Internet networks, including the so-called "World Wide Web" ("Web"), increase daily. The Web is a network of computer information storage sites, and each site can include one or more information displays, colloquially referred to as "pages". Essentially, a Web site presents advertising or other information regarding a particular organization. A person with a computer and a software system referred to as a "browser" can connect the computer to the Internet (and, hence, to the Web), usually via a telephone line, and with the aid of the browser, access the various Web pages. Another popular feature of the Internet are so-called "chat rooms". Essentially, a chat room is a computer site that can be accessed (i.e., "logged into") simultaneously by many users, with each user being able to input text material intended to be conversational in nature. The conversation input from, e.g., a first user is relayed to the computers of the other users who also happen to be logged onto the chat room, such that the text from the first user is presented to the other users. Then, the other users can respond if they like by inputting text material of their own, and their text material is likewise relayed to the other "occupants" of the chat room, including the first user. In this way, computer users around the globe can undertake dialogues with each other in real time. Further, once a dialog has been established
between two particular users, the users can arrange to "meet" in (i.e., transfer to) a private chat room that can be accessed only by the two users, so that the two users can continue their conversation in private.
Not surprisingly, particular chat rooms typically are focused on particular subject matters, so that the general topic of conversation can be known by users prior to entering a chat room. For example, the topic of discussion in one chat room might be off-road vehicles, whereas the topic of discussion in another chat room might be "singles over thirty". Still another topic of discussion might be a popular television show.
Many Web sites have chat rooms, but many others do not. Users of those Web sites without chat rooms may have a desire to participate in a chat room but are unable to do so.
SUMMARY OF THE INVENTION It is an object of this invention to provide a method where users who are browsing a Web site without a chat room can chat with each other. It is a further object of this invention to provide a chat room that can be used with all Web pages, whether they have a chat room or not.
The object of this invention is achieved by the development of a program, system and method that provides a chat room on a computer server which permits users to communicate with each other while browsing any Web site. This invention can be used with all Web sites whether they have a chat room or not. This invention consists of the server software which is hosted on a single server and the program that is readily available for consumer use through the World Wide Web. A user has access to this chat room program through the World Wide Web. The user can browse any Web site on the Internet and participate with any other user of the same Web site which has been accessed through this same chat room program.
This invention permits multiple users on the chat room program when browsing the same Web site, particularly one without a chat room, to enter into a dialogue concerning assistance in using the site, comments and critiques of the site, shared interest (such as hobbies), and suggestions. This invention can encompass a stand-alone Web site page that allows access to any other site to establish a chat room. The server basically creates a launching site which causes users who are interested in chat rooms to be loyal to that site destination.
BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a schematic drawing of the manner in which the user accesses and uses the chat room of the present invention.
Fig. 2 is a schematic diagram showing the manner in which the server handles the program of this invention.
DETAILED DESCRIPTION OF THE INVENTION
This invention provides a chat room program, system and method that permits users to communicate with each other while browsing any Web site. This invention can be used with all Web sites, whether they have a chat room connected with them or not. Server software is provided which is hosted on a single server available to all users. The program of this invention is readily available for consumer use through the World Wide Web. A user is who on this chat room can browse the Internet and participate with any other user of this chat room who is on the same Web site.
The users of the chat room of this invention can enter into a dialogue with other users who are on the same chat room and are browsing the same Web site concerning assistance in using the site and any other topic in which they are interested. A stand alone Web site page is provided to establish a chat room and that allows access to any other site. The server in essence creates a launching site where users can chat while they are browsing those Web sites.
The server software is hosted on a single server. This program can interface with different browsers such as the Microsoft Internet Explorer or Netscape. A Microsoft Internet Explorer browser is preferred. The server program can be written in C++ and can be run on a Linux based OS. This program can also run on a UNIX-based OS. The server handles all the connections that are made by customers. Communications between customers are handled via the server and broken up by different chat rooms that are based on the Web pages being accessed by the customer. In order to ensure privacy, the server will not track which Web sites the user visits, unless authorized to so by the user.
The chat room established by the server allows typed dialogue in the sender's language and an oral dialogue. A program that translates the sender's language into the user's language can be utilized to facilitate communication between the users of the chat room. The program for This invention can be downloaded from the Web site and can be written in a combination of HTML, Java Script, Java, and XML.
When a user is on the chat room of this invention, he/she may add other individuals on his/her contact list. Some of the features of the contact list are as follows:
a. The user may send a private message to any other user, regardless of whether the person is on the same Web site or not. b. The user may travel to the same Web site as a user on his contact list (this feature may be toggled by each user to protect their privacy while using the World Wide Web). c. The user may categorize contacts based on keywords that the user selects in order to organize contacts into groups of interests. d. The user may also add other users to his ignore list. Messages from any user on this list will not be seen by the user who put them on his ignore list. The program of this invention is most useful for Web sites that do not have a chat room. However, even with Web sites that have a chat room, this program permits the user quicker access because he does not have to wait for a download which may be time consuming on many Web sites with chat rooms.
Fig. 1 illustrates the manner in which the user accesses and uses the chat room. The user first connects to the Web site that hosts the chat room 1. This Web site will give the user a choice to open directly to the chat room 2 or to save the chat room program on a disc 3. If the user clicks on "open," the chat room will open so the user may browse. This enables the user to chat with others that are on the same Web site 4. In the event the user changes Web sites, he/she may chat with other users that are on that same Web site 5. On the other hand, if the user clicks on "save" the file is transferred to a disk or diskette 6. The user can then double click on the file that is saved and the chat room will open 2. This enables the user to browse.
One of the features of the program and method of this invention is that the user may continue to change Web sites and be able to chat with other users who are on the same program and logged into that Web site.
The manner in which the server handles the program is set forth in Fig. 2, which is a representation of the functions served by the server. The server will first check the connections 10 as illustrated in Fig. 2. If there is an incoming connection, it will create a descriptor (a term used to describe a placeholder for a connection made to the server) for it. If a descriptor has become empty, which occurs if the connection breaks for any reason, it will clear the descriptor before processing the input. The server will then obtain any input and update the connections 12. The server will read any input from a descriptor. It will check the status of the client associated with this descriptor before processing the input.
The chat server consists of various channels through normal conversation channel interfacing (not shown). The channel interface comprises a block of memory that allows each chat channel to communicate with each other.
There are several different statuses available for a client. They are described as follows:
STATUS_MENU: At this point the input is processed and the server is looking for the characters "1", "2" or "3". These numbers are equivalent to the following menu:
1. Login
2. Create a new user 3. Quit
If "1" is the input, the client's status becomes STATUS .OG1N. If "2" is the input, the client's status becomes STATUS_CRNAME. If "3" is the input, the client is disconnected and the descriptor is removed from the server. Any other input will result in the status remaining STATUS_MENU. STATUSJLOGIN: At this point the server is looking for a user name from the client. The server checks if a user exists with the name entered as input. If the name has an invalid length, or the username does exist, the client's status returns to STATUS_WAIT. If the username is valid and does exist, the client's status becomes STATUS_PASS.
STATUS_PASS: At this point the server is looking for a password from the client. If the password is correct, the client's status becomes STATUS_PLAYING. Otherwise the status becomes STATUS_MENU.
STATUS_CRNAME: This is where the user may create a new user for the server. The server expects a username as input. If the username already exists on the system or the username is invalid, the client's status becomes STATUS_WAIT. If the username is valid and unused, the client's status becomes STATUS_CRPASS.
STATUS_CRPASS: The server is now looking for the new password to be used for this new username. If the password is valid, the client moves onto to STATUS_CRCONF. Otherwise, it remains on this status.
STATUS_CRCONF: The server now confirms that the previous password was entered correctly by allowing the client to reenter the password. If this password matches the previous password in STATUS_CRPASS, the user is saved to the system, and the status becomes STATUS_WAIT. If the passwords do not match, the status returns to STATUS CRPASS.
STATUS PLAYING: This status is'used when the user is already logged in. The server interprets the input received here as commands. The important commands are as follows:
"goto"<roomname> Goto is used to switch chat rooms. The argument is the name of the room.
"say"<message>
Say is used for talking within a room. Every person in the current room will receive the message sent by this client, along with the client's name attached, "who" Lists everybody connected to the server. This command will only be available to the administrator, "look"
Lists all people in the current room connected to the server, "friend" Lists all contacts associated with the current user. The contacts who are currently connected will be listed first, along with the current chat room they are in. "addfriend"<username>
Adds the user name as a contact for the current user. "delfriend"<username> Removes a contact for the current user,
"quit"
Disconnects the client and logs off the user. "telP'<username><message>
This command has not yet been implemented. It will allow the user to send a private message to a user.
After all the processing has occurred, the server sends output to each client connected to the system 14.
When the program is playing and the user has been logged in, the user can input a number of commands by "clicking on" various boxes/buttons on the screen of the monitor. A box/button (e.g. go to) can be used to switch to another chat room. A box/button (e.g. say) can be used when a user wishes to talk within a chat room. When a user does chat everyone who is currently present in the room will receive the message with the user's name attached. A command can be provided (e.g., who) which will list everyone that is connected to the
service, but this command is preferably only' available to the administrator to the system. A command (e.g. look) can be used to list all the people that are in the current room connected to the server. A user can enter a command (e.g. add friend) to add the user name of a friend to the chat room. In addition, the current user can delete a friend by using a designated command. If the user wants to disconnect to the program, a command like "quit" can be used.
This invention provides a browser connection between the chat room and any other Web site by the user typing in the URL of the desired Web site destination. All that user of the program need do is to log onto the chat room program and then connect through his her browser to the Web site chosen.
This in effect creates a chat room with the Web site, but this chat room is only accessible by those who have logged on to the chat room. Once the user has logged on to the chat room, he/she may go from Web site to Web site and still remain within the chat room.
In this Λvay, the user can talk with other users of the same chat room that are visiting a particular Web site.
It should be understood that the user on the chat room can change the pages of the Web site and still chat with other users who are in the same Web site as long as the pages of the Web site involved are hosted on the same server. If that is not the case, another user who is on the chat room may be lost when the user moves to another section of the Web site. It is possible to set up a lobby on the chat room of this invention for a specific topic which other users can access through the lobby. This private chat room could be password protected if desired.
The chat room of this invention is easy to use as the program is basically downloaded on the user's computer. There is no necessity to install the program on the user's computer.
BENEFITS OF THIS INVENTION
This invention allows a user to log on to a chat room provided by a Web site and browse any other Web site on the World Wide Web and in effect carry the chat room along with the browsing. The user can chat with other users who are logged on to the same chat room and are browsing the same Web site. This invention in effect creates a chat room for Web sites that do not have one. Any other user that wants to follow this user from Web site to Web site may do so. This would be especially interesting to users who are interested in a common topic that may be found on several different Web sites.