# Patent

## Title
Service providing apparatus and method, and information processing apparatus and method as well as program storage medium

## Abstract

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.

## Background
BACKGROUND OF THE INVENTION
This invention relates to a service providing apparatus and method, and an information processing apparatus and method as well as a program storage medium, and more particularly to a service providing apparatus and method, and an information processing apparatus and method as well as a program storage medium by which the same program data can be reproduced simultaneously by a plurality of users making use of, for example, a chat system.
A chat system is available as a service provided by the Internet. In the chat system, text data transmitted from a certain client who logs in a server are received by the server once and then transmitted to other clients who log in the server. Consequently, a plurality of users who are at remote places can communicate readily with each other.
However, the conventional chat system permits a plurality of users to share only texts (characters) inputted by the individual users and thus has a subject to be solved in that it provides poorer presence than where a plurality of users gather and communicate with each other in a room in a real space.
SUMMARY OF THE INVENTION
It is an object of the present invention to provide 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 with abundant variations and presence.
In order to attain the object described above, according to an aspect of the present invention, there is provided a service providing apparatus for providing a service to a plurality of information processing apparatus on a network, comprising storage means for storing a group to which some of the information processing apparatus belong, reception means for receiving request information transmitted from any of the information processing apparatus, acquisition means for acquiring data coordinated with the request information, and communication means for transmitting the data acquired by the acquisition means simultaneously to those of the information processing apparatus which belong to the same group.
The data may be music data, and the request information may include a tune of particular music data.
The service providing apparatus may further comprise transmission means for receiving text data transmitted from any of the information processing apparatus and transmitting the text data to the other information processing apparatus which belong to the same group.
According to another aspect of the present invention, there is provided a service providing method for a service providing apparatus for providing a service to a plurality of information processing apparatus on a network, comprising a storage controlling step of controlling so that a group to which some of the information processing apparatus belong is stored, a reception step of receiving request information transmitted from any of the information processing apparatus, an acquisition step of acquiring data coordinated with the request information, and a communication step of transmitting the data acquired by the processing of the acquisition step simultaneously to those of the information processing apparatus which belong to the same group.
According to a further aspect of the present invention, there is provided a program storage medium on which a computer-readable program for providing a service to a plurality of information processing apparatus on an network is stored, the program comprising a storage controlling step of controlling so that a group to which some of the information processing apparatus belong is stored, a reception step of receiving request information transmitted from any of the information processing apparatus, an acquisition step of acquiring data coordinated with the request information, and a communication step of transmitting the data acquired by the processing of the acquisition step simultaneously to those of the information processing apparatus which belong to the same group.
With the service providing apparatus, the information providing method and the program of the program storage medium, request information transmitted from any of the information processing apparatus is received, and data coordinated with the request information are acquired. Then, the acquired data are transmitted simultaneously to the plurality of information processing apparatus which belong to the same group. Consequently, data of a request from any of the information processing apparatus of one group can be simultaneously shared by the plurality of information processing apparatus of the group.
According to a still further aspect of the present invention, there is provided an information processing apparatus for accessing a service providing apparatus, which provides services on a network, together with other information processing apparatus on the same network and enjoying the services of the service providing apparatus, comprising inputting means for inputting access information for accessing the service providing apparatus, display control means for controlling display of contents of the services transmitted from the service providing apparatus, requesting means for selecting a predetermined service from among the services and requesting the service providing apparatus for transmission of the selected service to the information processing apparatus and the other information processing apparatus, reception means for receiving data transmitted from the service providing apparatus, and reproduction means for reproducing the data.
The services may be table information of the data to be provided from the service providing apparatus, and the data may be music data.
According to a yet further aspect of the present invention, there is provided an information processing method for an information processing apparatus for accessing a service providing apparatus, which provides services on a network, together with other information processing apparatus on the same network and enjoying the services of the service providing apparatus, comprising an inputting step of inputting access information for accessing the service providing apparatus, a display controlling step of controlling display of contents of the services transmitted from the service providing apparatus, a requesting step of selecting a predetermined service from among the services and requesting the service providing apparatus for transmission of the selected service to the information processing apparatus and the other information processing apparatus, a reception step of receiving data transmitted from the service providing apparatus, and a reproduction step of reproducing the data.
According to a yet further aspect of the present invention, there is provided a program storage medium on which a computer-readable program for causing an information processing apparatus to access a service providing apparatus, which provides services on a network, together with other information processing apparatus on the same network and enjoy the services of the service providing apparatus is stored, the program comprising an inputting step of inputting access information for accessing the service providing apparatus, a display controlling step of controlling display of contents of the services transmitted from the service providing apparatus, a requesting step of selecting a predetermined service from among the services and requesting the service providing apparatus for transmission of the selected service to the information processing apparatus and the other information processing apparatus, a reception step of receiving data transmitted from the service providing apparatus, and a reproduction step of reproducing the data.
With the information processing apparatus, the information processing method and the program of the program storage medium, contents of services transmitted from the service providing apparatus are displayed, and a predetermined service is selected from among the services. Then, a request for transmission of the selected service to the information processing apparatus and the other information processing apparatus which belong to the same group is transmitted to the service providing apparatus. Consequently, the data of the request can be shared with certainty by the information processing apparatus and the other information processing apparatus.
The above and other objects, features and advantages of the present invention will become apparent from the following description and the appended claims, taken in conjunction with the accompanying drawings in which like parts or elements denoted by like reference symbols.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram showing a construction of a chat system to which the present invention is applied;
FIG. 2 is a block diagram showing an example of a construction of a possessing server shown in FIG. 1;
FIG. 3 is a schematic view illustrating a music database;
FIG. 4 is a block diagram showing an example of a construction of a client computer shown in FIG. 1;
FIG. 5 is a block diagram illustrating transmission of music data in the chat system of FIG. 1;
FIGS. 6 and 7 are flow charts illustrating a music data transmission and reproduction process;
FIG. 8 is a schematic view showing a login window;
FIG. 9 is a schematic view showing a main window;
FIGS. 10 and 11 are flow charts illustrating a chat server process;
FIGS. 12 to 14 are schematic views showing different chat windows on different client computers; and
FIG. 15 is a schematic view showing a different display in the chat window shown in FIG. 12.



DESCRIPTION OF THE PREFERRED EMBODIMENT
Referring to FIG. 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 server 2 which includes a jukebox and has a function for chatting, and three client computers 3-1 to 3-3, all connected to each other over a network 1 such as the Internet.
The shared server 2 is 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 computers 3-1 to 3-3 can perform a chat among them. The shared server 2 functions also as a jukebox server by executing a music data transmission program so that music data requested by any of the client computers 3-1 to 3-3 are read out from a music database 11 and provided to the client computers 3-1 to 3-3.
Each of the client computers 3-1 to 3-3 (in the description below, where there is no necessity to distinguish the client computers 3-1 to 3-3 from one another, they are or each of them is referred to simply as client computers 3 or client computer 3) stores therein a chat client program for performing a chat while a chat space provided by the shared server 2 is shared with the other client computers. Thus, by execution of the chat client program and execution of the chat server program by the shared server 2, a chat space for performing a chat (details are hereinafter described with reference to FIG. 12) is displayed on the client computer 3.
The client computer 3 can download music data from the music database 11 by receiving a tune list of music data stored in the music database 11 of the shared server 2, selecting a predetermined tune from within the tune list and requesting the shared server 2 for the music data of the predetermined tune.
FIG. 2 shows an example of a construction of the shared server 2 shown in FIG. 1. Referring to FIG. 2, a communication interface 21 is an apparatus for connection, for example, to the network 1 and is formed from a modem, a terminal adapter, a network card or a like element. A read only memory (ROM) 23 stores programs to be used by a central processing unit (CPU) 24 and data and so forth which are fixed from among parameters for arithmetic operation. The CPU 24 executes 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) 25 stores a program to be executed by the CPU 24, data necessary for processing and so forth. The elements mentioned from the communication interface 21 to the RAM 25 are connected to one another by a bus 22.
The music database 11 has a plurality of music data stored therein so that it may function as a jukebox server. For example, as shown in FIG. 3, a tune list 41 and tune data 42 are stored in the music database 11. The tune list 41 includes tune information such as titles, names of artists and updating dates and points to the tune data 42 (addresses indicating locations at which the tune data 42 are stored). The tune data 42 include entities (music data) of the pointers to the tune data 42 stored in the tune list 41 and 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) 3 or some other suitable compression system.
Referring back to FIG. 2, an inputting section 27 is formed from, for example, a keyboard, a mouse and so forth and operated by a user to input various instructions to the CPU 24. A liquid crystal display (LCD) unit 28 displays predetermined information under the control of the CPU 24. A speaker 29 reproduces predetermined music data under the control of the CPU 24. A hard disk (HD) 30 stores, for example, the OS, the chat client program and so forth.
A drive 31 is constructed such that a magnetic disk 32, an optical disk 33, a magneto-optical disk 34 or a semiconductor memory 35 can be loaded therein.
The music database 11 and the elements mentioned above from the inputting section 27 to the drive 31 are connected to an input/output interface 26, which is in turn connected to the CPU 24 by the bus 22.
FIG. 4 shows an example of a construction of the client computer 3 of FIG. 1. Referring to FIG. 4, the client computer 3 shown includes a communication interface 51, a bus 52, a ROM 53, a CPU 54, a RAM 55, a input/output interface 56, an inputting section 57, an LCD unit 58, a speaker 59 and a HD 60 which are similar to the elements from the communication interface 21 to the HD 30 which form the shared server 2 of FIG. 2, respectively. The client computer 3 further includes a drive 61 similar to the drive 31, and a magnetic disk 62, an optical disk 63, a magneto-optical disk 64 or a semiconductor memory 65 can be loaded into the drive 61.
Now, operation of the chat system of FIG. 1 when the client computer 3-1 transmits a music reproduction request to the shared server 2 and the shared server 2 receiving the request provides (transmits) music data to the client computers 3-1 to 3-3 is described with reference to FIG. 5.
It is assumed that the client computers 3-1 to 3-3 are connected to the shared server 2 over the network 1 and log in a common chat room (group) of the chat system. If the user of the client computer 3-1 operates the mouse which forms the inputting section 57 to issue a request for reproduction of a predetermined tune, then the instruction is transmitted to the shared server 2 over the network 1.
The shared server 2 receives the instruction (request) transmitted thereto, reads out music data of the request stored in the music database 11 and transmits the music data to the client computers 3-1 to 3-3. In particular, since the client computers 3-2 and 3-3 log in the common chat room with the client computer 3-1, the music data of the request from the client computer 3-1 are automatically downloaded to the client computers 3-2 and 3-3 even if the client computers 3-2 and 3-3 do not request for the music data separately.
Further, a music data transmission and reproduction process executed by the shared server 2 and the client computers 3-1 to 3-3 is described with reference to FIGS. 6 and 7. It is assumed here that the user name of the client computer 3-1 is user A, the user name of the client computer 3-2 is user B, and the user name of the client computer 3-3 is user C.
In step S21, the user A of the client computer 3-1 will operate the inputting section 57 to cause CPU 54 to start up the chat program stored on the HD 60. Consequently, the CPU 54 controls the LCD unit 58 to display, for example, such a login window 71 as shown in FIG. 8.
In step S22, the user A of the client computer 3-1 will operate the inputting section 57 to input necessary information into a user name input area 72, a password input area 73 and a room ID area 74 in the login window 71 and then click a button 75 to log in the shared server 2.
More particularly, the user A will operate the keyboard which forms the inputting section 57 to input the user name into the user name input area 72 displayed in the login window 71, input a password set in advance into the password input area 73 and input a room ID into the room ID area 74. The room ID is a room number selected by a user when the user intends to participate in a chat room.
When the button 75 is clicked by the user A after the necessary information is inputted, the information for login is transmitted to the shared server 2.
In step S1, the CPU 24 of the shared server 2 receives the login information from the client computer 3-1 and discriminates whether or not the user name and the password received are correct ones which are stored on the HD 30 in advance. If the CPU 24 discriminates that the user name and the password are not correct, then it rejects connection of the client computer 3-1. On the other hand, if the CPU 24 discriminates that the user name and the password are correct, then it connects the client computer 3-1 to the chat room (group) of the selected room ID received from the client computer 3-1. Then in step S2, the CPU 24 of the shared server 2 transmits data of such a main window 81 as shown in FIG. 9, which includes titles of tunes in the tune list 41 stored in the music database 11 and chat environment, to the client computer 3-1.
As seen in FIG. 9, user names which log in the chat room of the same room ID are displayed in a user list display area 84 of the main window 81, and the titles of the tunes stored in the tune list 41 are displayed in a tune list display area 85. Further, a tune display area 82 for displaying the title of a tune designated by a user and a button 83 for being operated by the user in order to reproduce the tune are displayed in the main window 81.
In step S23, the CPU 54 of the client computer 3-1 receives the data of the main window 81 including the tune list and the chat environment transmitted thereto from the shared server 2. In step S24, the CPU 54 of the client computer 3-1 controls the LCD unit 58 to display, for example, such a main window 81 as shown in FIG. 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 area 84.
In step S51, the user B of the client computer 3-2 will operate the inputting section 57 to cause the CPU 54 to start up the chat program stored on the HD 60. In step S52, the user B of the client computer 3-2 will operate the inputting section 57 to log in the chat room of the shared server 2 having the same room number as that of the client computer 3-1.
In step S3, the CPU 24 of the shared server 2 receives the login information of the client computer 3-2, establishes connection to the client computer 3-2 and performs processing for login of the client computer 3-2. In step S4 after the processing for login is performed, the CPU 24 of the shared server 2 transmits data of the main window 81 to the client computer 3-2 and the client computer 3-1.
In step S53, the CPU 54 of the client computer 3-2 receives the data of the main window 81 transmitted thereto from the shared server 2. In step S54, the CPU 54 of the client computer 3-2 controls the LCD unit 58 to display the main window 81. 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 area 84.
At this time, the client computer 3-1 has already logged in the chat room of the same room ID of the shared server 2, and since, when another client (now, the client computer 3-2) logs in, the client computer 3-1 is notified of this from the shared server 2 by the processing in step S4, the CPU 54 of the client computer 3-1 updates the user list display area 84 of the main window 81 displayed on the LCD unit 58 with the user B (adds the user B to the user list display area 84).
In step S71, the user C of the client computer 3-3 will operate the inputting section 57 to cause the CPU 54 to start up the program stored on the HD 60. In step S72, the user C of the client computer 3-3 will operate the inputting section 57 to log in the chat room of the shared server 2 having the same room ID as that of the client computers 3-1 and 3-2.
In step S5, the CPU 24 of the shared server 2 receives the login information of the client computer 3-3, establishes connection to the client computer 3-3 and performs processing for login of the client computer 3-3. In step S6 after the processing for login is performed, the CPU 24 of the shared server 2 transmits data of the main window 81 to the client computers 3-3, 3-2 and 3-1 connected to the chat room of the same room ID.
In step S73, the CPU 54 of the client computer 3-3 receives the data of the main window 81 from the shared server 2. In step S74, the CPU 54 of the client computer 3-3 controls the LCD unit 58 to display the main window 81. 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 area 84.
At this time, based on the notification by the processing in step S6 of the shared server 2, the CPU 54 of the client computer 3-1 updates the user list display area 84 of the main window 81 displayed on the LCD unit 58 in step S26 with the user C. Similarly, the CPU 54 of the client computer 3-2 updates the user list display area 84 of the main window 81 displayed on the LCD unit 58 in step S55 with the user C.
It is to be noted that, whereas the processing when the client computers 3-1 to 3-3 successively log in the shared server 2 is described above, naturally they may otherwise perform login processing simultaneously.
Then in step S27, the user A of the client computer 3-1 will operate the mouse of the inputting section 57 to double click a predetermined tune from among the tunes displayed in the tune list display area 85 of the main window 81 of FIG. 9 to select the tune as an object of a request. It is assumed that the tune C is selected now.
In step S28, the CPU 54 of the client computer 3-1 controls the LCD unit 58 to display the title of the tune selected in step S57 in the tune display area 82 of the main window 81 displayed on the LCD unit 58 (now, the title of the tune C is displayed). Then in step S29, the user A of the client computer 3-1 will operate the mouse of the inputting section 57 to click the button 83 to transmit a request for music data of the tune to the shared server 2.
In step S7, the CPU 24 of the shared server 2 receives the request for the music data transmitted thereto from the client computer 3-1. In step S8, the CPU 24 of the shared server 2 reads out the music data of the tune (now, the tune C) of the request stored in the music database 11 and transmits the tune data to all of the client computers (in the present case, the client computers 3-1 to 3-3) connected to the chat room of the same room ID.
In step S30, the CPU 54 of the client computer 3-1 receives the music data transmitted thereto from the shared server 2 and outputs the music data to the speaker 59 so that the music data are reproduced by the speaker 59. At this time, the title of the received tune C is displayed in the tune display area 82 of the main window 81 displayed on the LCD unit 58.
Simultaneously, in steps S56 and S75, the client computers 3-2 and 3-3 receive the music data transmitted thereto from the shared server 2 and output the music data to the speaker 59 so that the music data are reproduced by the speaker 59. At this time, the title of the received tune C is displayed in the tune display area 82 of the main window 81 displayed on the LCD unit 58.
In this manner, where a plurality of client computers 3 log in the same chat room of the chat system, music data of a request issued from one of the users of the client computers 3 can be reproduced simultaneously by the plurality of users.
Subsequently, a chat server process which is performed by the shared server 2 is described with reference to flow charts of FIGS. 10 and 11. It is to be noted that the client computers 3-1 to 3-3 are in a state wherein they have already executed the music data transmission and reproduction process described above with reference to FIGS. 6 and 7. In other words, the following processing is executed continuously to the processing described above. Accordingly, such chat windows 91-1 to 91-3 shown in FIGS. 12 to 14 are displayed on the LCD units 58 of the client computers 3-1 to 3-3, respectively. It is to be noted that, while each of the chat windows 91-1 to 91-3 has a chat text display area 92-1, 92-2 or 92-3, a chat text input area 93-1, 93-2 or 93-3 and a button 94-1, 94-2 or 94-3, no message is displayed in the chat text display area 92-1, 92-2 or 92-3 or the chat text input area 93-1, 93-2 or 93-3 as yet.
In step S111, the user A of the client computer 3-1 will operate the inputting section 57 to input a message “Hello.” into the chat text input area 93-1 of the chat window 91-1 displayed on the LCD unit 58 as shown in FIG. 12. Then, the user A will click the button 94-1 to cause the CPU 54 to transmit the message “Hello.” to the shared server 2. In step S112, the CPU 54 of the client computer 3-1 controls the LCD unit 58 to display “User A: Hello.” in the chat text display area 92-1 of the chat window 91-1.
In step S91, the CPU 24 of the shared server 2 receives the message “Hello.” transmitted thereto from the client computer 3-1. In step S92, the CPU 24 of the shared server 2 transmits the message “Hello.” to the client computers 3-2 and 3-3.
In step S131, the client computer 3-2 receives the message transmitted thereto from the shared server 2 and controls the LCD unit 58 to display “User A: Hello.” in the chat text display area 92-2 of the chat window 91-2 displayed on the LCD unit 58 as shown in FIG. 13. Similarly, in step S151, the client computer 3-3 receives the message transmitted thereto from the shared server 2 and controls the LCD unit 58 to display “User A: Hello.” in the chat text display area 92-3 of the chat window 91-3 displayed on the LCD unit 58 as shown in FIG. 14.
In step S132, the user B of the client computer 3-2 will operate the inputting section 57 to input a message “This is a good tune, isn't it?” into the chat text input area 93-2 of the chat window 91-2 displayed on the LCD unit 58 as shown in FIG. 13. Then, the user B will click the button 94-2 to cause the CPU 54 to transmit the message “This is a good tune, isn't it?” to the shared server 2. In step S133, the CPU 54 of the client computer 3-2 controls the LCD unit 58 to display “User B: This is a good tune, isn't it?” in the chat text display area 92-2 of the chat window 91-2 displayed on the LCD unit 58.
In step S93, the CPU 24 of the shared server 2 receives the message “This is a good tune, isn't it?” transmitted thereto from the client computer 3-2. In step S94, the CPU 24 of the shared server 2 transmits the message “This is a good tune, isn't it?” to the client computers 3-1 and 3-3.
In step S113, the client computer 3-1 receives the message transmitted thereto from the shared server 2 and causes the LCD unit 58 to display “User B: This is a good tune, isn't it?” in the chat text display area 92-1 of the chat window 91-1 displayed on the LCD unit 58 as shown in FIG. 15. Similarly, in step S152, the client computer 3-3 receives the message transmitted thereto from the shared server 2 and causes the LCD unit 58 to display “User B: This is a good tune, isn't it?” in the chat text display area 92-3 of the chat window 91-3 displayed on the LCD unit 58 as shown in FIG. 14.
In step S153, the user C of the client computer 3-3 will operate the inputting section 57 to input a message “Also I like this tune.” in the chat text input area 93-3 of the chat window 91-3 displayed on the LCD unit 58 as shown in FIG. 14. Then, the user C will click the button 94-3 to cause the CPU 54 to transmit the message “Also I like this tune.” to the shared server 2. In step S154, the CPU 54 of the client computer 3-3 causes the LCD unit 58 to display “User C: Also I like this tune.” in the chat text display area 92-3 of the chat window 91-3 displayed on the LCD unit 58.
In step S95, the CPU 24 of the shared server 2 receives the message “Also I like this tune.” transmitted thereto from the client computer 3-3. In step S96, the CPU 24 of the shared server 2 transmits the message “Also I like this tune.” to the client computers 3-1 and 3-2.
In step S114, the client computer 3-1 receives the message transmitted thereto from the shared server 2 and causes the LCD unit 58 to display “User C: Also I like this tune.” in the chat text display area 92-1 of the chat window 91-1 displayed on the LCD unit 58 as shown in FIG. 15. Similarly, in step S134, the client computer 3-2 receives the message transmitted thereto from the shared server 2 and causes the LCD unit 58 to display “User C: Also I like this tune.” in the chat text display area 92-2 of the chat window 91-2 displayed on the LCD unit 58 (not shown).
In step S115, the user A of the client computer 3-1 will operate the inputting section 57 to input a message “This is the most favorite tune of me.” into the chat text input area 93-1 of the chat window 91-1 displayed on the LCD unit 58 as shown in FIG. 15. Then, the user A will click the button 94-1 to cause the CPU 54 to transmit the message “This is the most favorite tune of me.” to the shared server 2. In step S116, the CPU 54 of the client computer 3-1 controls the LCD unit 58 to display “User A: This is the most favorite tune of me.” in the chat text display area 92-1 of the chat window 91-1 (FIG. 15).
In step S97, the CPU 24 of the shared server 2 receives the message “This is the most favorite tune of me.” transmitted thereto from the client computer 3-1. In step S98, the CPU 24 of the shared server 2 transmits the message “This is the most favorite tune of me.” to the client computers 3-2 and 3-3.
In step S135, the client computer 3-2 receives the message transmitted thereto from the shared server 2 and causes the LCD unit 58 to display “User A: This is the most favorite tune of me.” in the chat text display area 92-2 of the chat window 91-2 displayed on the LCD unit 58 (not shown). Similarly, in step S155, the client computer 3-3 receives the message transmitted thereto from the shared server 2 and causes the LCD unit 58 to display “User A: This is the most favorite tune of me.” in the chat text display area 92-3 of the chat window 91-3 displayed on the LCD unit 58 (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 server 2 in the embodiment described above is described as an independent apparatus, alternatively the function of it may be incorporated in the client computer 3.
Also it is possible, for example, to use the shared server 2 described above as a voice message server of an automatic answering telephone set such that voice messages recorded in the shared server 2 are 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 database 11 may 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 CPU 24 of FIG. 2 or the CPU 54 of FIG. 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 disk 32 or 62 (including a floppy disk), the optical disk 33 or 63 (including a CD-ROM (Compact Disk-Read Only memory) and a DVD (Digital Versatile Disk)), the magneto-optical disk 34 or 64 (including an MD (Mini-Disc)) or the semiconductor memory 35 or 65 as shown in FIG. 2 or 4 or the HD 30 or 60 on 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.
While a preferred embodiment of the present invention has been described using specific terms, such description is for illustrative purposes only, and it is to be understood that changes and variations may be made without departing from the spirit or scope of the following claims.

## Claims

1. A service providing apparatus for providing a service to a plurality of information processing apparatuses via a network, said service providing apparatus comprising:
storing means for storing a plurality of chat rooms, a list of available tunes and tune data corresponding to each of the available tunes, the tune data including a title, an artist name and an updating date;
receiving means:
for receiving participation requests transmitted from any of the plurality of information processing apparatuses to include a corresponding one of the plurality of information processing apparatuses in one of said plurality of chat rooms,
for receiving tune requests transmitted from one of the plurality of information processing apparatuses currently participating in said one of the plurality of chat rooms, the tune request including a selection from the list of available tunes, and
for receiving text messages transmitted from any of the plurality of information processing apparatuses currently participating in said one of the plurality of chat rooms;

acquiring means for acquiring the tune requested by the tune requests from the one of the plurality of information processing apparatuses;
transmitting means for transmitting to all of the plurality of information processing apparatuses currently participating in said one of the plurality of chat rooms:
the list of available tunes stored in said storing means;
the tune acquired by said acquiring means, wherein the tune acquired by the acquiring means is transmitted to all of the plurality of information processing apparatuses without receiving a request for the tune from any of the plurality of information processing apparatuses;
a list of all of the information processing apparatuses currently accessing the service providing apparatus and participating in said one of the plurality of chat rooms;
said text messages received by said receiving means; and
instructions to each of the plurality of information processing apparatuses currently accessing the service providing apparatus and participating in said one of the plurality of chat rooms commanding said one of the plurality of information processing apparatuses to simultaneously display in one window on a display configured to display a plurality of windows, the list of available tunes, a name of the tune being shared by all of the information processing apparatuses currently receiving transmissions from the transmitting means, and identification information corresponding to all of the information processing apparatuses currently participating in said one of the plurality of chat rooms.

2. A service providing method for providing a service to a plurality of information processing apparatuses via a network, said service providing method comprising:
a storage step of storing a plurality of chat rooms, a list of available tunes and tune data corresponding to each of the available tunes, the tune data including a title, an artist name and an updating date;
a first reception step of receiving in the service providing apparatus a participation request to include one of the plurality of information processing apparatuses in one of said plurality of chat rooms;
a second reception step of receiving in the service providing apparatus a tune request transmitted from one of the information processing apparatuses belonging to said one of the of the plurality of chat rooms, the tune request including a selection from the list of available tunes;
a third reception step of receiving text messages transmitted from any of the information processing apparatuses currently participating in said one of the plurality of chat rooms;
an acquisition step of acquiring in the service providing apparatus the tune requested by the tune request from the one of the information processing apparatuses;
a first communication step of transmitting from the service providing apparatus to all of the information processing apparatuses currently accessing the service providing apparatus and participating in said one of the plurality of chat rooms the list of available tunes;
a second communication step of transmitting from the service providing apparatus the tune acquired by the acquisition step to all of the information processing apparatuses currently accessing the service providing apparatus and participating in said one of the plurality of chat rooms without receiving a request for the tune from any of the plurality of information processing apparatuses; and
a transmission step of transmitting to each of the information processing apparatuses in said one of the plurality of chat rooms:
a list of all of the information processing apparatuses currently accessing the service providing apparatus and participating in said one of the plurality of chat rooms,
the text messages, and
instructions to each of the information processing apparatuses currently accessing the service providing apparatus and participating in said one of the plurality of chat rooms commanding said one of the plurality of information processing apparatuses to simultaneously display in one window on a display configured to display a plurality of windows, the list of available tunes, a name of the tune being shared by all of the information processing apparatuses currently receiving transmissions from the service providing apparatus, and identification information corresponding to all of the information processing apparatuses currently participating in said one of the plurality of chat rooms.

3. A non-transitory computer-readable storage medium on which a computer-readable program for providing a service to a plurality of information processing apparatuses accessing a shared server on a network is stored, said computer-readable program comprising:
a storage step of storing in the shared server a plurality of chat rooms, a list of available tunes and tune data corresponding to each of the available tunes, the tune data including a title, an artist name and an updating date;
a first reception step of receiving in the shared server a participation request transmitted from any of the plurality of information processing apparatuses to include said one of the plurality of information processing apparatuses in one of said plurality of chat rooms;
a second reception step of receiving a tune request transmitted from one of the plurality of information processing apparatuses currently participating in said one of the plurality of chat rooms, the tune request including a selection from the list of available tunes;
a third reception step of receiving text messages transmitted from any of the plurality of information processing apparatuses currently participating in said one of the plurality of chat rooms;
an acquisition step of acquiring the tune requested by the tune request received from the one of the plurality of information processing apparatuses;
a first communication step of transmitting from the shared server to all of the information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms the list of available tunes;
a second communication step of transmitting the tune acquired by the acquisition step to all of the plurality of information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms without receiving a request for the tune from any of the plurality of information processing apparatuses; and
a transmission step of transmitting to each of the plurality of information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms:
a list of all of the information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms,
the text messages, and
instructions commanding each of the information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms to simultaneously display in one window on a display configured to display a plurality of windows, the list of available tunes, a name of the tune being shared by all of the information processing apparatuses currently receiving transmission from the shared server, and identification information corresponding to all of the information processing apparatuses currently participating in said one of the plurality of chat rooms.

4. A service providing apparatus for providing a service to a plurality of information processing apparatuses, the service providing apparatus functioning as a shared server on a network, said service providing apparatus comprising:
a memory configured to store a plurality of chat rooms, a list of available tunes and tune data corresponding to each of the available tunes, the tune data including a title, an artist name and an updating date;
a network interface:
configured to receive participation requests to include a corresponding one of the plurality of information processing apparatuses in one of the plurality of chat rooms, the participation requests transmitted from any of the plurality of information processing apparatuses,
configured to receive tune requests transmitted from one of the information processing apparatuses currently participating in said one of the plurality of chat rooms, the tune requests including a selection from the list of available tunes; and
configured to receive text messages transmitted from any of the information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms;


the network interface configured to acquire the tune requested by the tune requests received from the one of the information processing apparatuses;
the network interface configured to transmit the acquired tune to all of the plurality of information processing apparatuses without receiving a request for the tune from any of the plurality of information processing apparatuses, and the text messages to all of the information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms; and
the network interface configured to transmit to each of the information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms:
the list of available tunes;
a list of all of the information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms;
the received text messages; and
instructions commanding each of the information processing apparatuses currently accessing the shared server and participating in said one of the plurality of chat rooms to simultaneously display in one window on a display configured to display a plurality of windows, the list of available tunes, a name of the tune being shared by all of the information processing apparatuses currently receiving transmission from the shared server, and identification information corresponding to all of the information processing apparatuses currently participating in said one of the plurality of chat rooms.

5. The service providing apparatus according to claim 1, wherein the instructions to each of the plurality of information processing apparatuses command said one of the plurality of information processing apparatuses to display the list of available tunes in a first display area of the one window, display the name of the tune being shared by all of the information processing apparatuses currently receiving transmissions from the transmitting means in a second display area of the one window, and display the identification information corresponding to all of the information processing apparatuses currently participating in said one of the plurality of chat rooms in a third area of the one window.