Video conferencing migration methods, devices, systems, media and electronic equipment

By assigning a new signaling server to the video conference and obtaining the attribute information of the participating users through the signaling routing server, the problem of video conference interruption caused by signaling server failure was solved, and fast and accurate video conference migration was achieved, thus improving the user experience.

CN119276845BActive Publication Date: 2026-06-30BEIJING HONGYUN RONGTONG TECH

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
BEIJING HONGYUN RONGTONG TECH
Filing Date
2024-08-19
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

In video conferencing, when the signaling server malfunctions, existing technologies struggle to continue providing services to participating users, leading to meeting interruptions and impacting the user experience.

Method used

The signaling routing server assigns a new signaling server to the video conference, and obtains conference attribute information and participant attribute information from the database server and user terminal devices. The video conference is then rebuilt and migrated to the new signaling server.

Benefits of technology

It enables rapid and accurate recovery of video conferencing services in the event of a signaling server failure, reduces the amount of information exchange with the database server, saves storage space, ensures the accuracy of participant attribute information, and improves user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119276845B_ABST
    Figure CN119276845B_ABST
Patent Text Reader

Abstract

This invention discloses a video conferencing migration method, apparatus, system, medium, and device. The method includes: receiving video conferencing takeover information from a signaling routing server; obtaining meeting attribute information of the video conferencing to be taken over from a database server based on the video conferencing takeover information; obtaining participant attribute information from the user terminal devices of the migrated valid participants among the original participants of the video conferencing to be taken over; and performing a reconstruction operation of the video conferencing to be taken over based on the meeting attribute information and the participant attribute information of the migrated valid participants, so as to migrate the video conferencing to be taken over to the signaling server. The technical solution provided by this disclosure can minimize the time cost, computational cost, and storage cost of video conferencing migration while ensuring the accuracy of the migrated video conferencing as much as possible, thereby helping to shield the impact of signaling server-side failures on the video conferencing.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to network communication technology, and in particular to a video conferencing migration method, video conferencing migration device, video conferencing migration system, storage medium, and electronic device. Background Technology

[0002] Video conferencing is a network communication technology that enables real-time video communication over a network (such as a wired network or mobile internet network).

[0003] Video conferencing typically utilizes a signaling server to provide video conferencing services to participating users. If the signaling server providing the video conferencing service experiences a failure (such as a signaling service software failure, a signaling server hardware failure, or a network connection failure), the video conference will be interrupted.

[0004] In the event of a video conference interruption, how to continue providing video conferencing services to participants while minimizing the impact of signaling server failures on the video conference, thereby ensuring a better video conferencing experience for participants, is a technical issue worthy of attention. Summary of the Invention

[0005] To address the aforementioned technical problems, this disclosure is proposed. Embodiments of this disclosure provide a video conferencing migration method, apparatus, system, storage medium, and electronic device.

[0006] According to a first aspect of the present disclosure, a video conferencing migration method is provided. This method is executed in a signaling server, and includes: receiving video conferencing takeover information from a signaling routing server; obtaining meeting attribute information of the video conferencing to be taken over from a database server based on the video conferencing takeover information; obtaining participant attribute information from the user terminal devices of migrated valid participants among the original participants of the video conferencing to be taken over; and performing a reconstruction operation on the video conferencing to be taken over based on the meeting attribute information and the participant attribute information of the migrated valid participants, thereby migrating the video conferencing to be taken over to the signaling server.

[0007] According to a second aspect of the present disclosure, another video conferencing migration method is provided. This method is executed in a user terminal device, and includes: detecting the working status of a signaling server currently providing services for the video conferencing; if the working status is detected to be abnormal, sending a request for new signaling server information to a signaling routing server to request that the new signaling server take over the video conferencing; receiving new signaling server allocation information returned by the signaling routing server, and obtaining participant attribute information of the participants using the user terminal device to participate in the video conferencing from the local machine; and sending a request for new signaling server information to the new signaling server taking over the video conferencing according to the new signaling server allocation information. The new signaling server sends a reconnection request carrying the participant user attribute information; wherein, the participant user attribute information carried in the reconnection request is used to: enable the new signaling server to perform a reconstruction operation on the video conference to be taken over, based on the conference attribute information of the video conference to be taken over obtained from the database server and the participant user attribute information of the user terminal devices of the migrated valid participants from the original participants of the video conference to be taken over, so as to migrate the video conference to be taken over to the new signaling server; and participate in the video conference migrated to the new signaling server according to the reconnection response returned by the new signaling server.

[0008] According to a third aspect of the present disclosure, a video conferencing migration apparatus is provided. The apparatus is disposed in a signaling server and includes: a takeover information receiving module for receiving video conferencing takeover information from a signaling routing server; a first acquisition module for acquiring meeting attribute information of the video conferencing to be taken over from a database server based on the video conferencing takeover information received by the takeover information receiving module; a second acquisition module for acquiring participant attribute information from the user terminal devices of migrated valid participants among the original participants of the video conferencing to be taken over; and a meeting reconstruction module for performing a reconstruction operation on the video conferencing to be taken over based on the meeting attribute information acquired by the first acquisition module and the participant attribute information of the migrated valid participants acquired by the second acquisition module, thereby migrating the video conferencing to be taken over to the signaling server.

[0009] According to a fourth aspect of the present disclosure, a video conferencing migration apparatus is provided. The apparatus is disposed in a user terminal device, and includes: a detection module for detecting the working status of a signaling server currently providing services for the video conferencing; a first sending module for sending, when the working status detected by the detection module is an abnormal working status, to a signaling routing server requesting a new signaling server to take over the video conferencing; a local acquisition module for receiving new signaling server allocation information returned by the signaling routing server and acquiring, from the local machine, participant attribute information of users participating in the video conferencing using the user terminal device; and a second sending module for transmitting, according to the new signaling server allocation information received by the local acquisition module... The signaling server allocates information and sends a reconnection request to the new signaling server that takes over the video conference, carrying the participant user attribute information obtained by the local acquisition module. The participant user attribute information carried in the reconnection request is used to enable the new signaling server to perform a reconstruction operation on the video conference to be taken over, based on the conference attribute information of the video conference to be taken over obtained from the database server and the participant user attribute information of the user terminal devices of the migrated valid participants from the original participants of the video conference to be taken over, thereby migrating the video conference to be taken over to the new signaling server. The conference joining module is used to participate in the video conference migrated to the new signaling server based on the reconnection response returned by the new signaling server.

[0010] According to a fifth aspect of the present disclosure, a video conferencing migration system is provided. The system includes: a signaling routing server, a database server, and at least two signaling servers; each of the two signaling servers is equipped with a video conferencing migration device; the signaling routing server is connected to each of the signaling servers, and the signaling routing server is equipped with an allocation module. The allocation module is used to, upon receiving a message from a user terminal device requesting a new signaling server for a video conferencing session, allocate a new signaling server to the video conferencing session and send video conferencing takeover information to the new signaling server; the database server is used to store meeting attribute information for each video conferencing session; and the video conferencing migration device in the signaling server... The apparatus includes: a takeover information receiving module for receiving video conference takeover information from a signaling routing server; a first acquisition module for acquiring conference attribute information of the video conference to be taken over from a database server based on the video conference takeover information received by the takeover information receiving module; a second acquisition module for acquiring participant attribute information from the user terminal devices of migrated valid participants among the original participants of the video conference to be taken over; and a conference reconstruction module for performing a reconstruction operation on the video conference to be taken over based on the conference attribute information acquired by the first acquisition module and the participant attribute information of migrated valid participants acquired by the second acquisition module, so as to migrate the video conference to be taken over to the signaling server.

[0011] According to a sixth aspect of the present disclosure, a computer-readable storage medium is provided, the storage medium storing a computer program for implementing any of the methods described above.

[0012] According to a seventh aspect of the present disclosure, an electronic device is provided, comprising: a processor; a memory for storing processor-executable instructions; the processor being configured to read the executable instructions from the memory and execute the instructions to implement any of the methods described above.

[0013] Based on the video conferencing migration method, apparatus, system, storage medium, and electronic device provided in the above embodiments of this disclosure, by utilizing a signaling routing server to allocate a new signaling server to the video conference to be taken over, and having the new signaling server reconstruct the conference, the switching of the signaling server providing services for the video conference is realized, which is beneficial for restoring video conferences interrupted due to signaling server failures. By obtaining the conference attribute information of the video conference to be taken over from the database server, the amount of information read from the database server is significantly reduced, especially in application scenarios with a large number of participants, which can significantly reduce the amount of information read from the database server. This reduces the amount of information required, thus avoiding the uncontrollable video conference migration time caused by reading large amounts of information from the database server. Furthermore, since the database server does not need to store participant attribute information, it saves database server storage space. By obtaining participant attribute information from the user terminal devices of the migrated valid participants from the original participants, and using this obtained meeting attribute information and the participant attribute information of the migrated valid participants for meeting reconstruction, it not only ensures the accuracy of the participant attribute information of each participant in the migrated video conference, but also avoids the time consumption caused by unnecessarily obtaining the participant attribute information of the original participants. Therefore, the technical solution provided in this disclosure, while minimizing the time, computation, and storage costs of video conference migration, ensures the accuracy of the migrated video conference as much as possible, thereby helping to shield the impact of signaling server-side failures on the video conference, and ultimately improving the user experience of the video conference.

[0014] The technical solutions of this disclosure will be further described in detail below with reference to the accompanying drawings and embodiments. Attached Figure Description

[0015] The above and other objects, features, and advantages of this disclosure will become more apparent from the more detailed description of the embodiments thereof in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of this disclosure and form part of the specification. They are used together with the embodiments of this disclosure to explain the disclosure and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same components or steps.

[0016] Figure 1 This is a schematic diagram illustrating an application scenario of the video conferencing migration technology disclosed herein;

[0017] Figure 2 This is a flowchart of an embodiment of the video conferencing migration method disclosed herein;

[0018] Figure 3 This is a flowchart of another embodiment of the video conferencing migration method disclosed herein;

[0019] Figure 4 A schematic diagram illustrating the information interaction during the migration of a video conference with multiple participating users as disclosed herein;

[0020] Figure 5 A sequence diagram of information interaction for migrating a video conference with multiple participating users as disclosed herein;

[0021] Figure 6 This is a schematic diagram of the structure of an embodiment of the video conferencing migration device disclosed herein;

[0022] Figure 7 This is a schematic diagram of another embodiment of the video conferencing migration device disclosed herein;

[0023] Figure 8 This is a schematic diagram of the structure of an embodiment of the video conferencing migration system disclosed herein;

[0024] Figure 9 This is a structural diagram of an electronic device provided in an exemplary embodiment of this disclosure. Detailed Implementation

[0025] Example embodiments according to this disclosure will now be described in detail with reference to the accompanying drawings. It is obvious that the described embodiments are merely some embodiments of this disclosure, and not all embodiments of this disclosure, and it should be understood that this disclosure is not limited to the example embodiments described herein.

[0026] It should be noted that, unless otherwise specifically stated, the relative arrangement, numerical expressions, and values ​​of the components and steps set forth in these embodiments do not limit the scope of this disclosure.

[0027] Those skilled in the art will understand that the terms "first," "second," etc., in the embodiments of this disclosure are only used to distinguish different steps, devices, or modules, and do not represent any specific technical meaning, nor do they indicate a necessary logical order between them.

[0028] It should also be understood that in the embodiments disclosed herein, "a plurality of" may refer to two or more, and "at least one" may refer to one, two or more.

[0029] It should also be understood that any component, data or structure mentioned in the embodiments of this disclosure can generally be understood as one or more unless expressly defined or given to the contrary in the context.

[0030] Furthermore, the term "and / or" in this disclosure is merely a description of the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A existing alone, A and B existing simultaneously, or B existing alone. Additionally, the character " / " in this disclosure generally indicates that the preceding and following related objects have an "or" relationship.

[0031] It should also be understood that the description of the various embodiments in this disclosure emphasizes the differences between the various embodiments, and the similarities or similarities can be referred to each other. For the sake of brevity, they will not be described in detail.

[0032] At the same time, it should be understood that, for ease of description, the dimensions of the various parts shown in the accompanying drawings are not drawn according to actual scale.

[0033] The following description of at least one exemplary embodiment is merely illustrative and is in no way intended to limit this disclosure or its application or use.

[0034] Techniques, methods, and equipment known to those skilled in the art may not be discussed in detail, but where appropriate, such techniques, methods, and equipment should be considered part of the specification.

[0035] It should be noted that similar labels and letters in the following figures indicate similar items; therefore, once an item is defined in one figure, it does not need to be discussed further in subsequent figures.

[0036] The embodiments of this disclosure can be applied to electronic devices such as terminal devices, computer systems, and servers, and can operate with a wide range of other general-purpose or special-purpose computing system environments or configurations. Examples of well-known terminal devices, computing systems, environments, and / or configurations suitable for use with electronic devices such as terminal devices, computer systems, or servers include, but are not limited to: personal computer systems, server computer systems, thin clients, thick clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputer systems, mainframe computer systems, and distributed cloud computing environments that include any of the above systems, etc.

[0037] Electronic devices such as terminal devices, computer systems, and servers can be described in the general context of computer system executable instructions (such as program modules) executed by a computer system. Typically, program modules can include routines, programs, object programs, components, logic, data structures, etc., which perform specific tasks or implement specific abstract data types. Computer systems / servers can be implemented in a distributed cloud computing environment. In a distributed cloud computing environment, tasks can be performed by remote processing devices linked through a communication network. In a distributed cloud computing environment, program modules can reside on local or remote computing system storage media, including storage devices.

[0038] This disclosure outlines

[0039] In developing this disclosure, the inventors discovered that in technologies utilizing signaling servers for video conferencing, when a signaling server malfunctions and cannot continue providing services for video conferencing, some or all of the video conferencing services handled by that signaling server can be migrated to another signaling server so that the video conferencing can continue. During the video conferencing migration process, not only the migration speed to the new signaling server must be considered, but also the accuracy of the migration. For example, the relevant settings on the user's terminal device should remain consistent before and after the migration. Improving the migration speed and accuracy of video conferencing helps to ensure that users are unaware of the migration, thereby minimizing the impact of signaling server-side failures on the video conferencing.

[0040] Improving the speed of video conferencing migration requires considering not only the information exchange flow during the migration process but also factors such as the speed of information retrieval. Conversely, enhancing the accuracy of video conferencing migration primarily depends on the accuracy of the information obtained. Therefore, during the migration process, setting up a reasonable migration workflow and effectively acquiring information related to the video conferencing being migrated will improve both the migration speed and accuracy, thus facilitating a fast and lossless migration of video conferencing.

[0041] Exemplary Overview

[0042] The video conferencing migration technology solution disclosed herein can be applied to various application scenarios. For example, the video conferencing migration technology solution provided herein can be applied to application scenarios where different types of user terminal devices participate in the same video conference, and it can also be applied to application scenarios where user terminal devices based on different protocols participate in the same video conference. A specific example is... Figure 1 As shown.

[0043] Figure 1 In this context, signaling server 101 is currently providing video conferencing services for multiple (e.g., 100) video conferences simultaneously. One of these video conferences currently has N (N is an integer greater than 2, such as N being 100 or 1000) participating users. These N participating users access the service through their respective user terminal devices (i.e.,...). Figure 1 The video conference is attended by user terminal devices 100-1, 100-2, ..., 100-N. Some user terminal devices (such as user terminal devices 100-1 and 100-2) access the signaling server 101 via a wired internet connection, while others (such as user terminal devices 100-N) access the signaling server 101 via a mobile internet connection. These N user terminal devices can be of different types; for example, they can include desktop computers, laptops, and mobile phones. Some of these N user terminal devices can participate in the video conference via an application or client, while others can participate via a webpage.

[0044] If signaling server 101 experiences a software, hardware, or network failure and is unable to continue providing video conferencing services for the aforementioned multiple video conferences, all video conferences served by signaling server 101 can be migrated to one or more signaling servers. For example, all video conferences served by signaling server 101 can be migrated to signaling server 102, or some video conferences served by signaling server 101 can be migrated to signaling server 102, while other video conferences are migrated to one or more other signaling servers. Figure 1 (Not shown). If the video conference involving the aforementioned N participating users is migrated to the signaling server 102, then user terminal devices 100-1, 100-2, ..., and 100-N can continue to participate in the video conference by accessing the signaling server 102.

[0045] Exemplary methods

[0046] Figure 2 This is a flowchart of one embodiment of the video conferencing migration method disclosed herein. Figure 2 The method shown includes steps S200, S201, S202, and S203, and as follows: Figure 2Each step shown is executed within a signaling server. The signaling server in this disclosure refers to a server responsible for providing video conferencing services to participating users. For example, the provided video conferencing services may include: synchronous management of video conferencing-related information, and management of video conferencing status. The signaling server of this disclosure can be located in the same hardware device as other servers, or it can be independently configured in a separate hardware device. The following describes... Figure 2 Each step in the process will be explained separately.

[0047] S200 receives video conference takeover information from the signaling routing server.

[0048] The signaling routing server disclosed herein refers to a server that assigns signaling servers to video conferences. The signaling routing server can assign signaling servers to video conferences that are about to begin, and it can also assign new signaling servers to video conferences that are about to be taken over.

[0049] The video conference takeover information in this disclosure refers to information used to indicate that a video conference has been migrated from an original signaling server to a new signaling server, that is, information used to indicate that a video conference that was previously provided by the original signaling server needs to be taken over by the new signaling server.

[0050] In one example, the video conference takeover information in this disclosure mainly includes: information used to identify the video conference to be taken over, such as the conference number. Of course, it may also include other information used to enable the new signaling server to take over the video conference, such as information that allows the acquisition of the conference attribute information of the video conference to be taken over, specifically the storage address of the conference attribute information of the video conference to be taken over (i.e., the address of the database server), etc. This disclosure does not limit the specific content and protocol format of the video conference takeover information.

[0051] Optionally, the signaling routing server can send video conference takeover information to the signaling server upon triggering by the user terminal devices of participating users in a video conference. For example, when any participating user's user terminal device detects a failure in the signaling server currently providing services for the video conference, it sends a message to the signaling routing server requesting a new signaling server for the video conference. This message may carry the conference number. Upon receiving the message, the signaling routing server performs a signaling server allocation operation (such as selecting a signaling server from multiple currently functioning signaling servers based on principles like proximity, load balancing, or randomness, and then sends video conference takeover information to the allocated new signaling server).

[0052] In an alternative example, the user terminal devices of multiple participants in a video conference may simultaneously or sequentially detect a failure in the signaling server currently providing services for the video conference. Therefore, the signaling routing server may receive multiple messages requesting a new signaling server for the same video conference. Upon receiving the first message requesting a new signaling server for the same video conference, the signaling routing server can perform a signaling server allocation operation and send video conference takeover information to the allocated new signaling server. If no response from the new signaling server is received within a predetermined time, the signaling server allocation operation can be performed again.

[0053] S201. Based on the above video conference takeover information, obtain the conference attribute information of the video conference to be taken over from the database server.

[0054] The database server disclosed herein refers to a server used to store information related to video conferencing. The video conferencing-related information stored on the database server can be maintained by one or more signaling servers. For example, a signaling server currently responsible for providing services for multiple video conferences can periodically or irregularly update the conference attribute information of each video conference stored in the database server during the proceedings of each video conference. The database server can be located on the same hardware device as other servers (such as on the same hardware device as a signaling routing server), or it can be set up independently on a separate hardware device.

[0055] In one application scenario, the database server in this disclosure does not need to store the attribute information of participants in each video conference. This not only reduces the computational, storage, and time overhead of writing the attribute information of participants in each video conference to the database server during the video conference, but also reduces the computational and time overhead of reading the attribute information of all participants in one or more video conferences from the read / write database server during video conference migration. This helps avoid the phenomenon that the computational and time costs of interacting with the database server increase with the number of participants. Ultimately, this not only reduces the maintenance cost of video conferences but also allows for effective control of video conference migration time. The above effects are particularly pronounced when there are many video conferences and / or a large number of participants.

[0056] Optionally, this disclosure can obtain the meeting number of the video conference to be taken over from the video conference takeover information, and use that meeting number to query the storage address of the meeting attribute information of the video conference to be taken over, i.e., the address of the database server. Then, it can use that storage address to read the meeting attribute information corresponding to the meeting number from the database server. Alternatively, this disclosure can also obtain the meeting number and database server address information of the video conference to be taken over from the video conference takeover information, and use that database server address information to read the meeting attribute information corresponding to the meeting number from the database server.

[0057] Optionally, the video conference attribute information in this disclosure refers to information describing the current status of the video conference. Video conference attribute information typically includes information decided by the network side; information set entirely by the participating users is not considered meeting attribute information. In one example, video conference attribute information may include: whether the video conference has ended, the video conference's unlock / unlock status, the list of currently online participating users, the maximum number of allowed participating users, the maximum number of allowed speakers, the current host, the list of co-hosts, the list of guests, and extended video conference attributes. This disclosure does not limit the specific content included in the meeting attribute information.

[0058] S202. Obtain participant attribute information from the user terminal devices of the migrated valid participants among the original participants of the video conference to be taken over.

[0059] The participant user attribute information disclosed herein refers to information that does not require network-side decision-making in the video conference and is entirely set by the participant user themselves. For example, participant user attribute information may include: the participant user's private extended attributes and the status of the participant user's speaking resources (such as the on / off status of the camera and microphone).

[0060] In this disclosure, "original participants" refers to users who participated in the video conference when it was being served by the original signaling server. In one example, an original participant could be a user from the list of currently online participants in the video conference to be taken over, stored in the database server.

[0061] In one application scenario, this disclosure can, based on pre-set filtering conditions, treat all original participants in the current online participant list as valid migration participants.

[0062] In another application scenario, this disclosure can, based on pre-set filtering criteria, select a portion of the original participants from the current online participant list as valid migration participants.

[0063] In other words, the participant attribute information obtained in step S202 may be the participant attribute information of all the original participants in the video conference to be taken over, or it may be the participant attribute information of some of the original participants in the video conference to be taken over.

[0064] Optionally, the aforementioned pre-set filtering conditions can be configured according to actual needs. For example, the response time for the user terminal device to receive new signaling server allocation information returned by the signaling routing server can be set. By setting this filtering condition to the response time, this disclosure allows for flexible control over the migration time of video conferencing, thereby helping to control the time cost of video conferencing migration.

[0065] Optionally, the signaling server in this disclosure can obtain participant attribute information from the information carried in the reconnection request from the user terminal device of the original participant in the video conference to be taken over. For example, after the signaling routing server assigns a new signaling server for the video conference to be taken over, it returns the information of the new signaling server to the user terminal device that sent the message requesting a new signaling server for the video conference. The user terminal device can then send a reconnection request to the corresponding signaling server, carrying the conference number of the video conference to be taken over, the participant identifier, and the participant attribute information, based on the information of the new signaling server. If the conference number carried in the reconnection request is the conference number of the video conference to be taken over, and the reconnection request is received at [time missing], the reconnection request can be reconnected. If the reconnection request meets the predetermined time requirement, this disclosure may treat the original participant as a valid participant and store the participant attribute information carried in the reconnection request as the participant attribute information of the valid participant (e.g., cached in memory); if the meeting number carried in the reconnection request is the meeting number of the video conference to be taken over, and the reception time of the reconnection request does not meet the predetermined time requirement (e.g., timed out), this disclosure may treat the original participant as an invalid participant and disregard the participant attribute information carried in the reconnection request.

[0066] Because user terminal devices may fail to send reconnection requests in a timely manner or not at all for various reasons (such as network issues or user withdrawal from the video conference), reconnection requests that meet the predetermined time requirements clearly indicate that the original user can continue to participate normally in the migrated video conference. However, the continued normal participation of original users who fail to send reconnection requests in a timely manner or do not send reconnection requests is questionable. By excluding such original users from the valid participants in the migration, it is beneficial to avoid the costs incurred in obtaining the participant attribute information of original users who did not indicate their participation in the migrated video conference during the video conference migration process. This not only helps to ensure the accuracy of the obtained participant attribute information but also helps to effectively control the time of obtaining the participant attribute information, thereby improving the accuracy of the video conference migration and controlling the time cost of the video conference migration.

[0067] Optionally, for invalid participants during migration, this disclosure can determine the participant attribute information of the invalid participants based on a preset processing method for new participants. For example, for invalid participants, this disclosure can assume that the participant has no participant attribute information (e.g., the participant attribute information is empty). Another example is that, for invalid participants, default participant attribute information can be used as the participant attribute information for the invalid participants and stored (e.g., in a local cache). This disclosure can also add the participant identifier of the invalid participants to the list of currently online participants, making the invalid participants a participant in the migrated video conference, and sending conference attribute information to the participant. In application scenarios where default participant attribute information is used as the participant attribute information for the invalid participants, this disclosure can send both conference attribute information and default participant attribute information to the participant, and can also broadcast the participant attribute information to other participants.

[0068] This disclosure utilizes a pre-defined processing method for new participants to determine the participant attribute information of invalid participants during migration. This allows original participants who cannot send reconnection requests in a timely manner to participate in the migrated video conference without significantly altering the existing video conferencing process. This helps to further mitigate the impact of video conference migration on the participant experience.

[0069] Optionally, steps S201 and S202 of this disclosure can be parallel steps or can be executed in a sequential order.

[0070] S203. Based on the meeting attribute information and the participant attribute information of the valid participants, perform the reconstruction operation of the video conference to be taken over, so as to migrate the video conference to be taken over to the signaling server that executes the steps of this method.

[0071] The reconstruction operation of the video conference to be taken over in this disclosure may include: when obtaining the conference attribute information, determining whether there is at least one original participant in the current online participant list in the conference attribute information; if there is no original participant in the current online participant list, the video conference to be taken over can be set to the ended state, thereby avoiding unnecessary migration of the video conference; if there is at least one original participant in the current online participant list, the video conference to be taken over can be set to the conference loading state, waiting for the participants to join.

[0072] After setting the video conference to be taken over to the meeting loading state, this disclosure can determine whether the currently obtained participant attribute information meets the predetermined conditions. If the predetermined conditions are met, the meeting loading state of the video conference to be taken over is ended, and the video conference to be taken over is set to the meeting normal state, so as to avoid the adverse effects caused by the long migration time of the video conference, which may prevent the participants from being able to participate normally for a long time.

[0073] The pre-registration conditions disclosed herein can be set according to actual needs. For example, pre-registration conditions may include: conditions based on timeout and conditions based on the original number of participants in the participant list. A specific example is as follows:

[0074] After a video conference to be taken over is set to the loading state, a timer is started for a preset loading duration (e.g., 5 or 7 seconds). If the timer does not expire, it continuously checks whether reconnection requests from all original participants in the current online participant list have been received. If the timer does not expire and it is determined that all original participants' reconnection requests have been received, the loading state of the video conference to be taken over ends, and the video conference enters the normal meeting state. If only some original participants in the current online participant list receive reconnection requests, but the timer expires, the loading state of the video conference to be taken over ends, and the video conference enters the normal meeting state. This disclosure, by determining whether reconnection requests from all original participants in the current online participant list have been received, and entering the normal meeting state upon receiving all reconnection requests, helps to minimize the migration time of the video conference to be taken over. By timing the preset reception time, the maximum time for a video conference to transition from the loading state to the normal state is controllable. This helps to avoid the phenomenon that individual original participants fail to send reconnection requests in time, thus affecting the migration speed of the video conference.

[0075] Optionally, if the timer expires and only some of the original participants in the current online participant list receive reconnection requests, then for the participants in the current online participant list who did not receive reconnection requests (hereinafter referred to as pending participants), this disclosure can delete these pending participants from the current online participant list. If the original participants are unable to send reconnection requests in a timely manner due to leaving the meeting or abnormal user terminal equipment, this disclosure cannot determine whether these pending participants will be able to continue participating in the migrated video conference as soon as possible. Therefore, by deleting these pending participants from the current online participant list, it can be ensured that the participants in the current online participant list are valid participants who can continue to participate in the migrated video conference as soon as possible. This helps to ensure the accuracy of the participant list and avoid errors in the participants listed in the migrated video conference (such as including participants who left the video conference during the migration process or participants who could not connect to the new signaling server in a timely manner).

[0076] In this disclosure, setting the video conference to be taken over to a normal meeting state can be specifically done as follows: The status of the video conference to be taken over is changed from the meeting loading state to the meeting normal state. After deleting the original participants who did not send a reconnection request from the current online participant list, meeting attribute information and participant attribute information are sent to all current participants in the current online participant list. For example, the meeting attribute information and the participant attribute information of each participant in the current online participant list are both carried in the reconnection response, and a reconnection response is sent to all current participants. Alternatively, after deleting the original participants who did not send a reconnection request from the current online participant list, this disclosure can also synchronize the meeting normal state, the current online participant list, and other information to the database server (participant attribute information does not need to be synchronized to the database server). By modifying the meeting status and sending meeting attribute information and participant attribute information based on the current online participant list after the deletion operation, the video conference migration was successfully completed within a controllable time frame. This ensured that the participant attribute information and other settings of each participant in the migrated video conference were accurately configured, avoiding setting discrepancies caused by the video conference migration.

[0077] Figure 3 This is a flowchart of another embodiment of the video conferencing migration method disclosed herein. Figure 3 The method shown includes steps S300, S301, S302, and S303, and as follows: Figure 3 Each step shown is performed on a user terminal device. The user terminal device disclosed herein can specifically be an electronic device such as a desktop computer, notebook computer, tablet computer, or smartphone. The following describes... Figure 3 Each step in the process will be explained separately.

[0078] S300: Detect the current working status of the signaling server providing services for video conferencing.

[0079] This step is used to trigger the migration of the video conference. The working status of the signaling server in this disclosure mainly includes: normal working status and abnormal working status. The user terminal devices of participating users use this step to detect whether the signaling server currently providing video conferencing services to them is malfunctioning.

[0080] If the signaling server is unable to interact with the user terminal devices of participating users due to a malfunction, the result of this step is that the signaling server is in an abnormal working state. If the signaling server is able to interact with the user terminal devices of participating users, the result of this step is that the signaling server is in a normal working state.

[0081] In one example, this disclosure can use a heartbeat mechanism to interact with the signaling server to detect the signaling server's operational status. For instance, participating users' terminal devices periodically send heartbeat messages to the signaling server currently providing services for the video conference and wait for a heartbeat response message from the signaling server. If no heartbeat response message is received from the signaling server within a predetermined time range, the detection result is that the signaling server is in an abnormal operating state; if a heartbeat response message is received from the signaling server within the predetermined time range, the detection result is that the signaling server is in a normal operating state.

[0082] S301. If the detected working status is an abnormal working status, send a request for a new signaling server to the signaling routing server to request that the new signaling server take over the video conference.

[0083] The request for a new signaling server information in this disclosure is primarily used to trigger the migration of video conferencing. Specifically, it triggers the signaling routing server to perform a signaling server allocation operation (such as selecting a signaling server from multiple currently functioning signaling servers based on principles like proximity, load balancing, or randomness, and sending video conferencing takeover information to the allocated new signaling server, thereby driving the video conferencing migration process. The request for a new signaling server information mainly includes the video conferencing conference number. The message carrying the request for a new signaling server information can be referred to as a message for requesting a new signaling server for the video conferencing. Furthermore, after allocating a new signaling server, the signaling routing server should also return the new signaling server allocation information to the user terminal device that sent the message requesting a new signaling server for the video conferencing, informing the user terminal device that the video conferencing has been migrated to the new signaling server.

[0084] S302. Receive the new signaling server allocation information returned by the signaling routing server, and obtain the participant attribute information of the participants using user terminal devices to participate in the video conference from the local machine.

[0085] The new signaling server allocation information in this disclosure mainly includes: conference number and new signaling server address information, etc. The participant user attribute information in this disclosure refers to information that does not require network-side decision-making in the video conference and is entirely set by the participant users themselves. For example, participant user attribute information may include: participant user's private extended attributes and the status of participant user's speaking resources (such as camera on / off status, microphone on / off status), etc. Since the participant user attribute information is stored locally on the user terminal device, this disclosure can quickly obtain the latest participant user attribute information.

[0086] S303. Based on the received new signaling server allocation information, send a reconnection request carrying the attribute information of the participating users to the new signaling server that takes over the video conference.

[0087] This disclosure requires that upon receiving new signaling server allocation information, a reconnection request be promptly sent to the new signaling server. The reconnection request in this disclosure is used to enable the original participants of the video conference to rejoin the video conference migrated to the new signaling server. In one example, this disclosure may include the conference number, participant identifier, and participant attribute information of the video conference to be taken over in the reconnection request, and send the reconnection request to the new signaling server according to the new signaling server address in the new signaling server allocation information.

[0088] The participant user attribute information carried in the reconnection request disclosed herein is used to: enable the new signaling server to perform a reconstruction operation on the video conference to be taken over, based on the conference attribute information of the video conference to be taken over obtained from the database server and the participant user attribute information of the user terminal devices of the migrated valid participants from the original participants of the video conference to be taken over, so as to migrate the video conference to be taken over to the new signaling server. The usage of the participant user attribute information carried in the reconnection request can be found in the above-described method for... Figure 2 Description of the relevant steps in the process.

[0089] S304. Based on the reconnection response returned by the new signaling server, participate in the video conference that has been migrated to the new signaling server.

[0090] The reconnection response in this disclosure is primarily used to indicate whether a participating user has been successfully added to the migrated video conference. In one example, the reconnection response may include: the conference ID, a list of currently online participants, and the pre-migration conference mode. Specifically, participating in a video conference migrated to the new signaling server based on the reconnection response returned by the new signaling server involves: obtaining the conference ID, current user list, and pre-migration conference mode information carried in the reconnection response, and performing subsequent operations on the aforementioned information according to the existing video conference processing flow.

[0091] This disclosure enables user terminal devices to detect the operational status of the signaling server providing video conferencing services. In the event of a signaling server failure, timely migration of the video conference can be triggered. By proactively reporting locally stored participant attribute information to the new signaling server, the user terminal devices avoid the need for the new server to read large amounts of participant attribute information from the database server. This ensures that the new signaling server obtains the most up-to-date participant attribute information. When the new signaling server uses the acquired conference attribute information and the attribute information of the migrated, valid participants to rebuild the conference, the accuracy of the participant attribute information for each participant in the migrated video conference is guaranteed, and the migration time is effectively controlled. Therefore, this disclosure establishes a video conference migration process for user terminal devices. This process, in conjunction with the network-side video conference migration process, enables quick and accurate migration of video conferences, thereby improving the user experience.

[0092] The above embodiments have good video conferencing migration effects. This disclosure can also formulate video conferencing migration processes different from those in the above embodiments for the network side (i.e., signaling routing server and signaling server side) and user terminal equipment side. Although the video conferencing migration effect is not as good as that in the above embodiments, it is still a feasible video conferencing migration process that can effectively solve the problem of video conferencing interruption caused by signaling server failure. The following is in conjunction with Figure 4 and Figure 5 The migration process for this video conference is explained.

[0093] Figure 4 Only two participants in the video conference are shown. These two participants used user terminal device 400-1 and user terminal device 400-2 respectively to participate in the video conference.

[0094] Signaling server 401-1 is designated by signaling routing server 402 as the signaling server responsible for providing video conferencing services during a video conference. If, during the video conference, signaling server 401-1 becomes unable to continue providing services to participating users due to software or hardware failures, signaling routing server 402 should assign a new signaling server, such as signaling server 401-2, to continue providing video conferencing services, thus completing the migration of the video conference. The information exchange involved in the above process includes: Figure 4 The numbers 1, 2, 3, 4, 5, and 6.

[0095] Specifically, Figure 4The 1 in the figure indicates that user terminal device 400-1 interacts with signaling server 401-1 through a heartbeat mechanism; Figure 4 The number 2 in the text indicates that the signaling server 401-1 writes information related to the video conference (such as conference attribute information and participant user attribute information) into the database server 403. Figure 4 The number 3 indicates that the user terminal device 400-1, through a heartbeat mechanism, determines that the signaling server 401-1 is faulty and requests the signaling routing server 402 to allocate a new signaling server. Figure 4 The number 4 indicates that signaling routing server 402 will interact with signaling server 401-2 as a new signaling server. Figure 4 The number 5 in the text indicates an information exchange where the signaling server 401-2 reads information related to the video conference from the database server 403. Figure 4 The number 6 indicates that user terminal device 400-1 rejoins the video conference through signaling server 401-2. User terminal device 400-2 can also rejoin the video conference through information exchange with signaling routing server 402 and signaling server 401-2.

[0096] Figure 4 A sequence diagram of information interaction is shown below. Figure 5 As shown.

[0097] Figure 5 In step 50, during the video conference, the signaling server 401-1 sends information related to the video conference (such as conference attribute information and participant user attribute information) to the database server 403, and the database server 403 stores the received information related to the video conference.

[0098] Step 51-1: User terminal device 400-1 sends a heartbeat message to signaling server 401-1 according to the heartbeat mechanism.

[0099] Step 51-2: After receiving the heartbeat message, the signaling server 401-1 returns a heartbeat response message to the user terminal device 400-1.

[0100] If user terminal device 400-1 does not receive a heartbeat response message from signaling server 401-1 within the predetermined time range after sending a heartbeat message, then proceed to step 52.

[0101] Step 52: User terminal device 400-1 sends a message to signaling routing server 402 to request a new signaling server for the video conference.

[0102] Step 53: After receiving the message, the signaling routing server 402 assigns a new signaling server, such as signaling server 401-2, to the video conference and sends a message to signaling server 401-2 to notify it that it has become the new signaling server for the video conference.

[0103] Step 54-1: After receiving the message, the signaling server 401-2 sends a request to the database server 403 to read information related to the video conference.

[0104] Step 54-2: After receiving the request, the database server 403 returns a message containing information related to the video conference to the signaling server 401-2.

[0105] Step 55: After notifying signaling server 401-2 that it has become the new signaling server, signaling routing server 402 can send a message to user terminal equipment 400-1 to provide the user terminal equipment with the new signaling server information.

[0106] Step 56-1: After receiving the message from the signaling routing server 402, the user terminal device 400-1 sends a reconnection request to the signaling server 401-2, carrying the conference number and participant identifier of the video conference. This participant identifier is a unique identifier for the participant in the video conference.

[0107] Step 56-2: After receiving the reconnection request, the signaling server 401-2 adds the user terminal device 400-1 to the video conference and returns a participation response message to the user terminal device 400-1, which contains relevant information recovered from the database server 403.

[0108] Since the video conferencing migration process involves restoring all video conferencing-related information, including user status information, from database server 403, the amount of information restored by signaling server 401-2 from database server 403 is closely related to the number of participants in the video conferencing. The number of participants is also closely related to the efficiency of the video conferencing migration. Furthermore, the participant attribute information in the video conferencing-related information is usually set by the participants themselves and is not subject to the signaling server's decision. The signaling server writes the participant attribute information set by the participants into database server 403 and broadcasts it to other participants. Therefore, the user status information stored in database server 403 may be inconsistent with the participant attribute information set by the participants before the video conferencing migration due to update delays and other factors. This can cause a lag in the participant attribute information carried in the participation response message returned by signaling server 401-2 to user terminal device 400-1, allowing participants to reset their attribute information.

[0109] Since the participant attribute information is determined by the participants themselves, the participant attribute information stored in the user terminal device 400-1 is often more accurate than that stored in the database server 403. Therefore, if the participant attribute information recovered from the database server 403 is used to rebuild the video conference during the migration process, it will be more efficient than... Figure 2 and Figure 3 As shown in the video conferencing migration process, the migration speed and reliability of video conferencing will be reduced.

[0110] Exemplary device

[0111] Figure 6 This is a schematic diagram of a video conferencing migration device according to an embodiment of the present disclosure. The device of this embodiment is disposed in a signaling server, and the device of this embodiment can be used to implement the corresponding method embodiments of the present disclosure.

[0112] like Figure 6 The device shown includes: a takeover information receiving module 600, a first acquisition module 601, a second acquisition module 602, and a conference reconstruction module 603. The device may also optionally include: a new participant processing module 604. The following describes each module included in the device.

[0113] The takeover information receiving module 600 is mainly used to receive video conference takeover information from the signaling routing server. The specific content of the video conference takeover information and the triggering conditions for the takeover information receiving module 600 to receive the video conference takeover information can be found above. Figure 2 The relevant descriptions of the S200 will not be detailed here.

[0114] The first acquisition module 601 is mainly used to obtain the conference attribute information of the video conference to be taken over from the database server based on the video conference takeover information received by the takeover information receiving module 600. The specific process of the first acquisition module 601 obtaining the conference attribute information from the database server, as well as the specific content included in the conference attribute information, can be found above. Figure 2 The relevant descriptions of S201 will not be elaborated here.

[0115] The second acquisition module 602 is mainly used to acquire participant attribute information from the user terminal devices of the migrated valid participants among the original participants of the video conference to be taken over. Optionally, the second acquisition module 602 includes: a first submodule 6021, a second submodule 6022, and a third submodule 6023. The first submodule 6021 is mainly used to receive reconnection requests from the user terminal devices of the participants of the video conference to be taken over. The second submodule 6022 is mainly used to, when it is determined that the conference number carried in the reconnection request received by the first submodule 6021 is the conference number of the video conference to be taken over, and the reception time of the reconnection request meets the predetermined time requirement, use the participant attribute information carried in the reconnection request as the participant attribute information of the migrated valid participants, and perform a write operation. The third submodule 6023 is mainly used to store the participant attribute information written by the second submodule 6022. The specific operations performed by the first submodule 6021, the second submodule 6022, and the third submodule 6023 can be found above. Figure 2 The relevant descriptions of S202 will not be explained in detail here.

[0116] The conference reconstruction module 603 is mainly used to perform a reconstruction operation on the video conference to be taken over, based on the conference attribute information obtained by the first acquisition module 601 and the participant attribute information of the migrated valid participants obtained by the second acquisition module 602, so as to migrate the video conference to be taken over to a new signaling server. Optionally, the conference reconstruction module 603 may include a fourth submodule 6031 and a fifth submodule 6032. The fourth submodule 6031 is mainly used to put the video conference to be taken over into a conference loading state when it is determined that there is at least one original participant in the participant list in the conference attribute information obtained by the first acquisition module 601. The fifth submodule 6032 is mainly used to put the video conference to be taken over into a normal conference state when the participant attribute information of the migrated valid participants stored in the third submodule 6023 meets predetermined conditions.

[0117] In one example, the fifth submodule 6032 determines that the third submodule 6023 stores the participant attribute information of all original participants in the participant list, and that the loading timer set for the meeting loading status has not expired. It then sets the video conference to be taken over to a normal meeting state. For instance, the fifth submodule 6032 sends meeting attribute information and the participant attribute information of the currently stored migration participants in the third submodule 6023 to all migrated valid participants in the participant list, and changes the status of the video conference to be taken over from the meeting loading state to the meeting normal state.

[0118] In another example, the fifth submodule 6032, upon determining that the third submodule 6023 stores the participant attribute information of some original participants in the participant list, and that the loading timer set for the meeting loading status has expired, will change the status of the video conference to be taken over to the normal meeting status. For example, if the loading timer set for the meeting loading status has expired, the fifth submodule 6032 can delete the original participants who have not received a reconnection request from the participant list. After deletion, it will send the meeting attribute information and the participant attribute information of the currently stored migration effective participants in the participant list to all migrated participants in the participant list, and change the status of the video conference to be taken over from the meeting loading status to the meeting normal status.

[0119] The specific operations performed by the fourth submodule 6031 and the fifth submodule 6032 can be found above. Figure 2 The relevant descriptions of S203 will not be elaborated here.

[0120] The new participant processing module 604 is mainly used when the second submodule 6022 determines that the conference number carried in the reconnection request received by the first submodule 6021 is the conference number of the video conference to be taken over, and the reception time of the reconnection request does not meet the predetermined time requirement. In this case, the participant who sent the reconnection request that did not meet the predetermined time requirement is treated as an invalid participant. Based on the preset processing method for new participants, the module determines the participant attribute information of the invalid participant. Optionally, the new participant processing module 604 can consider the participant attribute information of the invalid participant to be empty. Optionally, the new participant processing module 604 can also set the participant attribute information as the default participant attribute information. In this application scenario, the new participant processing module 604 can write the default participant attribute information of the invalid participant into the cache of the third submodule 6023. The specific operations performed by the new participant processing module 604 can be found above. Figure 2 The relevant descriptions of S202 will not be explained in detail here.

[0121] Figure 7 This is a schematic diagram of another embodiment of the video conferencing migration device of this disclosure. The device of this embodiment is disposed in the user terminal device 710, and the device of this embodiment can be used to implement the corresponding method embodiments of this disclosure.

[0122] like Figure 7 The device shown includes: a detection module 700, a first sending module 701, a local acquisition module 702, a second sending module 703, and a conference joining module 704. The following describes each module of the device.

[0123] The detection module 700 is mainly used to detect the working status of the signaling server 720. The signaling server 720 is currently providing services for a video conference, and participating users are currently using user terminal devices 710 to participate in the video conference. The specific operations performed by the detection module 700 can be found above. Figure 3 The relevant descriptions of the S300 will not be elaborated here.

[0124] The first sending module 701 is mainly used to send a video conferencing request to the signaling routing server 730 when the detection module 700 detects that the working state is abnormal, requesting that a new signaling server take over the video conference. The specific operations performed by the first sending module 701 can be found above. Figure 3 The relevant descriptions of S301 will not be elaborated here.

[0125] The local acquisition module 702 is mainly used to acquire the participant attribute information of the users participating in the video conference using the user terminal device 710 when the user terminal device 710 receives new signaling server allocation information returned by the signaling routing server 730. The specific operations performed by the local acquisition module 702 can be found above. Figure 3 The relevant descriptions of S302 will not be elaborated here.

[0126] The second sending module 703 is mainly used to send information to the new signaling server (i.e., the server that has taken over the video conference) based on the new signaling server allocation information received by the user terminal device 710. Figure 7The signaling server 740 sends a reconnection request carrying the participant user attribute information obtained by the local acquisition module 702. The participant user attribute information carried in the reconnection request is used to enable the new signaling server to perform a reconstruction operation on the video conference to be taken over, based on the conference attribute information of the video conference to be taken over obtained from the database server and the participant user attribute information of the user terminal devices of the migrated valid participants from the original participants of the video conference to be taken over, so as to migrate the video conference to be taken over to the new signaling server. Figure 3 The relevant descriptions of S303 will not be elaborated here.

[0127] The conference join module 704 is primarily used to participate in video conferences migrated to the new signaling server 740 based on the reconnection response returned by the new signaling server (i.e., signaling server 740). The specific operations performed by the conference join module 704 are described above. Figure 3 The relevant descriptions of S304 will not be elaborated here.

[0128] Exemplary System

[0129] Figure 8 This is a schematic diagram illustrating the structure of an embodiment of the video conferencing migration system disclosed herein. The system of this embodiment includes: a signaling routing server 800, a database server 801, and at least two signaling servers, such as... Figure 8 Signaling server 8021 and signaling server 8022 in the system.

[0130] The signaling routing server 800 is connected to each signaling server 802. The signaling routing server 800 is equipped with an allocation module 8001. The allocation module 8001 is mainly used to allocate a new signaling server (such as signaling server 8022) for the video conference when the signaling routing server 800 receives a message from the user terminal device requesting a new signaling server for the video conference, and to send video conference takeover information to the new signaling server (such as signaling server 8022).

[0131] Database server 801 is used to store the conference attribute information of each video conference.

[0132] Signaling servers 8021 and 8022 are each equipped with a video conferencing migration device, which includes: a takeover information receiving module 600, a first acquisition module 601, a second acquisition module 602, and a conference reconstruction module 603. The operations performed by the takeover information receiving module 600, the first acquisition module 601, the second acquisition module 602, and the conference reconstruction module 603, their respective sub-modules, and the operations performed by each sub-module are as follows: Figure 6 The descriptions in the text will not be elaborated upon here.

[0133] Exemplary electronic devices

[0134] The following is for reference. Figure 9 To describe an electronic device according to embodiments of the present disclosure. Figure 9 A block diagram of an electronic device according to an embodiment of the present disclosure is shown. (As follows) Figure 9 As shown, the electronic device 91 includes one or more processors 911 and memory 912.

[0135] The processor 911 may be a central processing unit (CPU) or other form of processing unit with data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device 91 to perform desired functions.

[0136] The memory 912 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may, for example, include random access memory (RAM) and / or cache memory. The non-volatile memory may, for example, include read-only memory (ROM), hard disk, and flash memory. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 911 may execute the program instructions to implement the video conferencing migration methods of the various embodiments of this disclosure described above and / or other desired functions.

[0137] In one example, the electronic device 91 may further include an input device 913 and an output device 914, etc., these components being interconnected via a bus system and / or other forms of connection mechanisms (not shown). Furthermore, the input device 913 may include, for example, a keyboard, a mouse, etc. The output device 914 can output various information to the outside. The output device 914 may include, for example, a display, a speaker, a printer, and a communication network and its connected remote output devices, etc.

[0138] Of course, for the sake of simplicity, Figure 9Only some of the components of the electronic device 91 relevant to this disclosure are shown, omitting components such as buses, input / output interfaces, etc. In addition, the electronic device 91 may include any other suitable components depending on the specific application.

[0139] Exemplary computer program products and computer-readable storage media

[0140] In addition to the methods and apparatus described above, embodiments of this disclosure may also be computer program products comprising computer program instructions that, when executed by a processor, cause the processor to perform the steps of the video conferencing migration methods according to various embodiments of this disclosure as described in the "Exemplary Methods" section of this specification.

[0141] The computer program product can be written in any combination of one or more programming languages ​​to perform the operations of the embodiments of this disclosure. The programming languages ​​include object-oriented programming languages ​​such as Java and C++, as well as conventional procedural programming languages ​​such as C or similar languages. The program code can be executed entirely on a user's computing device, partially on a user's computing device, as a standalone software package, partially on a user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.

[0142] Furthermore, embodiments of this disclosure may also be computer-readable storage media storing computer program instructions that, when executed by a processor, cause the processor to perform the steps in the video conferencing migration methods according to various embodiments of this disclosure as described in the "Exemplary Methods" section above.

[0143] The computer-readable storage medium may be any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may, for example, include, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatuses, or devices, or any combination thereof. More specific examples of readable storage media (not an exhaustive list) may include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.

[0144] The basic principles of this disclosure have been described above with reference to specific embodiments. However, it should be noted that the advantages, benefits, and effects mentioned in this disclosure are merely examples and not limitations, and should not be considered as essential features of each embodiment of this disclosure. Furthermore, the specific details disclosed above are for illustrative and facilitative purposes only, and are not limitations. These details do not limit the scope of this disclosure to the necessity of employing the aforementioned specific details for implementation.

[0145] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For system embodiments, since they largely correspond to method embodiments, the description is relatively simple; relevant parts can be referred to the descriptions in the method embodiments.

[0146] The block diagrams of devices, apparatuses, devices, and systems disclosed herein are merely illustrative examples and are not intended to require or imply that they must be connected, arranged, or configured in the manner shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, devices, and systems can be connected, arranged, and configured in any manner. Words such as “comprising,” “including,” “having,” etc., are open-ended terms meaning “including but not limited to,” and are used interchangeably with them. The terms “or” and “and” as used herein refer to the terms “and / or,” and are used interchangeably with them unless the context clearly indicates otherwise. The term “such as” as used herein refers to the phrase “such as but not limited to,” and is used interchangeably with it.

[0147] The methods and apparatus of this disclosure may be implemented in many ways. For example, they may be implemented by software, hardware, firmware, or any combination of software, hardware, and firmware. The above-described order of steps for the methods is for illustrative purposes only, and the steps of the methods of this disclosure are not limited to the order specifically described above unless otherwise specifically stated. Furthermore, in some embodiments, this disclosure may also be implemented as a program recorded on a recording medium, the program including machine-readable instructions for implementing the methods according to this disclosure. Thus, this disclosure also covers recording media storing programs for performing the methods according to this disclosure.

[0148] It should also be noted that in the apparatus, devices, and methods of this disclosure, the components or steps can be disassembled and / or recombined. These disassemblies and / or recombinations should be considered as equivalent solutions to this disclosure.

[0149] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use this disclosure. Various modifications to these aspects will be readily apparent to those skilled in the art, and the general principles defined herein can be applied to other aspects without departing from the scope of this disclosure. Therefore, this disclosure is not intended to be limited to the aspects shown herein, but rather to be carried out within the widest scope consistent with the principles and novel features disclosed herein.

[0150] The above description has been given for purposes of illustration and description. Furthermore, this description is not intended to limit the embodiments of this disclosure to the forms disclosed herein. Although numerous exemplary aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.

Claims

1. A video conferencing migration method, the method being executed in a signaling server, and the method comprising: Receive video conference takeover information from the signaling routing server; Based on the video conference takeover information, obtain the conference attribute information of the video conference to be taken over from the database server; Receive a reconnection request from the user terminal device of the participating user in the video conference to be taken over, wherein the reconnection request carries the conference number of the video conference to be taken over, the participant identifier, and the participant attribute information; If the meeting number carried in the reconnection request is the meeting number of the video conference to be taken over, and the receiving time of the reconnection request meets the predetermined time requirement, the participant user attribute information carried in the reconnection request will be stored as the participant user attribute information of the migrated valid participant. Based on the meeting attribute information and the participant attribute information of the migrated valid participants, a reconstruction operation is performed on the video conference to be taken over, so as to migrate the video conference to be taken over to the signaling server. The reconstruction operation of the video conference to be taken over includes: If it is determined that at least one original participant exists in the participant list of the meeting attribute information, the video conference to be taken over will be put into a meeting loading state; and If the obtained participant attribute information of the migrated valid participants meets the predetermined conditions, the video conference to be taken over will be put into normal conference status. The predetermined conditions include any one of the following: The system receives reconnection requests from all original participants in the participant list, and the loading timer set for the meeting loading status has not expired; or The system receives reconnection requests from some of the original participants in the participant list, and the loading timeout set for the meeting loading status expires.

2. The method according to claim 1, wherein, The method further includes: If the meeting number carried in the reconnection request is the meeting number of the video conference to be taken over, and the receiving time of the reconnection request does not meet the predetermined time requirement, the participant who sent the reconnection request that did not meet the predetermined time requirement will be regarded as the invalid participant. The participant attribute information of the invalid participant will be determined according to the preset processing method for new participants.

3. The method according to claim 1, wherein, The method further includes: If the loading timer set for the meeting loading status times out, the original participants who did not receive a reconnection request will be removed from the list of participants.

4. The method according to claim 1 or 3, wherein, The step of putting the video conference to be taken over into normal working order includes: Send meeting attribute information and participant attribute information of the migrated valid participants to all valid participants in the participant list, and change the status of the video conference to be taken over from the meeting loading status to the meeting normal status.

5. The method according to claim 2, wherein, The step of determining the participant attribute information of the invalid participants based on the preset processing method for new participants includes: Set the participant attribute information of the invalid participants to empty; or The participant attribute information of the invalid participants during migration is determined as the default participant attribute information.

6. The method according to claim 1, wherein, The predetermined time requirement is set based on the response time of the user terminal device to the new signaling server allocation information returned by the signaling routing server.

7. The method according to claim 1, wherein, The original participants are those in the list of currently online participants in the video conference that is to be taken over, stored in the database server.

8. A video conferencing migration method, the method being executed in a user terminal device, and the method comprising: Detect the current working status of the signaling server providing services for video conferencing; If the working state is detected to be abnormal, a request for a new signaling server is sent to the signaling routing server to request that a new signaling server take over the video conference, wherein the request for a new signaling server includes the conference number of the video conference; The system receives new signaling server allocation information returned by the signaling routing server and obtains the participant attribute information of the participants using the user terminal device to participate in the video conference from the local machine. The new signaling server allocation information includes the conference number and new signaling server address information. According to the new signaling server allocation information, a reconnection request is sent to the new signaling server taking over the video conference. The reconnection request carries the conference number, participant identifier, and participant attribute information of the video conference. The participant attribute information carried in the reconnection request is used to: enable the new signaling server to perform a reconstruction operation on the video conference to be taken over, based on the conference attribute information of the video conference to be taken over obtained from the database server and the participant attribute information of the user terminal devices of the migrated valid participants from the original participants of the video conference to be taken over, so as to migrate the video conference to be taken over to the new signaling server; and Based on the reconnection response returned by the new signaling server, participate in the video conference that has been migrated to the new signaling server.

9. The method according to claim 8, wherein, The participant user attribute information includes the participant user's private extended attributes and / or the status of the participant user's speaking resources.

10. The method according to claim 8 or 9, wherein, The step of obtaining the participant attribute information of the users participating in the video conference using the user terminal device from the local machine includes: Retrieve the latest settings of the participating users' attributes from local storage.

11. A video conferencing migration device, the device being disposed in a signaling server, the device comprising: The takeover information receiving module is used to receive video conference takeover information from the signaling routing server; The first acquisition module is used to acquire the conference attribute information of the video conference to be taken over from the database server based on the video conference takeover information; The second acquisition module is used to receive reconnection requests from user terminal devices of participants in the video conference to be taken over. The reconnection request carries the conference number of the video conference to be taken over, the participant identifier, and the participant attribute information. If the conference number carried in the reconnection request is the conference number of the video conference to be taken over, and the reception time of the reconnection request meets the predetermined time requirement, the participant attribute information carried in the reconnection request is stored as the participant attribute information of the migrated valid participant. The meeting reconstruction module is used to perform a reconstruction operation on the video conference to be taken over based on the meeting attribute information and the participant attribute information of the migrated valid participants, so as to migrate the video conference to be taken over to the signaling server; Specifically, the meeting reconstruction module is used to: put the video conference to be taken over into a meeting loading state when it is determined that there is at least one original participant in the list of participants in the meeting attribute information; and put the video conference to be taken over into a normal meeting state when the participant attribute information of the migrated valid participants meets the predetermined conditions. The predetermined conditions include any one of the following: receiving reconnection requests from all original participants in the participant list, and the loading timer set for the meeting loading status has not expired; or, receiving reconnection requests from some original participants in the participant list, and the loading timer set for the meeting loading status has expired.

12. The apparatus according to claim 11, wherein, The device further includes: The new participant processing module is used to, in cases where the reconnection request received by the second acquisition module carries the meeting number of the video conference to be taken over, and the receiving time of the reconnection request does not meet the predetermined time requirement, classify the participant who sent the reconnection request that does not meet the predetermined time requirement as the invalid participant. The module then determines the participant attribute information of the invalid participant according to the preset processing method for new participants.

13. The apparatus according to claim 11 or 12, wherein, The meeting reconstruction module is also used for: If the loading timer set for the meeting loading status times out, the original participants who did not receive a reconnection request will be removed from the list of participants.

14. The apparatus according to claim 13, wherein, The meeting reconstruction module is also used for: Send meeting attribute information and participant attribute information of the migrated valid participants to all valid participants in the participant list, and change the status of the video conference to be taken over from the meeting loading status to the meeting normal status.

15. A video conferencing migration device, the device being disposed in a user terminal device, and the device comprising: The detection module is used to detect the current working status of the signaling server that provides services for video conferencing; The first sending module is configured to send a request for a new signaling server to the signaling routing server when the detection module detects that the working state is not normal, so as to request that the new signaling server take over the video conference, wherein the request for a new signaling server includes the conference number of the video conference. The local acquisition module is used to receive new signaling server allocation information returned by the signaling routing server, and to acquire the participant attribute information of the participants using the user terminal device to participate in the video conference from the local machine. The new signaling server allocation information includes the conference number and new signaling server address information. The second sending module is configured to send a reconnection request to the new signaling server taking over the video conference according to the new signaling server allocation information. The reconnection request carries the conference number, participant identifier, and participant attribute information of the video conference. The participant attribute information carried in the reconnection request is used as the participant attribute information of the migrated valid participants among the original participants of the video conference. This enables the new signaling server to perform a video conference reconstruction operation based on the conference attribute information of the video conference obtained from the database server and the participant attribute information of the migrated valid participants, thereby migrating the video conference to the new signaling server. The conference join module is used to participate in the video conference that has been migrated to the new signaling server, based on the reconnection response returned by the new signaling server.

16. The apparatus according to claim 15, wherein, The participant user attribute information includes the participant user's private extended attributes and / or the status of the participant user's speaking resources.

17. A video conferencing migration system, characterized in that, The system includes: a signaling routing server, a database server, at least two signaling servers, and at least one user terminal device; the signaling server is equipped with a video conferencing migration device as described in any one of claims 11 to 14; the user terminal device is equipped with a video conferencing migration device as described in claim 15 or 16. The signaling routing server is connected to each of the signaling servers respectively, and the signaling routing server is connected to the at least one user terminal device; The signaling routing server is equipped with an allocation module, which is used to allocate a new signaling server for the video conference according to the request for a new signaling server when it receives a request for a new signaling server from the user terminal device, send video conference takeover information to the new signaling server, and return new signaling server allocation information to the user terminal device. The database server is used to store the conference attribute information of each video conference.

18. A computer-readable storage medium storing a computer program for performing the method of any one of claims 1-10.

19. An electronic device, the electronic device comprising: processor; Memory used to store the processor's executable instructions; The processor is configured to read the executable instructions from the memory and execute the executable instructions to implement the method of any one of claims 1-10.