SERVICE PROVIDING APPARATUS AND METHOD, AND INFORMATION PROCESSING APPARATUS AND METHOD AS WELL AS PROGRAM STORAGE MEDIUM

The invention provides a service providing apparatus and method and an information processing apparatus and method as well as a program storage medium by which a plurality of users can communicate with each other simultaneously. A plurality of client computers are connected to a shared server over a network and log in a common chat room of a chat system. If a user of one of those of the client computers which are in a group requests for reproduction of a predetermined tune, then the instruction is transmitted to the shared server over the network. The shared server receives the instruction transmitted thereto and reads out music data of the request stored in a music database therein, and transmits the music data to the client computers of the group.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring toFIG. 1, there is shown a chat system to which the present invention is applied. The chat system is principally composed of clients who perform text chatting and a chat server and allows real time chatting and downloading of music data of a jukebox in the chart server.

More particularly, the chat system shown includes a single shared server2which includes a jukebox and has a function for chatting, and three client computers3-1to3-3, all connected to each other over a network1such as the Internet.

The shared server2is formed from, for example, a work station or a personal computer and functions as a chat server by executing a chat server program to provide a chat environment so that the client computers3-1to3-3can perform a chat among them. The shared server2functions also as a jukebox server by executing a music data transmission program so that music data requested by any of the client computers3-1to3-3are read out from a music database11and provided to the client computers3-1to3-3.

Each of the client computers3-1to3-3(in the description below, where there is no necessity to distinguish the client computers3-1to3-3from one another, they are or each of them is referred to simply as client computers3or client computer3) stores therein a chat client program for performing a chat while a chat space provided by the shared server2is shared with the other client computers. Thus, by execution of the chat client program and execution of the chat server program by the shared server2, a chat space for performing a chat (details are hereinafter described with reference toFIG. 12) is displayed on the client computer3.

The client computer3can download music data from the music database11by receiving a tune list of music data stored in the music database11of the shared server2, selecting a predetermined tune from within the tune list and requesting the shared server2for the music data of the predetermined tune.

FIG. 2shows an example of a construction of the shared server2shown inFIG. 1. Referring toFIG. 2, a communication interface21is an apparatus for connection, for example, to the network1and is formed from a modem, a terminal adapter, a network card or a like element. A read only memory (ROM)23stores programs to be used by a central processing unit (CPU)24and data and so forth which are fixed from among parameters for arithmetic operation. The CPU24executes various application programs and a program of a basic OS (Operating System) thereby to perform such various processes as hereinafter described. A random access memory (RAM)25stores a program to be executed by the CPU24, data necessary for processing and so forth. The elements mentioned from the communication interface21to the RAM25are connected to one another by a bus22.

The music database11has a plurality of music data stored therein so that it may function as a jukebox server. For example, as shown inFIG. 3, a tune list41and tune data42are stored in the music database11. The tune list41includes tune information such as titles, names of artists and updating dates and points to the tune data42(addresses indicating locations at which the tune data42are stored). The tune data42include entities (music data) of the pointers to the tune data42stored in the tune list41and are stored in the form of data compressed in accordance with the MP3 (Moving Picture Experts Group Audio Layer 3), the ATRAC (Adaptive Transform Acoustic Coding)3or some other suitable compression system.

Referring back toFIG. 2, an inputting section27is formed from, for example, a keyboard, a mouse and so forth and operated by a user to input various instructions to the CPU24. A liquid crystal display (LCD) unit28displays predetermined information under the control of the CPU24. A speaker29reproduces predetermined music data under the control of the CPU24. A hard disk (HD)30stores, for example, the OS, the chat client program and so forth.

A drive31is constructed such that a magnetic disk32, an optical disk33, a magneto-optical disk34or a semiconductor memory35can be loaded therein.

The music database11and the elements mentioned above from the inputting section27to the drive31are connected to an input/output interface26, which is in turn connected to the CPU24by the bus22.

FIG. 4shows an example of a construction of the client computer3ofFIG. 1. Referring toFIG. 4, the client computer3shown includes a communication interface51, a bus52, a ROM53, a CPU54, a RAM55, a input/output interface56, an inputting section57, an LCD unit58, a speaker59and a HD60which are similar to the elements from the communication interface21to the HD30which form the shared server2ofFIG. 2, respectively. The client computer3further includes a drive61similar to the drive31, and a magnetic disk62, an optical disk63, a magneto-optical disk64or a semiconductor memory65can be loaded into the drive61.

Now, operation of the chat system ofFIG. 1when the client computer3-1transmits a music reproduction request to the shared server2and the shared server2receiving the request provides (transmits) music data to the client computers3-1to3-3is described with reference toFIG. 5.

It is assumed that the client computers3-1to3-3are connected to the shared server2over the network1and log in a common chat room (group) of the chat system. If the user of the client computer3-1operates the mouse which forms the inputting section57to issue a request for reproduction of a predetermined tune, then the instruction is transmitted to the shared server2over the network1.

The shared server2receives the instruction (request) transmitted thereto, reads out music data of the request stored in the music database11and transmits the music data to the client computers3-1to3-3. In particular, since the client computers3-2and3-3log in the common chat room with the client computer3-1, the music data of the request from the client computer3-1are automatically downloaded to the client computers3-2and3-3even if the client computers3-2and3-3do not request for the music data separately.

Further, a music data transmission and reproduction process executed by the shared server2and the client computers3-1to3-3is described with reference toFIGS. 6 and 7. It is assumed here that the user name of the client computer3-1is user A, the user name of the client computer3-2is user B, and the user name of the client computer3-3is user C.

In step S21, the user A of the client computer3-1will operate the inputting section57to cause CPU54to start up the chat program stored on the HD60. Consequently, the CPU54controls the LCD unit58to display, for example, such a login window71as shown inFIG. 8.

In step S22, the user A of the client computer3-1will operate the inputting section57to input necessary information into a user name input area72, a password input area73and a room ID area74in the login window71and then click a button75to log in the shared server2.

More particularly, the user A will operate the keyboard which forms the inputting section57to input the user name into the user name input area72displayed in the login window71, input a password set in advance into the password input area73and input a room ID into the room ID area74. The room ID is a room number selected by a user when the user intends to participate in a chat room.

When the button75is clicked by the user A after the necessary information is inputted, the information for login is transmitted to the shared server2.

In step S1, the CPU24of the shared server2receives the login information from the client computer3-1and discriminates whether or not the user name and the password received are correct ones which are stored on the HD30in advance. If the CPU24discriminates that the user name and the password are not correct, then it rejects connection of the client computer3-1. On the other hand, if the CPU24discriminates that the user name and the password are correct, then it connects the client computer3-1to the chat room (group) of the selected room ID received from the client computer3-1. Then in step S2, the CPU24of the shared server2transmits data of such a main window81as shown inFIG. 9, which includes titles of tunes in the tune list41stored in the music database11and chat environment, to the client computer3-1.

As seen inFIG. 9, user names which log in the chat room of the same room ID are displayed in a user list display area84of the main window81, and the titles of the tunes stored in the tune list41are displayed in a tune list display area85. Further, a tune display area82for displaying the title of a tune designated by a user and a button83for being operated by the user in order to reproduce the tune are displayed in the main window81.

In step S23, the CPU54of the client computer3-1receives the data of the main window81including the tune list and the chat environment transmitted thereto from the shared server2. In step S24, the CPU54of the client computer3-1controls the LCD unit58to display, for example, such a main window81as shown inFIG. 9. It is to be noted that, since only the user A logs in the chat room now, only the user A is displayed in the user list display area84.

In step S51, the user B of the client computer3-2will operate the inputting section57to cause the CPU54to start up the chat program stored on the HD60. In step S52, the user B of the client computer3-2will operate the inputting section57to log in the chat room of the shared server2having the same room number as that of the client computer3-1.

In step S3, the CPU24of the shared server2receives the login information of the client computer3-2, establishes connection to the client computer3-2and performs processing for login of the client computer3-2. In step S4after the processing for login is performed, the CPU24of the shared server2transmits data of the main window81to the client computer3-2and the client computer3-1.

In step S53, the CPU54of the client computer3-2receives the data of the main window81transmitted thereto from the shared server2. In step S54, the CPU54of the client computer3-2controls the LCD unit58to display the main window81. At this time, the user A having logged in already and the user B who has just logged in are displayed in the user list display area84.

At this time, the client computer3-1has already logged in the chat room of the same room ID of the shared server2, and since, when another client (now, the client computer3-2) logs in, the client computer3-1is notified of this from the shared server2by the processing in step S4, the CPU54of the client computer3-1updates the user list display area84of the main window81displayed on the LCD unit58with the user B (adds the user B to the user list display area84).

In step S71, the user C of the client computer3-3will operate the inputting section57to cause the CPU54to start up the program stored on the HD60. In step S72, the user C of the client computer3-3will operate the inputting section57to log in the chat room of the shared server2having the same room ID as that of the client computers3-1and3-2.

In step S5, the CPU24of the shared server2receives the login information of the client computer3-3, establishes connection to the client computer3-3and performs processing for login of the client computer3-3. In step S6after the processing for login is performed, the CPU24of the shared server2transmits data of the main window81to the client computers3-3,3-2and3-1connected to the chat room of the same room ID.

In step S73, the CPU54of the client computer3-3receives the data of the main window81from the shared server2. In step S74, the CPU54of the client computer3-3controls the LCD unit58to display the main window81. At this time, the user A and the user B having already logged in and the user C who has just logged in are displayed in the user list display area84.

At this time, based on the notification by the processing in step S6of the shared server2, the CPU54of the client computer3-1updates the user list display area84of the main window81displayed on the LCD unit58in step S26with the user C. Similarly, the CPU54of the client computer3-2updates the user list display area84of the main window81displayed on the LCD unit58in step S55with the user C.

It is to be noted that, whereas the processing when the client computers3-1to3-3successively log in the shared server2is described above, naturally they may otherwise perform login processing simultaneously.

Then in step S27, the user A of the client computer3-1will operate the mouse of the inputting section57to double click a predetermined tune from among the tunes displayed in the tune list display area85of the main window81ofFIG. 9to select the tune as an object of a request. It is assumed that the tune C is selected now.

In step S28, the CPU54of the client computer3-1controls the. LCD unit58to display the title of the tune selected in step S57in the tune display area82of the main window81displayed on the LCD unit58(now, the title of the tune C is displayed). Then in step S29, the user A of the client computer3-1will operate the mouse of the inputting section57to click the button83to transmit a request for music data of the tune to the shared server2.

In step S7, the CPU24of the shared server2receives the request for the music data transmitted thereto from the client computer3-1. In step S8, the CPU24of the shared server2reads out the music data of the tune (now, the tune C) of the request stored in the music database11and transmits the tune data to all of the client computers (in the present case, the client computers3-1to3-3) connected to the chat room of the same room ID.

In step S30, the CPU54of the client computer3-1receives the music data transmitted thereto from the shared server2and outputs the music data to the speaker59so that the music data are reproduced by the speaker59. At this time, the title of the received tune C is displayed in the tune display area82of the main window81displayed on the LCD unit58.

Simultaneously, in steps S56and S75, the client computers3-2and3-3receive the music data transmitted thereto from the shared server2and output the music data to the speaker59so that the music data are reproduced by the speaker59. At this time, the title of the received tune C is displayed in the tune display area82of the main window81displayed on the LCD unit58.

In this manner, where a plurality of client computers3log in the same chat room of the chat system, music data of a request issued from one of the users of the client computers3can be reproduced simultaneously by the plurality of users.

Subsequently, a chat server process which is performed by the shared server2is described with reference to flow charts ofFIGS. 10 and 11. It is to be noted that the client computers3-1to3-3are in a state wherein they have already executed the music data transmission and reproduction process described above with reference toFIGS. 6 and 7. In other words, the following processing is executed continuously to the processing described above. Accordingly, such chat windows91-1to91-3shown inFIGS. 12 to 14are displayed on the LCD units58of the client computers3-1to3-3, respectively. It is to be noted that, while each of the chat windows91-1to91-3has a chat text display area92-1,92-2or92-3, a chat text input area93-1,93-2or93-3and a button94-1,94-2or94-3, no message is displayed in the chat text display area92-1,92-2or92-3or the chat text input area93-1,93-2or93-3as yet.

In step S111, the user A of the client computer3-1will operate the inputting section57to input a message “Hello.” into the chat text input area93-1of the chat window91-1displayed on the LCD unit58as shown inFIG. 12. Then, the user A will click the button94-1to cause the CPU54to transmit the message “Hello.” to the shared server2. In step S112, the CPU54of the client computer3-1controls the LCD unit58to display “User A: Hello.” in the chat text display area92-1of the chat window91-1.

In step S91, the CPU24of the shared server2receives the message “Hello.” transmitted thereto from the client computer3-1. In step S92, the CPU24of the shared server2transmits the message “Hello.” to the client computers3-2and3-3.

In step S131, the client computer3-2receives the message transmitted thereto from the shared server2and controls the LCD unit58to display “User A: Hello.” in the chat text display area92-2of the chat window91-2displayed on the LCD unit58as shown inFIG. 13. Similarly, in step S151, the client computer3-3receives the message transmitted thereto from the shared server2and controls the LCD unit58to display “User A: Hello.” in the chat text display area92-3of the chat window91-3displayed on the LCD unit58as shown inFIG. 14.

In step S132, the user B of the client computer3-2will operate the inputting section57to input a message “This is a good tune, isn't it?” into the chat text input area93-2of the chat window91-2displayed on the LCD unit58as shown inFIG. 13. Then, the user B will click the button94-2to cause the CPU54to transmit the message “This is a good tune, isn't it?” to the shared server2. In step S133, the CPU54of the client computer3-2controls the LCD unit58to display “User B: This is a good tune, isn't it?” in the chat text display area92-2of the chat window91-2displayed on the LCD unit58.

In step S93, the CPU24of the shared server2receives the message “This is a good tune, isn't it?” transmitted thereto from the client computer3-2. In step S94, the CPU24of the shared server2transmits the message “This is a good tune, isn't it?” to the client computers3-1and3-3.

In step S113, the client computer3-1receives the message transmitted thereto from the shared server2and causes the LCD unit58to display “User B: This is a good tune, isn't it?” in the chat text display area92-1of the chat window91-1displayed on the LCD unit58as shown inFIG. 15. Similarly, in step S152, the client computer3-3receives the message transmitted thereto from the shared server2and causes the LCD unit58to display “User B: This is a good tune, isn't it?” in the chat text display area92-3of the chat window91-3displayed on the LCD unit58as shown inFIG. 14.

In step S153, the user C of the client computer3-3will operate the inputting section57to input a message “Also I like this tune.” in the chat text input area93-3of the chat window91-3displayed on the LCD unit58as shown inFIG. 14. Then, the user C will click the button94-3to cause the CPU54to transmit the message “Also I like this tune.” to the shared server2. In step S154, the CPU54of the client computer3-3causes the LCD unit58to display “User C: Also I like this tune.” in the chat text display area92-3of the chat window91-3displayed on the LCD unit58.

In step S95, the CPU24of the shared server2receives the message “Also I like this tune.” transmitted thereto from the client computer3-3. In step S96, the CPU24of the shared server2transmits the message “Also I like this tune.” to the client computers3-1and3-2.

In step S114, the client computer3-1receives the message transmitted thereto from the shared server2and causes the LCD unit58to display “User C: Also I like this tune.” in the chat text display area92-1of the chat window91-1displayed on the LCD unit58as shown inFIG. 15. Similarly, in step S134, the client computer3-2receives the message transmitted thereto from the shared server2and causes the LCD unit58to display “User C: Also I like this tune.” in the chat text display area92-2of the chat window91-2displayed on the LCD unit58(not shown).

In step S115, the user A of the client computer3-1will operate the inputting section57to input a message “This is the most favorite tune of me.” into the chat text input area93-1of the chat window91-1displayed on the LCD unit58as shown inFIG. 15. Then, the user A will click the button94-1to cause the CPU54to transmit the message “This is the most favorite tune of me.” to the shared server2. In step S116, the CPU54of the client computer3-1controls the LCD unit58to display “User A: This is the most favorite tune of me.” in the chat text display area92-1of the chat window91-1(FIG. 15).

In step S97, the CPU24of the shared server2receives the message “This is the most favorite tune of me.” transmitted thereto from the client computer3-1. In step S98, the CPU24of the shared server2transmits the message “This is the most favorite tune of me.” to the client computers3-2and3-3.

In step S135, the client computer3-2receives the message transmitted thereto from the shared server2and causes the LCD unit58to display “User A: This is the most favorite tune of me.” in the chat text display area92-2of the chat window91-2displayed on the LCD unit58(not shown). Similarly, in step S155, the client computer3-3receives the message transmitted thereto from the shared server2and causes the LCD unit58to display “User A: This is the most favorite tune of me.” in the chat text display area92-3of the chat window91-3displayed on the LCD unit58(not shown).

In this manner, a plurality of clients who log in the same chat room of the chat system not only can enjoy conversation by texts but also can enjoy music data of a request from one of the clients simultaneously while they are communicating with one another.

While the shared server2in the embodiment described above is described as an independent apparatus, alternatively the function of it may be incorporated in the client computer3.

Also it is possible, for example, to use the shared server2described above as a voice message server of an automatic answering telephone set such that voice messages recorded in the shared server2are shared by a secretary and its superior, who are at remote places from each other, using a personal computer and the secretary selects only significant messages from among the voice messages stored in the automatic answering telephone set and conveys the selected messages to the superior at the remote place through the personal computer.

Further, the present invention may be applied to a music data distribution service of a wire broadcasting request or the like, or the music data stored in the music database11may be reproduced as background music (BGM).

Furthermore, while the present invention has been described in connection with an example wherein it is applied to a personal computer, it can be applied not only to a personal computer but also to chat software having a music reproduction function or any information processing apparatus which can be connected to a network.

While the series of processes described above can be executed by hardware, it may otherwise be executed by software. Where the series of processes is executed by software, a program which constructs the software is installed from a program storage medium into a computer (the CPU24ofFIG. 2or the CPU54ofFIG. 4) incorporated in hardware for exclusive use or, for example, a personal computer for universal use which can execute various functions by installing various programs.

The program storage medium in which a program which is installed into a computer so that it can be executed by the computer may be a package medium such as the magnetic disk32or62(including a floppy disk), the optical disk33or63(including a CD-ROM (Compact Disk-Read Only memory) and a DVD (Digital Versatile Disk)), the magneto-optical disk34or64(including an MD (Mini-Disc)) or the semiconductor memory35or65as shown inFIG. 2or4or the HD30or60on which the program is stored temporarily or permanently. Storage of the program onto the program storage medium is performed making use of a wired or wireless communication medium such as a local area network, the Internet or a digital satellite broadcast through an interface such as a router or a modem when necessary.

It is to be noted that, in the present application, the steps which describe the program provided in the form of a medium may be but need not necessarily be processed in a time series in the order as described, and include processes which are executed parallelly or individually.

Further, the term “system” in the present specification is used to represent an entire apparatus which includes a plurality of apparatus.