Conference information generation method and apparatus, electronic device, storage medium, and program product
Patent Information
- Application Number
- CN202610686223.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-05-18
- Publication Date
- 2026-08-18
AI Technical Summary
[0003]在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:在实际会议调度场景中,受会议号动态生成、有效期限制等因素的影响,会议号数量巨大,难以维护及管理
[0010] According to the technical solution disclosed herein, selecting a chosen meeting number from existing meeting numbers effectively alleviates the problem of excessive meeting numbers. This reduces the need to create new meeting numbers for each appointment, rescheduling, or instant meeting, saving on database storage costs and reducing the complexity of querying and writing. It also lowers technical maintenance difficulty and indirectly reduces labor costs. By combining multiple selected meeting numbers into a single meeting schedule and using a combination of the most-approved and least-approved approval strategies, the problem of meeting overlap and contention when meeting numbers are associated with multiple meeting schedules can be effectively mitigated. This improves the flexibility and efficiency of meeting scheduling, and ultimately enhances user satisfaction.
Smart Images

Figure CN122601403A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of computer technology, particularly to the field of computer vision, and more specifically, to a method, apparatus, electronic device, storage medium, and program product for generating conference information. Background Technology
[0002] With the increasing popularity of remote work and online collaboration, video conferencing has become an important means of daily communication across regions and scenarios. Meeting IDs, as unique identifiers for meeting access, are widely used for meeting initiation, access verification, and permission control, and are a key element in ensuring the orderly conduct of meetings. Given the demand for high-frequency, multi-session meetings, the generation, allocation, and management of meeting IDs directly impact overall collaboration efficiency and system stability.
[0003] In the process of realizing the present invention, the inventors discovered that the related technology has at least the following problems: In actual meeting scheduling scenarios, due to factors such as dynamic generation of meeting numbers and validity period restrictions, the number of meeting numbers is huge and difficult to maintain and manage. Summary of the Invention
[0004] In view of this, the present disclosure provides a method, apparatus, electronic device, storage medium, and program product for generating conference information.
[0005] One aspect of this disclosure provides a method for generating meeting information, comprising: responding to receiving a user's submission instruction for multiple selected meeting numbers in a meeting schedule, reading the authorization mode selected for the multiple selected meeting numbers, wherein the multiple selected meeting numbers are all from pre-generated existing meeting numbers, the multiple selected meeting numbers are configured with different available meeting time periods, the multiple different available meeting time periods together constitute a complete meeting time period of the meeting schedule, and the selected meeting numbers are configured with at least one administrator information; grouping the multiple selected meeting numbers according to the administrator information to obtain multiple administrator groups with the administrator information as the key and the selected meeting numbers managed by the administrator as the value; if the authorization mode is determined to be the least-person approval mode, calling a first recursive function to perform a depth-first traversal of the multiple administrator groups according to the first current traversal position to obtain the least-person approval strategy; if the authorization mode is determined to be the most-person approval mode, calling a second recursive function to perform a depth-first traversal of the multiple administrator groups according to the second current traversal position to obtain the most-person approval strategy; determining the administrator information of the target administrator for approving the multiple selected meeting numbers according to the least-person approval strategy or the most-person approval strategy, and sending the approval card of the selected meeting number to the administrator terminal of the target administrator.
[0006] Another aspect of this disclosure provides a meeting information generation apparatus, comprising: an authorization mode reading module, configured to, in response to receiving a user's submission instruction for multiple selected meeting numbers in a meeting schedule, read the authorization modes selected for the multiple selected meeting numbers, wherein the multiple selected meeting numbers are all from pre-generated existing meeting numbers, the multiple selected meeting numbers are each configured with different available meeting time slots, the multiple different available meeting time slots together constitute a complete meeting time slot of the meeting schedule, and the selected meeting numbers are configured with at least one administrator information; and a grouping module, configured to group the multiple selected meeting numbers according to the administrator information, obtaining multiple [groups / groups] with the administrator information as the key and the selected meeting numbers managed by the administrator as the value. The system comprises several modules: an administrator group and an approval card sending module. The first recursive module, when the authorization mode is determined to be the least-person approval mode, calls the first recursive function to perform a depth-first traversal of multiple administrator groups based on the current traversal position, thus obtaining the least-person approval strategy. The second recursive module, when the authorization mode is determined to be the most-person approval mode, calls the second recursive function to perform a depth-first traversal of multiple administrator groups based on the current traversal position, thus obtaining the most-person approval strategy. The approval card sending module, based on either the least-person or most-person approval strategy, determines the administrator information for approving multiple selected meeting numbers and sends the approval cards for the selected meeting numbers to the administrator terminals of the target administrators.
[0007] Another aspect of this disclosure provides an electronic device comprising: one or more processors; and a memory for storing one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors cause the one or more processors to implement the conference information generation method of this disclosure.
[0008] Another aspect of this disclosure provides a computer-readable storage medium storing computer-executable instructions that, when executed, implement the meeting information generation method of this disclosure.
[0009] Another aspect of this disclosure provides a computer program product including computer-executable instructions that, when executed, implement the meeting information generation method of this disclosure.
[0010] According to the technical solution disclosed herein, selecting a chosen meeting number from existing meeting numbers effectively alleviates the problem of excessive meeting numbers. This reduces the need to create new meeting numbers for each appointment, rescheduling, or instant meeting, saving on database storage costs and reducing the complexity of querying and writing. It also lowers technical maintenance difficulty and indirectly reduces labor costs. By combining multiple selected meeting numbers into a single meeting schedule and using a combination of the most-approved and least-approved approval strategies, the problem of meeting overlap and contention when meeting numbers are associated with multiple meeting schedules can be effectively mitigated. This improves the flexibility and efficiency of meeting scheduling, and ultimately enhances user satisfaction. Attached Figure Description
[0011] The above and other objects, features and advantages of this disclosure will become clearer from the following description of embodiments with reference to the accompanying drawings, in which:
[0012] Figure 1 An exemplary system architecture for applying the meeting information generation method according to embodiments of this disclosure is illustrated schematically;
[0013] Figure 2 A flowchart illustrating a meeting information generation method according to an embodiment of the present disclosure is shown schematically.
[0014] Figure 3 This schematic diagram illustrates the overall design of the core design of the meeting information generation method according to an embodiment of the present disclosure;
[0015] Figure 4 This illustration schematically shows a use case structure for associating with an existing video conferencing session according to an embodiment of this disclosure;
[0016] Figure 5 This schematically illustrates an overall flowchart of a meeting information generation method according to a disclosed embodiment;
[0017] Figure 6 A flowchart illustrating a minimum-person approval algorithm according to an embodiment of the present disclosure is shown schematically.
[0018] Figure 7 A flowchart illustrating the most-person approval algorithm according to an embodiment of the present disclosure is shown schematically;
[0019] Figure 8 A block diagram of a meeting information generation apparatus according to an embodiment of the present disclosure is shown schematically;
[0020] Figure 9 A block diagram of an electronic device suitable for implementing a conference information generation method according to an embodiment of the present disclosure is shown schematically. Detailed Implementation
[0021] The embodiments of the present disclosure will now be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the disclosure. In the following detailed description, numerous specific details are set forth to provide a thorough understanding of the embodiments of the present disclosure for ease of explanation. However, it will be apparent that one or more embodiments may be practiced without these specific details. Furthermore, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concepts of the present disclosure.
[0022] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to limit this disclosure. The terms “comprising,” “including,” etc., as used herein indicate the presence of the stated features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.
[0023] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art, unless otherwise defined. It should be noted that the terms used herein are to be interpreted in a manner consistent with the context of this specification, and not in an idealized or overly rigid way.
[0024] When using expressions such as "at least one of A, B and C", they should generally be interpreted in accordance with the meaning that is commonly understood by those skilled in the art (e.g., "a system having at least one of A, B and C" should include, but is not limited to, a system having A alone, a system having B alone, a system having C alone, a system having A and B, a system having A and C, a system having B and C, and / or a system having A, B and C, etc.).
[0025] In the embodiments disclosed herein, the collection, updating, analysis, processing, use, transmission, provision, disclosure, and storage of data (e.g., including but not limited to user personal information) comply with relevant laws and regulations, are used for legitimate purposes, and do not violate public order and good morals. In particular, necessary measures have been taken to prevent unauthorized access to user personal information data and maintain information security.
[0026] In the embodiments disclosed herein, user authorization or consent is obtained before acquiring or collecting user personal information.
[0027] In real-world conferencing scenarios, the following situations are common: Situation 1: Video conference IDs have expiration dates; a single ID cannot be used indefinitely, and a new one is generated for each group meeting. Situation 2: Only video conference IDs with administrator privileges can be associated, and only one ID can be associated at a time. Situation 3: A video conference ID and password are sufficient for association, but only one ID can be associated at a time.
[0028] In response to the above situation, the inventors discovered the following technical problems in the process of realizing the present invention.
[0029] Video conference IDs expire; each time a video conference is scheduled or rescheduled, a new ID is generated, resulting in a massive number of video conference IDs, reaching hundreds of millions. This places high demands on storage media, leading to greater difficulty in data maintenance and higher hardware investment costs. The performance of write and query operations also presents challenges, further contributing to high technical costs and maintenance difficulties.
[0030] Fixed video conferencing IDs never expire and are generally for personal use only. This results in a large number of fixed conferencing IDs that cannot be reused, leading to low availability and high maintenance costs.
[0031] When fixed video conference IDs are linked to passwords, there is no oversight. It's impossible to check if the current time slot is already occupied, leading to instances of conferences being switched. For example, if user A schedules a meeting for 10-11 AM and user B also schedules a meeting for 10-11 AM, both users will end up in the same meeting when they try to join at 10-11 AM. Alternatively, a regular meeting might use an ID reserved for an upcoming important meeting.
[0032] When associating fixed video conferencing numbers, manual input is required; selective association is not possible, resulting in low efficiency. Furthermore, only one number can be associated at a time, and it's not possible to combine multiple numbers for available time slots.
[0033] Embodiments of this disclosure provide a method, apparatus, electronic device, storage medium, and program product for generating conference information. The method includes: in response to receiving a user's submission instruction for multiple selected meeting numbers in a meeting schedule, reading the authorization mode selected for the multiple selected meeting numbers, wherein the multiple selected meeting numbers are all from pre-generated existing meeting numbers, the multiple selected meeting numbers are configured with different available meeting time slots, the multiple different available meeting time slots together constitute a complete meeting time slot of the meeting schedule, and the selected meeting numbers are configured with at least one administrator information; grouping the multiple selected meeting numbers according to the administrator information to obtain multiple administrator groups with the administrator information as the key and the selected meeting numbers managed by the administrator as the value; if the authorization mode is determined to be the least-person approval mode, calling a first recursive function to perform a depth-first traversal of the multiple administrator groups according to the first current traversal position to obtain the least-person approval strategy; if the authorization mode is determined to be the most-person approval mode, calling a second recursive function to perform a depth-first traversal of the multiple administrator groups according to the second current traversal position to obtain the most-person approval strategy; determining the administrator information of the target administrator used to approve the multiple selected meeting numbers according to the least-person approval strategy or the most-person approval strategy, and sending the approval card of the selected meeting number to the administrator terminal of the target administrator.
[0034] Figure 1 An exemplary system architecture for applying the meeting information generation method according to embodiments of this disclosure is illustrated schematically. It should be noted that... Figure 1 The examples shown are merely examples of system architectures that can be applied to the embodiments of this disclosure, in order to help those skilled in the art understand the technical content of this disclosure, but do not mean that the embodiments of this disclosure cannot be used in other devices, systems, environments or scenarios.
[0035] like Figure 1 As shown, the system architecture 100 according to this embodiment may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a network 104, and a server 105. The network 104 serves as a medium for providing communication links between the first terminal device 101, the second terminal device 102, the third terminal device 103, and the server 105. The network 104 may include various connection types, such as wired and / or wireless communication links, etc.
[0036] Users can use the first terminal device 101, the second terminal device 102, and the third terminal device 103 to interact with the server 105 via the network 104 to receive or send messages, etc. Various communication client applications can be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, and / or social media platform software, etc. (for example only).
[0037] The first terminal device 101, the second terminal device 102, and the third terminal device 103 can be various electronic devices with displays and support web browsing, including but not limited to smartphones, tablets, laptops, and desktop computers.
[0038] Server 105 can be a server that provides various services, such as a backend management server that supports websites browsed by users using the first terminal device 101, the second terminal device 102, and the third terminal device 103 (this is just an example). The backend management server can analyze and process data such as received user requests, and feed back the processing results (such as web pages, information, or data obtained or generated according to user requests) to the terminal devices.
[0039] It should be noted that the meeting information generation method provided in this embodiment can generally be executed by server 105. Correspondingly, the meeting information generation device provided in this embodiment can generally be located in server 105. The meeting information generation method provided in this embodiment can also be executed by a server or server cluster that is different from server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103, and / or server 105. Correspondingly, the meeting information generation device provided in this embodiment can also be located in a server or server cluster that is different from server 105 and capable of communicating with the first terminal device 101, the second terminal device 102, the third terminal device 103, and / or server 105. Alternatively, the meeting information generation method provided in this embodiment can also be executed by the first terminal device 101, the second terminal device 102, or the third terminal device 103, or by other terminal devices different from the first terminal device 101, the second terminal device 102, or the third terminal device 103. Accordingly, the meeting information generation device provided in this embodiment may also be disposed in the first terminal device 101, the second terminal device 102 or the third terminal device 103, or disposed in other terminal devices different from the first terminal device 101, the second terminal device 102 or the third terminal device 103.
[0040] For example, the selected meeting number, its authorization mode, available meeting time slots, administrator information, etc., can be originally stored in any one of the first terminal device 101, the second terminal device 102, or the third terminal device 103 (e.g., the first terminal device 101, but not limited thereto), or stored on an external storage device and can be imported into the first terminal device 101. Then, the first terminal device 101 can execute the meeting information generation method provided in the embodiments of this disclosure locally, or send the selected meeting number, its authorization mode, available meeting time slots, administrator information, etc., to other terminal devices, servers, or server clusters, and the other terminal devices, servers, or server clusters that receive the selected meeting number, its authorization mode, available meeting time slots, administrator information, etc., can execute the meeting information generation method provided in the embodiments of this disclosure.
[0041] It should be understood that Figure 1 The number of terminal devices, networks, and servers shown is merely illustrative. Depending on implementation needs, any number of terminal devices, networks, and servers can be included.
[0042] Figure 2 A flowchart illustrating a meeting information generation method according to an embodiment of the present disclosure is shown schematically.
[0043] like Figure 2 As shown, the method includes operations S201 to S205.
[0044] In operation S201, in response to receiving a user's submission instruction for multiple selected meeting numbers in the meeting schedule, the authorization mode selected for the multiple selected meeting numbers is read. The multiple selected meeting numbers are all from pre-generated existing meeting numbers. The multiple selected meeting numbers are each configured with different available meeting time periods. The multiple different available meeting time periods together constitute the complete meeting time period of the meeting schedule. The selected meeting numbers are configured with at least one administrator information.
[0045] According to embodiments of this disclosure, existing meeting numbers are similar to fixed meeting numbers, with no expiration date, maintaining a long-term valid state, maintained by one or more administrators, and available for users to call upon whenever needed. For a meeting schedule to be created or already existing, meeting numbers used to determine available meeting times can be selected or modified to achieve the reservation or modification of the entire meeting schedule. A selected meeting number indicates an existing meeting number in the meeting schedule that has been determined to be selected. Authorization modes can include a maximum number of approvals mode and a minimum number of approvals mode.
[0046] It should be noted that a meeting schedule can be configured with only one selected meeting ID. In this case, regardless of the authorization mode selected, the administrator information of the target administrator used to approve the selected meeting ID can be directly determined. This disclosure focuses more on scenarios where multiple selected meeting IDs are configured for a single meeting schedule. In this case, users can choose the desired authorization mode, determine the target administrator, and enable approval for multiple selected meeting IDs.
[0047] In operation S202, based on the administrator information, multiple selected meeting numbers are grouped to obtain multiple administrator groups with the administrator information as the key and the selected meeting number under the administrator's responsibility as the value.
[0048] For example, if the selected meeting numbers are meeting number 1, meeting number 2, and meeting number 3, and the administrators corresponding to meeting number 1 are A and C, the administrators corresponding to meeting number 2 are A, B, and C, and the administrators corresponding to meeting number 3 are B and C, then the resulting multiple administrator groups are A:[1,2], B:[2,3], and C:[1,2,3].
[0049] In operation S203, if the authorization mode is determined to be the least-person approval mode, the first recursive function is called. Based on the first current traversal position, multiple administrator groups are traversed to obtain the least-person approval strategy.
[0050] According to embodiments of this disclosure, the minimum number of administrators required to approve a group of selected meeting numbers is the fewest possible administrators. This is suitable for scenarios where a user wants to have the minimum number of administrators to approve all multiple selected meeting numbers. The minimum number of administrators required to approve all selected meeting numbers in the current meeting schedule includes administrator information.
[0051] In operation S204, if the authorization mode is determined to be the maximum number of people approval mode, the second recursive function is called. Based on the current traversal position, the multiple administrator groups are traversed to obtain the maximum number of people approval strategy.
[0052] According to embodiments of this disclosure, the "maximum approval mode" refers to a group of selected meeting numbers, maximizing the number of administrators responsible for approval for each selected meeting number. This is suitable for scenarios where users want the maximum number of administrators to approve all selected meeting numbers. For example, if an administrator fails to approve a meeting number in a timely manner, the corresponding selected meeting number may become unusable. To minimize this situation, the "maximum approval mode" can be selected. The "maximum approval mode" includes administrator information for the maximum number of administrators capable of approving all selected meeting numbers in the current meeting schedule.
[0053] In operation S205, based on the least-person approval strategy or the most-person approval strategy, the administrator information for the target administrators to approve multiple selected meeting numbers is determined, and the approval cards for the selected meeting numbers are sent to the administrator terminals of the target administrators.
[0054] According to embodiments of this disclosure, target administrators can approve selected meeting numbers that require approval on their respective administrator terminals.
[0055] It should be noted that if a selected meeting number is delayed in being approved, participants can attend the meeting only based on the approved selected meeting numbers and their corresponding available time slots. For example, there are meeting numbers 1 (9:00-10:00), 2 (10:00-11:00), and 3 (11:00-12:00). Meeting numbers 1 and 3 have been approved, while meeting number 2 has not. After the meeting schedule begins, participants can start the meeting based on meeting number 1, interrupt the meeting at 10:00, and resume the meeting at 11:00 based on meeting number 3.
[0056] Through the above embodiments of this disclosure, by selecting selected meeting numbers from existing meeting numbers, the problem of too many meeting numbers can be effectively alleviated. This reduces the need to create new meeting numbers for each appointment, rescheduling, or instant meeting, saving on database storage media costs and the complexity of querying and writing, reducing technical maintenance difficulty, and indirectly reducing labor costs. By combining multiple selected meeting numbers into a single meeting schedule and determining the approval strategy using the most-approved and least-approved modes, the problems of meeting overlap and contention when meeting numbers are associated with multiple meeting schedules can be effectively alleviated, improving the flexibility and management efficiency of meeting arrangements and enhancing user satisfaction.
[0057] According to an embodiment of this disclosure, before performing the above operation S201, the meeting information generation method may further include: corresponding to the meeting schedule, in response to receiving a selection operation for multiple candidate meeting numbers, calling the busy / idle list interface of the meeting service to obtain the busy / idle time slot corresponding to the candidate meeting number on the current day of the meeting schedule, wherein the candidate meeting number is configured with a required meeting time slot; in response to determining that the required meeting time slot of the candidate meeting number has been occupied based on the busy / idle time slot, generating a prompt message indicating that there is a time conflict for the candidate meeting number, and canceling the selection operation for the candidate meeting number.
[0058] According to embodiments of this disclosure, the meeting number to be selected represents an existing meeting number in the meeting schedule that is to be selected but has not yet been finalized. The busy / slack time slots can be calculated by counting all occupied and unoccupied time slots for the meeting to be selected on the current day of the schedule. A meeting number to be selected will only be determined as a selected meeting number if it is determined that the time slot configured by the user for the meeting to be selected is not occupied.
[0059] By introducing a busy / idle list interface for meeting services through the above embodiments of this disclosure, the problem of not being able to view busy / idle availability when associating meeting numbers can be effectively alleviated. When a user selects an associated meeting number, all meeting time slots for the current day can be queried by the selected meeting number and displayed on the client, improving the usability of number selection. Furthermore, by combining the available time slots of the selected meeting numbers into a meeting schedule, the problem of a meeting schedule being associated with only one meeting number can also be effectively alleviated, improving the reusability of meeting number resources.
[0060] According to embodiments of this disclosure, corresponding to the above-described operation S205, the approval card may include: a meeting schedule identifier for the meeting schedule, a selected meeting number, the available meeting time slot and approval status of the selected meeting number, and administrator information of the target administrator responsible for approving the selected meeting number. After performing the above-described operation S205, the meeting information generation method may further include: in response to receiving an approval instruction from the target administrator for the selected meeting number, updating the approval status of the selected meeting number to "approved" or "disapproved"; sending the approval or disapproval information to the administrator terminal, updating the approval button on the administrator terminal to "approved"; and sending the approval card containing the latest approval status to the user terminals of the participants involved in the meeting schedule.
[0061] According to embodiments of this disclosure, there may be one or more approval cards.
[0062] For example, all selected meeting numbers, their available meeting times, approval status, target administrators, and other information can be recorded on an approval card. This approval card can then be sent to each target administrator to complete the approval process.
[0063] For example, each selected meeting number, its available meeting time slot, approval status, target administrator, and other information can be recorded on an approval card, thus generating multiple approval cards. Each approval card can also be sent to the corresponding target administrator to complete the approval process.
[0064] Corresponding to the above implementation scheme, Figure 3 The illustration shows an overall schematic diagram of the core design of the meeting information generation method according to an embodiment of the present disclosure.
[0065] like Figure 3 As shown, for a meeting schedule, a user can schedule or reschedule a meeting based on client 310 by associating it with video conferencing 320. Associating with video conferencing 320 can include: selecting a meeting ID, viewing a busy list, and selecting an authorization mode. In the meeting ID selection stage, an existing list of meeting IDs can be displayed by user identifier or by department, allowing selection from the displayed list to obtain the meeting ID to be selected. Afterwards, the busy / idle list can be viewed. At this stage, the busy / idle list of the meeting IDs to be selected can be calculated for further confirmation to determine the meeting ID to be selected. Afterwards, an authorization mode can be selected, including two options: minimum number of approvers and maximum number of approvers. The specific meanings of these options have been described previously and will not be repeated here.
[0066] After a user submits a date or meeting change request via client 310, the date / meeting change interface 330 can be called. For scenarios involving associated video conferences, the authorization mode is read, and the least-person approval algorithm or the most-person approval algorithm is used to obtain the target administrator for approving all selected meeting numbers in the current meeting schedule. This yields the approval relationship mapping table A between the target administrator and the selected meeting numbers. Then, a meeting assistant approval card is sent to the corresponding target administrator for approval. Simultaneously, the relationship between the meeting schedule identifier (ID) and the selected meeting numbers is recorded in the meeting schedule and selected meeting number relationship table, with the status set to "Approval in Progress." The process of assembling the approval card involves traversing the approval relationship mapping table A, assembling the IM (Instant Messaging) approval card, and requesting approval. The target administrator approves or disapprove through the administrator terminal, calls the approval interface, and updates the approval status to "Approved" or "Disapproved" to update the meeting schedule and selected meeting number relationship table.
[0067] Corresponding to the core design mentioned above, in order to further describe the overall process of the meeting information generation method in conjunction with the core design, firstly based on... Figure 4 The illustration schematically depicts a use case structure for associating an existing video conferencing session according to an embodiment of this disclosure.
[0068] like Figure 4 As shown, the use case structure associated with the existing video conference 400 describes the application scenario 410, number selector 420, authorization mode 430, meeting assistant 440, and the relationship table between the meeting schedule and the selected meeting number 450 corresponding to the above-mentioned meeting information generation method. Application scenario 410 includes appointment 411 and meeting rescheduling 412. Number selector 420 includes by user 421, by department 422, and manual entry 423. Authorization mode 430 includes minimum number of approvers 431 and maximum number of approvers 432. Meeting assistant 440 includes approval card 441. The relationship table between the meeting schedule and the selected meeting number 450 includes meeting schedule ID 451, existing meeting ID 452, meeting start time 453, meeting end time 454, approval status 455, creation / modification user ID 456, and creation / modification time 457.
[0069] Based on the above use case structure Figure 5 An overall flowchart of a meeting information generation method according to a disclosed embodiment is illustrated.
[0070] like Figure 5 As shown, the method includes operations S501 to S530.
[0071] When operating the S501, users can schedule or reschedule meetings through the meeting client.
[0072] When operating S502, open the meeting number selector and search for the corresponding existing meeting number by user or department.
[0073] When operating S503, query the existing meeting numbers and corresponding administrator lists by user or department.
[0074] Operation S504 returns the query list.
[0075] The S505 process returns a list of transformed video conferencing ID objects to the client. The core fields of each video conferencing ID object are: existing meeting IDs and a list of administrators corresponding to those existing meeting IDs.
[0076] When operating S506, select one or more existing meeting numbers on the meeting client and set the corresponding meeting time slots to obtain a list of meeting numbers to be selected, including the meeting time slots corresponding to the meeting numbers to be selected.
[0077] When operating S507, the busy / idle list interface of the meeting service is called with the list of meeting numbers to be selected and the current day of the meeting schedule as input parameters.
[0078] When operating S508, after receiving a call request, the meeting service queries the database for the relationship table between the meeting schedule and the meeting numbers to be selected, based on the list of meeting numbers to be selected and the current day of the schedule.
[0079] In operation S509, a query list of meeting number busy / idle time slots is returned. The core fields of the meeting number busy / idle time slot object are: the meeting number to be selected and the corresponding busy / idle time slot list.
[0080] When operating the S510, return the list of busy and idle time periods to the meeting client.
[0081] When operating S511, the busy / idle time slot list of the selected meeting number is compared with the required meeting time slot based on the meeting service.
[0082] When operating S512, if a conflict is indicated, uncheck the corresponding candidate meeting number in the meeting client; if no conflict is indicated, no further action is required from the meeting client.
[0083] When operating S513, the user selects a group of pre-selected meeting numbers based on the meeting client and chooses the authorization mode. The authorization modes include: minimum number of approvers and maximum number of approvers.
[0084] In operation S514, submit an appointment or change the appointment.
[0085] When operating S515, after receiving a call request, the conference service first reads the authorization mode for scenarios with associated video conferences.
[0086] When operating S516, if the minimum number of people required for approval is used, the minimum number of people approval algorithm is called, and the selected meeting number and the corresponding list of administrators are passed in.
[0087] When operating S517, after receiving a request, the number borrowing service calls the least-person approval algorithm to process it.
[0088] In operation S518, the first final result representing the least-person approval strategy is returned.
[0089] When operating S519, if it is the most people to approve, call the most people approval algorithm and pass in the selected meeting number and the corresponding list of administrators.
[0090] When operating S520, after receiving a request, the number borrowing service calls the most-approved algorithm to process it.
[0091] In operation S521, the second final result representing the approval strategy with the most people is returned.
[0092] According to embodiments of this disclosure, the first final result obtained based on operation S518 and the second final result obtained based on operation S521 can be stored as a Map. <String, Set <string>The format is >. A Map represents a key-value data storage structure. The key is a String and its value is the target administrator; the value is a Set. <string>The type is a list of selected meeting numbers that the target administrator is responsible for approving.
[0093] In operation S522, the correspondence between the meeting schedule and the selected meeting number is recorded and saved to the table of meeting schedule and selected meeting number relationship, with the status being "Approval in progress".
[0094] Operation S523 returns the execution result.
[0095] In operation S524, iterate through the first or second final result, assemble the approval card, the recipient is the target administrator, and the approval parameters include the meeting schedule ID, the list of selected meeting numbers, and the required meeting time period.
[0096] When operating S525, send a meeting assistant approval card to the target administrator of the selected meeting number.
[0097] Operation S526 returns the execution result.
[0098] When operating S527, the target administrator clicks "approved" or "disapproved" to call the approval interface.
[0099] When operating S528, update the approval status to "Approved" or "Not Approved" by meeting schedule ID, list of selected meeting numbers, and required meeting time period.
[0100] Operation S529 returns the execution result.
[0101] When operating the S530, the approval button on the approval card in the meeting assistant of the meeting client becomes an uneditable text indicating whether to approve or disapprove.
[0102] The embodiments described above significantly reduce the number of video conferencing numbers, thereby saving storage costs and reducing the complexity of querying and writing. The substantial reduction in data volume improves query performance and maintainability. Furthermore, the ability to compare and select borrowed numbers and the introduction of an approval mechanism enhances the usability and reusability of video conferencing numbers, thus improving user satisfaction.
[0103] The following detailed descriptions, in conjunction with specific embodiments, illustrate the minimum-person approval algorithm for implementing the minimum-person approval mode and the maximum-person approval algorithm for implementing the maximum-person approval mode.
[0104] According to an embodiment of this disclosure, corresponding to the least-person approval mode, the above operation S203 includes: in response to determining that the first selected meeting number in the first temporary result does not completely cover multiple selected meeting numbers, traversing multiple administrator groups according to the first current traversal position, updating the first temporary result, and executing the next level call of the first recursive function according to the new first current traversal position after incrementing the value of the first current traversal position by 1, so as to perform a deep traversal of multiple administrator groups, wherein the first temporary result is at least one key-value pair with the administrator information to be verified as the key and the first selected meeting number managed by the administrator to be verified as the value; in response to determining that the first selected meeting number in the first temporary result has completely covered multiple selected meeting numbers: if it is determined that the number of administrator information to be verified in the first temporary result is less than or equal to the number of administrator information already existing in the first final result, updating the first final result using the first temporary result, and backtracking to the previous level call of the first recursive function. The first recursive function removes the last key-value pair from the first temporary result and continues to execute the next level call of the first recursive function based on the new first current traversal position after incrementing the value of the first current traversal position used in the previous level call, to perform a deep traversal of multiple administrator groups. The initial value of the first final result is the administrator information for all administrators responsible for multiple selected meeting numbers. If it is determined that the number of administrator information to be verified in the first temporary result is greater than the number of administrator information already existing in the first final result, the function backtracks to the previous level call of the first recursive function, removes the last key-value pair from the first temporary result, and continues to execute the next level call of the first recursive function based on the new first current traversal position after incrementing the value of the first current traversal position used in the previous level call, to perform a deep traversal of multiple administrator groups. In response to the completion of the deep traversal of multiple administrator groups, the minimum number of people approval strategy is determined based on the first final result.
[0105] For example, let Map<key,List> The `peopleGroup` class stores multiple administrator groups, where the key is the administrator's information and the `List` represents the selected meeting numbers that each administrator is responsible for. Let the `List`... <string>`allcode` stores all selected meeting numbers. Let `int start1` record the first current traversal position. Let `Map`... <String, Set <string>`temp1` stores the first temporary result. Let `Map`... <String, Set <string>`result1` stores the first final result. `start1` is initialized to 0, `temp1` is initialized to empty, and `result1`'s initial value includes all administrator information. When iterating through multiple administrator groups and updating the first temporary result, a depth-first traversal of `peopleGroup` can be performed based on `start1`, updating `temp1` according to the information from each traversal.
[0106] According to embodiments of this disclosure, the above-mentioned traversal of multiple administrator groups and updating the first temporary result may include: subtracting the first selected meeting number in the first temporary result from the set of multiple selected meeting numbers to obtain the first unassigned meeting number; taking the intersection of the first unassigned meeting number and the selected meeting number of the current administrator group corresponding to the first current traversal position to obtain the first current unassigned meeting number; in response to determining that the first current unassigned meeting number is empty, continuing to perform depth traversal on the multiple administrator groups according to the first current traversal position after incrementing the value of the first current traversal position by 1; in response to determining that the first current unassigned meeting number is not empty, adding the administrator information of the current administrator group and the first current unassigned meeting number to the first temporary result.
[0107] Figure 6 A flowchart illustrating a minimum-person approval algorithm according to an embodiment of the present disclosure is shown schematically.
[0108] like Figure 6 As shown, the method includes operations S601 to S616.
[0109] When operating S601, grouping by administrators, multiple administrator groups (peopleGroup) are obtained.
[0110] In operation S602, extract all selected meeting numbers (allcode).
[0111] In operation S603, declare the following variables: first current traversal position start1, first temporary result temp1, and first final result result1.
[0112] In operation S604, enter the first recursive function that calculates the minimum number of administrators covering all selected meeting numbers.
[0113] The first recursive function depends on the following input parameters: peopleGroup, allcode, start1, temp1, and result1.
[0114] In operation S605, determine whether allcode is already present in all values of temp1. If yes, proceed to operation S612; otherwise, proceed to operations S606 through S611.
[0115] In operation S606, the peopleGroup is traversed based on start1.
[0116] In operation S607, the list X1 of the first unassigned meeting numbers is calculated by subtracting all values from temp1 from the allcode set.
[0117] In operation S608, calculate the intersection Y1 of X1 and the value of the currently traversed administrator group.
[0118] In operation S609, determine if Y1 is empty. If yes, pass the parameter start1+1 to continue operation S606; otherwise, execute operation S610.
[0119] In operation S610, execute temp1.add(current element.key,Y1) to add the administrator currently being traversed to temp1.
[0120] In operation S611, the next level call of the first recursive function is executed. During this process, the following parameters are passed: peopleGroup, allcode, start1+1, temp1, and result1.
[0121] In operation S612, determine whether the number of keys in temp1 is less than or equal to the number of keys in result1. If yes, then execute operations S613 to S614; otherwise, execute operation S614.
[0122] In operation S613, result1 = temp1.
[0123] When operating S614, the current call is skipped, and the call back to the previous call of the first recursive function is traced back.
[0124] It should be noted that after each execution of operation S614, operation S615 is executed based on the previous call of the second recursive function that has been backtracked.
[0125] In operation S615, temp1 removes the last key-value pair and continues to perform a depth-first traversal of the peopleGroup until the traversal is complete.
[0126] It should be noted that when continuing to perform a depth-first traversal of the peopleGroup, start1 needs to be incremented by 1 to locate the next element to be traversed. When the value of start1 equals the number of administrator groups within the peopleGroup, it can be determined that the depth-first traversal of the peopleGroup has ended.
[0127] Operation S616 returns result1.
[0128] Through the above embodiments of this disclosure, a minimum-person approval algorithm is implemented, which features high computational efficiency and low resource consumption. It can quickly locate the target administrator with the fewest approvals during the traversal of multiple administrator groups. Through precise numerical comparison and result update logic, it reduces unnecessary calculation steps, thereby lowering the time and space complexity of the algorithm. Furthermore, the algorithm has simple logic, strong robustness, adaptability to the computational needs of "minimum number selection" in various scenarios, and is easy to integrate and extend.
[0129] According to an embodiment of this disclosure, corresponding to the maximum number of people approving, the above operation S204 includes: in response to determining that the second selected meeting number in the second temporary result does not completely cover multiple selected meeting numbers, traversing multiple administrator groups according to the second current traversal position, updating the second temporary result, and executing the next level call of the second recursive function according to the new second current traversal position after incrementing the value of the second current traversal position by 1, so as to perform a deep traversal of multiple administrator groups, wherein the second temporary result is at least one key-value pair with the administrator information to be verified as the key and the second selected meeting number managed by the administrator to be verified as the value; in response to determining that the second selected meeting number in the second temporary result has completely covered multiple selected meeting numbers: if it is determined that the number of administrator information to be verified in the second temporary result is greater than or equal to the number of administrator information already existing in the second final result, updating the second final result using the second temporary result, and backtracking to The call to the previous level of the second recursive function removes the last key-value pair of the second temporary result and continues to execute the next level of the second recursive function based on the new second current traversal position after incrementing the value of the second current traversal position used in the previous level call, to perform a depth traversal of multiple administrator groups. The initial value of the second final result is empty. If it is determined that the number of administrator information to be verified in the second temporary result is less than the number of administrator information already existing in the second final result, the call to the previous level of the second recursive function is backtracked, the last key-value pair of the second temporary result is removed, and the next level of the second recursive function continues to execute based on the new second current traversal position after incrementing the value of the second current traversal position used in the previous level call, to perform a depth traversal of multiple administrator groups. In response to the completion of the depth traversal for multiple administrator groups, the most-approved strategy is determined based on the second final result.
[0130] For example, let `int start2` record the second current traversal position. Let `Map`... <String, Set <string>`temp2` stores the second temporary result. Let `Map`... <String, Set <string>`result2` stores the second final result. The initial values of `start2` and `temp2` are both empty. When iterating through multiple administrator groups and updating the second temporary result, a depth-first traversal of `peopleGroup` can be performed based on `start2`, updating `temp2` according to the information from each traversal.
[0131] According to embodiments of this disclosure, the above-mentioned traversal of multiple administrator groups and updating the second temporary result may include: subtracting the second selected meeting number from the second temporary result using the set of multiple selected meeting numbers to obtain the second unassigned meeting number; taking the intersection of the second unassigned meeting number and the selected meeting number of the current administrator group corresponding to the second current traversal position to obtain the second current administrator unassigned meeting number; in response to determining that the second current administrator unassigned meeting number is empty, continuing to perform a depth traversal of the multiple administrator groups based on the second current traversal position after incrementing the value of the second current traversal position by 1; in response to determining that the second current administrator unassigned meeting number is not empty, adding the administrator information of the current administrator group and the second current administrator unassigned meeting number to the second temporary result.
[0132] Figure 7 A flowchart illustrating the most-person approval algorithm according to an embodiment of the present disclosure is shown schematically.
[0133] like Figure 7 As shown, the method includes operations S701 to S716.
[0134] When operating S701, grouping by administrators, multiple administrator groups (peopleGroup) are obtained.
[0135] When operating S702, extract all selected meeting numbers (allcode).
[0136] In operation S703, declare the following variables: second current traversal position start2, second temporary result temp2, and second final result result2.
[0137] In operation S704, enter the second recursive function that calculates the number of administrators with the most members, covering all selected meeting numbers.
[0138] The input parameters that the second recursive function depends on include peopleGroup, allcode, start2, temp2, and result2.
[0139] In operation S705, determine whether all values in temp2 contain allcode. If yes, execute operation S712; otherwise, execute operations S706 through S711.
[0140] In operation S706, the peopleGroup is traversed based on start2.
[0141] In operation S707, the list X2 of the second unassigned meeting numbers is calculated by subtracting all values from temp2 from the allcode set.
[0142] In operation S708, calculate the intersection Y2 of X2 and the value of the currently traversed administrator group.
[0143] In operation S709, check if Y2 is empty. If it is, pass the parameter start2+1 to continue operation S706; otherwise, execute operation S710.
[0144] In operation S710, execute temp2.add(current element.key, Y2) to add the administrator currently being traversed to temp2.
[0145] In operation S711, the next level call of the second recursive function is executed. During this process, the following parameters are passed: peopleGroup, allcode, start2+1, temp2, and result2.
[0146] In operation S712, determine if the number of keys in temp2 is greater than or equal to the number of keys in result2. If yes, execute operations S713 to S714; otherwise, execute operation S714.
[0147] In operation S713, result2 = temp2.
[0148] When operating S714, exit the current call and backtrack to the previous call of the second recursive function.
[0149] It should be noted that after each execution of operation S714, operation S715 is executed based on the previous call of the second recursive function that has been backtracked.
[0150] In operation S715, temp2 removes the last key-value pair and continues to perform a depth-first traversal of the peopleGroup until the traversal is complete.
[0151] It should be noted that when continuing to perform a depth-first traversal of the peopleGroup, start2 needs to be incremented by 1 to locate the next element to be traversed. When the value of start2 equals the number of administrator groups within the peopleGroup, it can be determined that the depth-first traversal of the peopleGroup has ended.
[0152] The operation on S716 returns result2.
[0153] Through the above embodiments of this disclosure, a maximum approval algorithm is implemented, which features high computational efficiency and low resource consumption. It can quickly locate the target administrator with the most approval requests while traversing multiple administrator groups. Through precise numerical comparison and result update logic, it reduces unnecessary calculation steps and lowers the time and space complexity of the algorithm. Furthermore, the algorithm has simple logic, strong robustness, adaptability to the computational needs of "maximum quantity filtering" in various scenarios, and is easy to integrate and extend.
[0154] Figure 8 A block diagram of a meeting information generation apparatus according to an embodiment of the present disclosure is shown schematically.
[0155] like Figure 8 As shown, the meeting information generation device 800 includes an authorization mode reading module 810, a grouping module 820, a first recursive module 830, a second recursive module 840, and an approval card sending module 850.
[0156] The authorization mode reading module 810 is used to respond to the user's submission instruction for multiple selected meeting numbers in the meeting schedule, and read the authorization mode selected for the multiple selected meeting numbers. The multiple selected meeting numbers are all from pre-generated existing meeting numbers, and each of the multiple selected meeting numbers is configured with a different available meeting time period. The multiple different available meeting time periods together constitute the complete meeting time period of the meeting schedule. Each selected meeting number is configured with at least one administrator information.
[0157] The grouping module 820 is used to group multiple selected meeting numbers according to administrator information, resulting in multiple administrator groups with administrator information as the key and the selected meeting numbers under the administrator's responsibility as the value.
[0158] The first recursive module 830 is used to call the first recursive function when the authorization mode is determined to be the least-person approval mode. Based on the first current traversal position, it performs a depth traversal on multiple administrator groups to obtain the least-person approval strategy.
[0159] The second recursive module 840 is used to call the second recursive function when the authorization mode is determined to be the most-person approval mode. Based on the current traversal position, the function performs a depth traversal on multiple administrator groups to obtain the most-person approval strategy.
[0160] The approval card sending module 850 is used to determine the administrator information of the target administrators for approving multiple selected meeting numbers based on the least number approval strategy or the most number approval strategy, and send the approval cards of the selected meeting numbers to the administrator terminal of the target administrators.
[0161] According to embodiments of this disclosure, the first recursive module includes: a first traversal and update unit, a first depth traversal unit, and a minimum number of people approval strategy determination unit.
[0162] The first traversal and update unit is used to respond to the determination that the first selected meeting number in the first temporary result does not completely cover multiple selected meeting numbers, traversing multiple administrator groups according to the first current traversal position, updating the first temporary result, and executing the next level call of the first recursive function according to the new first current traversal position after incrementing the value of the first current traversal position by 1, so as to perform a deep traversal of multiple administrator groups. The first temporary result is at least one key-value pair with the administrator information to be verified as the key and the first selected meeting number under the responsibility of the administrator to be verified as the value.
[0163] The first depth-first traversal unit is configured to respond to the following in response to determining that the first selected meeting number in the first temporary result has completely covered multiple selected meeting numbers: If the number of administrators to be verified in the first temporary result is less than or equal to the number of administrators already existing in the first final result, the first final result is updated using the first temporary result, and the process backtracks to the previous call of the first recursive function, removes the last key-value pair of the first temporary result, and continues to execute the next call of the first recursive function based on the new first current traversal position incremented by 1 after the value of the first current traversal position used in the previous call, to perform a depth-first traversal of multiple administrator groups. The initial value of the first final result is the administrator information for all administrators responsible for multiple selected meeting numbers. If the number of administrators to be verified in the first temporary result is greater than the number of administrators already existing in the first final result, the process backtracks to the previous call of the first recursive function, removes the last key-value pair of the first temporary result, and continues to execute the next call of the first recursive function based on the new first current traversal position incremented by 1 after the value of the first current traversal position used in the previous call, to perform a depth-first traversal of multiple administrator groups.
[0164] The least-person approval strategy determination unit is used to determine the least-person approval strategy based on the first final result when the depth-first traversal of multiple administrator groups has ended.
[0165] According to embodiments of this disclosure, the first traversal and update unit includes: a first unassigned meeting number acquisition subunit, a first current administrator unassigned meeting number acquisition subunit, a first depth traversal subunit, and a first update subunit.
[0166] The first unassigned meeting number acquisition sub-unit is used to obtain the first unassigned meeting number by subtracting the first selected meeting number from the first temporary result of multiple selected meeting number sets.
[0167] The first unassigned meeting number of the current administrator is obtained by taking the intersection of the first unassigned meeting number and the selected meeting number of the current administrator group corresponding to the first current traversal position.
[0168] The first depth traversal subunit is used to respond to determining that the first current administrator has no assigned meeting number, and to continue depth traversal of multiple administrator groups based on the first current traversal position after incrementing the value of the first current traversal position by 1.
[0169] The first update subunit is used to add the administrator information of the current administrator group and the first unassigned meeting number of the current administrator to the first temporary result in response to determining that the first unassigned meeting number of the current administrator is not empty.
[0170] According to embodiments of this disclosure, the second recursive module includes: a second traversal and update unit, a second depth traversal unit, and a maximum approval strategy determination unit.
[0171] The second traversal and update unit is used to respond to the determination that the second selected meeting number in the second temporary result does not completely cover multiple selected meeting numbers, traversing multiple administrator groups according to the second current traversal position, updating the second temporary result, and executing the next level call of the second recursive function according to the new second current traversal position after incrementing the value of the second current traversal position by 1, so as to perform a depth traversal of multiple administrator groups. The second temporary result is at least one key-value pair with the administrator information to be verified as the key and the second selected meeting number under the responsibility of the administrator to be verified as the value.
[0172] The second depth-first traversal unit is used in response to determining that the second selected meeting number in the second temporary result has completely covered multiple selected meeting numbers: if the number of administrator information to be verified in the second temporary result is greater than or equal to the number of administrator information already existing in the second final result, the second final result is updated using the second temporary result, and the process backtracks to the previous call of the second recursive function, removes the last key-value pair of the second temporary result, and continues to execute the next call of the second recursive function based on the new second current traversal position after incrementing the value of the second current traversal position used in the previous call, to perform a depth-first traversal of multiple administrator groups, wherein the initial value of the second final result is empty; if the number of administrator information to be verified in the second temporary result is less than the number of administrator information already existing in the second final result, the process backtracks to the previous call of the second recursive function, removes the last key-value pair of the second temporary result, and continues to execute the next call of the second recursive function based on the new second current traversal position after incrementing the value of the second current traversal position used in the previous call, to perform a depth-first traversal of multiple administrator groups.
[0173] The unit for determining the most-approved strategy is used to determine the most-approved strategy based on the second final result after the depth-first traversal of multiple administrator groups has ended.
[0174] According to embodiments of this disclosure, the second traversal and update unit includes: a second unassigned meeting number acquisition subunit, a second current administrator unassigned meeting number acquisition subunit, a second depth traversal subunit, and a second update subunit.
[0175] The second unassigned meeting number acquisition sub-unit is used to obtain the second unassigned meeting number by subtracting the second selected meeting number from the second temporary result of multiple selected meeting number sets.
[0176] The second unassigned meeting number of the current administrator is obtained by taking the intersection of the second unassigned meeting number and the selected meeting number of the current administrator group corresponding to the second current traversal position.
[0177] The second depth traversal subunit is used to respond to the determination that the second current administrator has no assigned meeting number, and to continue depth traversal of multiple administrator groups based on the second current traversal position after incrementing the value of the second current traversal position by 1.
[0178] The second update subunit is used to add the administrator information of the current administrator group and the second unassigned meeting number of the current administrator to the second temporary result in response to determining that the second current administrator's unassigned meeting number is not empty.
[0179] According to embodiments of this disclosure, the meeting information generation device further includes: a busy / idle time period acquisition module and a prompting and cancellation module.
[0180] The busy / idle time period acquisition module is used to correspond to the meeting schedule. In response to receiving a selection operation for multiple candidate meeting numbers, it calls the busy / idle list interface of the meeting service to obtain the busy / idle time period corresponding to the candidate meeting number on the current day of the meeting schedule. The candidate meeting number is configured with a required meeting time period.
[0181] The prompt and cancellation module is used to respond to situations where the required meeting time slot for the candidate meeting number is already occupied, based on the busy / idle time period. It generates a prompt message indicating a time conflict with the candidate meeting number and cancels the selection operation for the candidate meeting number.
[0182] According to embodiments of this disclosure, the approval card includes: a meeting schedule identifier for the meeting schedule, a selected meeting number, the available meeting time slots and approval status for the selected meeting number, and administrator information for the target administrator responsible for approving the selected meeting number. The meeting information generation device further includes an approval status update module, an administrator-side update module, and a user terminal sending module.
[0183] The approval status update module is used to respond to the approval instruction received from the target administrator for the selected meeting number and update the approval status of the selected meeting number to either approval passed or approval failed.
[0184] The administrator-side update module is used to send approval or disapproval information to the administrator terminal and update the approval button on the administrator terminal to "approved".
[0185] The user terminal sending module is used to send approval cards containing the latest approval status to the user terminals of the participants involved in the meeting schedule.
[0186] Any one or more of the modules, units, and subunits according to the embodiments of this disclosure, or at least part of the functions of any one or more of them, can be implemented in one module. Any one or more of the modules, units, and subunits according to the embodiments of this disclosure can be implemented by dividing them into multiple modules. Any one or more of the modules, units, and subunits according to the embodiments of this disclosure can be at least partially implemented as hardware circuitry, such as a Field-Programmable Gate Array (FPGA), a Programmable Logic Array (PLA), a System-on-Chip, a System-on-a-Substrate, a System-on-Package, an Application-Specific Integrated Circuit (ASIC), or implemented in hardware or firmware by any other reasonable means of integrating or packaging the circuitry, or implemented in software, hardware, or firmware, or in any suitable combination of any of these three implementation methods. Alternatively, one or more of the modules, units, and subunits according to the embodiments of this disclosure can be at least partially implemented as a computer program module, which, when run, can perform corresponding functions.
[0187] For example, any and multiple modules among the authorization mode reading module 810, grouping module 820, first recursive module 830, second recursive module 840, and approval card sending module 850 can be combined into one module / unit / subunit, or any one of these modules / units / subunits can be split into multiple modules / units / subunits. Alternatively, at least some of the functions of one or more of these modules / units / subunits can be combined with at least some of the functions of other modules / units / subunits and implemented in one module / unit / subunit. According to embodiments of this disclosure, at least one of the authorization mode reading module 810, grouping module 820, first recursive module 830, second recursive module 840, and approval card sending module 850 can be at least partially implemented as hardware circuitry, such as a field-programmable gate array (FPGA), programmable logic array (PLA), system-on-a-chip, system-on-a-substrate, system-on-package, application-specific integrated circuit (ASIC), or any other reasonable method of integrating or packaging the circuitry, or implemented in software, hardware, or firmware, or in any suitable combination of any of these three methods. Alternatively, at least one of the authorization mode reading module 810, grouping module 820, first recursive module 830, second recursive module 840, and approval card sending module 850 can be at least partially implemented as a computer program module, which, when run, can perform corresponding functions.
[0188] It should be noted that the meeting information generation device part in the embodiments of this disclosure corresponds to the meeting information generation method part in the embodiments of this disclosure. For a detailed description of the meeting information generation device part, please refer to the meeting information generation method part, which will not be repeated here.
[0189] Figure 9 A block diagram of an electronic device suitable for implementing a conference information generation method according to an embodiment of the present disclosure is shown schematically. Figure 9 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0190] like Figure 9 As shown, an electronic device 900 according to an embodiment of the present disclosure includes a processor 901, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 902 or a program loaded from a storage portion 908 into a random access memory (RAM) 903. The processor 901 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or an associated chipset and / or a special-purpose microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 901 may also include onboard memory for caching purposes. The processor 901 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present disclosure.
[0191] RAM 903 stores various programs and data required for the operation of electronic device 900. Processor 901, ROM 902, and RAM 903 are interconnected via bus 904. Processor 901 performs various operations of the method flow according to embodiments of the present disclosure by executing programs in ROM 902 and / or RAM 903. It should be noted that the programs may also be stored in one or more memories other than ROM 902 and RAM 903. Processor 901 may also perform various operations of the method flow according to embodiments of the present disclosure by executing programs stored in said one or more memories.
[0192] According to embodiments of this disclosure, the electronic device 900 may further include an input / output (I / O) interface 905, which is also connected to a bus 904. The electronic device 900 may also include one or more of the following components connected to the input / output (I / O) interface 905: an input section 906 including a keyboard, mouse, etc.; an output section 907 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 908 including a hard disk, etc.; and a communication section 909 including a network interface card such as a LAN card, modem, etc. The communication section 909 performs communication processing via a network such as the Internet. A drive 910 is also connected to the input / output (I / O) interface 905 as needed. A removable medium 911, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed on the drive 910 as needed so that computer programs read from it can be installed into the storage section 908 as needed.
[0193] According to embodiments of this disclosure, the method flow according to embodiments of this disclosure can be implemented as a computer software program. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a computer-readable storage medium, the computer program containing program code for performing the methods shown in the flowchart. In such embodiments, the computer program can be downloaded and installed from a network via communication section 909, and / or installed from removable medium 911. When the computer program is executed by processor 901, it performs the functions defined in the system of embodiments of this disclosure. According to embodiments of this disclosure, the systems, devices, apparatuses, modules, units, etc., described above can be implemented by computer program modules.
[0194] This disclosure also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments; or it may exist independently and not assembled into the device / apparatus / system. The computer-readable storage medium carries one or more programs that, when executed, implement the method according to the embodiments of this disclosure.
[0195] According to embodiments of this disclosure, the computer-readable storage medium can be a non-volatile computer-readable storage medium. Examples include, but are not limited to: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this disclosure, the computer-readable storage medium can be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0196] For example, according to embodiments of this disclosure, a computer-readable storage medium may include the ROM 902 and / or RAM 903 described above and / or one or more memories other than ROM 902 and RAM 903.
[0197] Embodiments of this disclosure also include a computer program product comprising a computer program containing program code for performing the methods provided in the embodiments of this disclosure. When the computer program product is run on an electronic device, the program code is used to enable the electronic device to implement the meeting information generation method provided in the embodiments of this disclosure.
[0198] When the computer program is executed by the processor 901, it performs the functions defined in the system / apparatus of this disclosure embodiments. According to embodiments of this disclosure, the systems, apparatuses, modules, units, etc., described above can be implemented by computer program modules.
[0199] In one embodiment, the computer program may rely on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may also be transmitted and distributed in the form of signals over a network medium, and downloaded and installed via the communication section 909, and / or installed from a removable medium 911. The program code contained in the computer program can be transmitted using any suitable network medium, including but not limited to: wireless, wired, etc., or any suitable combination thereof.
[0200] According to embodiments of this disclosure, program code for executing the computer programs provided in embodiments of this disclosure can be written in any combination of one or more programming languages. Specifically, these computational programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages include, but are not limited to, languages such as Java, C++, Python, "C", or similar programming languages. The program code can execute entirely on a user's computing device, partially on a user's device, partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the user's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0201] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in a block diagram or flowchart, and combinations of blocks in a block diagram or flowchart, may be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions. Those skilled in the art will understand that the features described in the various embodiments of the present disclosure can be combined and / or combined in various ways, even if such combinations are not explicitly described in the present disclosure. In particular, the features described in the various embodiments of this disclosure may be combined and / or combined in various ways without departing from the spirit and teachings of this disclosure. All such combinations and / or combinations fall within the scope of this disclosure.
[0202] The embodiments of this disclosure have been described above. However, these embodiments are for illustrative purposes only and are not intended to limit the scope of this disclosure. Although various embodiments have been described above, this does not mean that the measures in the various embodiments cannot be used advantageously in combination. Various substitutions and modifications can be made by those skilled in the art without departing from the scope of this disclosure, and all such substitutions and modifications should fall within the scope of this disclosure.< / string> < / string> < / string> < / string> < / string> < / string> < / string>
Claims
1. A method for generating meeting information, comprising: In response to receiving a user's submission instruction for multiple selected meeting numbers in the meeting schedule, the system reads the authorization mode selected for the multiple selected meeting numbers. The multiple selected meeting numbers are all pre-generated existing meeting numbers, and each of the multiple selected meeting numbers is configured with different available meeting time periods. The multiple different available meeting time periods together constitute the complete meeting time period of the meeting schedule. Each selected meeting number is configured with at least one administrator information. Based on the administrator information, the multiple selected meeting numbers are grouped to obtain multiple administrator groups with the administrator information as the key and the selected meeting number under the administrator's responsibility as the value; If the authorization mode is determined to be the least-person approval mode, the first recursive function is called to perform a depth traversal of the multiple administrator groups according to the first current traversal position to obtain the least-person approval strategy. If the authorization mode is determined to be the maximum number of people approval mode, the second recursive function is called to perform a depth traversal of the multiple administrator groups according to the second current traversal position to obtain the maximum number of people approval strategy. Based on the minimum number of people approval strategy or the maximum number of people approval strategy, determine the administrator information of the target administrators for approving the multiple selected meeting numbers, and send the approval card of the selected meeting number to the administrator terminal of the target administrator.
2. The method according to claim 1, wherein, The strategy of performing a depth-first traversal of the multiple administrator groups based on the first current traversal position to obtain the least-person approval strategy includes: In response to determining that the first selected meeting number in the first temporary result does not completely cover all of the multiple selected meeting numbers, the multiple administrator groups are traversed according to the first current traversal position, the first temporary result is updated, and the next level call of the first recursive function is executed according to the new first current traversal position after incrementing the value of the first current traversal position by 1, so as to perform a depth traversal of the multiple administrator groups, wherein the first temporary result is at least one key-value pair with the administrator information to be verified as the key and the first selected meeting number under the responsibility of the administrator to be verified as the value; In response to determining that the first selected meeting number in the first provisional result has completely covered all of the plurality of selected meeting numbers: If it is determined that the number of administrator information to be verified in the first temporary result is less than or equal to the number of administrator information already existing in the first final result, the first final result is updated using the first temporary result, and the previous call of the first recursive function is backtracked to remove the last key-value pair of the first temporary result. Then, based on the new first current traversal position after incrementing the value of the first current traversal position used in the previous call by 1, the next call of the first recursive function is continued to be executed to perform a deep traversal of the multiple administrator groups. The initial value of the first final result is the administrator information for all administrators responsible for the multiple selected meeting numbers. If it is determined that the number of administrator information to be verified in the first temporary result is greater than the number of administrator information already existing in the first final result, backtrack to the previous call of the first recursive function, remove the last key-value pair of the first temporary result, and continue to execute the next call of the first recursive function based on the new first current traversal position after incrementing the value of the first current traversal position used in the previous call by 1, so as to perform a deep traversal of the multiple administrator groups. In response to the completion of the depth-first traversal of the multiple administrator groups, the minimum number of people approval strategy is determined based on the first final result.
3. The method according to claim 2, wherein, The step of traversing the multiple administrator groups and updating the first temporary result includes: The first unassigned meeting number is obtained by subtracting the first selected meeting number from the first temporary result using the set of multiple selected meeting numbers; The intersection of the first unassigned meeting number and the selected meeting number of the current administrator group corresponding to the first current traversal position is used to obtain the first unassigned meeting number of the current administrator. In response to determining that the first current administrator has not been assigned a meeting number, the depth traversal of the multiple administrator groups is continued based on the first current traversal position after incrementing the value of the first current traversal position by 1. In response to determining that the first unassigned meeting number of the current administrator is not empty, the administrator information of the current administrator group and the first unassigned meeting number of the current administrator are added to the first temporary result.
4. The method according to claim 1, wherein, The strategy of performing a depth-first traversal of the multiple administrator groups based on the second current traversal position to obtain the approval by the most people includes: In response to determining that the second selected meeting number in the second temporary result does not completely cover all of the multiple selected meeting numbers, the multiple administrator groups are traversed according to the second current traversal position, the second temporary result is updated, and the next level call of the second recursive function is executed according to the new second current traversal position after incrementing the value of the second current traversal position by 1, so as to perform a depth traversal of the multiple administrator groups, wherein the second temporary result is at least one key-value pair with the administrator information to be verified as the key and the second selected meeting number under the responsibility of the administrator to be verified as the value; In response to determining that the second selected meeting number in the second provisional result has completely covered the plurality of selected meeting numbers: If it is determined that the number of administrator information to be verified in the second temporary result is greater than or equal to the number of administrator information already existing in the second final result, the second final result is updated using the second temporary result, and the previous call of the second recursive function is backtracked to remove the last key-value pair of the second temporary result. Then, based on the new second current traversal position after incrementing the value of the second current traversal position used in the previous call by 1, the next call of the second recursive function is executed to perform a depth traversal of the multiple administrator groups. The initial value of the second final result is empty. If it is determined that the number of administrator information to be verified in the second temporary result is less than the number of administrator information already existing in the second final result, backtrack to the previous call of the second recursive function, remove the last key-value pair of the second temporary result, and continue to execute the next call of the second recursive function based on the new second current traversal position after incrementing the value of the second current traversal position used in the previous call by 1, so as to perform a depth traversal of the multiple administrator groups. In response to the completion of the depth-first traversal of the multiple administrator groups, the maximum number of people approval strategy is determined based on the second final result.
5. The method according to claim 4, wherein, The step of traversing the multiple administrator groups and updating the second temporary result includes: The second unassigned meeting number is obtained by subtracting the second selected meeting number from the second temporary result using the set of multiple selected meeting numbers; The intersection of the second unassigned meeting number and the selected meeting number of the current administrator group corresponding to the second current traversal position is used to obtain the second unassigned meeting number of the current administrator. In response to determining that the second current administrator has no assigned meeting number, the depth traversal of the multiple administrator groups continues based on the second current traversal position after incrementing the value of the second current traversal position by 1. In response to determining that the second current administrator's unassigned meeting number is not empty, the administrator information of the current administrator group and the second current administrator's unassigned meeting number are added to the second temporary result.
6. The method according to claim 1, further comprising: Corresponding to the meeting schedule, in response to receiving a selection operation for multiple candidate meeting numbers, the busy / idle list interface of the meeting service is called to obtain the busy / idle time period corresponding to the candidate meeting number on the current day of the meeting schedule, wherein the candidate meeting number is configured with a required meeting time period; In response to determining that the required meeting time slot for the candidate meeting number has been occupied based on the busy / idle time period, a prompt message indicating a time conflict exists for the candidate meeting number is generated, and the selection operation for the candidate meeting number is canceled.
7. The method according to claim 1, wherein, The approval card includes: the meeting schedule identifier of the meeting schedule, the selected meeting number, the available meeting time period and approval status of the selected meeting number, and the administrator information of the target administrator responsible for approving the selected meeting number; The method further includes: In response to receiving the approval instruction from the target administrator for the selected meeting number, update the approval status of the selected meeting number to "approved" or "approved". The approval or disapproval information is sent to the administrator terminal, and the approval button on the administrator terminal is updated to "approved". The approval card containing the latest approval status will be sent to the user terminals of the participants involved in the meeting schedule.
8. A meeting information generation device, comprising: The authorization mode reading module is used to respond to a user's submission instruction for multiple selected meeting numbers in the meeting schedule, and read the authorization mode selected for the multiple selected meeting numbers. The multiple selected meeting numbers are all from pre-generated existing meeting numbers, and each of the multiple selected meeting numbers is configured with different available meeting time periods. The multiple different available meeting time periods together constitute the complete meeting time period of the meeting schedule. Each selected meeting number is configured with at least one administrator information. The grouping module is used to group the multiple selected meeting numbers according to the administrator information, so as to obtain multiple administrator groups with the administrator information as the key and the selected meeting number under the administrator's responsibility as the value; The first recursive module is used to call the first recursive function when it is determined that the authorization mode is the least person approval mode, and perform a depth traversal on the multiple administrator groups according to the first current traversal position to obtain the least person approval strategy. The second recursive module is used to call the second recursive function when it is determined that the authorization mode is the most people approval mode, and to perform a depth traversal on the multiple administrator groups according to the second current traversal position to obtain the most people approval strategy. The approval card sending module is used to determine the administrator information of the target administrators for approving the multiple selected meeting numbers according to the minimum number of people approval strategy or the maximum number of people approval strategy, and send the approval card of the selected meeting number to the administrator terminal of the target administrator.
9. An electronic device, comprising: One or more processors; Memory, used to store one or more programs. When the one or more programs are executed by the one or more processors, the one or more processors implement the method of any one of claims 1-7.
10. A computer-readable storage medium having stored thereon executable instructions that, when executed by a processor, cause the processor to perform the method of any one of claims 1-7.
11. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1-7.