Method and device for determining conference number and electronic equipment
By pre-generating the meeting number pool and directly selecting the meeting number from the pool, the problem of slow response under high load in the existing technology is solved, and the response speed and user experience of meeting number determination is improved.
Patent Information
- Application Number
- CN202411980532.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-31
- Publication Date
- 2025-04-15
AI Technical Summary
The prior art responds slowly when determining conference numbers under high load conditions, affecting the user experience.
By pre-generating the meeting number pool, after the client sends a meeting creation request, the conference server directly selects the target meeting number from the number pool, avoiding the process of generating the meeting number.
It improves the response speed of determining conference numbers, reduces the consumption of system resources and database load, and improves the user experience.
Smart Images

Figure CN119835100A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of online conferences, and in particular, to a method, device and electronic device for determining a conference number. Background Art
[0002] With the development of network technology, the usage and activity of online meetings are increasing. When a user needs to initiate an online meeting, he or she first needs to determine a meeting number and share the meeting number with other people who need to attend the meeting. In current technology, the generation and management of meeting numbers are usually performed when creating a meeting. Each time a meeting is created, the system needs to generate a unique meeting number to avoid conflicts with other ongoing meetings.
[0003] Under high load conditions, the existing method of determining the conference number may have a slow response problem, affecting the user experience.
[0004] Therefore, how to provide a method for determining a conference number with a fast response becomes a technical problem that needs to be solved. Summary of the invention
[0005] An embodiment of the present application aims to provide a method, device and electronic device for determining a conference number. The technical solution of the embodiment of the present application can improve the response speed of determining a conference number.
[0006] In the first aspect, an embodiment of the present application provides a method for determining a conference number, which is applied to a conference server, and the method includes: obtaining a conference creation request sent by a client; directly selecting a target conference number from a conference number pool, wherein the number pool includes multiple pre-generated conference numbers, the multiple pre-generated conference numbers are different from each other, and the multiple pre-generated conference numbers are also different from the conference number of the ongoing conference; and sending the target conference number to the client.
[0007] The embodiment of the present application generates a conference number in advance. After obtaining a conference creation request, the conference number can be directly selected from the pre-generated conference numbers without generating a conference number. Compared with the prior art, it can save the time of generating conference numbers and improve the response speed.
[0008] In one embodiment, the method also includes: pre-generating an initial number set; filtering out duplicate numbers in the initial number set to obtain a first number set; comparing the numbers in the first number set with the numbers in the meeting, removing the duplicate numbers with the numbers in the meeting, obtaining a second number set, and using the numbers in the second number set as the numbers in the number pool.
[0009] In one embodiment, the number of numbers in the initial number set is the capacity of the vacant numbers in the number pool; when the number of the second number set is less than the capacity of the vacant numbers in the number pool, the method further includes: continuing to generate a new number set, and deduplicating itself and the numbers in the conference, and using the deduplicated numbers as the numbers in the number pool until the numbers in the number pool reach the preset number pool capacity.
[0010] In one embodiment, the method further includes: when it is determined that the number consumption rate of the number pool meets the expansion condition, expanding the number pool capacity of the number pool.
[0011] In one embodiment, the method further includes: regularly checking the number of numbers in the number pool, and determining whether to generate new numbers for supplementing the number pool according to the vacancy of numbers in the number pool.
[0012] In one implementation, the method further includes: when the number in the number pool is empty, immediately initializing the number pool.
[0013] In the second aspect, an embodiment of the present application provides a method for determining a conference number, which is applied to a client, and the method includes: sending a conference creation request to a conference server; receiving a target conference number sent by the conference server, and the target conference number is directly selected by the conference server from a conference number pool, wherein the number pool includes multiple pre-generated conference numbers, and the multiple pre-generated conference numbers are different from each other, and the multiple pre-generated conference numbers are also different from the conference number of the ongoing meeting.
[0014] In the third aspect, an embodiment of the present application provides a device for determining a conference number, which is applied to a conference server, and the device includes: a receiving unit, used to obtain a conference creation request sent by a client; a determination unit, used to directly select a target conference number from a conference number pool, wherein the number pool includes multiple pre-generated conference numbers, the multiple pre-generated conference numbers are different from each other, and the multiple pre-generated conference numbers are also different from the conference number of the ongoing conference; a sending unit, used to send the target conference number to the client.
[0015] In one embodiment, the determination unit is also used to pre-generate an initial number set; filter out duplicate numbers in the initial number set to obtain a first number set; compare the numbers in the first number set with the numbers in the meeting, remove the duplicate numbers with the numbers in the meeting, obtain a second number set, and use the numbers in the second number set as the numbers in the number pool.
[0016] In one embodiment, the number of numbers in the initial number set is the capacity of the vacant numbers in the number pool; when the number of the second number set is less than the capacity of the vacant numbers in the number pool, the determination unit is also used to continue to generate a new number set, and perform deduplication on itself and with the numbers in the meeting, and use the deduplicated numbers as the numbers in the number pool until the numbers in the number pool reach the preset number pool capacity.
[0017] In one implementation, the determining unit is further configured to expand the number pool capacity of the number pool when it is determined that the number consumption rate of the number pool meets the expansion condition.
[0018] In one implementation, the determining unit is further configured to periodically check the number of numbers in the number pool, and determine whether to generate a new number for supplementing the number pool according to the number vacancies in the number pool.
[0019] In one implementation, the determining unit is further configured to immediately initialize the number pool when the number in the number pool is empty.
[0020] In the fourth aspect, an embodiment of the present application provides a device for determining a conference number, which is applied to a client, and the device includes: a sending unit, used to send a conference creation request to a conference server; a receiving unit, used to receive a target conference number sent by the conference server, and the target conference number is directly selected by the conference server from a conference number pool, wherein the number pool includes multiple pre-generated conference numbers, and the multiple pre-generated conference numbers are different from each other, and the multiple pre-generated conference numbers are also different from the conference number of the ongoing meeting.
[0021] In a fifth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, can implement the method described in the first aspect and any embodiment of the first aspect or the method described in the second aspect, that is, any embodiment of the second aspect.
[0022] In a sixth aspect, an embodiment of the present application provides an electronic device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein when the processor executes the program, it can implement the method described in the first aspect and any embodiment of the first aspect or the method described in the second aspect, i.e. any embodiment of the second aspect.
[0023] In the seventh aspect, an embodiment of the present application provides a computer program product, wherein the computer program product includes a computer program, wherein when the computer program is executed by a processor, it can implement the method described in the first aspect and any embodiment of the first aspect or the method described in the second aspect, that is, any embodiment of the second aspect. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] In order to more clearly illustrate the technical solution of an embodiment of the present application, the drawings required for use in an embodiment of the present application will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.
[0025] Figure 1 A flow chart of a method for determining a conference number in an existing conference system;
[0026] Figure 2 A schematic diagram of a conference system scenario provided for an embodiment of the present application;
[0027] Figure 3 A flow chart of a method for determining a conference number provided for one embodiment of the present application;
[0028] Figure 4 A schematic diagram of a device for determining a conference number provided in one embodiment of the present application;
[0029] Figure 5 A schematic diagram of a device for determining a conference number provided in another embodiment of the present application;
[0030] Figure 6 A schematic diagram of an electronic device is provided for one embodiment of the present application. DETAILED DESCRIPTION
[0031] In order to make the purpose, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0032] like Figure 1As shown, the process of creating a conference number in the existing conference system includes the following contents. First, after the conference server receives the conference number generation request from the client, the interface needs to be locked to avoid concurrency, and then the system generates a conference number, that is, generates a candidate conference number. After that, a database query is performed, and the system needs to access the database to check whether the candidate conference number has been used by other ongoing conferences, that is, to check whether the candidate conference number is repeated. If the candidate number is in use, the system must regenerate a new conference number and execute the query again, repeating the judgment and processing until an unused conference number is found. Finally, the conference number is allocated: once it is verified that the conference number is not in use, the conference number will be allocated, that is, the system will assign the number to the newly created conference.
[0033] The above existing conference number generation methods have the following problems: High performance consumption: Each time a meeting is created, since the generation of the conference number needs to be locked to avoid concurrency, the system throughput will be very low. At the same time, the system needs to perform multiple database queries to ensure the uniqueness of the number, which not only consumes system resources, but may also increase the database load due to multiple queries. Long delay time: Due to the reliance on continuous database queries to confirm the uniqueness of the number, the entire process may cause significant delays, especially when the system load is high or the database response is slow. The problem of poor scalability: As the number of users and the frequency of meetings increase, the efficiency problem of this conference number generation and verification mechanism will become more and more obvious, affecting the scalability and user experience of the entire system.
[0034] In view of the above problems, the present application provides a method for determining a conference number. By pre-generating a conference number, the above problems caused by generating a conference number when a conference needs to be created in the prior art can be solved, thereby improving the user experience.
[0035] In order to facilitate understanding and description, the following describes the execution process and actions of the real-time communication method of the present application in a real-time communication system as an example rather than a limitation.
[0036] The following is combined with Figure 2 The overall structure of a conference system provided by an embodiment of the present application is exemplarily described.
[0037] like Figure 2 As shown, a conference system provided by an embodiment of the present application includes: a client and a conference server.
[0038] The client in the embodiment of the present application may also be referred to as a user end or user equipment or terminal equipment. In the real-time example of the present application, the terminal equipment may be installed with a browser, and real-time communication may be performed through the browser, or an APP or applet may be installed, and real-time communication may be performed through the APP or applet. The terminal equipment in the present application may include a smart phone, a tablet computer, (personal digital assistant, PDA personal digital assistant), a computer, a game console, a wearable device, a tablet computer (portable android device, PAD), etc., and the embodiment of the present application is not limited thereto.
[0039] In the embodiment of the present application, the conference server may also be referred to as a server, a video conference server, a remote server or a cloud server, and the embodiment of the present application is not limited thereto. The conference server may determine the conference number based on the request of the client. The server may also generate the conference number in advance and put the conference number into the conference number pool so that the conference number can be directly selected after the client request is obtained.
[0040] It should be understood that Figure 2 The video conferencing system shown may be a WebRTC-based conferencing system. The corresponding communication architecture may be a mesh architecture, a multipoint conferencing unit (MCU) architecture, or a selective forwarding unit (SFU) architecture, but the embodiments of the present application are not limited thereto.
[0041] The following is combined with Figure 3 The following is an exemplary description of a method for determining a conference number provided by an embodiment of the present application.
[0042] like Figure 3 The method shown is applied to Figure 2 In the conference system shown, Figure 3 The methods shown include:
[0043] 310. The client sends a conference creation request to the conference server.
[0044] Correspondingly, the conference server obtains the conference creation request sent by the client.
[0045] For example, when a user needs to create a meeting, the user sends a meeting creation instruction, such as triggering the instruction through the create meeting function button on the client interface, or through other third-party applications, or through the user's voice command, etc. The client responds to the user's instruction, generates a meeting creation request, and sends it to the conference server.
[0046] It should be understood that there may be other situations in which the client sends a conference creation request. For example, the client automatically triggers the generation and sending of the conference creation request based on the user's reservation or pre-configuration, and the embodiments of the present application are not limited to this.
[0047] 320, the conference server directly selects the target conference number from the conference number pool.
[0048] The number pool includes a plurality of pre-generated conference numbers, the plurality of pre-generated conference numbers are different from each other, and the plurality of pre-generated conference numbers are also different from the conference number of the ongoing conference.
[0049] It should be understood that in the embodiment of the present application, the conference server can randomly select a number from the conference number pool as the target conference number, or select the target conference number one by one in order, or select the target conference number according to preset rules. The embodiment of the present application is not limited to this.
[0050] The embodiment of the present application generates a conference number in advance. When a conference needs to be created, the conference number can be directly selected from the pre-created conference numbers. Since there is no need to temporarily generate a conference number, the existing conference number can be directly used, which can shorten the response time and improve the user experience.
[0051] It should be understood that the target conference number can be any conference number in the number pool. Optionally, the conference server deletes the target conference number from the conference number pool after selecting it. That is, each time the conference server selects a conference number, there is one less number in the conference number pool.
[0052] Optionally, as another embodiment, Figure 3 The method shown may also include the conference server pre-generating a conference number pool. Specifically, the conference server may pre-generate an initial number set; filter out duplicate numbers in the initial number set to obtain a first number set; compare the numbers in the first number set with the numbers in the conference, remove the duplicate numbers with the numbers in the conference, obtain a second number set, and use the numbers in the second number set as the numbers in the number pool.
[0053] It should be understood that the numbers in the initial number set may be randomly generated by the conference server, and the embodiments of the present application are not limited thereto.
[0054] There are many ways to filter out duplicate numbers in the initial numbers, such as matching them in pairs. For example, the characteristics of redis map can be used for filtering. For example, the numbers in the initial number set can be used as keys to perform hash calculations to obtain values. The numbers of the keys corresponding to the duplicate values are filtered, and only one key corresponding to the value is retained. Similarly, the numbers in the first number set can be compared with the numbers in the meeting. The conference number in the meeting can be compared with the numbers in the first number set to remove duplicates. The above-mentioned hash calculation method can also be used to remove duplicates. The embodiments of the present application are not limited to this.
[0055] It should be understood that the number of numbers in the above-mentioned initial number set can be greater than or equal to the capacity of the vacant numbers in the number pool. As an embodiment, the number of numbers in the initial number set is the capacity of the vacant numbers in the number pool; in this case, waste of resources can be avoided, but when there are duplicate numbers, the number in the number pool may not reach the upper limit. As another embodiment, the number of numbers in the initial number set is greater than the capacity of the vacant numbers in the number pool; in this case, there is a certain degree of redundancy, and when there are duplicate numbers, the first number set can be made as large as possible or equal to the capacity of the vacant numbers, and the number of the final second number set cannot be made as large as possible or equal to the capacity of the vacant numbers, thereby enabling the number of valid numbers in the number pool to reach the upper limit.
[0056] It should be noted that, when the number in the above-mentioned second number set is greater than the capacity of the vacant numbers, the conference server can select numbers corresponding to the capacity of the vacant numbers from the second conference number set and put them into the conference number pool. For example, it can be randomly selected, or numbers with the capacity of the vacant numbers can be selected sequentially. The embodiments of the present application are not limited to this.
[0057] Furthermore, as another embodiment, after two deduplications, when the number of the second number set is less than the capacity of the vacant numbers in the number pool, the method may also include: continuing to generate new number sets, and deduplicating themselves and the numbers in the conference, and using the deduplicated numbers as the numbers in the number pool until the numbers in the number pool reach the preset number pool capacity.
[0058] 330. The conference server sends a target conference number to the client.
[0059] Correspondingly, the client receives the target conference number sent by the conference server.
[0060] Optionally, as an embodiment, the method may further include: regularly checking the number of numbers in the number pool, and determining whether to generate new numbers for supplementing the number pool according to the vacancy of numbers in the number pool.
[0061] For example, the conference server can detect the number of numbers in the conference number pool at fixed intervals. When the vacancy situation reaches the generation condition, the conference server automatically generates a conference number and adds the conference number to the pool until the upper limit of the conference number pool is reached. It will no longer be generated. When a vacant number is generated again in the number pool and needs to be generated, the number generation will continue to be triggered. It should be understood that the above-mentioned fixed period can be one minute, ten minutes, thirty minutes, one hour or one day, etc., and the embodiments of the present application are not limited to this. The above-mentioned generation condition can be that the number of vacancies exceeds the preset number, or the vacancy ratio exceeds the vacancy ratio, for example, the vacancies exceed 20%, 30% or 50%, etc., and the embodiments of the present application are not limited to this.
[0062] Optionally, as an embodiment, the method may further include: if it is determined that the number consumption rate of the number pool meets the expansion condition, expanding the number pool capacity of the number pool.
[0063] That is to say, the capacity of the number pool in the embodiment of the present application can be dynamically expanded and shrunk as needed. When the number pool in the embodiment of the present application is initialized, the upper limit of the number pool can be initialized according to the configured maximum capacity, minimum capacity and consumption rate. For example, the default initialization selects the minimum capacity. Once the number pool consumption speed reaches the threshold of the consumption rate, the capacity of the number pool is expanded to the maximum capacity. It should be understood that the threshold of the consumption rate can be flexibly adjusted according to the actual situation, such as digesting 500 in one minute, or digesting 1000 in one day. The above-mentioned maximum capacity can be twice the minimum capacity, for example, the minimum capacity is 1000, the maximum capacity is 2000, and the number of initialized number pools is 1000. Once the consumption is too fast, it exceeds the threshold of the fire rate. For example, the consumption speed reaches 500 in one minute, and the capacity of the number pool is expanded to the maximum capacity, i.e., 2000.
[0064] The embodiment of the present application sets the number pool to the minimum capacity by default to avoid waste of resources. When the fire rate is fast, the capacity can be expanded to increase redundancy and ensure that there are sufficient numbers in the number pool to reduce the number response time and improve the user experience.
[0065] Optionally, as an embodiment, the method may further include: when the number in the number pool is empty, immediately initializing the number pool.
[0066] It should be understood that the numbers in the number pool here are empty, which can be understood as all consumed, or can be understood as basically consumed, with only a small part left, for example, only 30%, 20%, etc.
[0067] Specifically, in actual applications, there may be a situation where the numbers in the number pool are emptied in a short time. For example, the number pool capacity is 1000, and 700 numbers are extinguished within one minute. In this case, the embodiment of the present application can generate numbers in an emergency. Once the number pool is empty, the emergency generation of numbers can be triggered to ensure normal number consumption. For example, it can be initialized immediately, that is, the number of numbers with a surplus is generated at one time. For example, if the capacity is 1000 and there are 300 numbers in it, 700 numbers are generated at one time to ensure normal number extinguishing.
[0068] Please refer to Figure 4 , Figure 4 A block diagram showing a composition of an apparatus for determining a conference number provided by an embodiment of the present application. Figure 4 The device 400 shown can be a conference server or a module in a conference server. It should be understood that the device 400 corresponds to the conference server in the above method embodiment and can execute each step performed by the conference server involved in the above method embodiment. The specific functions of the device 400 can be found in the description above. To avoid repetition, the detailed description is appropriately omitted here.
[0069] Figure 4 The device 400 shown includes at least one software function module that can be stored in a memory or fixed in the device in the form of software or firmware. Figure 4 The device 400 shown includes: a receiving unit 410, used to obtain a conference creation request sent by a client; a determining unit 420, used to directly select a target conference number from a conference number pool, wherein the number pool includes multiple pre-generated conference numbers, the multiple pre-generated conference numbers are different from each other, and the multiple pre-generated conference numbers are also different from the conference number of the ongoing conference; a sending unit 430, used to send the target conference number to the client.
[0070] In one embodiment, the determination unit is also used to pre-generate an initial number set; filter out duplicate numbers in the initial number set to obtain a first number set; compare the numbers in the first number set with the numbers in the meeting, remove the duplicate numbers with the numbers in the meeting, obtain a second number set, and use the numbers in the second number set as the numbers in the number pool.
[0071] In one embodiment, the number of numbers in the initial number set is the capacity of the vacant numbers in the number pool; when the number of the second number set is less than the capacity of the vacant numbers in the number pool, the determination unit is also used to continue to generate a new number set, and perform deduplication on itself and with the numbers in the meeting, and use the deduplicated numbers as the numbers in the number pool until the numbers in the number pool reach the preset number pool capacity.
[0072] In one implementation, the determining unit is further configured to expand the number pool capacity of the number pool when it is determined that the number consumption rate of the number pool meets the expansion condition.
[0073] In one implementation, the determining unit is further configured to periodically check the number of numbers in the number pool, and determine whether to generate a new number for supplementing the number pool according to the number vacancies in the number pool.
[0074] In one implementation, the determining unit is further configured to immediately initialize the number pool when the number in the number pool is empty.
[0075] Please refer to Figure 5 , Figure 5 A block diagram showing the composition of a real-time communication device provided by an embodiment of the present application is shown. Figure 5 The device 500 shown can be a client or a module in the client. It should be understood that the device 500 corresponds to the client in the above method embodiment and can execute each step performed by the client involved in the above method embodiment. The specific functions of the device 500 can be found in the description above. To avoid repetition, the detailed description is appropriately omitted here.
[0076] Figure 5 The device 500 shown includes at least one software function module that can be stored in a memory or fixed in the device in the form of software or firmware. Figure 5 The device 500 shown includes: a sending unit 510, used to send a conference creation request to a conference server; a receiving unit 520, used to receive a target conference number sent by the conference server, wherein the target conference number is directly selected by the conference server from a conference number pool, wherein the number pool includes multiple pre-generated conference numbers, the multiple pre-generated conference numbers are different from each other, and the multiple pre-generated conference numbers are also different from the conference number of the ongoing conference.
[0077] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of the device described above can refer to the corresponding process in the aforementioned method, and will not be described in detail here.
[0078] like Figure 6 As shown, an embodiment of the present application provides an electronic device 600, which includes: a memory 610, a processor 620, and a computer program stored in the memory 610 and executable on the processor 620, wherein the processor 620 reads the program from the memory 610 through a bus 630 and executes the program to implement the method executed by the conference server or the method executed by the client in any of the above embodiments. Optionally, Figure 6 The device shown may also include a transceiver, which may be used to send and / or receive data streams. Figure 6 The device shown may also include a collector, which may be used to collect audio / video data. The optional electronic device 600 may also include other input devices or other hardware devices, etc., but the embodiments of the present application are not limited thereto.
[0079] Processor 620 can process digital signals and can include various computing structures, such as complex instruction set computer structure, reduced instruction set computer structure, or a structure that implements a combination of multiple instruction sets. In some examples, processor 620 can be a microprocessor.
[0080] The memory 610 may be used to store instructions executed by the processor 620 or data related to the execution of instructions. These instructions and / or data may include codes for implementing some or all functions of one or more modules described in the embodiments of the present application. The processor 620 of the disclosed embodiment may be used to execute instructions in the memory 610 to implement the method performed by the conference server or client shown above. The memory 610 includes a dynamic random access memory, a static random access memory, a flash memory, an optical memory, or other memory known to those skilled in the art.
[0081] An embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon. When the program is executed by a processor, the method performed by a conference server or a client in any of the above methods provided in the above embodiments can be implemented.
[0082] An embodiment of the present application further provides a computer program product, which includes a computer program, wherein when the computer program is executed by a processor, it can implement the method performed by a conference server or a client in any of the above methods provided in the above embodiments.
[0083] It should be noted that the processor in the embodiment of the present invention (eg, Figure 6The processor in the embodiment of the present invention may be an integrated circuit chip with signal processing capability. In the implementation process, each step of the above method embodiment may be completed by an integrated logic circuit of hardware in the processor or an instruction in software form. The above processor may be a general processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, a discrete gate or transistor logic device, or a discrete hardware component. The methods, steps and logic block diagrams disclosed in the embodiments of the present invention may be implemented or executed. The general processor may be a microprocessor or the processor may be any conventional processor, etc. The software module may be located in a mature storage medium in the art such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
[0084] It can be understood that the memory in the embodiment of the present invention (for example, Figure 6The memory in the memory may be a volatile memory or a nonvolatile memory, or may include both volatile and nonvolatile memories. Among them, the nonvolatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchlink DRAM (SLDRAM), and direct rambus RAM (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0085] It should be understood that the transceiver unit or transceiver in the embodiment of the present invention may also be referred to as a communication unit.
[0086] In the above embodiments, it can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer instruction is loaded and executed on a computer, the process or function according to the embodiment of the present invention is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instruction can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instruction can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (digital subscriber line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium may be a magnetic medium (eg, a floppy disk, a hard disk, a magnetic tape), an optical medium (eg, a high-density digital video disc (DVD)), or a semiconductor medium (eg, a solid state disk (SSD)).
[0087] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described in terms of function in the above description. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.
[0088] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0089] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, or can be electrical, mechanical or other forms of connection.
[0090] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the embodiments of the present invention.
[0091] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0092] In short, the above is only a preferred embodiment of the technical solution of the present invention, and is not intended to limit the protection scope of the present invention. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims
1. A method for determining a conference number, characterized in that: Applied to a conference server, the method comprises: Get the conference creation request sent by the client; Directly selecting a target conference number from a conference number pool, wherein the number pool includes a plurality of pre-generated conference numbers, the plurality of pre-generated conference numbers are different from each other, and the plurality of pre-generated conference numbers are also different from the conference number of the ongoing conference; The target conference number is sent to the client.
2. The method according to claim 1, characterized in that: The method further comprises: Pre-generating an initial number set; Filter out duplicate numbers in the initial number set to obtain a first number set; The numbers in the first number set are compared with the numbers in the conference, and the numbers that are repeated with the numbers in the conference are removed to obtain a second number set, and the numbers in the second number set are used as the numbers in the number pool.
3. The method according to claim 2, characterized in that In the case that the number of the second number set is less than the capacity of the vacant numbers in the number pool, the method further includes: Continue to generate new number sets, and perform self-deduplication and deduplication with numbers in the conference, and use the deduplicated numbers as numbers in the number pool until the numbers in the number pool reach the preset number pool capacity.
4. The method according to any one of claims 1 to 3, characterized in that The method further comprises: When it is determined that the number consumption rate of the number pool meets the expansion condition, the number pool capacity of the number pool is expanded.
5. The method according to any one of claims 1 to 3, characterized in that The method further includes: regularly checking the number of numbers in the number pool, and determining whether to generate new numbers for supplementing the number pool according to the vacancy of numbers in the number pool.
6. The method according to any one of claims 1 to 3, characterized in that The method further comprises: When the number in the number pool is empty, the number pool is initialized immediately.
7. A method for determining a conference number, characterized in that: Applied to a client, the method comprises: Sending a conference creation request to the conference server; Receive a target conference number sent by the conference server, where the target conference number is directly selected by the conference server from a conference number pool, wherein the number pool includes multiple pre-generated conference numbers, each of which is different from the other, and each of which is also different from the conference number of the ongoing conference.
8. A device for determining a conference number, characterized in that: Applied to a conference server, the device comprises: A receiving unit, used to obtain a conference creation request sent by a client; A determination unit, configured to directly select a target conference number from a conference number pool, wherein the number pool includes a plurality of pre-generated conference numbers, the plurality of pre-generated conference numbers are different from each other, and the plurality of pre-generated conference numbers are also different from the conference number of the ongoing conference; A sending unit is used to send the target conference number to the client.
9. A device for determining a conference number, characterized in that: Applied to a client, the device comprises: A sending unit, used for sending a conference creation request to a conference server; A receiving unit is used to receive a target conference number sent by the conference server, wherein the target conference number is directly selected by the conference server from a conference number pool, wherein the number pool includes multiple pre-generated conference numbers, each of which is different from the other, and each of which is also different from the conference number of the ongoing conference.
10. An electronic device, characterized in that: The method comprises a memory, a processor, and a computer program stored in the memory and running on the processor, wherein the computer program executes the method according to any one of claims 1 to 7 when being run by the processor.