Title of Invention

METHOD AND SYSTEM FOR PROVIDING A MULTI-USER VOICE CONVERSATION WITH ONE USER TERMINAL SENDING VOICE EACH TIME

Abstract Disclosed in this invention is a method for providing a multi-user voice conversation in an instant messaging system, wherein an instant messaging multi-user voice group is established and a group control device is provided for the voice group in the instant messaging system, the method including: a user terminal sending a conversation establishment request which contains a user identifier to the group control device; upon receiving the conversation establishment request, the group control device placing the user identifier contained in the conversation establishment request into a queue created for the voice group; and the user terminal which initiates the conversation establishment request establishing a conversation in the voice group according to an arrangement sequence in the queue. By using the method of this invention, less bandwidth is taken, the burden of data processing on the user identifier is reduced, voice is transmitted more orderly and controllably, communication becomes unhindered, and the perceived user experience is better. Also disclosed is a system for providing a multi-user voice conversation.
Full Text

Method and System for providing a Multi-user Voice
Conversation
Field of the Invention
The present invention relates to a computer network and communication technology, and more particularly, to a method and system for providing a multi-user voice conversation.
Background of the Invention
As Instant Messaging (IM) tool in the network develops, it has been accepted by most network user for daily communication today. As for the developing process of IM software, the earliest mode of communication which only performs the ordinary text has gradually become the one with text-graphics integration and of voice and video. The voice and video mode makes the communication between IM usei*s, who are at different places and unable to meet, more prompt and colourful, thus well meeting users' demands in use.
Along with the continuous development of network technology, a multi-user voice conversation, not limited to in pairs, has been provided to satisfy user's communication in a further diversified way and under more scenarios, the voice conversation between users including users sending voice data packets to each other.
The method for providing multi-user voice transmission in the prior art is described below using the (M software, and the method includes the following steps.
Step [. the user terminal initiating a conversation runs and logs in the IM , and initiates a request for conversation establishment to the IM server providing the IM services, so as to ask to establish a valid and dependable IM multi-user voice group, the request including therein the IDs of the conversation initiating user and other user
terminals.
Step 11. the IM server authenticates the conversation initiating user terminal, and returns to the user terminal a message of prompting success in establishment after the requirement is met, then the conversation initiating user terminal, via the IM server, sends

to other user terminals joining the conversation a request for establishing a long link connection channel of Transmission Control Protocol (TCP).
Step III. on receipt of the request for long link connection, the user terminal joining the conversation updates local voice group information by using a voice group ID newly established in the link parameter, and authenticates the conversation initiating user terminal, and establishes the long link connection channel with the conversation initiator after the requirement is met.
Step IV. each user terminal joining the conversation initiates a long iink connection process of the voice transmission between it and other user terminals joining the conversation according to other member information in the IM multi-user voice group information, and in this way, a voice transmission channel is established in pairs between members of the multi-user voice group.
Step V. after the voice transmission channel is thus successfully established between the members joining the conversation, any member may send to other members a voice data stream at any time, and receives such a voice data stream from other members (i.e., a multi-user voice transmission process is provided).
The existing method for providing multi-user voice transmission is a full-duplex process method (i.e., the voice data stream is sent and received simultaneously in the same channel). In this way, much bandwidth is taken, and for the lowly configured user terminal, the high occupation rate of resources may affect other work of the user terminal. In addition, since any user may send a voice data stream at any time, the voice data stream will become chaotic, whereby users are unable to effectively communicate with each other, the effectiveness and controllability in voice data transmission between multi-users are low, and the perceived user experience are not so good.
Summary of the Invention
This invention provides a method and system for providing a multi-user voice conversation to solve the problem of much bandwidth taken when multi-user voice is transmitted, high occupation rate of user terminal resources and low effectiveness and controllability in voice data transmission.

This invention provides a method for providing a multi-user voice conversation tn an instant messaging system, wherein an instant messaging multi-user voice group is established and a group control device is provided for the voice group in the instant messaging system , the method including:
a user terminal sending a conversation establishment request which contains a user identifier to the group control device;
Upon receiving the conversation establishment request, the group control device placing the user identifier contained in the conversation establishment request into a queue created by the voice group; and
the user terminal establishing a conversation in the group according to an arrangement sequence in the queue.
This invention also provides a system for providing a multi-user voice conversation, the system including an instant messaging multi-user group including a group control device and at least two user terminals, and
the group control device is used for receiving a conversation establishment request which contains a user identifier and is sent by the user terminal, and placing the user identifier contained in the conversation establishment request into a queue created for the voice group; and
the user terminal is used for sending the conversation establishment request containing the user identifier to the group control device, and establishing a conversation in the voice group according to an arrangement sequence in the queue.
In this invention, a user terminal sends to the group control device a conversation establishment request containing a user identifier, the group control device places the user identifier in the conversation establishment request in a queue created for the group, the user terminal establishes a conversation in the group according to an arrangement sequence in the queue, whereby less bandwidth is taken, the burden of data processing on the user identifier is reduced, voice is transmitted more orderly and controllably, communication become unhindered, and the perceived user experience is better.
Brief Description of the Drawings
Figure 1 is a schematic diagram illustrating a structure of the system in the present

invention;
Figure 2 is a schematic diagram illustrating a structure of the terminal and group control device in embodiment 1 of the present invention;
Figure 3 is a schematic diagram illustrating a structure of the terminal and group control device in embodiment 2 of the present invention; and
Figure 4 is a flowchart diagram illustrating the steps in an embodiment of the present invention.
Detailed Description of the Invention
I he present invention is further described with reference to the accompanying
drawings.
Figure 1 is a schematic diagram illustrating a structure of the system in this invention. As shown in the figure i, the system for providing a multi-user voice conversation includes an instant messaging multi-user group, which includes a group control device and at least two user terminals. The group control device is used for receiving a conversation establishment request which contains a user identifier from the user terminal, and placing the user identifier contained in the conversation establishment request in a queue created for the group; and the user terminal is used for sending a conversation establishment request which contains a user identifier to the group control device, and establishing a conversation in the group according to the sequence in the queue.
Figure 2 is a schematic diagram illustrating a structure of the terminal and group control device in embodiment 1 of the present invention. As shown in Fig. 2, the group control device includes a receiver unit 11 and a control unit 12. The receiver unit 11 is used for receiving the conversation establishment request which contains a user identifier and is sent from the user terminal, and for sending the conversation establishment request to the control unit 12. The control unit 12 is used for placing the user identifier contained in the conversation establishment request in a queue created for the group.
The user terminal includes a sender unit 21 and a conversation unit 22. The sender unit 21 is used for sending the conversation establishment request which contains a user

identifier to the grump control device. The conversation unit 22 is used for establishing a conversation in the group according to the sequence in the queue.
The user terminal also includes an authentication unit 23. The authentication unit 23 is used for receiving the control request sent from a control request management unit 13, and for authenticating the ID in the request, for saving the ID after the authentication succeeds, and for returning response information to the control request management unit 13.
The group control unit also includes a control request management unit 13, 'fhe control request management unit 13 is used for sending a control request which contains the ID of the group control device to an authentication unit 23, and for receiving response information returned from the authentication unit 23.
The control unit 12 includes a queuing unit 31 and a placing unit 32. The queuing unit 31 is used for organizing the conversation establishment request in sequence into the queue according to the sequence of sending the conversation establishment request and/or the priority of the user terminal. The placing unit 32 is used for placing the user identifier contained in the conversation establishment request into a position of the queue corresponding to the sequence in the queue.
The user terminal also includes a time determination unit 24. I he time determination unit 24 is used for determining whether the transmission duration of the user terminal reaches a predetermined value and for sending the voice data in the current queue, and for determining whether the duration of data transmission in a transmission channel reaches a predetermined value, and if so, sending to the conversation unit 22 an interrupting signal.
The conversation unit 22 is also used for, on receipt of the interrupting signal, interrupting the conversation of the current user terminal, and for taking the next user terminal in the queue as the current user terminal to establish a conversation.
The conversation unit 22 includes a first collection unit 41 and a first sender unit 42. The first collection unit 41 is used for collecting the voice data. The first sender unit 42 is used for sending the voice data to the other user terminals in the group.
In addition, the voice data may be transmitted to the user terminal in the group in

other modes as shown in Figure 3. Figure 3 is a schematic diagram illustrating a structure of the terminal and group control device in embodiment 2. In this embodiment, the voice data is sent to the group control device by one user terminal firstly, and then forwarded to the other user terminals in the group by the group control device. The conversation unit 22 includes a second collection unit 43 and a second sender unit 44. The second collection unit 43 is used for collecting the voice data. The second sender unit 44 is used for sending the voice data to the group control device. The group control device also includes a forwarding unit 14,which is for receiving the voice data sent by the second sender unit 44, and for forwarding the voice data to the other user terminal in the group.
This invention includes the steps as follows: firstly, establishing an instant messaging multi-user voice group in the instant messaging system, providing the voice group with a group control device; secondly, the user terminal sends to the group control device a conversation establishment request which contains the user identifier; thirdly, on receipt of the conversation establishment request, the group control device places the user IdentlHer contained in the conversation establishment request in the queue created for the group; and finally, the user terminal initiates the conversation establishment request and establishes a conversation in the group in the sequence in the queue. In this invention, the step of establishing the conversation between the users includes: sending the voice data to a user terminal in the group, and receiving the voice data sent by the other user terminals in the group.
In an embodiment of this invention, a process of the voice conversation of four user terminals A, B, C and D is to be gone through in the multi-user voice conversation with IM software running. Figure 4 is a flowchart diagram illustrating the steps in the method of this embodiment, and the method includes the following steps.
Step 401: establish an IM mull-user voice group in the IM system, and provide the voice group with a group control device.
User terminal A first runs the IM software, logs in the IM server, and then initiates to the IM server a request for establishing an IM multi-user voice group. The request contains an ID of the user terminals desiring to join the voice group, i.e., the IDs of the user terminals A, B, C and D, wherein a mark of initiating a request is added in the ID of

the user A to tell the IM server the user terminal A. is the user terminal initiating the request, the request also including a protocol command number to tell the IM server about the protocol command desired to request.
On receipt of the request for establishing the multi-user voice group from user terminal A, the IM server decrypts and resolves the ID information in the request in an agreed mode to determine whether it is effective information. In this invention, it may be supposed the any user joining the IM multi-user voice group must have successfully logged in the IM server. If the IM server determines that there is, in the received information, a user terminal ID with a failure in logging in the IM server, it indicates that the request is invalid; and if the user terminal IDs corresponding to all user terminals are all successful in logging in the IM server, it indicates that the request is valid, and then the protocol demand number is extracted; if it is determined to be the protocol demand for establishing the IM multi-user voice group, then a new IM multi-user voice group is established and the information of the newly established voice group is saved, the voice group information including: a voice group ID, IDs of user terminals desiring to join the voice group (the IDs of user terminal A, B, C and D), and a voice group name. Then, the IM server sends the information about successful establishment of an IM multi-user voice group to the user terminal A, and the user terminal A decrypts and resolves the information to obtain the ID of the established voice group and information associated with the voice group.
After successfully establishing an IM multi-user voice group, the IM server, according to the saved user terminal ID, inquires the login Internet Protocol (IP) and Port information of these user terminals. Since it is convent-med that all the user terminals joining the voice group has successfully logged in the IM server, the IM server sends to each of the user terminals joining the voice group a data packet of success establishment of a voice group in which the newly established voice group information is contained.
User terminal A, according to the saved IDs of user terminals B, C and D, sends to each user terminal a request for making of a TCP long link with it, the request also including therein the ID of user terminal A and the established voice group ID. On receipt of the TCP long link request, user terminals B, C and D determine whether user terminal A is a valid and deDendable user terminal. For example, in QQ software, if user terminal

A is an intimate of user terminal B, it indicates that user terminal A reaches such a rani In this invention, the group control device may be any user terminal joining the group, which is called the first user terminal to distinguish it from the other user terminals, or may be a server or the like contained in the IM system. In this embodiment, it is supposed that the group control device is user terminal A (i.e., the user terminal A is the first user terminal), then the method of providing the user terminal A as a group control device includes: the user terminal A sends to the other user terminals in the group a control request (i.e., sends to user terminals B, C and D) in which the ID of user terminal A is contained. User terminals B, C and D authenticate the ID of user terminal A contained in the control request, and save the ID of user terminal A abler the authentication succeeds and return a response information to user terminal A to acknowledge user terminal A to be the group control device. There may be a variety of conditions for authentication, and in this embodiment, it is supposed that the authentication succeeds when user terminal A is the intimate of user terminals B, C and D.
The process of establishing a connection channel in pairs between the user terminals is not absolutely necessary in this invention because, when only one user terminal sends voice data at a time with not so much bandwidth taken, the data packet may be sent to the group control device which sends the voice data to the other user terminals in the group; surely, the voice data may also be sent to the user terminal in the group according to the connection channel established in pairs between the user terminals.
Step 402: the user terminal sends to the group control device a conversation establishment request containing a user identifier, the group control device, on receipt of the conversation establishment request, places the user identifier contained in the

conversation establishment request in the queue created for the group, and then the user terminal initiating the conversation establishment request establishes a conversation in the group in the sequence in the queue.
in this embodiment, it is supposed the user terminal A is the group control device, and the voice data is transmitted via the TCP long link channel established in pairs between the user terminals.
In the process of providing the multi-user voice transmission, the user terminal establishing a voice conversation has to send to the group control device a conversation establishment request. In this embodiment, user terminal B is supposed to send to user terminal A a conversation establishment request containing the ID of terminal B to ask for voice communication. On receipt of the conversation establishment request sent by user terminal B, user terminal A determines the state in the current multi-user voice transmission channel which may be "free" or "busy". When no voice data is transmitted in a voice transmission channel, the channel may be regarded as free now. However, since there may be a pause when one user sends a data packet at a time, in this embodiment, only when the duration without data transmission is up to a predetermined time is the channel now regarded as free, or when the transmission duration of the user terminal sending voice data reaches a predetermined value the channel may be regarded as free. When there is data transmitted in the voice transmission channel, or there is data transmitted when the interval is less than the predetermined time, or the transmission duration of the user terminal sending voice data does not reaches the predetermined value, the channel is regarded as busy.
if user terminal A determines that it is free now, user terminal B may establish a conversation (i.e., send voice data), user terminal A may send the ID of user terminal B to user terminals C and D, and user terminal C and D record the ID of user terminal B which is currently to establish a conversation. Now, the voice data to be sent by user terminal B is encoded in a predetermined mode, and sent to user terminals A, C and D via the TCP long link channel. Terminals A, C and D, on receipt of the data sent by user terminal B, decode it in an appropriate mode to obtain the initial audio data and play it for the user. Certainly, user terminal B may also send to user terminal A the encoded data, and user terminal A, on receipt of the data, sends it to user terminals C and D according to the

saved ID information.
There is a determination that whether the transmission duration of the user terminal sending voice data in the current queue reaches a predetermined value, or whether the duration of data transmission in the transmission channel reaches a predetermined value; if so, there is an interrupt in the conversation of the current user terminal, and the next user terminal in the queue is taken as the current user terminal to establish a conversation, and the above determination is repeated. When user terminal A determines that it is busy now, if user terminal C is now sending voice data and user terminal D sends a conversation establishment request before user terminal B and after user terminal C does so, then user terminal A arranges user terminal B in sequence and places it behind D in the queue. When determining that the transmission duration of user terminal C reaches a predetermined value, or when determining whether the duration of data transmission reaches a predetermined value, there is a interrupt in the conversation of user terminal C; and when the channel is free, user terminal D is taken as the current terminal in conversation (i.e., send voice data), and the above determination process is repeated. User terminal B is not taken as the current terminal in conversation (i.e., voice data is not sent) until the conversation of user terminal D is terminated.
In the above process, user terminal A arranges the user terminals asking for a voice conversation in sequence according to the sequence of sending the conversation establishment request, and surely may do so according to the sequence of sending the conversation establishment request and/or the priority of the user terminal, and then places the user identifier contained in the conversation establishment request into a position in the voice queue corresponding to the arrangement sequence in the queue. For example, when the IM software is the QQ software, then the priority may be determined according to the accumulated points, or may surely be determined according to other conditions.
In this embodiment, it is supposed that user terminal B has a highest priority; user terminal C, the next; and user terminal D, the lowest. While user terminal C is sending voice data, user terminal D sends a conversation establishment request to user terminal A, and user terminal A places user terminal D behind user terminal C in the queue. User terminal B also sends a conversation establishment request to user terminal A prior to

termination of sending of user terminal C, then user terminal A, in sequence according to priority information, places user terminal B behind user terminal C, and places user terminal D behind userterminai B, in the queue.
!n this invention, when mite-user voice is transmitted, only one user terminal is sending voice at a time while other user terminals are all in the state for reception, whereby less bandwidth is taken, the burden of data processing on the user terminal is reduced, voice is transmitted more orderly and controllably, communication become unhindered, and the perceived user experience is better.
Obviously, those skilled in the art may make numerous changes and variations on the solution of this invention without departing from the spirit and scope thereof. Accordingly, it is intended that this invention includes the changes and variations in case that such changes and variations come within the scope as set forth in the appended claims and the equivalent techniques thereof.














Claims
1. A method for providing a muck-user voice conversation in an instant messaging
system, in which an instant messaging multi-user voice group is established and a group
control device is provided for the voice group in the instant messaging system,
comprising:
a user terminal sending a conversation establishment request which contains a user identifier to the group control device;
upon receiving the conversation establishment request, the group control device placing the user identifier contained in the conversation establishment request into a queue created for the voice group; and
the user terminal which initiates the conversation establishment request establishing a conversation in the voice group according to an arrangement sequence in the queue.
2. The method of Claim i, wherein the group control device is a first user terminal
in the voice group, or a server in the instant messaging system, and wherein when the
group control device is the first user terminal in the voice group, the step of providing the
group control device comprises:
the first user terminal sending a control request which contains its user identifier to the user terminal in the voice group; and
upon receiving the control request, the user terminal authenticating the user identifier contained in the control request, saving the user identifier after the authentication succeeds, and returning response information to the first user terminal.
3. The method of Claim 1, wherein the group control device placing the user
identifier contained in the conversation establishment request into the queue created for
the voice group comprises:
the group control device arranging the conversation establishment request in sequence into the queue according to the sequence of sending the conversation establishment request and/or the priority of the user terminal; and
the group control device placing the user identifier contained in the conversation establishment request Into a position of the queue corresponding to the arrangement sequence in the queue.

4. The method of Claim !, wherein the user terminal which initiates the
conversation establishment request establishing the conversation in the voice group
according to the arrangement sequence in the queue comprises:
determining whether the transmission duration of the user terminal in the current queue reaches a predetermined value, or whether the duration of data transmission in a transmission channel reaches a predetermined value, and if yes, interrupting the conversation of the current user terminal; and
taking the next user terminal in the queue as the current user terminal to establish a conversation, and returning to the above step.
5. The method of Claim I or 4, wherein the user terminal which initiates the
conversation establishment request establishing the conversation comprises:
the user terminal which initiates the conversation establishment request sending voice data to the other user terminals in the group; or
the user terminal which initiates the conversation establishment request sending voice data to the group control device, and upon receiving the voice data, the group control device sending the voice data to the other user terminal in the group.
6. A system for providing a multi-user voice conversation, comprising an instant
messaging multi-user group which includes a group control device and at least two user
terminals, and
the group control device is used for receiving a conversation establishment request which contains a user identifier and is sent by the user terminal, and placing the user identifier contained in the conversation establishment request into a queue created for the voice group; and
the user terminal is used for sending the conversation establishment request which contains the user identifier to the group control device, and establishing a conversation in the voice group according to an arrangement sequence in the queue.
7. I’ he system of Claim 6, wherein the group control device comprises a receiver
unit and a control unit, and
the receiver unit is used for receiving the conversation establishment request which contains the user identifier and is sent by the user terminal, and sending the conversation establishment request to the control unit; and

the control unit is used for placing the user identifier contained in the conversation establishment request into the queue created for the voice group.
8. The system of Claim 7, wherein the user terminal comprises:
a sender unit for sending the conversation establishment request w'hich contains a
user identifier to the group control device; and
a conversation unit for establishing a conversation in the voice group according to
the arrangement sequence in the queue.
9.11ie system of Claim 8, wherein the group control device comprises:
a control request management unit for sending a control request which contains identifier of the group control device to an authentication unit, and receiving response information returned by the authentication unit; and
the user terminal further comprises:
the authentication unit for receiving the control request sent by the control request management unit, authenticating the identifier contained in the control request, saving the identifier after the authentication succeeds, and returning response information to the control request management unit.
10. The system of Claim 7, wherein the control unit comprises:
a queuing unit for arranging the conversation establishment request in sequence into the queue according to the sequence of sending the conversation establishment request and/or the priority of the user terminal; and
a placing unit for placing the user identifier contained in the conversation establishment request into a position of the queue corresponding to the arrangement sequence in the queue.
11, The system of Claim 8, wherein the user terminal further comprises:
a time determination unit for determining whether the transmission duration of the user terminal sending voice data in the current queue reaches a predetermined value, or whether the duration of data transmission in a transmission channel reaches a predetermined value; and if yes, sending an interrupt single to the conversation unit; and wherein

upon receiving the interrupting signal, the conversation unit further being used for interrupting the conversation of the current user terminal and taking the next user terminal in the queue as the current user terminal to establish a conversation.
12. The system of Claim 8, wherein the conversation unit comprises:
a first collection unit for collecting the voice data; and
a first sender unit for sending the voice data to the user terminal in the voice group.
13. The system of Claim 8, wherein the conversation unit comprises:
a second collection unit for collecting the voice data; and
a second sender unit for sending the voice data to the group control device; and wherein
the group control device further comprises:
a forwarding unit for receiving the voice data sent by the second sender unit, and forwarding the voice data to the user terminal in the voice group.


Documents:

3018-CHE-2007 AMENDED PAGES OF SPECIFICATION 14-12-2012.pdf

3018-CHE-2007 AMENDED CLAIMS 14-12-2012.pdf

3018-CHE-2007 CORRESPONDENCE OTHERS 09-04-2013.pdf

3018-CHE-2007 CORRESPONDENCE OTHERS 20-01-2012.pdf

3018-CHE-2007 EXAMINATION REPORT REPLY RECEIVED 14-12-2012.pdf

3018-CHE-2007 FORM-1 14-12-2012.pdf

3018-CHE-2007 FORM-3 14-12-2012.pdf

3018-CHE-2007 POWER OF ATTORNEY 14-12-2012.pdf

3018-che-2007-abstract.pdf

3018-che-2007-claims.pdf

3018-che-2007-correspondnece-others.pdf

3018-che-2007-description(complete).pdf

3018-che-2007-drawings.pdf

3018-che-2007-form 1.pdf

3018-che-2007-form 18.pdf

3018-che-2007-form 3.pdf

3018-che-2007-form 5.pdf


Patent Number 255980
Indian Patent Application Number 3018/CHE/2007
PG Journal Number 16/2013
Publication Date 19-Apr-2013
Grant Date 12-Apr-2013
Date of Filing 18-Dec-2007
Name of Patentee TENCENT TECHNOLOGY (SHENZHEN) COMPANY LIMITED
Applicant Address 4/F, EAST 2 BLOCK SEG PARK ZHENXING ROAD FUTIAN DISTRICT, SHENZHEN GUANGDONG 518044
Inventors:
# Inventor's Name Inventor's Address
1 LI, BIN 4/F, EAST 2 BLOCK SEG PARK ZHENXING ROAD FUTIAN DISTRICT, SHENZHEN GUANGDONG 518044
PCT International Classification Number H04B 07/00
PCT International Application Number N/A
PCT International Filing date
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 200610168343.4 2006-12-26 China