Method for Establishing Inclusive Call, Electronic Device and Readable Storage Medium
By generating and sending inclusive call requests containing inclusive call identification and called party identification in a system-free normal mode, the problem of inclusive calls not being supported in the system-free mode in the prior art is solved, and a more flexible and efficient call function is achieved.
Patent Information
- Application Number
- CN202211604297.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-13
- Publication Date
- 2025-06-13
- Estimated Expiration
- 2042-12-13
AI Technical Summary
In the prior art, the inclusive call function requires the system side to temporarily allocate the group number of the virtual group, and the terminal then performs inclusive calls based on the group number of the virtual group, resulting in the inclusive call not being supported in a normal system without a system.
By receiving the inclusive call instruction when the calling party is in a call maintenance state with the second called party, obtaining audio information and called party information, generating and sending a inclusive call request, the request includes multiple data frames that can be embedded in the voice header, including the inclusive call identification and the called party identification.
It realizes inclusive calls under the system-free normal mode, making up for the lack of inclusive calls under the normal mode, and improving call flexibility and user experience.
Smart Images

Figure CN116113066B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of private network communication, and in particular, to a method for establishing an inclusive call, an electronic device, and a readable storage medium. Background Art
[0002] In private network communication, call is the function with the highest usage frequency. Therefore, establishing a friendly and efficient call can greatly improve the user work efficiency and user experience. In the cluster mode, the inclusive call enables the terminal to have the function of actively merging calls, which can greatly improve the flexibility of terminal calls. In the prior art, the inclusive call function requires the system side to temporarily allocate the group number of the virtual group, and the terminal then makes an inclusive call based on the group number of the virtual group. Adopting this method requires relying on the system side to implement, and the inclusive call function is not supported in the conventional mode without a system. Therefore, how to implement the inclusive call function in the conventional mode without a system to make up for the lack of the inclusive call function in the conventional mode has become an urgent technical problem to be solved. Summary of the Invention
[0003] This application provides a method for establishing an inclusive call, an electronic device, and a readable storage medium to solve the problem that the existing inclusive call function needs to rely on the system side to implement and the inclusive call function is not supported in the conventional mode without a system.
[0004] In a first aspect, this application provides a method for establishing an inclusive call, which is applied to the calling party of the inclusive call. The method includes:
[0005] When the calling party is in a call maintenance state with the second called party, the calling party receives an instruction to establish an inclusive call, where the instruction to establish an inclusive call includes information of the first called party;
[0006] According to the call maintained by the calling party and the instruction to establish an inclusive call, obtain the audio information collected by the calling party and the information of the called party, where the called party includes the first called party and the second called party;
[0007] Generate an inclusive call request according to the audio information and the information of the called party, and send the inclusive call request to the called party, where the inclusive call request includes multiple data frames that can embed the first voice header. The first voice header includes an inclusive call identifier and a called party identifier. The inclusive call identifier is used to indicate whether this call is an inclusive call, and the called party identifier is used to indicate the identifier of at least one called party participating in this call. The data frame includes a voice superframe carrying the audio information and at least one voice header frame before all the voice superframes.
[0008] Optionally, the sending the inclusive call request to the called party includes:
[0009] In the case where the called party includes N terminals and / or M terminal groups, initiate the inclusive call request to each terminal and / or each terminal group among the N terminals and / or M terminal groups, and the called party identifier includes the identifiers corresponding to the N terminals and / or M terminal groups;
[0010] Wherein, N and M are integers greater than or equal to 1.
[0011] Optionally, the second called party includes a terminal or a terminal group that is in the call establishment process with the calling party, and a terminal or a terminal group that is in the call process after establishing a call with the calling party.
[0012] Optionally, the inclusive call request includes a plurality of data frames that can be embedded into the first voice header, including:
[0013] Embed different called party identifiers into the plurality of data frames in the inclusive call request in a preset order in a cyclic manner.
[0014] Optionally, after sending the inclusive call request to the called party, the method further includes:
[0015] Receive a callback request initiated by any one of the called parties, where the callback request is a call request sent by the called party to the calling party according to the inclusive call request sent by the calling party.
[0016] In a second aspect, the present application further provides a method for establishing an inclusive call, which is applied to a called party, and the method includes:
[0017] Receive an inclusive call request sent by a calling party, where the inclusive call request includes a plurality of data frames that can be embedded into a first voice header, the first voice header includes an inclusive call identifier and a called party identifier, the inclusive call identifier is used to indicate whether this call is an inclusive call, the called party identifier is used to indicate the identifier of at least one called party participating in this call, and the data frames include voice superframes carrying audio information and at least one voice header frame before all the voice superframes;
[0018] Obtain the inclusive call identifier and the called party identifier, and receive voice data services based on the inclusive call identifier and the called party identifier.
[0019] Optionally, the receiving voice data services based on the inclusive call identifier and the called party identifier includes:
[0020] Determine whether its own identifier exists in the voice header frame in the inclusive call request;
[0021] If the inclusive call identifier exists in the received inclusive call request and the own identifier exists in the voice header frame, save the other called party identifiers, and receive and play the audio information in all the voice superframes in the current inclusive call.
[0022] Optionally, receiving the voice data service based on the inclusive call identifier and the called party identifier includes:
[0023] Determine whether the own identifier exists in the voice header frame in the inclusive call request;
[0024] If the inclusive call identifier exists in the received inclusive call request and the own identifier does not exist in the voice header frame, save the other called party identifiers, and determine whether the called party identifier in the current voice superframe is the own identifier;
[0025] If the called party identifier is the own identifier, receive and play the voice information in the current voice superframe and the audio information in all subsequent voice superframes in the current inclusive call;
[0026] If the called party identifier is not the own identifier, save the called party identifier in the current voice superframe and cache the audio information in the current voice superframe.
[0027] Optionally, after saving the called party identifier in the current voice superframe and caching the voice information in the current voice superframe when the called party identifier is not the own identifier, the method further includes:
[0028] When it is detected that the called party identifier in the subsequent voice superframe is the own identifier, play the cached audio information.
[0029] In a third aspect, an electronic device is provided, including a processor, a communication interface, a memory, and a communication bus, where the processor, the communication interface, and the memory communicate with each other through the communication bus;
[0030] The memory is used to store a computer program;
[0031] When the processor executes the program stored in the memory, it implements the steps of the method for establishing an inclusive call according to any one of the embodiments in the first aspect, or implements the steps of the method for establishing an inclusive call according to any one of the embodiments in the second aspect.
[0032] Fourthly, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method for establishing an inclusive call according to any embodiment of the first aspect are implemented, or the steps of the method for establishing an inclusive call according to any embodiment of the second aspect are implemented.
[0033] In the embodiments of the present application, when the calling party is in a call maintenance state with the second called party, a command for establishing an inclusive call is received, where the command for establishing an inclusive call includes information of the first called party; according to the call maintained by the calling party and the command for establishing an inclusive call, audio information collected by the calling party and called party information are obtained, where the called party includes the first called party and the second called party; an inclusive call request is generated according to the audio information and the called party information, and the inclusive call request is sent to the called party, where the inclusive call request includes a plurality of data frames that can embed a first voice header, the first voice header includes an inclusive call identifier and a called party identifier, the inclusive call identifier is used to represent whether the current call is an inclusive call, the called party identifier is used to represent the identifier of at least one called party participating in the current call, and the data frame includes a voice superframe carrying the audio information and at least one voice header frame before all the voice superframes. In this way, the calling party can obtain audio information and called party information according to the received command for establishing an inclusive call, and then generate and send an inclusive call request according to the audio information and the called party information. In this way, the called party can establish an inclusive call with the calling party according to the inclusive call request without the participation of the system side, thereby realizing the inclusive call function in the conventional mode without a system to make up for the lack of the inclusive call function in the conventional mode. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] The drawings here are incorporated into the specification and form a part of this specification, showing embodiments consistent with the present invention and used together with the specification to explain the principles of the present invention.
[0035] In order to more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, other drawings can also be obtained according to these drawings without creative efforts.
[0036] Figure 1 It is a schematic flowchart of a method for establishing an inclusive call provided by an embodiment of the present application;
[0037] Figure 2 It is a schematic diagram of the distribution of LC headers provided by an embodiment of the present application;
[0038] Figure 3 A flowchart of another method for establishing an inclusive call provided by an embodiment of the present application;
[0039] Figure 4 A flowchart of yet another method for establishing an inclusive call provided by an embodiment of the present application;
[0040] Figure 5 A schematic diagram of the interaction process among terminal A, terminal B, and terminal C provided by an embodiment of the present application;
[0041] Figure 6 A schematic diagram of terminal A, terminal B, and terminal C combined into one call provided by an embodiment of the present application;
[0042] Figure 7 A schematic diagram of the structure of an inclusive call establishment device provided by an embodiment of the present application;
[0043] Figure 8 A schematic diagram of the structure of another inclusive call establishment device provided by an embodiment of the present application;
[0044] Figure 9 A schematic diagram of the structure of an electronic device provided by an embodiment of the present application. Detailed implementation manners
[0045] To make the objectives, technical solutions, and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present application. Apparently, the described embodiments are some but not all of the embodiments of the present application. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present application without creative efforts shall fall within the protection scope of the present application.
[0046] Refer to Figure 1 , Figure 1 A flowchart of a method for establishing an inclusive call provided by an embodiment of the present application. As Figure 1 shown, this method for establishing an inclusive call is applied to the calling party of the inclusive call, and the method may specifically include the following steps:
[0047] Step 101: When the calling party is in a call maintenance state with the second called party, receive an inclusive call establishment instruction, where the inclusive call establishment instruction includes the first called party information.
[0048] It should be noted that the above inclusive call refers to a terminal in a call maintenance state that can initiate a new call, and the new called party can join in together to conduct group call services in a new group. This inclusive call can be used in cases of urgent tasks or when there is a temporary need for more members or groups to join the call, enabling the call purpose to be achieved quickly and conveniently.
[0049] The above inclusive call includes, but is not limited to, call scenarios such as group call inclusive group call, individual call inclusive individual call, group call inclusive individual call, individual call inclusive group call, etc. When a terminal in a previously existing call initiates an inclusive call to implement a new call that includes members not in the current call, that is, the calling party of the inclusive call is an independent terminal, and the called party of the inclusive call can be one or more independent terminals, or a terminal group that includes one or more terminals.
[0050] For example, when the calling party A calls the called party B, it can initiate an inclusive call to the called parties C and D and pull them in. Then it can be understood that the first called parties in this inclusive call are the called parties C and D, and the second called party is the called party B; after the above call is established, that is, after A, B, C, and D establish a call, during the call holding time, the calling party A initiates an inclusive call to the called parties E and F again and pulls them in. Then it can be understood that the first called parties in this inclusive call are the called parties E and F, and the second called party is the called parties B, C, and D; of course, after A, B, C, D, E, and F establish a call, other terminals / terminal groups can continue to be pulled in, and the number of pulled-in members is not limited. The called parties B, C, D, E, and F here can be different terminals or terminal groups.
[0051] Specifically, the above calling party can refer to any terminal that initiates an inclusive call request. Both the above first called party and the above second called party can be a called terminal and / or a terminal group, or multiple called terminals and / or terminal groups. The difference between the two is that the first called party is the terminal or terminal group to establish an inclusive call with the calling party, and the second called party is the terminal or terminal group that is already in a call maintenance state with the calling party. The above instruction to establish an inclusive call refers to an instruction initiated by the user based on the calling party and used to request the establishment of an inclusive call. Specifically, this instruction to establish an inclusive call can be initiated by the user through dialing, or by the user clicking on a contact in the menu, or by one-key calling. The embodiments of the present application do not make specific limitations.
[0052] In this step, when the calling party is in a call maintenance state with the second called party, it can receive a user-triggered instruction to establish an inclusive call and initiate an inclusive call service based on this instruction. It should be noted that the calling party and the second called party being in a call maintenance state here can mean that the calling party and the second called party are in the call establishment process, or it can mean that the calling party and the second called party are in a call process after the call is established.
[0053] Step 102: Obtain the audio information collected by the calling party and the called party information according to the call maintained by the calling party and the instruction to establish an inclusive call, where the called party includes the first called party and the second called party.
[0054] In this step, after receiving the instruction to establish an inclusive call, the calling party can collect the audio information sent by the user and obtain the information of all called parties that need to participate in the inclusive call according to the call maintained by the calling party and the instruction to establish an inclusive call. The called party information includes the first called party information and the second called party information. Among them, the first called party information is obtained from the instruction to establish an inclusive call triggered by the user, such as obtained from the user's dialing, or from the contacts in the menu selected by the user, or from the preset information in the one-key call; the second called party information is obtained from the status information of the call maintenance state with the second called party.
[0055] Step 103: Generate an inclusive call request according to the audio information and the called party information, and send the inclusive call request to the called party. The inclusive call request includes multiple data frames that can embed the first voice header. The first voice header includes an inclusive call identifier and a called party identifier. The inclusive call identifier is used to indicate whether this call is an inclusive call, and the called party identifier is used to indicate the identifier of at least one called party participating in this call. The data frame includes a voice superframe carrying audio information and at least one voice header frame before all voice superframes.
[0056] Specifically, the above-mentioned inclusive call request includes multiple data frames that can embed the first voice header. The first voice header here includes an inclusive call identifier and a called party identifier. The multiple data frames here can include a voice superframe carrying audio information and at least one voice header frame before all voice superframes.
[0057] Specifically, the above-mentioned first voice header can be a 3-8 frame voice header frame initiated by the calling party, or a voice header embedded in the voice superframe carrying audio information sent by the calling party. The first voice header here refers to the Link Control (LC) voice header, which can be used as a sign of the start of the voice and can also be used to carry call information. Specifically, the distribution of the LC header is as Figure 2As shown, when the calling party initiates a call request (including an inclusive call request), the calling party generally first transmits 3 - 8 voice header frames. After that, when the calling party sends audio information, within the complete audio time, the calling party continuously sends voice super - frames. Among them, each voice super - frame can contain 6 bursts (i.e., 6 data frames), with a total of 360 milliseconds. The bursts within a voice super - frame are represented by letters A to F. The embedded signaling is embedded in bursts B - E, and one frame of voice header can be embedded. The voice synchronization code SYNC is embedded in burst A, and NULL is embedded in burst F. Then, during a complete call, the LC header has the opportunity to repeat continuously. Specifically, the LC header format is as follows in the table:
[0058]
[0059] As an optional implementation, the calling party can find 1 bit from the 72 bits of the LC header as the inclusive call identifier. For example, it can select 1 bit from the reservation bit or service options, etc., to represent the inclusive call identifier. In this way, the called party can confirm whether this call is an inclusive call based on this inclusive call identifier. The calling party can also embed the called - party identifier in the Full - Link Control Opcode (abbreviated as FLCO) and Target Address in the 72 bits of the LC header. Among them, some fields in the Full - Link Control Opcode (abbreviated as FLCO) field are used to characterize the call type of this call, and all fields in the Target Address are used to characterize the target address of the called terminal / called - terminal group. The call type and the target address of the called terminal / called - terminal group can determine the called - party identifier. Assume that when the calling party and the second called party are in a call - maintaining state, the calling party initiates an inclusive call request to the first called party. Then, at this time, the called party changes from only the second called party to both the second called party and the first called party. At this time, the Full - Link Control Opcode (abbreviated as FLCO) and Target Address in the first voice header cyclically carry the second called - party identifier and the first called - party identifier. In this way, both the second called party and the first called party can receive the first voice header sent by the calling party and determine whether it is consistent with their own identifiers based on the first voice header.
[0060] It should be noted that when the called party is any called terminal, the Target Address in the LC header is the address of this called terminal; when the called party is any terminal group, the Target Address in the LC header is the address of the called - terminal group.
[0061] In this step, the calling party can generate an inclusive call request based on the audio information and the called party information, and send the inclusive call request to the called party. In this way, after receiving the inclusive call request sent by the calling party, the called party can parse the first voice header in the inclusive call request to obtain the inclusive call identifier and the called party identifier within the first voice header, and establish an inclusive call based on the inclusive call identifier and the called party identifier.
[0062] In this embodiment, the calling party can obtain the audio information and the called party information according to the received instruction to establish an inclusive call, and then generate an inclusive call request based on the audio information and the called party information, and send the inclusive call request to the called party. In this way, the called party can establish an inclusive call with the calling party according to the inclusive call request without the participation of the system side, thereby realizing the inclusive call function in the normal mode without a system to make up for the lack of the inclusive call function in the normal mode.
[0063] Further, step 103 above, sending the inclusive call request to the called party, specifically includes:
[0064] In the case where the called party includes N terminals and / or M terminal groups, initiate an inclusive call request to each terminal and / or each terminal group among the N terminals and / or M terminal groups, and the called party identifier includes the identifiers corresponding to the N terminals and / or M terminal groups;
[0065] wherein, N and M are integers greater than or equal to 1.
[0066] In one embodiment, the called party may include N terminals, or may include M terminal groups, or may also include N terminals and M terminal groups. When the called party includes N terminals, an inclusive call request can be initiated to each of the N terminals, and the inclusive call request carries the identifiers of the N terminals; when the called party includes M terminal groups, an inclusive call request can be initiated to each of the M terminal groups, and the inclusive call request carries the identifiers of the M terminal groups; when the called party includes N terminals and M terminal groups, an inclusive call request can be initiated to each of the N terminals and each of the M terminal groups, and the inclusive call request carries the identifiers of the N terminals and the M terminal groups.
[0067] It should be noted that the called party includes a first called party and a second called party, and the first called party and the second called party may be some of the N terminals and / or M terminal groups mentioned above.
[0068] In this embodiment, since the called party may include N terminals and / or M terminal groups, where N and M are integers greater than or equal to 1, call scenarios such as group call inclusive of group call, individual call inclusive of individual call, group call inclusive of individual call, and individual call inclusive of group call can be realized, making the call scenarios of inclusive call more flexible.
[0069] Further, the second called party includes the terminal or terminal group that is in the call establishment process with the calling party, and the terminal or terminal group that is in the call process after establishing a call with the calling party.
[0070] In one embodiment, the terminal or terminal group that is in the call establishment process with the calling party, and the terminal or terminal group that is in the call process after establishing a call with the calling party can both be used as the second called party. That is to say, when the calling party is in the call establishment process with other terminals or terminal groups, or in the call process with other terminals or terminal groups, an inclusive call request can be initiated to these terminals or terminal groups again, thereby enabling these terminals or terminal groups to join the inclusive call.
[0071] Further, the above steps, the inclusive call request includes multiple data frames that can embed the first voice header, including:
[0072] Embed different called party identifiers into multiple data frames in the inclusive call request in a preset order.
[0073] In one embodiment, different called party identifiers can be cyclically embedded into multiple data frames in chronological order or priority order. When different called party identifiers are cyclically embedded into multiple data frames in chronological order, they can be cyclically nested in the order of the call establishment time of the called parties. For example, when the calling party A is in a call maintenance state with the called party B and initiates an inclusive call request to the called party C, since the called party B established the call earlier than the called party C, the identifier of the called party B can be embedded in the current data frame first, and then the identifier of the called party C can be embedded in the next data frame, and so on, to achieve the cyclic embedding of the identifiers of the called party B and the called party C. When different called party identifiers are cyclically embedded into multiple data frames in priority order, they can be cyclically nested according to the service priorities of the called parties. For example, when the calling party A is in a call maintenance state with the called party B and initiates an inclusive call request to the called party C, assuming that the service priority of the called party C is higher than that of the called party B, then the identifier of the called party C can be embedded in the current data frame first, and then the identifier of the called party B can be embedded in the next data frame, and so on, to achieve the cyclic embedding of the identifiers of the called party B and the called party C. In this way, when there are multiple called parties, the establishment of an inclusive call between the calling party and multiple called parties can be achieved by cyclically embedding multiple called party identifiers into multiple data frames in the inclusive call request.
[0074] Further, referring to Figure 3 , after step 103 of sending an inclusive call request to the called party, the method further includes:
[0075] Step 104, receiving a callback request initiated by any called party, where the callback request refers to a call request sent by the called party to the calling party according to the inclusive call request sent by the calling party.
[0076] Specifically, the above callback request refers to a call request sent by the called party to the calling party according to the inclusive call request sent by the calling party. It should be noted that this callback request also includes multiple data frames that can be embedded in the first voice header. The embedding method of the inclusive call identifier and the callback object identifier in this callback request is the same as the embedding method of the inclusive call identifier and the called party identifier in the above inclusive call request. The difference between the two is that the inclusive call request embeds the inclusive call identifier and the called party identifier; while the callback request embeds the inclusive call identifier and the callback object identifier. Here, the callback object can be other terminals except the initiator of the callback request, including the calling party or the called party of the inclusive call. Assuming that the first called party is a terminal, the callback object includes the calling party and the second called party. At this time, the FullLinkControlOpcode (abbreviated as FLCO) and the TargetAddress in the first voice header cyclically carry the identifiers of the calling party and the second called party. In this way, both the calling party and the second called party can receive the callback request from the first called party and determine whether the embedded callback object identifier is the same as their own identifier according to the callback request. If they are the same, a callback is established.
[0077] In this embodiment, after the calling party establishes an inclusive call with the called party, it can also receive a callback request initiated by any called party and establish a callback according to the callback request. In this way, it is convenient for the called party to send a voice response to the calling party after receiving the audio information sent by the calling party.
[0078] Referring to Figure 4 , Figure 4 is a schematic flowchart of another method for establishing an inclusive call provided by an embodiment of the present application. As Figure 4 shown, this method for establishing an inclusive call is applied to the called party, and the method may specifically include the following steps:
[0079] Step 401, receiving an inclusive call request sent by the calling party, where the inclusive call request includes multiple data frames that can be embedded in the first voice header. The first voice header includes an inclusive call identifier and a called party identifier. The inclusive call identifier is used to indicate whether this call is an inclusive call, and the called party identifier is used to indicate the identifier of at least one called party participating in this call. The data frames include voice superframes carrying audio information and at least one voice header frame before all voice superframes.
[0080] It should be noted that the method for establishing an inclusive call can be applied to any called party, that is, the first called party or the second called party. When the calling party is in a call maintenance state with the second called party, it can receive an instruction to establish an inclusive call, and then obtain the audio information collected by the calling party and the called party information based on the call maintained by the calling party and the instruction to establish an inclusive call. Then, an inclusive call request is generated according to the audio information and the called party information, and the inclusive call request is sent to the called party. In this way, the called party can receive the inclusive call request sent by the calling party. The specific implementation process of each of the above steps has been described in detail in the above embodiments and will not be elaborated here one by one.
[0081] Step 402: Obtain an inclusive call identifier and a called party identifier, and receive a voice data service based on the inclusive call identifier and the called party identifier.
[0082] In this step, after the called party receives the inclusive call request sent by the calling party, it can obtain the inclusive call identifier and the called party identifier from the inclusive call request, and cache and / or play the audio information based on the inclusive call identifier and the called party identifier to receive the voice data service of the calling party.
[0083] In this embodiment, the calling party can obtain the audio information and the called party information according to the received instruction to establish an inclusive call, and then generate and send an inclusive call request according to the audio information and the called party information. In this way, the called party can establish an inclusive call with the calling party according to the inclusive call request and receive the voice data service of the calling party without the participation of the system side, thereby realizing the inclusive call function in the normal mode without a system to make up for the lack of the inclusive call function in the normal mode.
[0084] Further, the above step 402, receiving a voice data service based on the inclusive call identifier and the called party identifier, includes:
[0085] Determine whether its own identifier exists in the voice header frame of the inclusive call request;
[0086] When the inclusive call identifier exists in the received inclusive call request and its own identifier exists in the voice header frame, save the identifiers of other called parties, and receive and play the audio information in all voice superframes in this inclusive call.
[0087] In one embodiment, after receiving an inclusive call request, the called party may parse the inclusive call request to obtain an inclusive call identifier and a called party identifier. Among them, when the called party is a terminal group, the called party identifier may be a group call ID, and the member terminals of the group can use the group call ID as their own identifier; when the called party is a terminal, the called party identifier may be the ID identifier of the corresponding terminal. Then, it is determined whether its own identifier exists in the voice header frame of the inclusive call request. If the inclusive call identifier exists in the received inclusive call request and its own identifier exists in the voice header frame, it can be determined that all audio information in this inclusive call needs to be received. At this time, other called party identifiers can be saved, and the audio information in all voice superframes in this inclusive call can be received and played. By embedding the called party identifier in the voice header frame, the called party can quickly receive and play the audio information in all voice superframes in this inclusive call, realizing the rapid reception of voice data services.
[0088] Further, step 402 above, receiving a voice data service based on an inclusive call identifier and a called party identifier, includes:
[0089] Determine whether its own identifier exists in the voice header frame of the inclusive call request;
[0090] In the case where the inclusive call identifier exists in the received inclusive call request and its own identifier does not exist in the voice header frame, save other called party identifiers, and determine whether the called party identifier in the current voice superframe is its own identifier;
[0091] In the case where the called party identifier is its own identifier, receive and play the voice information in the current voice superframe and the audio information in all subsequent voice superframes in this inclusive call;
[0092] In the case where the called party identifier is not its own identifier, save the called party identifier in the current voice superframe and cache the audio information in the current voice superframe.
[0093] In one embodiment, after receiving an inclusive call request, the called party can parse the inclusive call request to obtain an inclusive call identifier and a called party identifier. Then, it first determines whether its own identifier exists in the voice header frame of the inclusive call request. If the received inclusive call request contains an inclusive call identifier and its own identifier does not exist in the voice header frame, then it is necessary to identify the called party identifier in the subsequent voice superframes. At this time, it can save the identifiers of other called parties and determine whether the called party identifier in the current voice superframe is its own identifier. If the called party identifier in the current voice superframe is its own identifier, it receives and plays the voice information in the current voice superframe and the audio information in all subsequent voice superframes of this inclusive call; if the called party identifier in the current voice superframe is not its own identifier, it saves the called party identifier in the current voice superframe and caches the audio information in the current voice superframe. That is to say, on the premise that the called party obtains the inclusive call identifier, as long as it recognizes its own identifier, it means that the audio information in this inclusive call is all to be received and played.
[0094] In this embodiment, since the number of voice header frames is limited, when the number of called parties is greater than the number of voice header frames, it is very likely that the called party cannot recognize its own identifier in the voice header frame. In this way, the called party can continue to identify the called party identifier in the voice superframe to achieve the reception of voice data services.
[0095] Further, in the case where the called party identifier is not its own identifier in the above step, after saving the called party identifier in the current voice superframe and caching the voice information in the current voice superframe, the method further includes:
[0096] When it is detected that the called party identifier in the subsequent voice superframe is its own identifier, the cached audio information is played.
[0097] In one embodiment, when the callee identifier in the current voice superframe is not its own identifier, it is necessary to detect the callee identifier in subsequent voice superframes. If the callee identifier in a subsequent voice superframe is detected to be its own identifier, the audio information cached by the callee is played. It should be noted that when the callee plays the cached audio information, it can be played at the normal speed. At this time, there will be a time delay between the played voice and other normally played terminals. Of course, the callee can also play the cached audio information at an accelerated speed so that the voice playing times of all terminals are synchronized finally. A method for implementing inclusive call in the conventional mode provided by this application makes up for the lack of the inclusive call function in the conventional mode and can implement the conventional inclusive call function by processing in the original Digital Mobile Radio (DMR) / Police Digital Trunking (PDT) protocol / Terrestrial Trunked Radio (TETRA) protocol. The main improvement points of this method are as follows:
[0098] 1. In the voice superframe, the B-E bursts can embed an LC header, which can carry information such as call type, caller ID, callee ID, etc. Among them, the call type can be the value of certain fields within elements such as the Full Link Control Opcode (FLCO) in the LC header. The call type can include individual call, group call, and full call; the caller address is the value in the Source Address in the LC header, and the callee address is the value in the Target Address in the LC header.
[0099] 2. When the caller initiates an inclusive call request, an inclusive call identifier is embedded in the LC header, and different callee addresses and call types are carried in a loop.
[0100] 3. When the callee parses the inclusive call request, it can determine whether the current call is an inclusive call according to the inclusive call identifier embedded in the LC header.
[0101] 4. After the callee receives the inclusive call request, it decodes and records the callee identifier in the LC header in a loop for implementing a callback.
[0102] In one embodiment, taking the individual call caller including an individual call as an example for explanation, assume that the caller A needs the caller to include the callee C. Then the interaction process among terminals A, B, and C is as Figure 5 shown. Specifically, it can include the following steps:
[0103] Step 501. Terminal A calls terminal B;
[0104] Step 502: Terminal B receives a call from Terminal A;
[0105] Step 503: When in the call maintenance state, Terminal A can initiate a call to Terminal C by means of dialing / contacts / one-key call, etc. At this time, Terminal A embeds an inclusive call identifier within the LC header (finding 1 bit out of a total of 72 bits), and cyclically carries the identification information of Terminal B and Terminal C in the LC header, that is, the LC header cyclically embeds the identifications of Terminal B and Terminal C, where the identification information is not limited to the destination address and call type.
[0106] Step 504: Terminal B receives the call from Terminal A, and decodes the inclusive call identifier and called party information embedded in the LC header. When it is found that this call is an inclusive call and is a call to itself, it receives the call and records the information of Terminal C; when it is found that this call is an inclusive call and is not a call to itself, but it has received a previous one, it continues to receive and records: the called party has Terminal C;
[0107] Step 504: Terminal C decodes the inclusive call identifier and called party embedded in the LC header. When it is found that this call is an inclusive call and is not a call to itself, it only records: the called party has Terminal B; when it is found that this call is an inclusive call and is a call to itself, it accesses the call from Terminal A and records the information of Terminal B.
[0108] In this way, Terminal A, Terminal B, and Terminal C are combined into one call, as Figure 6 shown. When the user of Terminal A finishes speaking the voice to be sent and releases the PTT button, Terminal A, Terminal B, and Terminal C enter the call maintenance state, then both Terminal B and Terminal C can initiate a callback. Here, taking Terminal C's callback to Terminal A and Terminal B as an example:
[0109] Step 506: When in the call maintenance state, Terminal C presses the PTT button, then initiates a callback to Terminal A and Terminal B. When initiating a call request, it embeds an inclusive call identifier within the LC header (finding 1 bit out of a total of 72 bits), and cyclically carries the identification information of Terminal A and Terminal B in the LC header, that is, the LC header cyclically embeds the identifications of Terminal A and Terminal B, where the identification information is not limited to the destination address and call type.
[0110] Step 507: Terminal A decodes the LC header. When Terminal A finds that this call is an inclusive call and is a call to itself, it receives the call from Terminal C and records that the called party has Terminal B; when Terminal A finds that this call is an inclusive call and is not a call to itself, but it has received a previous one, it continues to receive and records: the called party has Terminal B;
[0111] Step 508: Terminal B decodes the LC header. When Terminal B discovers that the current call is an inclusive call and is a call to itself, it receives the call from Terminal C. When Terminal B discovers that the current call is an inclusive call and is not a call to itself, it only records that the called party is Terminal A.
[0112] The method for establishing an inclusive call provided by this application improves call timeliness and convenience, and is more suitable for emergency applications. Moreover, it can provide better service performance and experience for users, better meet customer needs, and comprehensively surpass other competitors. Additionally, the method for establishing an inclusive call provided by this application has high feasibility. Through a method of pure software design, it can be implemented without increasing hardware costs and can be quickly and reliably applied to existing private network devices.
[0113] See Figure 7 , Figure 7 which is a schematic structural diagram of an inclusive call establishment device provided by an embodiment of this application. As Figure 7 shown, the inclusive call establishment device 700 is applied to the calling party of an inclusive call. The device 700 includes:
[0114] A first receiving module 701, configured to receive an inclusive call establishment instruction when the calling party is in a call maintenance state with a second called party, where the inclusive call establishment instruction includes first called party information;
[0115] A first obtaining module 702, configured to obtain the audio information collected by the calling party and the called party information according to the call maintained by the calling party and the inclusive call establishment instruction, where the called party includes a first called party and a second called party;
[0116] A sending module 703, configured to generate an inclusive call request according to the audio information and the called party information, and send the inclusive call request to the called party, where the inclusive call request includes multiple data frames that can embed a first voice header, the first voice header includes an inclusive call identifier and a called party identifier, the inclusive call identifier is used to indicate whether the current call is an inclusive call, the called party identifier is used to indicate the identifier of at least one called party participating in the current call, and the data frame includes a voice superframe carrying audio information and at least one voice header frame before all voice superframes.
[0117] Further, the sending module 703 includes:
[0118] A sending sub-module, configured to initiate an inclusive call request to each terminal and / or each terminal group among N terminals and / or M terminal groups when the called party includes N terminals and / or M terminal groups, and the called party identifier includes the identifiers corresponding to N terminals and / or M terminal groups;
[0119] where N and M are integers greater than or equal to 1.
[0120] Further, the second called party includes a terminal or a group of terminals that are in the process of call establishment with the calling party, and a terminal or a group of terminals that are in the process of a call after establishing a call with the calling party.
[0121] Further, the sending module 703 further includes:
[0122] An embedding sub-module, configured to cyclically embed different called party identifiers into multiple data frames in the inclusive call request in a preset order.
[0123] Further, the apparatus 700 further includes:
[0124] A second receiving module, configured to receive a callback request initiated by any called party, where the callback request refers to a call request sent by the called party to the calling party according to the inclusive call request sent by the calling party.
[0125] It should be noted that the inclusive call establishment apparatus 700 can implement the steps of the inclusive call establishment method provided by the foregoing Figure 1 method embodiment shown, and can achieve the same technical effects, which will not be elaborated here one by one.
[0126] See Figure 8 , Figure 8 which is a schematic structural diagram of another inclusive call establishment apparatus provided by an embodiment of the present application. As Figure 8 shown, the inclusive call establishment apparatus 800 is applied to the called party, and the apparatus 800 includes:
[0127] A third receiving module 801, configured to receive an inclusive call request sent by the calling party, where the inclusive call request includes multiple data frames that can embed a first voice header, the first voice header includes an inclusive call identifier and a called party identifier, the inclusive call identifier is used to indicate whether the current call is an inclusive call, the called party identifier is used to indicate the identifier of at least one called party participating in the current call, and the data frame includes a voice superframe carrying audio information and at least one voice header frame before all voice superframes;
[0128] A fourth receiving module 802, configured to obtain the inclusive call identifier and the called party identifier, and receive voice data services based on the inclusive call identifier and the called party identifier.
[0129] Further, the fourth receiving module 802 includes:
[0130] A first determination sub-module, configured to determine whether its own identifier exists in the voice header frame in the inclusive call request;
[0131] The first processing sub-module is configured to save the other called party identifiers and receive and play the audio information in all voice super-frames in the current inclusive call when there is an inclusive call identifier in the received inclusive call request and its own identifier is present in the voice header frame.
[0132] Further, the fourth receiving module 802 further includes:
[0133] The second determination sub-module is configured to determine whether its own identifier is present in the voice header frame in the inclusive call request;
[0134] The second processing sub-module is configured to save the other called party identifiers and determine whether the called party identifier in the current voice super-frame is its own identifier when there is an inclusive call identifier in the received inclusive call request and its own identifier is not present in the voice header frame;
[0135] The third processing sub-module is configured to receive and play the voice information in the current voice super-frame and the audio information in all subsequent voice super-frames in the current inclusive call when the called party identifier is its own identifier;
[0136] The fourth processing sub-module is configured to save the called party identifier in the current voice super-frame and cache the audio information in the current voice super-frame when the called party identifier is not its own identifier.
[0137] Further, the fourth receiving module 802 further includes:
[0138] The fifth processing sub-module is configured to play the cached audio information when it is detected that the called party identifier in the subsequent voice super-frame is its own identifier.
[0139] It should be noted that the inclusive call establishment device 800 can implement the steps of the inclusive call establishment method provided in the foregoing method embodiments, and can achieve the same technical effects, which will not be elaborated herein one by one. Figure 4 As shown in the figure, an embodiment of the present application provides an electronic device, including a processor 911, a communication interface 912, a memory 913, and a communication bus 914. Among them, the processor 911, the communication interface 912, and the memory 913 complete communication with each other through the communication bus 914.
[0140] As Figure 9 shown, the memory 913 is used to store a computer program;
[0141] In an embodiment of the present application, when the processor 911 executes the program stored in the memory 913, it implements the steps of the inclusive call establishment method provided in any one of the foregoing method embodiments.
[0142]
[0143] The embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method for establishing an inclusive call provided in any one of the foregoing method embodiments are implemented.
[0144] It should be noted that, in this document, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "comprises", "comprising" or any other variation thereof is intended to cover a non-exclusive inclusion, such that a process, method, article or device comprising a series of elements includes not only those elements, but also other elements not expressly listed, or elements inherent to such process, method, article or device. Without further limitation, an element defined by the phrase "comprising a..." does not exclude the presence of additional identical elements in the process, method, article or device comprising the element.
[0145] The above are only specific embodiments of the present invention, enabling those skilled in the art to understand or implement the present invention. Various modifications to these embodiments will be obvious to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present invention. Therefore, the present invention will not be limited to these embodiments shown herein, but will be accorded the widest scope consistent with the principles and novel features claimed herein.
Claims
1. A method for establishing an inclusive call, characterized in that, applied to the calling party of the inclusive call, the method includes: When the calling party is in a call maintenance state with the second called party, receive an instruction to establish an inclusive call, wherein the instruction to establish an inclusive call contains information of the first called party; Obtain the audio information collected by the calling party and the called party information according to the call maintained by the calling party and the instruction to establish an inclusive call, wherein the called party includes the first called party and the second called party; Generate an inclusive call request according to the audio information and the called party information, and send the inclusive call request to the called party, wherein the inclusive call request includes a plurality of data frames that can embed the first voice header, the first voice header includes an inclusive call identifier and a called party identifier, the inclusive call identifier is used to represent whether this call is an inclusive call, the called party identifier is used to represent the identifier of at least one of the called parties participating in this call, and the data frame includes a voice superframe carrying the audio information and at least one voice header frame before all the voice superframes.
2. The method according to claim 1, characterized in that, Sending the inclusive call request to the called party includes: In the case where the called party includes N terminals and / or M terminal groups, initiate the inclusive call request to each terminal and / or each terminal group among the N terminals and / or M terminal groups, and the called party identifier includes the identifiers corresponding to the N terminals and / or M terminal groups; wherein, N and M are integers greater than or equal to 1.
3. The method according to claim 1, characterized in that, The second called party includes a terminal or a terminal group that is in the process of establishing a call with the calling party, and a terminal or a terminal group that is in a call process after establishing a call with the calling party.
4. The method according to claim 1, characterized in that, The inclusive call request includes a plurality of data frames that can embed the first voice header, including: Embedding different called party identifiers into the plurality of data frames in the inclusive call request in a preset order in a cyclic manner.
5. The method according to claim 1, characterized in that, After sending the inclusive call request to the called party, the method further includes: Receive a callback request initiated by any one of the called parties, where the callback request refers to a call request sent by the called party to the calling party according to the inclusive call request sent by the calling party.
6. A method for establishing an inclusive call, characterized in that, Applied to the called party, the method includes: Receive an inclusive call request sent by the calling party, the inclusive call request includes a plurality of data frames that can embed the first voice header, the first voice header includes an inclusive call identifier and a called party identifier, the inclusive call identifier is used to represent whether this call is an inclusive call, the called party identifier is used to represent the identifier of at least one of the called parties participating in this call, and the data frame includes a voice superframe carrying audio information and at least one voice header frame before all the voice superframes; Obtain the inclusive call identifier and the called party identifier, and receive a voice data service based on the inclusive call identifier and the called party identifier.
7. The method according to claim 6, wherein, the receiving of the voice data service based on the inclusive call identifier and the called party identifier includes: determine whether there is its own identifier in the voice header frame in the inclusive call request; When the inclusive call identifier exists in the received inclusive call request and the own identifier exists in the voice header frame, save the other called party identifiers, and receive and play the audio information in all the voice superframes in this inclusive call.
8. The method according to claim 6, wherein, the receiving of the voice data service based on the inclusive call identifier and the called party identifier includes: determine whether there is its own identifier in the voice header frame in the inclusive call request; 0 When the inclusive call identifier exists in the received inclusive call request and the own identifier does not exist in the voice header frame, save the other called party identifiers, and determine whether the called party identifier in the current voice superframe is its own identifier; When the called party identifier is its own identifier, receive and play the voice information in the current voice superframe, and the audio information in all subsequent voice superframes in this inclusive call; 5 When the called party identifier is not its own identifier, save the called party identifier in the current voice superframe, and cache the audio information in the current voice superframe.
9. The method according to claim 8, wherein, when the called party identifier is not its own identifier, after saving the called party identifier in the current voice superframe and caching the audio information in the current voice superframe, the method further includes: 0 When it is detected that the called party identifier in the subsequent voice superframe is its own identifier, play the cached audio information.
10. An electronic device, wherein, comprises a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; the memory is used for storing a computer program; 5 the processor, when executing the program stored on the memory, implements the steps of the method for establishing an inclusive call according to any one of claims 1-5, or implements the steps of the method for establishing an inclusive call according to any one of claims 6-9.
11. A computer-readable storage medium, on which a computer program is stored, wherein, the computer program, when executed by a processor, implements the steps of the method for establishing an inclusive call according to any one of claims 1-5, 0 or implements the steps of the method for establishing an inclusive call according to any one of claims 6-9.
Citation Information
Patent Citations
A method for realizing instant recording service based on mobile communication network
CN101127949A
Trunking communication system using single-base-station multi-channel trunking communication protocol and trunking communication method
CN109429189A