Message transmission method for packet online conference and server
By using pre-built main venue and sub-venue identification relationships in video conferences, and using a Websocket long connection for message transmission, the problem of disconnection and establishment of long connections in video conferences is solved, and the meeting efficiency and effectiveness are improved.
Patent Information
- Application Number
- CN202411245591.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-05
- Publication Date
- 2025-03-07
AI Technical Summary
In video conference grouping scenarios, each time the status of the conference changes, a long connection needs to be re-established, resulting in an increase in the possibility of failure of connection disconnection and connection establishment, affecting the efficiency and effectiveness of the conference.
By pre-constructing the relationship between the main venue identifier and the sub-venue identifier, using a long Websocket connection for message transmission, the distinction between the main venue and the sub-venue is achieved through the identification update in the signaling message.
It realizes the distinction between the main venue and the sub-venue without disconnecting a long connection, improves the efficiency and effectiveness of online meeting group discussions, and reduces server pressure.
Smart Images

Figure CN119583517A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of online conferences, and in particular to a message transmission method and server for group online conferences. Background Art
[0002] During an online meeting, data transmission includes audio and video streams and business streams. Among them, audio and video streams include the audio of the participant's speech and the video of the presentation screen, etc. The purpose of audio and video streams is to enable each participant terminal to understand the content of the meeting in a timely manner. For example, each participant terminal can subscribe to the audio and video streams of other participant terminals that it is concerned about. Business streams refer to signaling messages between each participant terminal, such as messages that require assistance during the meeting, etc. The purpose of business streams is to allow other participant terminals to understand or cooperate in realizing the special requests of a participant user during the meeting.
[0003] In the related art, in the scenario of video conference grouping, each group is also a separate conference, and a long connection is used as a transmission channel for the business flow of a conference. Therefore, during the video conference, if there is a meeting, it becomes two group discussions and then becomes a meeting. In this process, each time a meeting is started, a new long connection needs to be re-established. Therefore, four long connections need to be established. In this process, during the duration of each meeting, if signaling messages need to be transmitted, they are transmitted to the server through the long connection of the meeting, and then transmitted to the relevant participating terminals by the server. However, there is a possibility of failure in each disconnection and establishment of the long connection. At the same time, the new connection means that the user's information needs to be retransmitted, verified and initialized before the control signaling can be sent and received, which increases the delay in joining the discussion group and affects the efficiency and effectiveness of the meeting. Summary of the invention
[0004] In an exemplary embodiment of the present application, a message transmission method and server for grouping online conferences are provided to improve the effect and efficiency of online conference grouping.
[0005] According to a first aspect of an exemplary implementation, a message transmission method for a group online conference is provided, comprising:
[0006] Establishing a first long connection with each participating terminal; wherein the first long connection is a Websocket long connection;
[0007] receiving a first signaling message from a first terminal through a first long connection; wherein the first signaling message carries a first sub-venue identifier; the first signaling message includes part or all of a group setting change message, an assistance request message, and a personnel change message; the first terminal is any participating terminal in the first sub-venue; the first sub-venue is any sub-venue in the current meeting;
[0008] A second signaling message is sent to the first main terminal through the first long connection, so that the first main terminal executes the second signaling message; wherein the second signaling message is obtained by updating the group identifier of the first signaling message, and the second signaling message carries the identifier of the group in which the first main terminal is currently located; the first main terminal is the participating terminal corresponding to the host, and the group identifier of the first main terminal is the main venue identifier or the sub-venue identifier; the main venue identifier is determined based on the first sub-venue identifier and the pre-constructed association relationship between the main venue identifier and the sub-venue identifier.
[0009] According to a second aspect of the exemplary implementation, there is provided a server, comprising a processor and a memory;
[0010] Memory, configured to execute:
[0011] Storing the ID of each participating terminal;
[0012] A processor configured to execute:
[0013] Establishing a first long connection with each participating terminal; wherein the first long connection is a Websocket long connection;
[0014] receiving a first signaling message from a first terminal through a first long connection; wherein the first signaling message carries a first sub-venue identifier; the first signaling message includes part or all of a group setting change message, an assistance request message, and a personnel change message; the first terminal is any participating terminal in the first sub-venue; the first sub-venue is any sub-venue in the current meeting;
[0015] A second signaling message is sent to the first main terminal through the first long connection, so that the first main terminal executes the second signaling message; wherein the second signaling message is obtained by updating the group identifier of the first signaling message, and the second signaling message carries the identifier of the group in which the first main terminal is currently located; the first main terminal is the participating terminal corresponding to the host, and the group identifier of the first main terminal is the main venue identifier or the sub-venue identifier; the main venue identifier is determined based on the first sub-venue identifier and the pre-constructed association relationship between the main venue identifier and the sub-venue identifier.
[0016] According to a third aspect of an exemplary implementation, a message transmission device for a group online conference is provided, comprising:
[0017] The data processing unit is used to: establish a first long connection with each participating terminal; wherein the first long connection is a Websocket long connection;
[0018] The data processing unit is used to: receive a first signaling message from a first terminal through a first long connection; wherein the first signaling message carries a first sub-venue identifier; the first signaling message includes part or all of a group setting change message, an assistance request message, and a personnel change message; the first terminal is any participating terminal in the first sub-venue; the first sub-venue is any sub-venue in the current meeting;
[0019] The data transmission unit is also used to: send a second signaling message to the first main terminal through the first long connection, so that the first main terminal executes the second signaling message; wherein the second signaling message is obtained by updating the group identifier of the first signaling message, and the second signaling message carries the identifier of the group in which the first main terminal is currently located; the first main terminal is a participating terminal corresponding to the host, and the group identifier of the first main terminal is a main venue identifier or a sub-venue identifier; the main venue identifier is determined based on the first sub-venue identifier and the pre-constructed association relationship between the main venue identifier and the sub-venue identifier.
[0020] According to a fourth aspect of the exemplary implementation, a computer storage medium is provided, in which computer program instructions are stored. When the instructions are executed on a computer, the computer executes the message transmission method for a group online conference as in the first aspect.
[0021] In the embodiment of the present application, at the beginning of the meeting, each participating terminal establishes a Websocket long connection with a signaling server, and the long connection is maintained all the time, and then the main venue or other branch venues in this meeting transmit the signaling message of the service flow through the long connection. Due to the pre-construction of the main venue identification and the branch venue identification, therefore, the matching main venue identification can be determined based on the first branch venue identification. The first signaling message from the first terminal is received by the first long connection, and the first signaling message includes part or all of the grouping setting change message, the request assistance message and the personnel change message, so that the second signaling message obtained by updating the identification of the first signaling message can be sent to the first main terminal (the participating terminal corresponding to the host) through the first long connection, so that the first main terminal executes the second signaling message, and the second signaling message here carries the identification of the group where the first main terminal is located (main venue identification or branch venue identification). Therefore, the business request of the participants in any branch venue can be forwarded to the terminal where the host is located. In addition, in this process, since the correspondence between the branch venue identifier and the main venue identifier is pre-built, and each signaling message carries the corresponding group identifier during the transmission process, it is possible to distinguish the main venue and each branch venue through a long connection. During the whole process, the long connection does not need to be disconnected, and only a long connection is needed. The main venue identifier and the branch venue identifiers are used as bridges to realize the transmission of signaling messages in the process, overcoming the problem of poor conference effect and efficiency caused by long connection disconnection and reconnection, and improving the efficiency and effect of online conference group discussions. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative labor.
[0023] Figure 1 An application scenario diagram of a message transmission method for a group online conference provided by an embodiment of the present application is exemplarily shown;
[0024] Figure 2 A flowchart of a message transmission method for a group online conference provided by an embodiment of the present application is exemplified;
[0025] Figure 3 A flowchart of a complete message transmission method for a group online conference provided by an embodiment of the present application is exemplified;
[0026] Figure 4 The signaling flow chart of a method for online conference group discussion provided by an embodiment of the present application is exemplarily shown;
[0027] Figure 5 A schematic diagram of a main venue member provided by an embodiment of the present application is exemplarily shown;
[0028] Figure 6 A schematic diagram exemplarily shows a grouping situation provided by an embodiment of the present application;
[0029] Figure 7 A schematic diagram exemplarily shows another grouping situation provided in an embodiment of the present application;
[0030] Figure 8 A schematic diagram exemplarily shows another grouping situation provided in an embodiment of the present application;
[0031] Fig. 9 The following is a schematic diagram showing the structure of a message transmission device for a group online conference provided by an embodiment of the present application;
[0032] Fig.10 A schematic diagram of the structure of a server provided in an embodiment of the present application is exemplified. DETAILED DESCRIPTION
[0033] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0034] For ease of understanding, the terms involved in the embodiments of the present application are explained below:
[0035] (1) Signaling server: A server used to process signaling messages in a communication network. Signaling messages (also called control signaling) refer to information used to control, coordinate, and manage communication sessions during the communication process. A signaling server can be a separate server or a module or service in a server that has the function of processing signaling messages.
[0036] (2) WebSocket: is a network transmission protocol that enables full-duplex communication (allowing data to be transmitted in both directions simultaneously) over a single Transmission Control Protocol (TCP) connection.
[0037] (3) Business data (business flow): usually refers to information related to specific business. In the embodiment of the present application, business data refers to the signaling messages of multiple meetings such as the main venue and each group, that is, control signaling. Control signaling is different from audio and video data. Audio and video data is mainly used to display on the participating terminals of each group. For the isolation during the transmission of audio and video streams, when the meeting starts, each participating terminal will join the real-time communication (RTC) room with room number meetingX. When subscribing to the audio and video streams of users in this room for group discussion, the signaling server will allocate a new room number discussX. The participating terminals that need to join each group need to first exit the RTC room of meeting, join the RTC room of their respective group discussX, and subscribe to the audio and video streams of users in this room. In the embodiment of the present application, the transmission of business data mainly refers to the transmission of control signaling.
[0038] (4) Moderator: Usually, the moderator is the current participant who is speaking. In the embodiment of the present application, the moderator refers to a pre-set participant who has certain permissions and can authorize requests from other participants, interrupt groups according to the conference process, or create new groups according to real-time conditions.
[0039] With the advancement of technology, online meetings are becoming more and more common, and can be used for seminars and classroom discussions. After being divided into groups, the groups can discuss independently and focus on their respective topics, improving work efficiency. However, it is also important for each group to maintain contact with the main venue, and for the host of the main venue to be able to manage each group.
[0040] In a group online conference, the transmission of business flows and data flows depends on the long connections established between the participating terminals and the server. For example, the participating terminal establishes a long connection W1 with the server to transmit the business flow information of the participating terminal; the participating terminal establishes a long connection W2 with the server to transmit the audio and video stream information of the participating terminal.
[0041] The embodiment of the present application is mainly aimed at improving the problems of disconnection and establishment in the transmission process of business flow in the related art. In the related art, if a meeting is established, during the meeting, the participating users A and B enter into separate groups for discussion, and the remaining participating users stay in the main venue. Then the participating users A and B return to the main venue. In this process, for the participating user A, at the beginning of the meeting, a long connection Wa is established with the server, when entering the group, the long connection Wb is disconnected, and the long connection Wc is re-established. When returning to the main venue, the long connection Wc is disconnected and the long connection Wd is re-established. In other words, each time a meeting is started (whether it is the main venue or the branch venue), a new long connection needs to be re-established. However, each disconnection and establishment of the long connection has the possibility of failure, and the new connection means that the user's information needs to be retransmitted, verified and initialized before the control signaling can be sent and received, which increases the delay of joining the discussion group and affects the efficiency and effect of the meeting.
[0042] In order to solve this problem, in the embodiment of the present application, an identifier is established for each meeting (main venue or group) in advance, and the relationship between each branch venue identifier and the main venue identifier is established, and the main venue identifier of this meeting can be located through one of the branch venue identifiers. Therefore, only a long connection needs to be established, and the source of the signaling message can be distinguished from the main venue or the group by the identifier. In addition, during the transmission process of the signaling message, the branch venue identifier is carried. In this way, the transmission of the signaling message in the group online conference can be realized only through a long connection.
[0043] Still taking the participant user A as an example, at the beginning of the meeting, a long connection W is established with the server. Since the same participant terminal can only join one meeting at the same time, the participant terminal needs to exit the room corresponding to the main venue before joining the room corresponding to the new group. In this process, although the action of exiting the room is executed, the long connection W is still maintained. In this way, no matter whether the participant terminal A exits the room corresponding to the group, enters the room corresponding to another group, or returns to the room corresponding to the main venue, the long connection W is maintained. The problem of low efficiency and poor effect caused by disconnection and establishment is overcome.
[0044] After introducing the design ideas of the embodiments of the present application, the following briefly introduces the application scenarios to which the technical solutions of the embodiments of the present application can be applied. It should be noted that the application scenarios introduced below are only used to illustrate the embodiments of the present application and are not limited. In specific implementation, the technical solutions provided by the embodiments of the present application can be flexibly applied according to actual needs.
[0045] refer to Figure 1, shows an application scenario diagram of a message transmission method for a group online conference, in which the host and the participants respectively establish connections with the signaling server, and the signaling server is used to realize the sending and receiving of control signals between the main venue and each group.
[0046] To further illustrate the technical solution provided by the embodiment of the present application, this is described in detail below in conjunction with the accompanying drawings and specific implementation methods. Although the embodiment of the present application provides the method operation steps shown in the following embodiments or drawings, more or fewer operation steps may be included in the method based on routine or no creative labor. In the steps where there is no necessary causal relationship logically, the execution order of these steps is not limited to the execution order provided in the embodiment of the present application.
[0047] Combine the following Figure 1 The application scenario shown is shown in Figure 2 A flowchart of a message transmission method for a group online conference is shown to illustrate the technical solution provided by an embodiment of the present application.
[0048] S201: The signaling server establishes a first long connection with each participating terminal.
[0049] Among them, the first long connection is a Websocket long connection.
[0050] S202: The signaling server receives a first signaling message from a first terminal through a first long connection.
[0051] Among them, the first signaling message carries the first branch venue identifier; the first signaling message includes part or all of the group setting change message, the assistance request message and the personnel change message; the first terminal is any participating terminal in the first branch venue; the first branch venue is any branch venue in the current meeting.
[0052] S203: The signaling server sends the second signaling message to the first master terminal through the first long connection, so that the first master terminal executes the second signaling message.
[0053] Among them, the second signaling message is obtained by updating the group identifier of the first signaling message, and the second signaling message carries the identifier of the group in which the first main terminal is currently located; the first main terminal is the participating terminal corresponding to the host, and the group identifier of the first main terminal is the main venue identifier or the sub-venue identifier; the main venue identifier is determined based on the first sub-venue identifier and the pre-built association relationship between the main venue identifier and the sub-venue identifier.
[0054] In the embodiment of the present application, at the beginning of the meeting, each participating terminal establishes a Websocket long connection with a signaling server, and the long connection is maintained all the time, and then the main venue or other branch venues in this meeting transmit the signaling message of the service flow through the long connection. Due to the pre-construction of the main venue identification and the branch venue identification, therefore, the matching main venue identification can be determined based on the first branch venue identification. The first signaling message from the first terminal is received by the first long connection, and the first signaling message includes part or all of the grouping setting change message, the request assistance message and the personnel change message, so that the second signaling message obtained by updating the identification of the first signaling message can be sent to the first main terminal (the participating terminal corresponding to the host) through the first long connection, so that the first main terminal executes the second signaling message, and the second signaling message here carries the identification of the group where the first main terminal is located (main venue identification or branch venue identification). Therefore, the business request of the participants in any branch venue can be forwarded to the terminal where the host is located. In addition, in this process, since the correspondence between the branch venue identifier and the main venue identifier is pre-built, and each signaling message carries the corresponding group identifier during the transmission process, it is possible to distinguish the main venue and each branch venue through a long connection. During the whole process, the long connection does not need to be disconnected, and only a long connection is needed. The main venue identifier and the branch venue identifiers are used as bridges to realize the transmission of signaling messages in the process, overcoming the problem of poor conference effect and efficiency caused by long connection disconnection and reconnection, and improving the efficiency and effect of online conference group discussions.
[0055] Before introducing the implementation process of each step in detail, basic information such as the participating terminals used in the embodiments of the present application is described.
[0056] The terminals at the main venue are all called master terminals, among which the terminal corresponding to the host of the current meeting is called the first master terminal. The grouping request of the first master terminal is called a group signaling message, and the set of identifiers of the terminals corresponding to the first group members is called the first terminal identifier set.
[0057] In order to distinguish different sessions of meetings under the same meeting number (room number), each time a meeting is initiated, a unique global_meeting_id will be generated, which is used to identify the main venue, and can also be called the main venue identifier. The branch venue identifier can be represented by global_discuss_id. It should be noted that the branch venue identifiers of the groups at different times of the same meeting are also different, so that a group can be uniquely identified by the branch venue identifier. The signaling server creates an independent session cache for each main venue and group meeting to record the association between each branch venue identifier and the main venue identifier. For example, a corresponding association relationship is established when each group is initiated or ended in order to determine the main venue identifier corresponding to any branch venue identifier. The session cache is updated in real time, and the update results can be broadcast to each participating terminal of the corresponding group.
[0058] In S201, at the beginning of the meeting, the signaling server establishes a connection with each participating terminal in the current meeting through a Websocket long connection, and then sends and receives signaling messages through the Websocket long connection. Specifically, the terminal corresponding to the host and the participating terminals of each participant join the meeting through the Websocket long connection, and send and receive information and synchronize the meeting status. The information here may include signaling messages. Other long connections are used to transmit audio and video streams. In the embodiment of the present application, signaling messages mainly refer to control signaling.
[0059] The host generates a group signaling message through the first main terminal, for example, the first main terminal generates the message in response to the host's click operation. The first main terminal sends the group signaling message to the signaling server. The group signaling message includes the first sub-venue identifier (for example, 0001) and the first terminal identifier set (the set of identifiers of each terminal corresponding to each first group member in the group).
[0060] The signaling server distributes the group signaling message to each participating terminal indicated by the first terminal identification set through the long connection, and any one of the participating terminals (the first terminal) is used as an example for explanation. The first terminal responds to the group signaling message and joins the first group indicated by the group signaling message. The specific implementation process is that the group signaling message is displayed by the first terminal, for example, the group room number can be displayed, and the first terminal responds to the operation of the participant to which it belongs and directly enters the first group.
[0061] In addition, the signaling server can also obtain the first group's participant list (eg, a user name list of the first group members) and the first group's conference settings. The first group's participant list and conference settings can also be displayed on the first terminal in a set form.
[0062] Since the association between each sub-venue identifier and the main venue identifier is pre-established and stored, for example, each time a new group is created, the association between the sub-venue identifier and the main venue identifier of the group is established and stored. Therefore, the association between the first sub-venue identifier and the main venue identifier is pre-established and stored.
[0063] Therefore, according to the first sub-venue identifier and the pre-established association relationship between the first sub-venue identifier and the main venue identifier, the main venue identifier that matches the first sub-venue identifier can be determined.
[0064] The signaling server sends a prompt signaling message to each main terminal indicated by the main venue, and the prompt signaling message can prompt each participating terminal in the main venue to know that the first terminal has left the main venue and joined the first group. At the same time, the participant list of the main venue can also be updated. Exemplarily, the sending form of the prompt signaling message can be a broadcast form or other forms, which is only an example and does not form a specific limitation.
[0065] The above embodiment is a process in which the first terminal notifies each participating terminal in the main conference site through the signaling server after leaving the main conference site and joining the first group.
[0066] In addition, the embodiment of the present application also provides another scenario, which is the process of transmitting other information in the group to the first main terminal where the host is located. The other information here mainly refers to control signaling, called the first signaling message, such as group setting change message, request assistance message and personnel change message.
[0067] In S202, the signaling server receives a first signaling message from a first terminal through a first long connection.
[0068] Among them, in this example, the control signaling refers to the first signaling message, which carries the first sub-venue identifier, and the first signaling message includes part or all of the group setting change message, the request for assistance message, and the personnel change message. In a specific example, the group setting change message can be a specific group setting, such as the number of people in this group has reached the upper limit; the request for assistance message is that this group meeting requests to be suspended, and there are new ideas that need to be explained to the host or other groups; the personnel change message can be a message automatically generated after the number of people increases or decreases.
[0069] The signaling server updates the first signaling message according to the group to which the first master terminal belongs at the current moment, and obtains the second signaling message.
[0070] Since the host may be always in the main venue, or may join any group, the signaling server receives the third signaling message sent from the first main terminal, and updates the identifier of the group where the first main terminal is currently located (main venue identifier or sub-venue identifier). In this way, if the signaling server wants to forward the first signaling message to the first main terminal corresponding to the host, it can first update the first signaling message according to the group where the first main terminal is currently located, and obtain the second signaling message.
[0071] Optionally, the update here refers to updating only the identifier in the message, without updating the message content. That is, the content of the obtained second signaling message is the same as that of the first signaling message, but the carried identifier is updated from the identifier of the group where the first terminal is located to the identifier of the group where the first main terminal is located. The identifier of the group where the first main terminal is located can be the main venue identifier, or it can be the sub-venue identifier where the first main terminal is located.
[0072] It involves S203: the signaling server sends the second signaling message to the first main terminal.
[0073] Since the second signaling message carries the identifier of the group in which the first master terminal is currently located, the second signaling message can be forwarded to the first master terminal by the identifier. In this way, the first master terminal can obtain the first signaling message from the first terminal in time for authorization or knowledge.
[0074] During the conference, the host can end the conference. At this time, the first main terminal where the host is located can respond to the host's operation and generate an end signaling message. The first main terminal sends the end signaling message to the signaling server. The signaling server receives the end signaling message from the first main terminal and sends the end signaling message to each participating terminal in the current conference except the first main terminal. In this way, the participating terminals of each group end the discussion in time, and each participating terminal at the main venue is notified in time that the group discussion has ended.
[0075] In addition, after the discussion is over, the participating terminals in each group maintain the current Websocket long connection, and use the main venue identifier global_meeting_id to rejoin the main venue and continue the meeting in the main venue.
[0076] Therefore, in a conference, the Websocket persistent connection remains connected all the time and does not need to be disconnected when dividing into groups. That is to say, in the embodiment of the present application, based on a Websocket persistent connection, the host can simultaneously receive signaling messages from the main venue and each group and send out control signaling; the participating terminals in each group can conduct video conferences in their respective groups and simultaneously receive and respond to control signaling from the main venue.
[0077] Figure 3 A flowchart of a complete message transmission method for group online conferences provided in an embodiment of the present application, Figure 3 At least the following steps are included:
[0078] S301: The signaling server establishes a first long connection with each participating terminal.
[0079] S302: The signaling server receives a packet signaling message from the first master terminal through the first long connection, and distributes the packet signaling message to each participating terminal indicated by the first terminal identification set, so that the first terminal responds to the packet signaling message and joins the first group indicated by the packet signaling message.
[0080] S303: The signaling server receives a first signaling message from the first terminal through the first long connection.
[0081] S304: The signaling server updates the group identifier of the first signaling message to obtain a second signaling message.
[0082] S305: The signaling server sends the second signaling message to the first master terminal through the first long connection, so that the first master terminal executes the second signaling message.
[0083] The implementation method of each step refers to the above-mentioned embodiment and will not be repeated here.
[0084] In order to make the technical solution of this application more perfect, Figure 4 A complete method flow chart of online conference group discussion provided in the embodiment of the present application. The user matched by the first terminal is represented by A. Figure 4 The process is that participant A leaves the main venue and joins group 1, the host joins group 2, and participant A responds to the message requesting help from participant A in group 2. Figure 4 The grouping and the content of each signaling message are given as examples and do not constitute a specific limitation.
[0085] Next, we use a specific example to illustrate the different grouping situations.
[0086] Figure 5 A schematic diagram of the main venue members provided in an embodiment of the present application, including A, B, C, D, E, F, and G, where G is the host. Figure 6 A grouping situation is provided for an embodiment of the present application, wherein group 1 includes members A, B, and C, and the main venue includes members D, E, F, and G. Figure 7 A schematic diagram of another grouping situation provided for an embodiment of the present application, wherein group 1 includes members A, B, and C, group 2 includes members E, F, and D, and the host G remains at the main venue. Figure 8A schematic diagram of another grouping situation provided in an embodiment of the present application, wherein group 1 includes members A, B and host G, group 2 includes members E and F, and the main venue includes members C and D
[0087] Compared with the disconnection and reconnection during grouping in the related art, the embodiment of the present application always maintains a long Websocket connection, which effectively reduces the pressure on the server. Each terminal and the server implement the group discussion function based on a long Websocket connection, which not only maintains the independence of each meeting, but also makes each group independent and unaffected, and can focus more on their respective topics, improve work efficiency and save time. It also maintains the timeliness of information synchronization between meetings, and each group can also maintain contact with the main venue, and the host can manage each group.
[0088] like Fig. 9 As shown, based on the same inventive concept, an embodiment of the present application provides a device for transmitting signaling messages of a group online conference, including a data processing unit 91 and a data transmission unit 92:
[0089] The data processing unit 91 is used to establish a first long connection with each participating terminal; wherein the first long connection is a Websocket long connection;
[0090] The data transmission unit 92 is used to: receive a first signaling message from a first terminal through a first long connection; wherein the first signaling message carries a first sub-venue identifier; the first signaling message includes part or all of a group setting change message, an assistance request message, and a personnel change message; the first terminal is any participating terminal in the first sub-venue; the first sub-venue is any sub-venue in the current meeting;
[0091] The data transmission unit 92 is also used to: send a second signaling message to the first main terminal through the first long connection, so that the first main terminal executes the second signaling message; wherein the second signaling message is obtained by updating the group identifier of the first signaling message, and the second signaling message carries the identifier of the group in which the first main terminal is currently located; the first main terminal is the participating terminal corresponding to the host, and the group identifier of the first main terminal is the main venue identifier or the sub-venue identifier; the main venue identifier is determined based on the first sub-venue identifier, and the pre-constructed association relationship between the main venue identifier and the sub-venue identifier.
[0092] In an optional implementation, the data transmission unit 92 is further configured to:
[0093] A third signaling message is sent to each master terminal indicated by the master venue identifier through the first long connection; wherein the third signaling message is used to prompt each active terminal indicated by the master venue identifier that the first terminal joins the first group.
[0094] In an optional implementation, the data transmission unit 92 is further configured to:
[0095] According to the group to which the first master terminal currently belongs, the first signaling message is updated to obtain a second signaling message.
[0096] In an optional implementation, the data processing unit 91 is further configured to:
[0097] The first sub-venue identifier carried in the first signaling message is updated to obtain a second signaling message; wherein the identifier of the group to which the first master terminal belongs carried in the second signaling message is the main venue identifier or the sub-venue identifier.
[0098] In an optional implementation, the data transmission unit 92 is further configured to:
[0099] If an end signaling message for ending the group discussion is received from the first main terminal through the first long connection, the end signaling message for ending the group discussion is sent to each participating terminal in the current conference except the first main terminal.
[0100] In an optional implementation, after establishing the first long connection with each participating terminal, the data transmission unit 92 is further configured to:
[0101] A group signaling message is received from the first main terminal through the first long connection, and the group signaling message is distributed to each participating terminal indicated by the first terminal identification set, so that the first terminal responds to the group signaling message and joins the first group indicated by the group signaling message; wherein the group signaling message includes the first sub-venue identification and the first terminal identification set; the first terminal identification set is a set of identifications of each terminal corresponding to the first group members; the first terminal is any one of the participating terminals indicated by the first terminal identification set.
[0102] Since the device is the device in the method in the embodiment of the present application, and the principle of solving the problem by the device is similar to that of the method, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be repeated.
[0103] like Fig.10 As shown, based on the same inventive concept, an embodiment of the present application provides a server, including a processor 101 and a memory 102 .
[0104] The memory 102 is configured to execute:
[0105] Storing the ID of each participating terminal;
[0106] The processor 101 is configured to execute:
[0107] Establishing a first long connection with each participating terminal; wherein the first long connection is a Websocket long connection;
[0108] receiving a first signaling message from a first terminal through a first long connection; wherein the first signaling message carries a first sub-venue identifier; the first signaling message includes part or all of a group setting change message, an assistance request message, and a personnel change message; the first terminal is any participating terminal in the first sub-venue; the first sub-venue is any sub-venue in the current meeting;
[0109] A second signaling message is sent to the first main terminal through the first long connection, so that the first main terminal executes the second signaling message; wherein the second signaling message is obtained by updating the group identifier of the first signaling message, and the second signaling message carries the identifier of the group in which the first main terminal is currently located; the first main terminal is the participating terminal corresponding to the host, and the group identifier of the first main terminal is the main venue identifier or the sub-venue identifier; the main venue identifier is determined based on the first sub-venue identifier and the pre-constructed association relationship between the main venue identifier and the sub-venue identifier.
[0110] In an optional implementation, the processor 101 is further configured to:
[0111] A third signaling message is sent to each master terminal indicated by the master venue identifier through the first long connection; wherein the third signaling message is used to prompt each active terminal indicated by the master venue identifier that the first terminal joins the first group.
[0112] In an optional implementation, the processor 101 is further configured to:
[0113] According to the group to which the first master terminal currently belongs, the first signaling message is updated to obtain a second signaling message.
[0114] In an optional implementation, the processor 101 is further configured to:
[0115] The first sub-venue identifier carried in the first signaling message is updated to obtain a second signaling message; wherein the identifier of the group to which the first master terminal belongs carried in the second signaling message is the main venue identifier or the sub-venue identifier.
[0116] In an optional implementation, the processor 101 is further configured to:
[0117] If an end signaling message for ending the group discussion is received from the first main terminal through the first long connection, the end signaling message for ending the group discussion is sent to each participating terminal in the current conference except the first main terminal.
[0118] In an optional implementation, after establishing the first long connection with each participating terminal, the processor 101 is further configured to:
[0119] A group signaling message is received from the first main terminal through the first long connection, and the group signaling message is distributed to each participating terminal indicated by the first terminal identification set, so that the first terminal responds to the group signaling message and joins the first group indicated by the group signaling message; wherein the group signaling message includes the first sub-venue identification and the first terminal identification set; the first terminal identification set is a set of identifications of each terminal corresponding to the first group members; the first terminal is any one of the participating terminals indicated by the first terminal identification set.
[0120] An embodiment of the present application also provides a computer storage medium, in which computer program instructions are stored. When the instructions are executed on a computer, the computer executes the steps of the message transmission method for group online conferences.
[0121] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment in combination with software and hardware. Moreover, the present application may adopt the form of a computer program product implemented in one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) that include computer-usable program code.
[0122] The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0123] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.
[0124] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0125] Obviously, those skilled in the art can make various changes and modifications to the present application without departing from the scope of the present application. Thus, if these modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is also intended to include these modifications and variations.
Claims
1. A message transmission method for a group online conference, characterized in that: include: Establishing a first long connection with each participating terminal; wherein the first long connection is a Websocket long connection; receiving a first signaling message from a first terminal through the first long connection; wherein the first signaling message carries the first sub-venue identifier; the first signaling message includes part or all of a group setting change message, an assistance request message, and a personnel change message; the first terminal is any participating terminal in the first sub-venue; the first sub-venue is any sub-venue in the current meeting; A second signaling message is sent to the first main terminal through the first long connection, so that the first main terminal executes the second signaling message; wherein the second signaling message is obtained by updating the group identifier of the first signaling message, and the second signaling message carries the identifier of the group in which the first main terminal is currently located; the first main terminal is a participating terminal corresponding to the host, and the group identifier of the first main terminal is a main venue identifier or a sub-venue identifier; the main venue identifier is determined based on the first sub-venue identifier and a pre-constructed association relationship between the main venue identifier and the sub-venue identifier.
2. The method according to claim 1, characterized in that The method further comprises: A third signaling message is sent to each master terminal indicated by the master venue identifier through the first long connection; wherein the third signaling message is used to prompt each active terminal indicated by the master venue identifier that the first terminal joins the first group.
3. The method according to claim 1, characterized in that: The method further comprises: The first signaling message is updated according to the group to which the first master terminal belongs at the current moment to obtain a second signaling message.
4. The method according to claim 1, characterized in that The method further comprises: The first sub-venue identifier carried in the first signaling message is updated to obtain a second signaling message; wherein the identifier of the group to which the first master terminal belongs carried in the second signaling message is a main venue identifier or a sub-venue identifier.
5. The method according to claim 1, characterized in that The method further comprises: If an end signaling message for ending the group discussion is received from the first main terminal through the first long connection, the end signaling message for ending the group discussion is sent to each participating terminal in the current conference except the first main terminal.
6. The method according to any one of claims 1 to 5, characterized in that: After establishing the first long connection with each participating terminal, the method further includes: A group signaling message is received from the first main terminal through the first long connection, and the group signaling message is distributed to each participating terminal indicated by the first terminal identification set, so that the first terminal responds to the group signaling message and joins the first group indicated by the group signaling message; wherein the group signaling message includes a first sub-venue identification and a first terminal identification set; the first terminal identification set is a set of identifications of each terminal corresponding to the first group members; the first terminal is any one of the participating terminals indicated by the first terminal identification set.
7. A server, characterized in that: including a processor and a memory; The memory is configured to execute: Storing the ID of each participating terminal; The processor is configured to execute: Establishing a first long connection with each participating terminal; wherein the first long connection is a Websocket long connection; receiving a first signaling message from a first terminal through the first long connection; wherein the first signaling message carries the first sub-venue identifier; the first signaling message includes part or all of a group setting change message, an assistance request message, and a personnel change message; the first terminal is any participating terminal in the first sub-venue; the first sub-venue is any sub-venue in the current meeting; A second signaling message is sent to the first main terminal through the first long connection, so that the first main terminal executes the second signaling message; wherein the second signaling message is obtained by updating the group identifier of the first signaling message, and the second signaling message carries the identifier of the group in which the first main terminal is currently located; the first main terminal is a participating terminal corresponding to the host, and the group identifier of the first main terminal is a main venue identifier or a sub-venue identifier; the main venue identifier is determined based on the first sub-venue identifier and a pre-constructed association relationship between the main venue identifier and the sub-venue identifier.
8. The server according to claim 7, characterized in that: The processor is further configured to: A third signaling message is sent to each master terminal indicated by the master venue identifier through the first long connection; wherein the third signaling message is used to prompt each active terminal indicated by the master venue identifier that the first terminal joins the first group.
9. The server according to claim 8, characterized in that: The processor is further configured to: update the first signaling message according to the group to which the first master terminal currently belongs, to obtain a second signaling message.
10. The server according to claim 7, characterized in that: The processor is further configured to: The first sub-venue identifier carried in the first signaling message is updated to obtain a second signaling message; wherein the identifier of the group to which the first master terminal belongs carried in the second signaling message is a main venue identifier or a sub-venue identifier.