Call method and device, electronic equipment and storage medium
By sending call enhancement instructions and de-duplicating and merging media stream information in weak network environments, the performance problems of traditional Volte audio and video call technology in weak network environments are solved, achieving more stable and high-quality calls.
Patent Information
- Application Number
- CN202411222404.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-02
- Publication Date
- 2025-01-21
- Estimated Expiration
- 2044-09-02
AI Technical Summary
Traditional Volte audio and video calling technology performs poorly in weak network environments, resulting in user audio and video stuttering, silent or interruption of calls, and the prior art is difficult to effectively improve the user's call quality.
By sending a call enhancement instruction when receiving a request from the calling terminal to enhance the call, the calling terminal conducts the enhanced call; receives the first media stream information and the second media stream information sent by the calling terminal, and performs de-duplication and merging Processing, determining the third media stream information, and sending it to the called terminal to make the call.
It effectively improves the user's call quality and reduces call interruption and lagging problems in weak network environments.
Smart Images

Figure CN119342162A_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of communications, and specifically relates to a communication method, device, electronic device and storage medium. Background Art
[0002] The Volte audio and video call technology used in traditional audio and video calls or middle number calls has poor capabilities in weak network confrontation. Users are prone to audio and video freezes, silence, or even call interruptions in weak network environments. In addition, traditional Volte audio and video call technology generally relies on terminal control and media protocol control to solve weak network problems. The terminal can enable RTCP messages in the call signaling to feedback the current reception and transmission status, and the sending terminal controls the bit rate and playback, but it may not necessarily effectively improve the user's call quality, and it is not necessarily that both terminals support all types of RTCP packets.
[0003] Therefore, a call method that can effectively improve the call quality of users is needed. Summary of the invention
[0004] The embodiment of the present application provides a calling method, which can effectively improve the calling quality of the user.
[0005] In the first aspect, an embodiment of the present application provides a call method, the method comprising: when receiving a request from a calling terminal to enhance a call, sending a call enhancement instruction to the calling terminal, the call enhancement instruction is used to instruct the calling terminal to perform an enhanced call; receiving first media stream information and second media stream information sent by the calling terminal, the first media stream information being the call media stream information sent by the calling terminal through a communication network, and the second media stream information being the call media stream information sent by the calling terminal through the Internet; performing de-duplication and merging processing on the first media stream information and the second media stream information to determine a third media stream information; and sending the third media stream information to the called terminal to conduct a call.
[0006] In a second aspect, an embodiment of the present application provides a call device, which includes: a first receiving module, used to send a call enhancement instruction to the calling terminal when receiving a request from the calling terminal to enhance the call, and the call enhancement instruction is used to instruct the calling terminal to perform an enhanced call; a second receiving module, used to receive first media stream information and second media stream information sent by the calling terminal, the first media stream information is the call media stream information sent by the calling terminal through a communication network, and the second media stream information is the call media stream information sent by the calling terminal through the Internet; a first determination module, used to perform de-duplication and merging processing on the first media stream information and the second media stream information to determine a third media stream information; a first sending module, used to send the third media stream information to the called terminal to conduct a call.
[0007] In a third aspect, an embodiment of the present application provides an electronic device, which includes a processor, a memory, and a program or instruction stored in the memory and executable on the processor, wherein the program or instruction, when executed by the processor, implements the steps of the method described in the first aspect.
[0008] In a fourth aspect, an embodiment of the present application provides a readable storage medium, on which a program or instruction is stored, and when the program or instruction is executed by a processor, the steps of the method described in the first aspect are implemented.
[0009] In a fifth aspect, an embodiment of the present application provides a computer program product, which, when executed by a processor, implements the steps of the method described in the first aspect.
[0010] In a sixth aspect, an embodiment of the present application provides a chip, comprising a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run a program or instruction to implement the method described in the first aspect.
[0011] In an embodiment of the present application, upon receiving a request from a calling terminal to enhance a call, a call enhancement instruction is sent to the calling terminal, wherein the call enhancement instruction is used to instruct the calling terminal to perform an enhanced call; first media stream information and second media stream information sent by the calling terminal are received, wherein the first media stream information is the call media stream information sent by the calling terminal through a communication network, and the second media stream information is the call media stream information sent by the calling terminal through the Internet; the first media stream information and the second media stream information are de-duplicated and merged to determine third media stream information; and the third media stream information is sent to the called terminal to perform a call, thereby effectively improving the user's call quality. BRIEF DESCRIPTION OF THE DRAWINGS
[0012] Figure 1 It is a flowchart of a calling method provided in an embodiment of the present application;
[0013] Figure 2 This is a schematic diagram of a call enhancement principle provided by an embodiment of the present application;
[0014] Figure 3 It is a swimming lane diagram of a calling method provided in an embodiment of the present application;
[0015] Figure 4 It is a schematic diagram of an interface display of an asynchronous call mode of a calling terminal provided in an embodiment of the application;
[0016] Figure 5 is a swimming lane diagram of the second calling method provided in an embodiment of the present application;
[0017] Figure 6 It is a structural schematic diagram of a communication device provided in an embodiment of the present application;
[0018] Figure 7 It is a structural diagram of a communication device provided in an embodiment of the present application; DETAILED DESCRIPTION
[0019] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0020] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described here, and the objects distinguished by "first", "second", etc. are generally of one type, and the number of objects is not limited. For example, the first object can be one or more. In addition, "and / or" in the specification and claims represents at least one of the connected objects, and the character " / " generally indicates that the objects associated with each other are in an "or" relationship.
[0021] The following describes in detail the calling method provided by the embodiment of the present application through specific embodiments and application scenarios in conjunction with the accompanying drawings.
[0022] Figure 1A calling method provided by an embodiment of the present invention is shown. The method can be executed by an electronic device, and the electronic device may include: a server and / or a terminal device, wherein the terminal device may be, for example, a vehicle-mounted terminal or a mobile phone terminal, and the server may be, for example, an intermediate number service platform. In other words, the method may be executed by software or hardware installed in the calling device, and the method includes the following steps:
[0023] Step 102: upon receiving a request from the calling terminal to enhance the call, sending a call enhancement instruction to the calling terminal;
[0024] The call enhancement instruction is used to instruct the calling terminal to perform an enhanced call.
[0025] When receiving a request from the calling terminal to enhance the call, the intermediate number platform sends a call enhancement instruction to the calling terminal, and the call enhancement instruction is used to instruct the calling terminal to enhance the call. In other words, the calling terminal sends a request to the intermediate number platform to enhance the call with the called terminal, and the intermediate number platform sends a call enhancement instruction to the calling terminal according to the request sent by the calling terminal, and the call enhancement instruction can be used to instruct the calling terminal to enhance the call.
[0026] Specifically, the call enhancement instruction sent by the intermediate number platform to the calling terminal can instruct the calling terminal to enter the call enhancement mode, that is, to instruct the calling terminal to send the call information to be enhanced to the intermediate number platform, so that the intermediate number platform can perform call enhancement processing based on the call information to be enhanced, thereby realizing an enhanced call between the calling terminal and the called terminal.
[0027] Step 104: Receive first media stream information and second media stream information sent by the calling terminal;
[0028] The first media stream information is call media stream information sent by the calling terminal through a communication network, and the second media stream information is call media stream information sent by the calling terminal through the Internet.
[0029] After the intermediate number platform sends a call enhancement instruction to the calling terminal, the intermediate number platform receives the call information to be enhanced sent by the calling terminal, namely, the first media stream information and the second media stream information, wherein the first media stream information is the call media stream information sent by the calling terminal through the communication network, and the second media stream information is the call media stream information sent by the calling terminal through the Internet. That is to say, after the intermediate number platform sends a call enhancement instruction to the calling terminal and causes the calling terminal to enter the call enhancement mode, the calling terminal not only sends the call media stream information to the intermediate number platform through the communication network, but also sends the call media stream information to the intermediate number platform through the Internet.
[0030] Specifically, when the calling terminal sends the call media stream information to the intermediate number platform through the communication network, the call process can be started through the native keyboard and the first media stream information can be sent to the intermediate number platform through the native call function. When the calling terminal sends the call media stream information to the intermediate number platform through the Internet, the call media stream information of the user's ongoing call can be obtained through the intermediate number APP (or other APP with integrated media stream information acquisition function) installed on the calling terminal, and the call media stream information can be sent to the intermediate number platform through the Internet.
[0031] More specifically, the call media stream information sent by the calling terminal through the communication network can be complete media stream information for a normal call, and the call media stream information sent through the Internet can be complete media stream information or partial media stream information. When obtaining and sending partial media stream information of the user's call to the intermediate number platform, the media stream information of the user's call can be obtained and sent according to a preset ratio, and then the intermediate number platform performs call enhancement on the first media stream information according to the second media stream information, wherein the preset ratio can be pre-set by the calling terminal (for example, 10%), and can also be determined by the intermediate number platform and sent to the calling terminal.
[0032] Step 106: performing de-duplication and merging processing on the first media stream information and the second media stream information to determine third media stream information;
[0033] After receiving the first media stream information and the second media stream information, the intermediate number platform performs de-duplication and merging processing on the first media stream information and the second media stream information, thereby determining the de-duplication and merging result as the third media stream information. Generally speaking, when the calling terminal sends call media stream information to the intermediate number platform through the communication network or the Internet, part of the call media stream information will be lost during the transmission process. Therefore, the intermediate number platform can de-duplication and merge the call media stream information received through the communication network and the call media stream information received through the Internet, thereby obtaining more complete user call media stream information.
[0034] Specifically, the first media stream information and the second media stream information received by the intermediate number platform are both RTP data packet information. Therefore, the intermediate number platform can sort the RTP data packets in the first media stream information and the RTP data packets in the second media stream information by TS value and remove duplicates to obtain a merged RTP data packet, that is, the third media stream information.
[0035] Step 108: Send the third media stream information to the called terminal to carry out the call.
[0036] After determining the third media stream information, the intermediate number platform sends the third media stream information to the called terminal to complete the enhanced call between the calling terminal and the called terminal.
[0037] Figure 2 It is a schematic diagram of the call enhancement principle provided by an embodiment of the present application. In terms of communication network transmission, the calling terminal A sends the first media stream information RTP1, RTP2, RTP5, and RTP10 to the core network through the call (communication network). Due to data loss during data transmission, the core network only transmits RTP1, RTP2, and RTP10 to the intermediate number platform. In terms of Internet transmission, the calling terminal A sends the second media stream information RTP1 and RTP5 to the intermediate number platform through udp (i.e., the Internet). The intermediate number platform performs de-duplication and merging processing on the received first media stream information (i.e., RTP1, RTP2, and RTP10) and the second media stream information (i.e., RTP1 and RTP5) to obtain the third media stream information (i.e., RTP1, RTP2, RTP5, and RTP10), and sends the obtained third media stream information to the called terminal B through the communication network.
[0038] The call method provided by the embodiment of the present invention sends a call enhancement instruction to the calling terminal upon receiving a request from the calling terminal to enhance the call, wherein the call enhancement instruction is used to instruct the calling terminal to enhance the call; receives first media stream information and second media stream information sent by the calling terminal, wherein the first media stream information is the call media stream information sent by the calling terminal through a communication network, and the second media stream information is the call media stream information sent by the calling terminal through the Internet; performs de-duplication and merging processing on the first media stream information and the second media stream information to determine the third media stream information; and sends the third media stream information to the called terminal to conduct the call, thereby effectively improving the call quality of the user.
[0039] In one implementation, when receiving a request from a calling terminal to enhance a call, sending a call enhancement instruction to the calling terminal (step 102), steps A1-A2 may be performed:
[0040] Step A1: receiving a call enhancement request sent by the calling terminal, and generating an intermediate number based on the call enhancement request;
[0041] The call enhancement request is used by the calling terminal to request enhancement of the call.
[0042] When the calling terminal requests an enhanced call, a call enhancement request can be sent to the calling terminal, thereby requesting the intermediate number platform to generate an intermediate number and enable the call enhancement function for the calling terminal according to the intermediate number. After receiving the call enhancement request sent by the calling terminal, the intermediate number platform can generate an intermediate number based on the call enhancement request and implement the call enhancement function through the intermediate number.
[0043] Specifically, the call enhancement request sent by the user may be:
[0044] {
[0045] "caller":"86137xxxx0292",#caller number
[0046] "callee":"86184xxxx0920",#called number
[0047] "method":"0000"
[0048] }
[0049] Step A2: Send the intermediate number to the calling terminal, so that the calling terminal sends a call request to the called terminal through the intermediate number and performs an enhanced call.
[0050] The intermediate number platform sends the intermediate number to the calling terminal, and then the calling terminal sends a call request to the called terminal through the intermediate number and conducts an enhanced call. The intermediate number information sent by the intermediate number platform to the calling terminal can be:
[0051] {
[0052] "telX":"86170xxxx0662",#Intermediate number available
[0053] "Code":"0000"
[0054] }
[0055] Specifically, after receiving the intermediate number, the calling terminal dials the intermediate number (ie, 86170xxxx0662) to send the call media stream information to the intermediate number platform, and then the intermediate number platform performs call enhancement processing based on the received media stream information.
[0056] In one implementation, before receiving the first media stream information and the second media stream information sent by the calling terminal (step 104), steps B1-B2 may also be performed:
[0057] Step B1: receiving call answering information sent by the called terminal;
[0058] The call answering information is the call answering information generated by the called terminal after receiving the call request sent by the calling terminal.
[0059] The intermediate number platform receives the call answering information sent by the called terminal, which is the information generated by the called terminal to answer the call after receiving the call request sent by the calling terminal. In other words, the calling terminal sends a call request to the called terminal through the intermediate number platform, and the called terminal sends the call answering information to the intermediate number platform after answering the call.
[0060] Step B2: generating an information statistics instruction based on the call answering information, and sending the information statistics instruction to the calling terminal;
[0061] The information statistics instruction is used to instruct the calling terminal to collect statistics on the media stream information sent by it.
[0062] After receiving the call answering information sent by the called terminal, the intermediate number platform generates an information statistics instruction based on the call answering information and sends the information statistics instruction to the calling terminal. After receiving the information statistics instruction sent by the intermediate number platform, the calling terminal can not only determine that the called terminal has received the call request and has a call with the called terminal based on the information statistics instruction, but also can count the call media stream information sent to the called terminal.
[0063] Specifically, the calling terminal counts the sent media stream information and determines the statistical information as RTCP information. The information statistics instruction generated by the intermediate number platform can instruct the calling terminal to enable the sender and receiver report, PLI key frame loss, and FIR retransmission functions of the calling RTCP, and add the SDP description line as follows:
[0064] a=rtcp-fb:*nack#Open nack
[0065] a=rtcp-fb:*ccm fir#Open fir retransmission
[0066] a=rtcp-fb:*ccm tmmbr#Open dynamic bitrate control
[0067] That is to say, after the intermediate number platform sends an information statistics instruction to the calling terminal, the calling terminal can not only generate statistical information (i.e., RTCP information) when the called terminal supports RTCP and related capabilities, but also generate statistical information (i.e., RTCP information) when the called terminal does not support RTCP and related capabilities.
[0068] In one implementation, after performing de-duplication and merging processing on the first media stream information and the second media stream information to determine the third media stream information (step 106), steps C1-C3 may also be performed:
[0069] Step C1: receiving media stream statistics information sent by the calling terminal;
[0070] The media stream statistical information is used to represent information determined by the calling terminal through statistics of the media stream information sent by the calling terminal.
[0071] After determining the third media stream information, the intermediate number platform receives the media stream statistical information sent by the calling terminal, wherein the media stream statistical information is used to represent information determined by the calling terminal by performing statistics on the media stream information sent by the calling terminal.
[0072] That is to say, after the calling terminal sends the first media stream information and the second media stream information to the intermediate number platform, the calling terminal will also perform statistics on the sent first media stream information and / or second media stream information, and then determine the media stream statistical information, and send the determined media stream statistical information to the intermediate number platform, wherein the media stream statistical information may be information determined by the calling terminal based on the first media stream information, or information determined based on the second media stream information, or information determined based on the first media stream information and the second media stream information.
[0073] Step C2: determining a media stream information packet loss rate based on the media stream statistical information and the third media stream information;
[0074] The media stream information packet loss rate is used to represent the packet loss rate of the third media stream information.
[0075] After receiving the media stream statistical information sent by the calling terminal, the intermediate number platform determines the media stream information packet loss rate based on the media stream statistical information and the third media stream information, wherein the media stream information packet loss rate is used to characterize the packet loss rate of the third media stream information.
[0076] Specifically, the media stream statistical information includes information about the number of call media stream information sent by the calling terminal, such as the number of RTP data packets sent. The intermediate number platform can determine information about the number of call media stream information after enhancement based on the third media stream information, such as the number of enhanced RTP data packets, and then determine the packet loss rate of the third media stream information, where the packet loss rate of the third media stream information = (number of RTP data packets sent - number of RTP data packets after enhancement) / number of RTP data packets sent.
[0077] Step C3: When the packet loss rate of the media stream information is less than a first preset threshold, the third media stream information is sent to the called terminal.
[0078] After determining the media stream information packet loss rate, the central number platform sends the third media stream information to the called terminal when the media stream information packet loss rate is less than a first preset threshold, wherein the first preset threshold is a threshold set in advance according to actual conditions.
[0079] Specifically, when the packet loss rate of the media stream information is less than the first preset threshold, it means that the enhanced call stream information can meet the normal communication of the user, and then the enhanced third media stream information can be sent to the called terminal.
[0080] In one implementation, after performing de-duplication and merging processing on the first media stream information and the second media stream information to determine the third media stream information (step 106), steps D1-D3 may also be performed:
[0081] Step D1: receiving first statistical information and second statistical information sent by the calling terminal;
[0082] The first statistical information is used to represent information determined by the calling terminal through statistics on the first media stream information sent, and the second statistical information is used to represent information determined by the calling terminal through statistics on the second media stream information sent.
[0083] After determining the third media stream information, the intermediate number platform receives the first statistical information and the second statistical information sent by the calling terminal, wherein the first statistical information is information determined by the calling terminal performing statistics on the first media stream information, and the second statistical information is information determined by the calling terminal performing statistics on the second media stream information.
[0084] That is to say, after the calling terminal sends the first media stream information and the second media stream information to the intermediate number platform, the calling terminal will also perform statistics on the first media stream information and the second media stream information to respectively determine the first statistical information and the second statistical information, and send the first statistical information and the second statistical information to the intermediate number platform.
[0085] Specifically, when the calling terminal determines and sends the first statistical information, it can obtain and send the first statistical information (i.e., RTCP data packet) to the intermediate number platform according to the normal call process. When the calling terminal determines and sends the second statistical information, it can count the second media stream information sent by the intermediate number APP of the calling terminal, construct and send the second statistical information (i.e., RTCP data packet).
[0086] Step D2: determining statistical data based on the first statistical information and the second statistical information;
[0087] Among them, the statistical data includes one or more of a first packet loss rate, a second packet loss rate and a line delay. The first packet loss rate is used to characterize the packet loss rate of the first media stream information, the second packet loss rate is used to characterize the packet loss rate of the second media stream information, and the line delay is used to characterize the difference between the time required for the first media stream information to reach the intermediate number platform and the time required for the second media stream information to reach the intermediate number platform.
[0088] That is, after obtaining the first statistical information and the second statistical information, the intermediate number platform can determine one or more of the first packet loss rate, the second packet loss rate and the line delay according to the first statistical information and the second statistical information.
[0089] Specifically, the intermediate number platform can determine the first packet loss rate and the time required for the first media stream information to reach the intermediate number platform based on the first statistical information, determine the second packet loss rate and the time required for the second media stream information to reach the intermediate number platform based on the second statistical information, and then determine the line delay based on the time required for the first media stream information to reach the intermediate number platform and the time required for the second media stream information to reach the intermediate number platform.
[0090] Step D3: When the statistical data meets a preset condition, the third media stream information is sent to the called terminal.
[0091] The preset conditions include one or more of the following: the first packet loss rate is less than a third preset threshold, the second packet loss rate is less than a fourth preset threshold, and the line delay is less than a fifth preset threshold.
[0092] When the statistical data determined based on the first statistical information and the second statistical information meets the preset conditions, the third media stream information is sent to the called terminal, wherein the preset conditions are based on one or more of the first packet loss rate, the second packet loss rate and the line delay. In other words, the central number platform can judge the data included in the statistical data, that is, when the statistical data is the line delay, the intermediate number platform can send the third media stream information to the called terminal when the line delay is less than the fifth preset threshold, and when the statistical data is the first packet loss rate and the second packet loss rate, the intermediate number platform can send the third media stream information to the called terminal when the first packet loss rate is less than the third preset threshold and the second packet loss rate is less than the fourth preset threshold.
[0093] In one implementation, after receiving the media stream statistical information sent by the calling terminal (step C1), steps E1-E3 may also be performed:
[0094] Step E1: determining a caller conversation level based on the media stream statistical information;
[0095] The calling call level is used to represent the call quality level of the calling terminal.
[0096] After receiving the media stream statistics information sent by the calling terminal, the intermediate number platform determines the call quality level of the calling terminal based on the media stream statistics information, wherein the call quality level of the calling terminal is used to characterize the call quality level of the calling terminal. In other words, the intermediate number platform can determine the quality level of the call made by the calling terminal based on the media stream statistics information of the calling terminal.
[0097] Specifically, when the intermediate number platform determines the call quality level of the calling terminal based on the media stream statistical information, the intermediate number platform can directly determine the current call quality of the calling terminal based on the information included in the media stream statistical information, and then determine the current call quality as the calling call level. It can also determine the historical call quality level of the calling terminal based on the media stream information, and then determine the historical call quality level as the calling call level.
[0098] Step E2: determining a first acquisition ratio based on the caller conversation level, and further determining a first acquisition instruction according to the first acquisition ratio;
[0099] The first acquisition instruction is used to instruct the calling terminal to acquire call media stream information based on the first acquisition ratio.
[0100] After determining the caller's call level, the intermediate number platform determines a first acquisition ratio according to the caller's call level, and then determines a first acquisition instruction according to the first acquisition ratio, wherein the first acquisition instruction is used to instruct the calling terminal to obtain call media stream information based on the first acquisition ratio.
[0101] Specifically, when the intermediate number platform determines the first acquisition ratio according to the calling terminal level, the first acquisition ratio can be set to be negatively correlated with the calling call level, that is, the higher the calling call level quality, the lower the first acquisition ratio is determined.
[0102] Step E3: Send the first acquisition instruction to the calling terminal, so that the calling terminal sends the call media stream information acquired based on the first acquisition ratio to the intermediate number platform via the Internet.
[0103] After determining the first acquisition instruction, the intermediate number platform sends the first acquisition instruction to the calling terminal so that the calling terminal obtains the call media stream information according to the first acquisition ratio, and sends the call media stream information obtained according to the first acquisition ratio to the intermediate number platform via the Internet.
[0104] That is to say, when the calling terminal obtains the call media stream information, i.e., the second media stream information, sent to the intermediate number platform via the Internet, it can obtain the call media stream information according to a preset first acquisition ratio. The first acquisition ratio is determined by the calling terminal according to the first acquisition instruction sent by the intermediate number platform, and the first acquisition instruction is used to instruct the calling terminal to obtain the call media stream information according to the first acquisition ratio, and send the obtained call media stream information (i.e., the second media stream information) to the intermediate number platform.
[0105] In one implementation, the determining the calling call level based on the media stream statistical information (step E1) may execute steps F1-F3:
[0106] Step F1: determining first base station information based on the media stream statistical information;
[0107] The first base station information is the base station information of the first base station to which the calling terminal is connected when making a call.
[0108] The intermediate number platform determines the first base station information based on the acquired media stream statistical information. The first base station information is the base station information of the first base station connected when the calling terminal makes a call. In other words, the intermediate number platform determines the base station information of the first base station used by the calling terminal when making a call included in the media stream statistical information, wherein the base station information of the first base station includes the ID information of the first base station. Specifically, the media stream statistical information sent by the calling terminal includes PANI information, and then the intermediate number platform can determine the ID information of the base station connected to the calling terminal based on the PANI information.
[0109] Step F2: determining historical terminal call information based on the first base station information;
[0110] The historical terminal call information includes historical normal call information and historical abnormal call information of the first base station.
[0111] After determining the first base station information, the intermediate number platform determines the historical terminal call information based on the first base station information. The historical terminal call information includes the historical normal call information and historical abnormal call information of the first base station. In other words, the intermediate number base station determines the historical normal call information and historical abnormal call information of the historical calls conducted through the first base station based on the ID information of the first base station.
[0112] Specifically, when determining the historical terminal call information based on the first base station information, the historical normal call information and historical abnormal call information of all terminals that made calls through the first base station can be determined based on the first base station information, and the historical normal call information and historical abnormal call information of the calling terminal that made calls through the first base station can also be determined. For example, based on the ID information of the first base station and the mobile phone number of the user making the call through the calling terminal, the call volume S1 and the number of bad call signals S2 of the historical call data made by the user through the first base station can be queried.
[0113] Step F3: determining the abnormal call ratio based on the historical normal call information and the historical abnormal call information, and then determining the calling call level according to the abnormal call ratio.
[0114] After determining the historical terminal call information (i.e., historical normal call information and historical abnormal call information), the intermediate number platform determines the abnormal call ratio based on the historical normal call information and the historical abnormal call information, i.e., abnormal call ratio = historical abnormal call number / (historical normal call number + historical abnormal call number). After determining the abnormal call ratio, the intermediate number platform determines the caller call level based on the abnormal call ratio. For example, the higher the abnormal call ratio is, the lower the caller call level is.
[0115] Specifically, the intermediate number platform can multiply the determined abnormal call ratio K by the proportional coefficient to determine the growth step P, wherein the proportional coefficient is a preset value, and the growth step is used to characterize the growth rate of the first preset ratio, which is the ratio of the call media stream information obtained by the calling terminal.
[0116] Figure 3 is a swimming lane diagram of a second communication method provided in an embodiment of this specification, such as Figure 3 As shown, the swim lane diagram includes:
[0117] Step 3.1: The calling terminal sends a call enhancement request to the intermediate number platform;
[0118] The call enhancement request is used by the calling terminal to request enhancement of the call.
[0119] Step 3.2: The intermediate number platform generates an intermediate number based on the received call enhancement request;
[0120] Step 3.3: The intermediate number platform sends the intermediate number to the calling terminal;
[0121] Step 3.4: The calling terminal sends a first call request to the intermediate number platform based on the intermediate number;
[0122] Among them, the first call request is used to request the intermediate number platform to send a second call request to the called terminal based on the intermediate number, and the second call request is used to request the called terminal to call with the intermediate number.
[0123] Step 3.5: The intermediate number platform sends a second call request to the called terminal;
[0124] Step 3.6: The called terminal sends call answering information to the intermediate number platform;
[0125] The call answering information is information generated when the called terminal answers the call.
[0126] Step 3.7: The intermediate number platform generates information statistics instructions based on the call answering information;
[0127] The information statistics instruction is used to instruct the calling terminal to collect statistics on the media stream information sent by it;
[0128] Step 3.8: The intermediate number platform sends the information statistics instruction to the calling terminal;
[0129] Step 3.9: After the calling terminal receives the information statistics instruction, the calling terminal sends the first media stream information, the second media stream information and the media stream statistics information to the intermediate number platform;
[0130] The first media stream information is call media stream information sent by the calling terminal through the communication network, the second media stream information is call media stream information sent by the calling terminal through the Internet, and the media stream statistical information is used to represent information determined by the calling terminal through statistics on the media stream information sent by it.
[0131] Step 3.10: The intermediate number platform receives the first media stream information and the second media stream information, and performs de-duplication and merging processing on the first media stream information and the second media stream information to determine the third media stream information;
[0132] Step 3.11: The intermediate number platform receives the media stream statistical information, and determines the media stream information packet loss rate based on the media stream statistical information and the third media stream information;
[0133] Step 3.12: When the packet loss rate of the media stream information is less than a first preset threshold, sending the third media stream information to the called terminal to make a call;
[0134] Step 3.13: The intermediate number platform determines the first base station information based on the media stream statistical information;
[0135] The first base station information is the base station information of the first base station to which the calling terminal is connected when making a call;
[0136] Step 3.14: The intermediate number platform determines historical terminal call information based on the first base station information;
[0137] The historical terminal call information includes historical normal call information and historical abnormal call information of the first base station;
[0138] Step 3.15: The intermediate number platform determines the abnormal call ratio based on the historical abnormal call information and the historical abnormal call information included in the historical terminal call information, and further determines the calling call level according to the abnormal call ratio;
[0139] The calling call level is used to represent the call quality level of the calling terminal.
[0140] Step 3.16: The intermediate number platform determines a first acquisition ratio based on the call level of the calling party, and further determines a first acquisition instruction according to the first acquisition ratio;
[0141] The first acquisition instruction is used to instruct the calling terminal to acquire call media stream information based on the first acquisition ratio.
[0142] Step 3.17: The intermediate number platform sends the first acquisition instruction to the calling terminal;
[0143] Step 3.18: The calling terminal obtains the call media stream information based on the first acquisition ratio included in the first acquisition instruction, and sends the obtained call media stream information to the intermediate number platform via the Internet.
[0144] In the embodiments of the specification, the call level of the caller is determined according to the packet loss rate of the media stream information, and a first acquisition instruction is determined according to the call level of the caller, so that the calling terminal obtains the media stream information sent through the Internet according to the first acquisition ratio included in the first acquisition instruction, and the ability to enhance the signal of the calling terminal can be flexibly controlled according to the current call level of the calling terminal.
[0145] In one implementation, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information (step C2), steps G1-G2 may also be performed:
[0146] Step G1: When the packet loss rate of the media stream information is less than a second preset threshold, sending the first media stream information to the called terminal to make a call;
[0147] The second preset threshold is smaller than the first preset threshold.
[0148] After determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information, the intermediate number platform can also send the first media stream information to the called terminal to make a call when the media stream information packet loss rate is less than a second preset threshold, wherein the second preset threshold is less than the first preset threshold.
[0149] That is to say, when the media stream information packet loss rate is less than the second preset threshold, it can be determined that the current communication network call signal of the calling terminal is good, so the current call of the calling terminal does not need to be enhanced, and the call media stream information sent by the calling terminal through the communication network is directly sent to the called terminal.
[0150] Step G2: When the packet loss rate of the media stream information is greater than the first preset threshold, the second media stream information is sent to the called terminal to conduct a call.
[0151] After determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information, the intermediate number platform can also send the third media stream information to the called terminal when the media stream information packet loss rate is greater than the first preset threshold value to make a call. In other words, when the media stream information packet loss rate is greater than the first preset threshold value, it can be determined that the communication network call signal of the current calling terminal is poor, and therefore, the call media stream information sent by the receiving calling terminal through the Internet can be directly sent to the called terminal.
[0152] Specifically, after determining the media stream information packet loss rate, the intermediate number platform determines the relationship between the media stream information packet loss rate and the first preset threshold and the second preset threshold, and then when the media stream information packet loss rate is less than the second preset threshold, the first media stream information is sent to the called terminal; when the media stream information packet loss rate is greater than the second preset threshold but less than the first preset threshold, the third media stream information is sent to the called terminal; when the media stream information packet loss rate is greater than the first preset threshold, the second media stream information is sent to the called terminal.
[0153] In one implementation, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information (step C2), steps H1-H4 may also be performed:
[0154] Step H1: When the packet loss rate of the media stream information is greater than the first preset threshold, sending a calling asynchronous call prompt to the calling terminal;
[0155] The calling asynchronous call prompt is used to remind the calling terminal to make an asynchronous call.
[0156] After determining the media stream information packet loss rate, the intermediate number platform can also send a caller asynchronous call prompt to the calling terminal when the media stream information packet loss rate is greater than a first preset threshold, wherein the caller asynchronous call prompt is used to remind the calling terminal to make an asynchronous call. In other words, when the media stream information packet loss rate is greater than the first preset threshold, it can be determined that the current communication network signal of the calling terminal is poor, and therefore an asynchronous call prompt is sent to the calling terminal, thereby prompting the calling terminal to make an asynchronous call mode.
[0157] After the calling terminal enters the asynchronous call mode, the calling terminal can first save the user's call media stream information locally, and after the user confirms that the call media stream information input is completed, send the complete call media stream information to the intermediate number platform via the Internet.
[0158] Specifically, after the calling terminal enters the asynchronous call mode, the intermediate number platform can also send a prompt message to the called terminal. The prompt message is used to prompt the called terminal that the calling terminal has entered the asynchronous call mode. For example, the intermediate number platform negotiates with the called party to form a video call and plays the current calling status text display information. The text display information can be "The other party has entered the quasi-real-time call mode, the other party is typing, please wait" and other content.
[0159] Step H2: receiving first call information sent by the calling terminal;
[0160] The first call information is complete call information sent by the calling terminal.
[0161] After sending the asynchronous call prompt, the intermediate number platform receives the first call information sent by the calling terminal, wherein the first call information sends complete call information to the calling terminal. That is, after receiving the asynchronous call prompt from the calling terminal, the calling terminal packages the call content to be sent input by the user into a file format, and sends the packaged file to the intermediate number platform via the Internet.
[0162] Specifically, the calling terminal can generate text, voice, and video messages through the APP, such as recording video information by clicking the video recording button in the APP, capturing input voice information through the APP, and saving the voice information and video information into a file, i.e., the first call information. After generating the first call information, the calling terminal can send the text, voice, and video information to the intermediate number platform through the Http protocol, and the intermediate number platform will cache the current message completely and determine the first call information.
[0163] Step H3: converting the first call information into media stream information to obtain fourth media stream information;
[0164] After receiving the first call information, the intermediate number platform converts the first call information into media stream information to obtain the fourth media stream information. That is, the calling terminal converts the overall call media stream information to be sent to the called terminal into the first call information, and sends the first call information to the intermediate number platform via the Internet. The intermediate number platform receives the first call information and converts the first call information into the completed call media stream information, i.e., the fourth media stream information.
[0165] Step H4: Send the fourth media stream information to the called terminal to conduct a call.
[0166] After determining the fourth media stream information, the intermediate number platform sends the fourth media stream information to the called terminal, thereby completing the call between the calling terminal and the called terminal.
[0167] Figure 41 is a schematic diagram of an interface display of an asynchronous call mode of a calling terminal provided in an embodiment of the present specification, such as Figure 4 As shown, after the calling terminal receives the calling asynchronous call prompt sent by the intermediate number platform, the intermediate number platform can negotiate with the calling terminal, send a Bye request, close the communication network telephone connection of the calling terminal, and trigger the calling terminal APP to pop up a chat dialog box, that is, the calling terminal asynchronous call mode interface. The user can send a text message to the called terminal through the first button in the chat dialog box, send a voice message to the called terminal through the second button, and send a video message to the called terminal through the third button.
[0168] In one implementation, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information (step C2), steps I1-I4 may also be performed:
[0169] Step I1: When the packet loss rate of the media stream information is greater than the first preset threshold, sending a called asynchronous call prompt to the called terminal;
[0170] The called asynchronous call prompt is used to remind the called terminal to make an asynchronous call.
[0171] After determining the media stream information packet loss rate, the intermediate number platform can also send a called asynchronous call prompt to the called terminal when the media stream information packet loss rate is greater than a first preset threshold, wherein the called asynchronous call prompt is used to remind the called terminal to make an asynchronous call. In other words, when the media stream information packet loss rate is greater than the first preset threshold, it can be determined that the current communication network signal of the calling terminal is poor. At this time, the media stream information to be sent by the calling terminal can be sent as a whole, so it is necessary to remind the called terminal to enter the asynchronous call mode, prompt the called terminal to wait for the intermediate number platform to send the media stream information, or remind the called terminal to send the call media stream information to the calling terminal in the asynchronous call mode.
[0172] Step I2: receiving fifth media stream information sent by the called terminal;
[0173] The fifth media stream information is the media stream information sent by the called terminal.
[0174] After reminding the called terminal to enter the asynchronous call mode, the intermediate number platform receives the media stream information sent by the called terminal, that is, the fifth media stream information.
[0175] Specifically, after entering the asynchronous call mode, the called terminal can prompt the intermediate number platform to start and end the recording of media stream information by respectively entering the first preset character and the second preset character in the call keyboard, wherein the first preset character and the second preset character can be the same or different. For example, the called user starts replying by entering "#*" in the call keyboard, and the intermediate number platform synchronously records the RTP data packet in the background. After the called user finishes replying, he enters "#*".
[0176] Step I3: converting the fifth media stream information into a format to obtain second call information;
[0177] The second call information is the complete call information sent by the called terminal.
[0178] After obtaining the fifth media stream information, the intermediate number platform converts the fifth media stream information into a format to obtain the second call information. In other words, the intermediate number platform packages the obtained fifth media stream information into a complete file, namely the second call information. For example, the intermediate number platform can convert the recorded RTP data packet into an mp4 file after the recording is finished.
[0179] Step I4: Send the second call information to the calling terminal to conduct the call.
[0180] After determining the second call information, the intermediate number platform sends the second call information to the calling terminal to conduct a call between the called terminal and the calling terminal. For example, the intermediate number platform sends the converted mp4 file to the calling terminal.
[0181] Figure 5 is a swimming lane diagram of a third communication method provided in an embodiment of this specification, such as Figure 5 As shown, the swim lane diagram includes:
[0182] Step 5.1: The calling terminal sends a call enhancement request to the intermediate number platform;
[0183] Among them, the call enhancement request is used to request the intermediate number platform to perform call enhancement on the calling terminal.
[0184] Step 5.2: The intermediate number platform sends a call enhancement instruction to the calling terminal;
[0185] The call enhancement instruction is used to instruct the calling terminal to perform an enhanced call.
[0186] Step 5.3: The calling terminal sends the first media stream information, the second media stream information and the media stream statistical information to the intermediate number platform;
[0187] Among them, the first media stream information is the call media stream information sent by the calling terminal through the communication network, the second media stream information is the call media stream information sent by the calling terminal through the Internet, and the media stream statistical information is used to represent the information determined by the calling terminal through statistics on the media stream information it sends.
[0188] Step 5.4: The intermediate number platform performs de-duplication and merging processing on the first media stream information and the second media stream information to determine the third media stream information;
[0189] Step 5.5: The intermediate number platform determines the media stream information packet loss rate based on the media stream statistical information and the third media stream statistical information;
[0190] The media stream information packet loss rate is used to represent the packet loss rate of the third media stream information.
[0191] Step 5.6: When the packet loss rate of the media stream information is greater than the first preset threshold, the intermediate number platform sends a calling asynchronous call prompt to the calling terminal;
[0192] The calling asynchronous call prompt is used to remind the calling terminal to make an asynchronous call.
[0193] Step 5.7: When the packet loss rate of the media stream information is greater than the first preset threshold, the intermediate number platform sends a called asynchronous call prompt to the called terminal;
[0194] The called asynchronous call prompt is used to remind the called terminal to make an asynchronous call;
[0195] Step 5.8: The calling terminal generates first call information based on the call media stream information, and sends the first call information to the intermediate number platform;
[0196] The first call information is complete call information sent by the calling terminal.
[0197] Step 5.9: The intermediate number platform converts the media stream information based on the first call information to obtain fourth media stream information;
[0198] Step 5.10: The intermediate number platform sends the fourth media stream information to the called terminal;
[0199] Step 5.11: The called terminal sends the fifth media stream information to the intermediate number platform;
[0200] The fifth media stream information is the media stream information sent by the called terminal.
[0201] Step 5.12: The intermediate number platform performs format conversion based on the fifth media stream information to obtain the second call information;
[0202] The second call information is the complete call information sent by the called terminal.
[0203] Step 5.13: The intermediate number platform sends the second call information to the calling terminal.
[0204] In the embodiments of the specification, when the communication network signal of the calling terminal is poor, that is, the media stream information packet loss rate is greater than the first preset threshold, the received first call information is converted into the fourth media stream information and sent to the called terminal, and the received fifth media stream information is converted into the second call information and sent to the calling terminal. This ensures that the calling terminal and the called terminal can have a normal call when the communication network signal of the calling terminal is poor.
[0205] It should be noted that the calling method provided in the embodiment of the present application can be executed by a calling device or a control module in the calling device for executing the calling method. In the embodiment of the present application, the calling device provided in the embodiment of the present application is described by taking the calling method executed by the calling device as an example.
[0206] Figure 6 is a schematic diagram of the structure of a communication device according to an embodiment of the present invention. Figure 6 As shown, the communication device includes: a first receiving module 602 , a second receiving module 604 , a first determining module 606 , and a first sending module 608 .
[0207] The first receiving module 602 is used to send a call enhancement instruction to the calling terminal when receiving a request from the calling terminal to enhance the call, wherein the call enhancement instruction is used to instruct the calling terminal to enhance the call;
[0208] The second receiving module 604 is used to receive the first media stream information and the second media stream information sent by the calling terminal, the first media stream information is the call media stream information sent by the calling terminal through the communication network, and the second media stream information is the call media stream information sent by the calling terminal through the Internet;
[0209] A first determining module 606, configured to perform de-duplication and merging processing on the first media stream information and the second media stream information to determine third media stream information;
[0210] The first sending module 608 is configured to send the third media stream information to the called terminal to conduct a call.
[0211] The calling device in the embodiment of the present application can be a device, or a component, integrated circuit, or chip in a terminal. The device can be a mobile electronic device or a non-mobile electronic device. For example, the mobile electronic device can be a mobile phone, a tablet computer, a laptop computer, a PDA, an in-vehicle electronic device, a wearable device, an ultra-mobile personal computer (UMPC), a netbook, or a personal digital assistant (PDA), etc. The non-mobile electronic device can be a server, a network attached storage (NAS), a personal computer (PC), a television (TV), a teller machine or a self-service machine, etc., which is not specifically limited in the embodiment of the present application.
[0212] The communication device in the embodiment of the present application may be a device having an operating system. The operating system may be an Android operating system, an iOS operating system, or other possible operating systems, which are not specifically limited in the embodiment of the present application.
[0213] The communication device provided in the embodiment of the present application can achieve Figures 1 to 5 To avoid repetition, the various processes implemented in the method embodiment are not described here.
[0214] Based on the same technical concept, an embodiment of the present application further provides an electronic device, which is used to execute the above-mentioned calling method. Figure 7 A schematic diagram of the structure of an electronic device for implementing various embodiments of the present application. The electronic device may have relatively large differences due to different configurations or performances, and may include a processor (processor) 702, a communication interface (Communications Interface) 704, a memory (memory) 706 and a communication bus 708, wherein the processor 702, the communication interface 704, and the memory 706 communicate with each other through the communication bus 708. The processor 702 may call a computer program stored in the memory 706 and executable on the processor 702 to perform the following steps:
[0215] Upon receiving a request from a calling terminal to enhance a call, sending a call enhancement instruction to the calling terminal, wherein the call enhancement instruction is used to instruct the calling terminal to enhance the call;
[0216] Receiving first media stream information and second media stream information sent by the calling terminal, wherein the first media stream information is call media stream information sent by the calling terminal through a communication network, and the second media stream information is call media stream information sent by the calling terminal through the Internet;
[0217] De-duplication and merging processing is performed on the first media stream information and the second media stream information to determine third media stream information;
[0218] The third media stream information is sent to the called terminal to carry out the call.
[0219] In one implementation, when receiving a request from a calling terminal to enhance a call, sending a call enhancement instruction to the calling terminal includes:
[0220] receiving a call enhancement request sent by the calling terminal, and generating an intermediate number based on the call enhancement request, wherein the call enhancement request is used by the calling terminal to request enhancement of the call;
[0221] The intermediate number is sent to the calling terminal, so that the calling terminal sends a call request to the called terminal through the intermediate number and performs an enhanced call.
[0222] In an implementation manner, before receiving the first media stream information and the second media stream information sent by the calling terminal, the method further includes:
[0223] Receiving call answering information sent by the called terminal, where the call answering information is information generated by the called terminal for answering the call after receiving the call request sent by the calling terminal;
[0224] An information statistics instruction is generated based on the call answering information, and the information statistics instruction is sent to the calling terminal, where the information statistics instruction is used to instruct the calling terminal to collect statistics on the media stream information sent by the calling terminal.
[0225] In an implementation manner, after performing de-overlapping and merging processing on the first media stream information and the second media stream information to determine the third media stream information, the method further includes:
[0226] Receiving media stream statistical information sent by the calling terminal, where the media stream statistical information is used to represent information determined by the calling terminal through statistics of the media stream information sent by the calling terminal;
[0227] Determine a media stream information packet loss rate based on the media stream statistical information and the third media stream information, where the media stream information packet loss rate is used to characterize the packet loss rate of the third media stream information;
[0228] When the packet loss rate of the media stream information is less than a first preset threshold, the third media stream information is sent to the called terminal.
[0229] In an implementation manner, after performing de-overlapping and merging processing on the first media stream information and the second media stream information to determine the third media stream information, the method further includes:
[0230] receiving first statistical information and second statistical information sent by the calling terminal, wherein the first statistical information is used to represent information determined by the calling terminal through statistics on the first media stream information sent, and the second statistical information is used to represent information determined by the calling terminal through statistics on the second media stream information sent;
[0231] Determine statistical data based on the first statistical information and the second statistical information, the statistical data including one or more of a first packet loss rate, a second packet loss rate and a line delay, the first packet loss rate is used to characterize the packet loss rate of the first media stream information, the second packet loss rate is used to characterize the packet loss rate of the second media stream information, and the line delay is used to characterize the difference between the time required for the first media stream information to reach the intermediate number platform and the time required for the second media stream information to reach the intermediate number platform;
[0232] When the statistical data meets a preset condition, the third media stream information is sent to the called terminal, and the preset condition includes one or more of the first packet loss rate being less than a third preset threshold, the second packet loss rate being less than a fourth preset threshold, and the line delay being less than a fifth preset threshold.
[0233] In one implementation, after receiving the media stream statistical information sent by the calling terminal, the method further includes:
[0234] Determine a call quality level of the calling terminal based on the media stream statistical information, where the call quality level of the calling terminal is used to characterize the call quality level of the calling terminal;
[0235] Determine a first acquisition ratio based on the calling terminal's call level, and then determine a first acquisition instruction according to the first acquisition ratio, wherein the first acquisition instruction is used to instruct the calling terminal to acquire call media stream information based on the first acquisition ratio;
[0236] The first acquisition instruction is sent to the calling terminal, so that the calling terminal sends the call media stream information acquired based on the first acquisition ratio to the intermediate number platform via the Internet.
[0237] In one implementation, determining the calling conversation level based on the media stream statistical information includes:
[0238] Determine first base station information based on the media stream statistical information, where the first base station information is base station information of a first base station to which the calling terminal is connected when making a call;
[0239] Determine historical terminal call information based on the first base station information, where the historical terminal call information includes historical normal call information and historical abnormal call information of the first base station;
[0240] The abnormal call ratio is determined based on the historical normal call information and the historical abnormal call information, and then the calling call level is determined according to the abnormal call ratio.
[0241] In one implementation, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information, the method further includes:
[0242] When the packet loss rate of the media stream information is less than a second preset threshold, sending the first media stream information to the called terminal to make a call, and the second preset threshold is less than the first preset threshold;
[0243] When the packet loss rate of the media stream information is greater than the first preset threshold, the second media stream information is sent to the called terminal to conduct a call.
[0244] In one implementation, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information, the method further includes:
[0245] When the packet loss rate of the media stream information is greater than the first preset threshold, sending a calling asynchronous call prompt to the calling terminal, wherein the calling asynchronous call prompt is used to remind the calling terminal to make an asynchronous call;
[0246] Receiving first call information sent by the calling terminal, where the first call information is complete call information sent by the calling terminal;
[0247] Converting the first call information into media stream information to obtain fourth media stream information;
[0248] The fourth media stream information is sent to the called terminal to conduct a call.
[0249] In one implementation, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information, the method further includes:
[0250] When the packet loss rate of the media stream information is greater than the first preset threshold, sending a called asynchronous call prompt to the called terminal, wherein the called asynchronous call prompt is used to remind the called terminal to make an asynchronous call;
[0251] receiving fifth media stream information sent by the called terminal, where the fifth media stream information is media stream information sent by the called terminal;
[0252] Convert the fifth media stream information into a format to obtain second call information, where the second call information is complete call information sent by the called terminal;
[0253] The second call information is sent to the calling terminal to conduct the call.
[0254] The specific execution steps can refer to the various steps of the above-mentioned call method embodiment, and can achieve the same technical effect. To avoid repetition, they will not be repeated here.
[0255] It should be noted that the electronic devices in the embodiments of the present application include: servers, terminals, or other devices except terminals.
[0256] The above electronic device structure does not constitute a limitation on the electronic device. The electronic device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. For example, the input unit may include a graphics processing unit (GPU) and a microphone, and the display unit may be configured with a display panel in the form of a liquid crystal display, an organic light-emitting diode, etc. The user input unit includes a touch panel and at least one of other input devices. The touch panel is also called a touch screen. Other input devices may include, but are not limited to, a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), a trackball, a mouse, and a joystick, which will not be repeated here.
[0257] The memory can be used to store software programs and various data. The memory may mainly include a first storage area for storing programs or instructions and a second storage area for storing data, wherein the first storage area may store an operating system, an application program or instructions required for at least one function (such as a sound playback function, an image playback function, etc.), etc. In addition, the memory may include a volatile memory or a non-volatile memory, or the memory may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. Volatile memory can be random access memory (RAM), static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM) and direct memory bus random access memory (DRRAM).
[0258] The processor may include one or more processing units; optionally, the processor integrates an application processor and a modem processor, wherein the application processor mainly processes operations related to the operating system, user interface, and application programs, and the modem processor mainly processes wireless communication signals, such as a baseband processor. It is understandable that the modem processor may not be integrated into the processor.
[0259] An embodiment of the present application also provides a readable storage medium, on which a program or instruction is stored. When the program or instruction is executed by a processor, the various processes of the above-mentioned call method embodiment are implemented and the same technical effect can be achieved. To avoid repetition, it will not be repeated here.
[0260] The processor is a processor in the electronic device described in the above embodiment. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0261] The embodiment of the present application also provides a computer program product, which, when executed by a processor, implements the various processes of the above-mentioned call method embodiment and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0262] An embodiment of the present application further provides a chip, which includes a processor and a communication interface, wherein the communication interface is coupled to the processor, and the processor is used to run programs or instructions to implement the various processes of the above-mentioned call method embodiment, and can achieve the same technical effect. To avoid repetition, it will not be repeated here.
[0263] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.
[0264] It should be noted that, in this article, the terms "comprise", "include" or any other variant thereof are intended to cover non-exclusive inclusion, so that the process, method, article or device including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise one..." do not exclude the presence of other identical elements in the process, method, article or device including the element. In addition, it should be pointed out that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in reverse order according to the functions involved, for example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.
[0265] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present application, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, a magnetic disk, or an optical disk), and includes a number of instructions for a terminal (which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to execute the methods described in each embodiment of the present application.
[0266] The embodiments of the present application are described above in conjunction with the accompanying drawings, but the present application is not limited to the above-mentioned specific implementation methods. The above-mentioned specific implementation methods are merely illustrative and not restrictive. Under the guidance of the present application, ordinary technicians in this field can also make many forms without departing from the purpose of the present application and the scope of protection of the claims, all of which are within the protection of the present application.
Claims
1. A calling method, comprising: Upon receiving a request from a calling terminal to enhance a call, sending a call enhancement instruction to the calling terminal, wherein the call enhancement instruction is used to instruct the calling terminal to perform an enhanced call; Receiving first media stream information and second media stream information sent by the calling terminal, wherein the first media stream information is call media stream information sent by the calling terminal through a communication network, and the second media stream information is call media stream information sent by the calling terminal through the Internet; De-duplication and merging processing is performed on the first media stream information and the second media stream information to determine third media stream information; The third media stream information is sent to the called terminal to carry out the call.
2. The method according to claim 1, wherein upon receiving a request from a calling terminal to enhance a call, sending a call enhancement instruction to the calling terminal comprises: receiving a call enhancement request sent by the calling terminal, and generating an intermediate number based on the call enhancement request, wherein the call enhancement request is used by the calling terminal to request enhancement of the call; The intermediate number is sent to the calling terminal, so that the calling terminal sends a call request to the called terminal through the intermediate number and performs an enhanced call.
3. The method according to claim 1, before receiving the first media stream information and the second media stream information sent by the calling terminal, the method further comprises: Receiving call answering information sent by the called terminal, where the call answering information is information generated by the called terminal for answering the call after receiving the call request sent by the calling terminal; An information statistics instruction is generated based on the call answering information, and the information statistics instruction is sent to the calling terminal, where the information statistics instruction is used to instruct the calling terminal to collect statistics on the media stream information sent by the calling terminal.
4. The method according to claim 1, after performing de-duplication and merging processing on the first media stream information and the second media stream information to determine the third media stream information, the method further comprises: Receiving media stream statistical information sent by the calling terminal, where the media stream statistical information is used to represent information determined by the calling terminal through statistics of the media stream information sent by the calling terminal; Determine a media stream information packet loss rate based on the media stream statistical information and the third media stream information, where the media stream information packet loss rate is used to characterize the packet loss rate of the third media stream information; When the packet loss rate of the media stream information is less than a first preset threshold, the third media stream information is sent to the called terminal.
5. The method according to claim 1, after performing de-duplication and merging processing on the first media stream information and the second media stream information to determine the third media stream information, the method further comprises: receiving first statistical information and second statistical information sent by the calling terminal, wherein the first statistical information is used to represent information determined by the calling terminal through statistics on the first media stream information sent, and the second statistical information is used to represent information determined by the calling terminal through statistics on the second media stream information sent; Determine statistical data based on the first statistical information and the second statistical information, the statistical data including one or more of a first packet loss rate, a second packet loss rate and a line delay, the first packet loss rate is used to characterize the packet loss rate of the first media stream information, the second packet loss rate is used to characterize the packet loss rate of the second media stream information, and the line delay is used to characterize the difference between the time required for the first media stream information to reach the intermediate number platform and the time required for the second media stream information to reach the intermediate number platform; When the statistical data meets a preset condition, the third media stream information is sent to the called terminal, and the preset condition includes one or more of the first packet loss rate being less than a third preset threshold, the second packet loss rate being less than a fourth preset threshold, and the line delay being less than a fifth preset threshold.
6. The method according to claim 4, after receiving the media stream statistical information sent by the calling terminal, the method further comprises: Determine a call quality level of the calling terminal based on the media stream statistical information, where the call quality level of the calling terminal is used to characterize the call quality level of the calling terminal; Determine a first acquisition ratio based on the calling terminal's call level, and then determine a first acquisition instruction according to the first acquisition ratio, wherein the first acquisition instruction is used to instruct the calling terminal to acquire call media stream information based on the first acquisition ratio; The first acquisition instruction is sent to the calling terminal, so that the calling terminal sends the call media stream information acquired based on the first acquisition ratio to the intermediate number platform via the Internet.
7. The method according to claim 6, wherein determining the calling conversation level based on the media stream statistical information comprises: Determine first base station information based on the media stream statistical information, where the first base station information is base station information of a first base station to which the calling terminal is connected when making a call; Determine historical terminal call information based on the first base station information, where the historical terminal call information includes historical normal call information and historical abnormal call information of the first base station; The abnormal call ratio is determined based on the historical normal call information and the historical abnormal call information, and then the calling call level is determined according to the abnormal call ratio.
8. The method according to claim 4, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information, the method further comprises: When the packet loss rate of the media stream information is less than a second preset threshold, sending the first media stream information to the called terminal to make a call, and the second preset threshold is less than the first preset threshold; When the packet loss rate of the media stream information is greater than the first preset threshold, the second media stream information is sent to the called terminal to conduct a call.
9. The method according to claim 4, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information, the method further comprises: When the packet loss rate of the media stream information is greater than the first preset threshold, sending a calling asynchronous call prompt to the calling terminal, wherein the calling asynchronous call prompt is used to remind the calling terminal to make an asynchronous call; Receiving first call information sent by the calling terminal, where the first call information is complete call information sent by the calling terminal; Converting the first call information into media stream information to obtain fourth media stream information; The fourth media stream information is sent to the called terminal to conduct a call.
10. The method according to claim 4, after determining the media stream information packet loss rate based on the media stream statistical information and the third media stream information, the method further comprises: When the packet loss rate of the media stream information is greater than the first preset threshold, sending a called asynchronous call prompt to the called terminal, wherein the called asynchronous call prompt is used to remind the called terminal to make an asynchronous call; receiving fifth media stream information sent by the called terminal, where the fifth media stream information is media stream information sent by the called terminal; Convert the fifth media stream information into a format to obtain second call information, where the second call information is complete call information sent by the called terminal; The second call information is sent to the calling terminal to conduct the call.
Citation Information
Patent Citations
An end-to-end bidirectional voice quality test method, a system and a voice test server
CN103517287A
Computer network providing redundant data traffic control features and related methods
CN106717015A
Data transmission method and device, computer readable medium and electronic equipment
CN109600388A
Data transmission method and related equipment
CN115550320A
System, device and chip for assisting link to compensate conversation
CN116390044A