A method, device, equipment and storage medium for multi-person simultaneous talk
By splitting and sending multiple call requests in parallel and mixing voice streams, the problem of high timeliness and synchronization in power and coal mining systems during mobile communication failures was solved, enabling multiple people to talk and send text messages simultaneously, thus improving the efficiency of emergency command and the reliability of information transmission.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- SHENHUA GUONENG ENERGY GRP
- Filing Date
- 2026-03-03
- Publication Date
- 2026-06-26
AI Technical Summary
When mobile communication fails in power and coal mining systems, the traditional method of contacting each other one by one cannot meet the high timeliness and synchronization requirements of emergency command in factories and mines, resulting in low information transmission efficiency.
The system initiates multi-person call requests to a target group from the calling terminal, splits them into single-person call requests and sends them in parallel, and mixes the voice streams of the called terminals to enable multiple people to talk at the same time; it also supports group SMS sending function, monitors and displays call status in real time, uses the VAD algorithm to distinguish speaking status, and supports group editing operations.
It enables rapid synchronous communication between the calling terminal and multiple called terminals within the target group, meeting the high timeliness and synchronization requirements of emergency command in factories and mines, and significantly improving command efficiency and the reliability of information transmission.
Smart Images

Figure CN122293643A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of multi-person simultaneous communication technology, and in particular to a method, apparatus, device and storage medium for multi-person simultaneous communication. Background Technology
[0002] When power systems and coal mine systems encounter mobile communication failures, dispatchers cannot use mobile phones to contact the outside world and on-duty personnel in various departments one by one. The power plant control room and the coal mine dispatch room need to work together simultaneously to notify multiple departments and multiple responsible persons, as well as fire and medical personnel to intervene at the same time. If the traditional method of looking up phone numbers one by one and dialing to inform them is very time-consuming, a method of multi-person simultaneous communication that can meet the requirements of high timeliness and synchronization of emergency command in plants and mines is needed. Summary of the Invention
[0003] This invention provides a method for simultaneous multi-person calls, which enables rapid synchronous calls between the calling terminal and multiple called terminals within a target group, meeting the high timeliness and synchronization requirements of emergency command in factories and mines, and significantly improving command efficiency and the reliability of information transmission.
[0004] In a first aspect, embodiments of the present invention provide a method for multiple people to talk simultaneously, including: Select a target group from the candidate groups, and receive a multi-person call request initiated by the calling terminal to the target group, wherein the multi-person call request includes the user address of each called terminal; The multi-person call request is split into multiple single-person call requests, and the multiple single-person call requests are sent to all user addresses in parallel; When a called terminal is detected to have answered the call, the voice stream of the called terminal is mixed into the synchronous voice stream so that all terminals can conduct multi-person simultaneous calls based on the synchronous voice stream.
[0005] Furthermore, the method also includes: Select a target group from the candidate groups, and receive a group SMS request initiated by the calling terminal to the target group. The group SMS request includes pre-edited SMS content and the user address of each called terminal. The group SMS request is converted into the SMPP protocol, and the SMS content is synchronously sent to each called terminal.
[0006] Furthermore, the method also includes: Determine the response status, answering status, and voice status of all called terminals; wherein, the response status is used to indicate the signaling feedback status of the called terminal to the multi-person call request, the answering status is used to indicate whether the called terminal actively participates in the call after answering, and the voice status is used to dynamically identify whether the user who actively participates in the call is speaking in the current call. A call status matrix table is generated based on the response status, the answering status, and the voice status; The call status of each user in the target group is visualized based on the call status matrix table.
[0007] Furthermore, the method also includes: The system receives the response code returned by the called terminal in real time and determines the response status of the called terminal based on the response code. When the response code returned by the called terminal is the first response code, the response status of the called terminal is determined to be "ringing" and the cumulative time of the called terminal in this state is recorded. When the cumulative time is greater than the preset cumulative time threshold, the response status of the called terminal is determined to be "not answered". When the response code returned by the called terminal is the second response code, the response status of the called terminal is determined to be answered.
[0008] Furthermore, the method also includes: When the called terminal is detected to be in the response state of being answered, the called terminal is controlled to play a prompt tone. The prompt tone is used to remind the called user to actively participate in the call by pressing a specific key. If the specific key is pressed within a preset time period, the call status of the called terminal is determined to be confirmed. If the specific key is not pressed within a preset time period, the call status of the called terminal is determined to be "unacknowledged answer".
[0009] Furthermore, the method also includes: Acquire the voice signal during the call and extract the energy features of the voice signal using the VAD algorithm; Based on the energy characteristics, the speech signal is divided into valid speech and invalid speech; Mark the voice status of users with valid voice messages as "speaking" and mark the voice status of users with invalid voice messages and users who have not sent a voice signal as "not speaking".
[0010] Furthermore, the method also includes: Editing operations on the candidate groups include adding one or more candidate groups, deleting one or more candidate groups, adding one or more users in any candidate group, deleting one or more users in any candidate group, and renaming any candidate group.
[0011] Secondly, embodiments of the present invention provide a device for simultaneous multi-user communication, comprising: The multi-person call request receiving module is used to select a target group from the candidate groups and receive a multi-person call request initiated by the calling terminal to the target group. The multi-person call request includes the user address of each called terminal. The multi-person call request sending module is used to split the multi-person call request into multiple single-person call requests, and send the multiple single-person call requests to all user addresses in parallel; The multi-terminal voice stream mixing module is used to mix the voice stream of a called terminal into a synchronous voice stream when a called terminal is detected to have answered the call, so that all terminals can make simultaneous multi-person calls based on the synchronous voice stream.
[0012] Thirdly, embodiments of the present invention provide an electronic device, characterized in that it includes: Memory, used to store computer programs; A processor for executing the computer program; Wherein, when the processor executes the computer program, it implements the multi-person simultaneous call method described in any of the first aspects above.
[0013] Fourthly, embodiments of the present invention provide a computer-readable storage medium storing a computer program that, when executed, implements the multi-person simultaneous call method described in any of the first aspects above.
[0014] Compared with existing technologies, the multi-person simultaneous call method provided by this invention has the following advantages: A target group is selected from a candidate group; a multi-person call request initiated by a calling terminal to the target group is received, wherein the multi-person call request includes the user address of each called terminal; the multi-person call request is split into multiple single-person call requests, and these single-person call requests are sent in parallel to all user addresses; when a called terminal is detected to have answered, its voice stream is mixed into a synchronous voice stream, enabling all terminals to conduct multi-person simultaneous calls based on the synchronous voice stream; this invention enables rapid synchronous calls between the calling terminal and multiple called terminals within the target group, meeting the high timeliness and synchronization requirements of emergency command in factories and mines, and significantly improving command efficiency and the reliability of information transmission. Attached Figure Description
[0015] To more clearly illustrate the technical features of the embodiments of the present invention, the drawings used in the embodiments of the present invention will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0016] Figure 1This is a flowchart illustrating an embodiment of a method for simultaneous multi-person calls provided by the present invention; Figure 2 This is a schematic diagram of the structure of one embodiment of a multi-person simultaneous communication device provided by the present invention; Figure 3 This is a schematic diagram of the structure of one embodiment of an electronic device provided by the present invention. Detailed Implementation
[0017] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0018] It should be noted that although functional modules are divided in the device schematic diagram and a logical order is shown in the flowchart, in some cases, the steps shown or described may be performed in a different order than the module division in the device or the order in the flowchart. The terms "first," "second," etc., in the specification, claims, and the aforementioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0019] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. The terminology used herein is for the purpose of describing embodiments of the invention only and is not intended to limit the invention.
[0020] Firstly, embodiments of the present invention provide a method for multiple people to make simultaneous calls, see [link to previous document]. Figure 1 This is a flowchart illustrating an embodiment of a method for simultaneous multi-person calls provided by the present invention.
[0021] like Figure 1 As shown, the method includes the following steps: S1: Select a target group from the candidate groups, and receive a multi-person call request initiated by the calling terminal to the target group, wherein the multi-person call request includes the user address of each called terminal; S2: The multi-person call request is split into multiple single-person call requests, and the multiple single-person call requests are sent to all user addresses in parallel; S3: When a called terminal is detected to have a response status of "answered", the voice stream of the called terminal is mixed into the synchronous voice stream so that all terminals can conduct multi-person simultaneous calls based on the synchronous voice stream.
[0022] The method for simultaneous multi-person calls in this embodiment is applied to a communication system that includes a calling terminal, called terminals, and a call control server. The calling terminal and called terminals can be smartphones with integrated touch screens. The display interface of the calling terminal has multiple selectable groups preset, such as a mine disaster emergency group or an equipment failure handling group. Each group includes the telephone numbers of different responsible persons in different positions. The calling user selects the target group by clicking on the touch screen or using physical buttons and triggers a multi-person call command, sending a multi-person call request to the call control server. The request includes the target group identifier and a list of user addresses of all called terminals in the group.
[0023] After receiving the request, the call control server parses the user address list and splits the multi-person call request into single-person call requests, which are the same number of called terminals. Each single-person call request contains the user address of the corresponding called terminal, the call initiation timestamp, and the caller's identifier. The communication protocol is adapted according to the type of called terminal. For example, the VoIP protocol is used for terminals with SIP accounts, and parallel calls are implemented through SIP Forking technology. The call control server starts the concurrent call process at time T0 (the time when the caller initiates the request). At T0+200ms, a single-person call request is sent to the first called terminal (such as the core leader in the group). At T0+500ms, requests are sent to the remaining called terminals in parallel. During the sending process, the server records the call status of each called terminal in real time.
[0024] When the called terminal responds to the call and enters the "answered" state, the answered called terminal sends a voice stream to the server via the RTP protocol. The server's RTP receiving module distinguishes and buffers each voice stream according to the terminal identifier, performs echo cancellation and noise reduction processing on each voice stream, aligns each voice stream based on the timestamp of NTP synchronization to ensure timing consistency, and mixes multiple voice streams into a single synchronous voice stream through the RTP Mixer. The server distributes the synchronous voice stream to all answered called terminals and calling terminals to achieve a synchronous call effect where one person speaks and multiple people listen at the same time.
[0025] In summary, this invention constructs a multi-user communication system that enables rapid initiation, synchronous interaction, and efficient collaboration, achieving rapid synchronous communication between the calling terminal and multiple called terminals within a target group. In emergency command scenarios in factories and mines where timeliness and synchronization are extremely important, it ensures that department heads make decisions based on the same information foundation, significantly improving command efficiency and the reliability of information transmission.
[0026] In an optional implementation, the method further includes: Select a target group from the candidate groups, and receive a group SMS request initiated by the calling terminal to the target group. The group SMS request includes pre-edited SMS content and the user address of each called terminal. The group SMS request is converted into the SMPP protocol, and the SMS content is synchronously sent to each called terminal.
[0027] Specifically, the method for simultaneous multi-person calls in this embodiment is applied to a communication system that includes a calling terminal, called terminals, and an SMS gateway cluster. When a calling user needs to send SMS messages to multiple people simultaneously, they can select a target group from the candidate groups via a touch screen or physical buttons, call the SMS editing module built into the terminal, input predefined templated content, or directly edit custom content, triggering a group SMS sending command. The calling terminal sends a group SMS sending request to the SMS gateway cluster, which includes the target group identifier, SMS content, and a list of user addresses of the called terminals.
[0028] The SMS gateway cluster parses the user address list in the SMS request sent by the group, converts the HTTP / JSON format request sent by the calling terminal into the SMPP protocol format supported by the operator's SMS center, and the load balancing node of the SMS gateway cluster distributes the number subset tasks of different operators to the corresponding gateway nodes according to the real-time load of each gateway node. Each gateway node synchronously sends the converted SMS request to all called terminals through a long connection established with the operator's SMS center, achieving the effect of one command and all recipients receiving the message.
[0029] This embodiment enables the calling terminal to push SMS messages to multiple called terminals at once, avoiding the redundancy of traditional manual editing and sending. Especially in emergency scenarios such as factory and mine accidents, it can compress information transmission time from minutes to seconds, ensuring that key instructions quickly reach all relevant personnel, effectively improving the efficiency, accuracy and coverage of important information transmission.
[0030] In an optional implementation, the method further includes: Determine the response status, answering status, and voice status of all called terminals; wherein, the response status is used to indicate the signaling feedback status of the called terminal to the multi-person call request, the answering status is used to indicate whether the called terminal actively participates in the call after answering, and the voice status is used to dynamically identify whether the user who actively participates in the call is speaking in the current call. A call status matrix table is generated based on the response status, the answering status, and the voice status; The call status of each user in the target group is visualized based on the call status matrix table.
[0031] Specifically, the call control server aggregates three types of status data from each called terminal in real time, including response status, answering status, and voice status. The response status is obtained through SI protocol signaling parsing, the answering status is obtained through DTMF signal detection, and the voice status is obtained through VAD algorithm analysis. The server integrates the multi-dimensional status information into a structured table according to a preset matrix structure. The row dimension of the matrix represents all called terminals within the target group, with each row associated with a unique user identifier. The column dimension represents the three types of status indicators, with each indicator further subdivided into specific status values.
[0032] After receiving the matrix table data pushed by the server, the calling terminal can visualize the call status of each user in the target group. For example, it can display the status by controlling the color of the indicator light of the user's name on the smart display screen. For the response status, red indicates that the call has been answered, green indicates that the call has not been answered, and yellow indicates that the call is ringing. For the answer status, blue indicates that the call has been confirmed and gray indicates that the call has not been confirmed. For the voice status, red flashing indicates that the user is speaking and black indicates that the user is not speaking.
[0033] This embodiment integrates three types of status information through a matrix table. The calling user can grasp the overall call status of all called terminals on a single screen interface. The storage function of the matrix table can also completely restore the status changes during the call, providing objective data for the post-event review of emergency events.
[0034] In an optional implementation, the method further includes: The system receives the response code returned by the called terminal in real time and determines the response status of the called terminal based on the response code. When the response code returned by the called terminal is the first response code, the response status of the called terminal is determined to be "ringing" and the cumulative time of the called terminal in this state is recorded. When the cumulative time is greater than the preset cumulative time threshold, the response status of the called terminal is determined to be "not answered". When the response code returned by the called terminal is the second response code, the response status of the called terminal is determined to be answered.
[0035] Specifically, after the call control server sends single-person call requests in parallel to the called terminals in the target group, it listens in real time to the response messages returned by each called terminal through the SIP protocol signaling channel and extracts standardized response codes from them. For example, when a called terminal starts ringing, it will return a SIP message containing a response code to the server. When a called terminal answers or rejects a call, it will also return a message with the corresponding response code.
[0036] The server pre-defines the mapping relationship between response codes and response statuses, including a first response code defined as SIP 180, indicating that the called terminal has received the call request and is in a ringing state; a second response code defined as SIP 200, indicating that the called terminal has answered the call and the call link has been established; and other response codes indicating that the user is in a busy state or other states.
[0037] When the first response code (180) is received, the server determines that the response status of the called terminal is ringing and starts a timer to record the cumulative time it is in this state. The cumulative time threshold is preset to 30 seconds (which can be adjusted according to the actual scenario). If the cumulative time exceeds 30 seconds and no other response code is received, the server automatically determines that the response status of the called terminal is not answered and terminates the call process for the terminal. When the second response code (200) is received, the server immediately determines that the response status of the called terminal is answered and triggers the subsequent process.
[0038] This embodiment can accurately determine the real-time response status of the called terminal during a multi-person call by parsing the response code returned by the called terminal. Especially in emergency scenarios, the command personnel can quickly grasp which responsible persons have responded and which have not yet responded, providing a basis for decision-making for subsequent supplementary calls or SMS reminders, ensuring that important information is not missed, and guaranteeing the accuracy and timeliness of the response status.
[0039] In an optional implementation, the method further includes: When the called terminal is detected to be in the response state of being answered, the called terminal is controlled to play a prompt tone. The prompt tone is used to remind the called user to actively participate in the call by pressing a specific key. If the specific key is pressed within a preset time period, the call status of the called terminal is determined to be confirmed. If the specific key is not pressed within a preset time period, the call status of the called terminal is determined to be "unacknowledged answer".
[0040] Specifically, when the call control server determines that the called terminal's response status is "answered" through response code parsing, it immediately sends a control command to the called terminal, controlling the called terminal's voice module to automatically play a preset prompt tone, such as "You have joined an emergency conference, please press the * key to confirm participation," while blocking other call audio during playback to avoid interfering with the user's ability to hear the prompt. At the same time, the call control server enables key signal detection of the called terminal.
[0041] During or after the prompt tone playback, the called terminal can perform button operations via the physical button area or touch screen. If a user presses a specific button within a preset time period, an acknowledgment message is sent to the call control server via a DTMF signal. After receiving and parsing the DTMF signal, the server immediately determines that the called terminal's answer status is "acknowledged answer" and synchronizes this status with the calling terminal and other participating terminals. If the server does not receive a DTMF signal for the specific button after the preset time period ends, it determines that the called terminal's answer status is "unacknowledged answer".
[0042] This embodiment uses a specific button confirmation mechanism to distinguish between automatic terminal responses (such as automatic answering when unattended) and active user participation, preventing idle terminals from occupying call resources or causing information leakage. In emergency scenarios in factories and mines, it ensures that all those joining the conference are the responsible persons who actually participate in the decision-making, improving the accuracy of instruction transmission and the effectiveness of multi-person calls.
[0043] In an optional implementation, the method further includes: Acquire the voice signal during the call and extract the energy features of the voice signal using the VAD algorithm; Based on the energy characteristics, the speech signal is divided into valid speech and invalid speech; Mark the voice status of users with valid voice messages as "speaking" and mark the voice status of users with invalid voice messages and users who have not sent a voice signal as "not speaking".
[0044] Specifically, during a multi-person call, the call control server receives voice signals from each confirmed called terminal and calling terminal in real time via the RTP protocol. It uses the VAD algorithm to extract the energy characteristics of the voice signals and analyzes these characteristics. If the short-term energy of a frame exceeds a preset effective voice threshold, the frame is considered a valid voice frame; otherwise, it is considered invalid voice (including silence, background noise, etc.). To avoid transient noise interference, a threshold for consecutive valid frames (e.g., 3 frames) is set. When 3 consecutive frames are valid voice frames, it is considered continuous valid voice; when 5 consecutive frames are invalid voice frames, it is considered continuous invalid voice. Based on these determinations, the voice status of each user is marked. If a user's voice signal is determined to be continuous valid voice, their voice status is marked as speaking, and this is synchronized to the display interfaces of the calling terminal and all participating terminals. If a user's voice signal is continuous invalid voice, or no voice signal is detected, it is marked as not speaking, and this is also synchronized to the display interfaces of the calling terminal and all participating terminals. Simultaneously, the system updates the voice status in real time to ensure that the calling terminal can dynamically monitor the current speaker, facilitating call conference order management.
[0045] This embodiment analyzes the voice signal of a call using the VAD algorithm to accurately distinguish between when a user is speaking and when they are not speaking. It achieves accurate and real-time recognition of the voice status in multi-person calls, providing a basis for real-time monitoring and interactive management of multi-person calls. It is especially suitable for dynamic tracking of speakers in emergency command scenarios. Commanders can quickly locate the speaker and issue targeted instructions, effectively improving decision-making efficiency and the orderliness of meeting interactions.
[0046] In an optional implementation, the method further includes: Editing operations on the candidate groups include adding one or more candidate groups, deleting one or more candidate groups, adding one or more users in any candidate group, deleting one or more users in any candidate group, and renaming any candidate group.
[0047] Specifically, each terminal's main interface has a group management entry (physical button or touchscreen icon). After verification, the user enters the edit mode, where the interface displays a list of all currently selectable groups and corresponding operation buttons. It supports editing operations such as adding one or more selectable groups, deleting one or more selectable groups, adding one or more users to any selectable group, deleting one or more users to any selectable group, and renaming any selectable group. All operations are synchronized to the backend server in real time.
[0048] This embodiment supports full-scene editing operations and can quickly respond to personnel changes, organizational structure adjustments, or changes in emergency needs. For example, when a new group is established in a factory or mine, the administrator can quickly complete the group creation and user addition to ensure that the candidate groups always match the actual needs, providing basic support for the efficient and accurate operation of multi-person communication functions.
[0049] Secondly, embodiments of the present invention provide a device for simultaneous multi-user communication, see [link to documentation]. Figure 2 This is a schematic diagram of one embodiment of a multi-person simultaneous communication device provided by the present invention.
[0050] like Figure 2 As shown, the device includes: The multi-person call request receiving module 21 is used to select a target group from the candidate groups and receive a multi-person call request initiated by the calling terminal to the target group, wherein the multi-person call request includes the user address of each called terminal. The multi-person call request sending module 22 is used to split the multi-person call request into multiple single-person call requests and send the multiple single-person call requests to all user addresses in parallel; The multi-terminal voice stream mixing module 23 is used to mix the voice stream of a called terminal into a synchronous voice stream when a called terminal is detected to have a response status of "answered", so that all terminals can make simultaneous multi-person calls based on the synchronous voice stream.
[0051] In an optional embodiment, the device is further configured to: Select a target group from the candidate groups, and receive a group SMS request initiated by the calling terminal to the target group. The group SMS request includes pre-edited SMS content and the user address of each called terminal. The group SMS request is converted into the SMPP protocol, and the SMS content is synchronously sent to each called terminal.
[0052] In an optional embodiment, the device is further configured to: Determine the response status, answering status, and voice status of all called terminals; wherein, the response status is used to indicate the signaling feedback status of the called terminal to the multi-person call request, the answering status is used to indicate whether the called terminal actively participates in the call after answering, and the voice status is used to dynamically identify whether the user who actively participates in the call is speaking in the current call. A call status matrix table is generated based on the response status, the answering status, and the voice status; The call status of each user in the target group is visualized based on the call status matrix table.
[0053] In an optional embodiment, the device is further configured to: The system receives the response code returned by the called terminal in real time and determines the response status of the called terminal based on the response code. When the response code returned by the called terminal is the first response code, the response status of the called terminal is determined to be "ringing" and the cumulative time of the called terminal in this state is recorded. When the cumulative time is greater than the preset cumulative time threshold, the response status of the called terminal is determined to be "not answered". When the response code returned by the called terminal is the second response code, the response status of the called terminal is determined to be answered.
[0054] In an optional embodiment, the device is further configured to: When the called terminal is detected to be in the response state of being answered, the called terminal is controlled to play a prompt tone. The prompt tone is used to remind the called user to actively participate in the call by pressing a specific key. If the specific key is pressed within a preset time period, the call status of the called terminal is determined to be confirmed. If the specific key is not pressed within a preset time period, the call status of the called terminal is determined to be "unacknowledged answer".
[0055] In an optional embodiment, the device is further configured to: Acquire the voice signal during the call and extract the energy features of the voice signal using the VAD algorithm; Based on the energy characteristics, the speech signal is divided into valid speech and invalid speech; Mark the voice status of users with valid voice messages as "speaking" and mark the voice status of users with invalid voice messages and users who have not sent a voice signal as "not speaking".
[0056] In an optional embodiment, the device is further configured to: Editing operations on the candidate groups include adding one or more candidate groups, deleting one or more candidate groups, adding one or more users in any candidate group, deleting one or more users in any candidate group, and renaming any candidate group.
[0057] Thirdly, embodiments of the present invention provide an electronic device, see [link to previous document]. Figure 3 The diagram shown is a structural schematic of an electronic device provided in an embodiment of the present invention.
[0058] like Figure 3 As shown, the device includes: Memory 31 is used to store computer programs; Processor 32 is used to execute the computer program; When the processor 32 executes the computer program, it implements the method for simultaneous multi-person calls as described in any of the above embodiments.
[0059] For example, the computer program may be divided into one or more modules / units, which are stored in the memory 31 and executed by the processor 32 to complete the present invention. The one or more modules / units may be a series of computer program instruction segments capable of performing a specific function, which describe the execution process of the computer program in the electronic device.
[0060] The processor 32 can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor.
[0061] The memory 31 can be used to store the computer programs and / or modules. The processor 32 implements various functions of the electronic device by running or executing the computer programs and / or modules stored in the memory 31 and calling the data stored in the memory 31. The memory 31 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as sound playback function, image playback function, etc.), etc.; the data storage area may store data created according to the use of the mobile phone (such as audio data, phonebook, etc.). In addition, the memory 31 may include high-speed random access memory, and may also include non-volatile memory, such as hard disk, memory, plug-in hard disk, smart media card (SMC), secure digital card (SD) card, flash card, at least one disk storage device, flash memory device, or other volatile solid-state storage device.
[0062] It should be noted that the aforementioned electronic devices include, but are not limited to, processors and memory, as will be understood by those skilled in the art. Figure 3 The structural diagram is merely an example of the electronic device described above and does not constitute a limitation on the electronic device. It may include more components than shown in the diagram, or combine certain components, or use different components.
[0063] Fourthly, embodiments of the present invention also provide a computer-readable storage medium storing a computer program that, when executed, implements the multi-person simultaneous call method described in any of the above embodiments.
[0064] It should be understood that the present invention can implement all or part of the processes in the above-described method for simultaneous multi-user calls, and can also be accomplished by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the above-described method for simultaneous multi-user calls. The computer program includes computer program code, which can be in the form of source code, object code, executable file, or some intermediate form. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording media, USB flash drive, portable hard drive, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc.
[0065] The above description is merely a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. It should be noted that, for those skilled in the art, several equivalent obvious modifications and / or equivalent substitutions can be made without departing from the technical principles of the present invention, and these obvious modifications and / or equivalent substitutions should also be considered within the scope of protection of the present invention.
Claims
1. A method for simultaneous multi-person calls, characterized in that, include: Select a target group from the candidate groups, and receive a multi-person call request initiated by the calling terminal to the target group, wherein the multi-person call request includes the user address of each called terminal; The multi-person call request is split into multiple single-person call requests, and the multiple single-person call requests are sent to all user addresses in parallel; When a called terminal is detected to have answered the call, the voice stream of the called terminal is mixed into the synchronous voice stream so that all terminals can conduct multi-person simultaneous calls based on the synchronous voice stream.
2. The method for simultaneous multi-person calls as described in claim 1, characterized in that, The method further includes: Select a target group from the candidate groups, and receive a group SMS request initiated by the calling terminal to the target group. The group SMS request includes pre-edited SMS content and the user address of each called terminal. The group SMS request is converted into the SMPP protocol, and the SMS content is synchronously sent to each called terminal.
3. The method for simultaneous multi-person calls as described in claim 1, characterized in that, The method further includes: Determine the response status, answering status, and voice status of all called terminals; wherein, the response status is used to indicate the signaling feedback status of the called terminal to the multi-person call request, the answering status is used to indicate whether the called terminal actively participates in the call after answering, and the voice status is used to dynamically identify whether the user who actively participates in the call is speaking in the current call. A call status matrix table is generated based on the response status, the answering status, and the voice status; The call status of each user in the target group is visualized based on the call status matrix table.
4. The method for simultaneous multi-person calls as described in claim 1, characterized in that, The method further includes: The system receives the response code returned by the called terminal in real time and determines the response status of the called terminal based on the response code. When the response code returned by the called terminal is the first response code, the response status of the called terminal is determined to be "ringing" and the cumulative time of the called terminal in this state is recorded. When the cumulative time is greater than the preset cumulative time threshold, the response status of the called terminal is determined to be "not answered". When the response code returned by the called terminal is the second response code, the response status of the called terminal is determined to be answered.
5. The method for simultaneous multi-person calls as described in claim 1, characterized in that, The method further includes: When the called terminal is detected to be in the response state of being answered, the called terminal is controlled to play a prompt tone. The prompt tone is used to remind the called user to actively participate in the call by pressing a specific key. If the specific key is pressed within a preset time period, the call status of the called terminal is determined to be confirmed. If the specific key is not pressed within a preset time period, the call status of the called terminal is determined to be "unacknowledged answer".
6. The method for simultaneous multi-person calls as described in claim 1, characterized in that, The method further includes: Acquire the voice signal during the call and extract the energy features of the voice signal using the VAD algorithm; Based on the energy characteristics, the speech signal is divided into valid speech and invalid speech; Mark the voice status of users with valid voice messages as "speaking" and mark the voice status of users with invalid voice messages and users who have not sent a voice signal as "not speaking".
7. The method for simultaneous multi-person calls as described in claim 1, characterized in that, The method further includes: Editing operations on the candidate groups include adding one or more candidate groups, deleting one or more candidate groups, adding one or more users in any candidate group, deleting one or more users in any candidate group, and renaming any candidate group.
8. A device for simultaneous multi-user communication, characterized in that, include: The multi-person call request receiving module is used to select a target group from the candidate groups and receive a multi-person call request initiated by the calling terminal to the target group. The multi-person call request includes the user address of each called terminal. The multi-person call request sending module is used to split the multi-person call request into multiple single-person call requests, and send the multiple single-person call requests to all user addresses in parallel; The multi-terminal voice stream mixing module is used to mix the voice stream of a called terminal into a synchronous voice stream when a called terminal is detected to have answered the call, so that all terminals can make simultaneous multi-person calls based on the synchronous voice stream.
9. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor for executing the computer program; The processor executes the computer program to implement the method for simultaneous multi-person calls as described in any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed, implements the method for simultaneous multi-person calls as described in any one of claims 1 to 7.