Method, device, storage medium and system for playing call hold tone
By determining the source of the call hold message and the answer message in the call hold message in the call hold message in the call hold message and the answer message in the call hold message, the problem of high service pressure on the media server is solved, and the effect of reducing the load of the media server is achieved.
Patent Information
- Application Number
- CN201911034209.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-10-29
- Publication Date
- 2025-02-28
- Estimated Expiration
- 2039-10-29
AI Technical Summary
In the prior art, all call retention sounds are provided by the media server, resulting in greater service pressure on the media server.
When a call is made between the first terminal and the second terminal, the call hold message indicates whether the second terminal can provide a call hold tone. According to whether it can provide a call hold tone and a call hold message, it is determined that the source of the call hold tone is the first terminal or the second terminal, thereby obtaining and playing the call hold tone.
Through this method, the call keeping sound is avoided from obtaining the media server, the service pressure of the media server is reduced, and the processing capability of the system is improved.
Smart Images

Figure CN112751975B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of communication technology, and in particular to a method, device, storage medium and system for playing a call hold tone. Background Art
[0002] When the first terminal and the second terminal are talking, and the second terminal receives a call from a third terminal, the second terminal can hold the call with the first terminal and connect the call with the third terminal. At this time, the first terminal needs to play a call holding tone.
[0003] In the related art, the second terminal sends a call hold message to the network device, the network device forwards the call hold message to the first terminal, the first terminal sends a response message to the network device, the network device notifies the media server after receiving the response message, and the media server plays a call hold tone to the first terminal.
[0004] The media server provides the call holding tone for all the call holdings, which causes a large service pressure on the media server. Summary of the invention
[0005] The embodiment of the present application provides a method, device, storage medium and system for playing a call hold tone, which is used to solve the problem that all call holds are provided by a media server, resulting in a high service pressure on the media server. The technical solution is as follows:
[0006] In a first aspect, a method for playing a call holding tone is provided, which is used in a first terminal, and the method comprises: when the first terminal is talking with a second terminal, receiving a call holding message sent by the second terminal, the call holding message being used to indicate whether the second terminal can provide the call holding tone to the first terminal; generating a response message according to whether the first terminal itself can provide the call holding tone and the call holding message, and sending the response message to the second terminal, the response message being used to indicate a source of the call holding tone, the source being the first terminal or the second terminal; obtaining the call holding tone from the source; and playing the call holding tone during the call holding period.
[0007] In a second aspect, a method for playing a call holding tone is provided, which is used in a second terminal, and the method includes: when a first terminal and the second terminal are talking, generating a call holding message, the call holding message is used to indicate whether the second terminal can provide a call holding tone to the first terminal; sending the call holding message to the first terminal; receiving a response message sent by the first terminal, the response message is generated by the first terminal based on whether the first terminal itself can provide the call holding tone and the call holding message, and the response message is used to indicate the source of the call holding tone, the source being the first terminal or the second terminal; determining whether to provide the call holding tone to the first terminal based on the response message, so that the first terminal plays the call holding tone during the call holding period.
[0008] According to a third aspect, a device for playing a call holding tone is provided, which is used in a first terminal, and the device includes: a receiving module, which is used to receive a call holding message sent by a second terminal when the first terminal is talking with the second terminal, and the call holding message is used to indicate whether the second terminal can provide the call holding tone to the first terminal; a generating module, which is used to generate a response message according to whether the first terminal itself can provide the call holding tone and the call holding message, and send the response message to the second terminal, and the response message is used to indicate the source of the call holding tone, and the source is the first terminal or the second terminal; an acquiring module, which is used to acquire the call holding tone from the source; and a playing module, which is used to play the call holding tone during the call holding period.
[0009] According to a fourth aspect, a device for playing a call holding tone is provided, which is used in a second terminal, and the device includes: a generating module, which is used to generate a call holding message when a first terminal and the second terminal are talking, and the call holding message is used to indicate whether the second terminal can provide the call holding tone to the first terminal; a sending module, which is used to send the call holding message to the first terminal; a receiving module, which is used to receive a response message sent by the first terminal, and the response message is generated by the first terminal according to whether the first terminal itself can provide the call holding tone and the call holding message, and the response message is used to indicate the source of the call holding tone, and the source is the first terminal or the second terminal; a determining module, which is used to determine whether to provide the call holding tone to the first terminal according to the response message, so that the first terminal plays the call holding tone during the call holding period.
[0010] In a fifth aspect, a computer-readable storage medium is provided, wherein the storage medium stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by a processor to implement the method for playing a call holding tone as described in the first aspect or the second aspect.
[0011] In a sixth aspect, a communication system is provided, wherein the network element configuration system includes a first terminal and a second terminal;
[0012] The first terminal includes the device for playing the call holding tone as described in the third aspect;
[0013] The second terminal includes the device for playing the call holding tone as described in the fourth aspect.
[0014] The beneficial effects of the technical solution provided by the embodiments of the present application include at least:
[0015] Since the call hold message is used to indicate whether the second terminal can provide the call hold tone to the first terminal, the first terminal can determine whether the source of the call hold tone is the first terminal or the second terminal based on whether it can provide the call hold tone and the call hold message, and then obtain the call hold tone from the source for playback, thereby avoiding obtaining the call hold tone from the media server and reducing the service pressure of the media server. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0017] Figure 1 is a method flow chart of a method for playing a call holding tone provided by an embodiment of the present application;
[0018] Figure 2 is a method flow chart of a method for playing a call holding tone provided by another embodiment of the present application;
[0019] Figure 3 is a flowchart of a method for playing a call holding tone provided by another embodiment of the present application;
[0020] Figure 4 is a method flow chart of a method for playing a call holding tone provided by another embodiment of the present application;
[0021] Figure 5 is a flowchart of a method for playing a call holding tone provided by another embodiment of the present application;
[0022] Figure 6 is a method flow chart of a method for playing a call holding tone provided by another embodiment of the present application;
[0023] Figure 7 is a flowchart of a method for playing a call holding tone provided by another embodiment of the present application;
[0024] Figure 8 It is a structural block diagram of a device for playing a call holding tone provided by an embodiment of the present application;
[0025] Fig. 9 It is a structural block diagram of a device for playing a call holding tone provided by an embodiment of the present application;
[0026] Fig.10 is a structural block diagram of a device for playing a call holding tone provided in yet another embodiment of the present application;
[0027] Fig.11 It is a structural block diagram of a device for playing a call holding tone provided by an embodiment of the present application. DETAILED DESCRIPTION
[0028] In order to make the objectives, technical solutions and advantages of the embodiments of the present application clearer, the implementation methods of the present application will be further described in detail below in conjunction with the accompanying drawings.
[0029] Please refer to Figure 1 , which shows a method flow chart of a method for playing a call hold tone provided by an embodiment of the present application, and the method for playing a call hold tone can be applied in. The method for playing a call hold tone includes:
[0030] Step 101: When a first terminal is talking with a second terminal, the second terminal generates a call holding message, where the call holding message is used to indicate whether the second terminal can provide a call holding tone to the first terminal.
[0031] In this embodiment, the first terminal and the second terminal are SIP (Session Initiation Protocol) UA (User Agent), that is, terminal devices that provide call functions, and the first terminal and the second terminal can also assume the functions of generating, sending and playing call holding tones.
[0032] In this embodiment, the call between the first terminal and the second terminal can be initiated by the first terminal or by the second terminal, which is not limited in this embodiment. Taking the second terminal initiating the call as an example, the user of the second terminal can trigger the phone number of the first terminal in the second terminal, the second terminal generates an invite signaling, and sends the invite signaling to the network device, the network device forwards the invite signaling to the first terminal, the first terminal generates a first response message (100Trying) and sends it to the network device, the network device forwards the first response message to the second terminal, the first response message is used to indicate that it is being processed; the first terminal generates a second response message (180Ringing), the network device forwards the second response message to the second terminal, the second response message is used to indicate ringing; when the first terminal connects the call, the first terminal generates a third response message (200OK) and sends it to the network device, the network device forwards the third response message to the second terminal, the third response message is used to indicate that the session is successful. The second terminal generates a confirmation message (ACK), and sends the confirmation message to the network device, the network device forwards the confirmation message to the first terminal, so far, the second terminal and the first terminal enter the call state. The network device may be a Network, that is, a voice call control center.
[0033] When the first terminal is talking with the second terminal, if the second terminal receives a call from a third terminal, the call with the first terminal can be held, that is, the call with the first terminal is suspended, and the call with the third terminal is carried out; subsequently, the call with the third terminal can be held, that is, the call with the third terminal is suspended, and the call with the first terminal is carried out.
[0034] This embodiment takes the second terminal and the first terminal as an example to illustrate the call holding. The second terminal can first determine whether it can provide a call holding tone to the first terminal; when it can provide a call holding tone to the first terminal, it generates a signal indicating that the second terminal can provide a call holding tone to the first terminal.
[0035] The first terminal provides a call holding tone for the call holding message; when the second terminal cannot provide the call holding tone to the first terminal, a call holding message is generated to indicate that the second terminal cannot provide the call holding tone to the first terminal. The call holding message may be a re-invite.
[0036] Step 102: The second terminal sends a call hold message to the first terminal.
[0037] The second terminal sends a call holding message to the network device, and the network device forwards the call holding message to the first terminal.
[0038] Step 103: The first terminal receives a call holding message sent by the second terminal.
[0039] Step 104: the first terminal generates a response message according to whether the first terminal itself can provide a call hold tone and a call hold message, and sends the response message to the second terminal. The response message is used to indicate the source of the call hold tone, which is the first terminal or the second terminal.
[0040] The first terminal can determine whether it can provide the call hold tone. If it can provide the call hold tone, and it is determined based on the call hold message that the second terminal can also provide the call hold tone, the first terminal can generate a response message indicating that the providing source is the first terminal or the second terminal; if it cannot provide the call hold tone, and it is determined based on the call hold message that the second terminal can provide the call hold tone, the first terminal can generate a response message indicating that the providing source is the first terminal.
[0041] The first terminal sends a response message to the network device, and the network device forwards the response message to the second terminal.
[0042] Step 105: The second terminal receives a response message sent by the first terminal.
[0043] Step 106: The second terminal determines whether to provide a call holding tone to the first terminal according to the response message.
[0044] When the response message indicates that the source is the first terminal, the second terminal determines not to provide the call holding tone to the first terminal, and the second terminal side ends the process; when the response message indicates that the source is the second terminal, the second terminal determines to provide the call holding tone to the first terminal.
[0045] Step 107: The first terminal obtains a call holding tone from a providing source.
[0046] When the providing source is the first terminal, the first terminal generates a call holding tone; when the providing source is the second terminal, the second terminal generates a call holding tone and sends the call holding tone to the network device, which forwards the call holding tone to the first terminal and receives the call holding tone.
[0047] Step 108: The first terminal plays a call holding tone during the call holding period.
[0048] Among them, steps 101-102 and 105-106 can be implemented separately as an embodiment of the second terminal side, and steps 103-104 and 107-108 can be implemented separately as an embodiment of the first terminal side.
[0049] To summarize, the method for playing a call holding tone provided in an embodiment of the present application, since the call holding message is used to indicate whether the second terminal can provide the call holding tone to the first terminal, the first terminal can determine whether the source of the call holding tone is the first terminal or the second terminal based on whether it can provide the call holding tone and the call holding message, and then obtain the call holding tone from the source for playing, thereby avoiding obtaining the call holding tone from the media server, which can reduce the service pressure of the media server.
[0050] It should be noted that whether the first terminal itself can provide a call holding tone and whether the second terminal can provide a call holding tone to the first terminal can be achieved through configuration. The configuration process of the first terminal and the second terminal is described below.
[0051] When configuring the first terminal, the user can configure on the terminal configuration page whether the first terminal itself can provide a call holding tone, and the first terminal generates first configuration information according to the user's operation (i.e., receives the first configuration information), and configures whether the first terminal itself can provide a call holding tone according to the first configuration information. Alternatively, the user can configure on the network management whether the first terminal itself can provide a call holding tone, and the network management generates first configuration information according to the user's operation, and sends the first configuration information to the first terminal, and the first terminal receives the first configuration information, and configures whether the first terminal itself can provide a call holding tone according to the first configuration information.
[0052] When configuring the second terminal, the user can configure on the terminal configuration page whether the second terminal can provide a call holding tone to the first terminal, and the second terminal generates second configuration information according to the user's operation (i.e., receives the second configuration information), and configures whether the second terminal can provide a call holding tone to the first terminal according to the second configuration information. Alternatively, the user can configure on the network management whether the second terminal can provide a call holding tone to the first terminal, and the network management generates second configuration information according to the user's operation, and sends the second configuration information to the second terminal, and the second terminal receives the second configuration information, and configures whether the second terminal can provide a call holding tone to the first terminal according to the second configuration information.
[0053] In this embodiment, according to whether the first terminal itself can provide a call holding tone and whether the second terminal can provide a call holding tone to the first terminal, this embodiment can have three implementation modes, and these three implementation modes are described below through three embodiments.
[0054] Please refer to Table 1, where Figure 2 In the corresponding embodiment, sendonly indicates that the second terminal can provide a call holding tone to the first terminal, and a=inactive indicates that the providing source is the first terminal; Figure 4In the corresponding embodiment, sendonly indicates that the second terminal can provide a call holding tone to the first terminal, and a=recvonly indicates that the providing source is the second terminal; Figure 6 In the corresponding embodiment, inactive indicates that the second terminal cannot provide a call holding tone to the first terminal, and a=inactive indicates that the providing source is the first terminal.
[0055] Table 1
[0056]
[0057] Please refer to Figure 2 , which shows a method flow chart of a method for playing a call hold tone provided by another embodiment of the present application, the method for playing a call hold tone can be applied to a communication system including a first terminal and a second terminal, and the source provided in this embodiment is the first terminal. The method for playing a call hold tone includes:
[0058] Step 201: When a first terminal is talking with a second terminal, the second terminal generates a call holding message, where the call holding message is used to indicate that the second terminal can provide a call holding tone to the first terminal.
[0059] In this embodiment, the second terminal may determine, according to the configuration, that it can provide a call holding tone to the first terminal, and generate a call holding message indicating that the second terminal can provide a call holding tone to the first terminal.
[0060] In one implementation, the call holding message may be a re-invite, and in the re-invite, SDP: a=sendonly, where SDP is Session Description Protocol.
[0061] Step 202: The second terminal sends a call hold message to the first terminal.
[0062] The second terminal sends a call holding message to the network device, and the network device forwards the call holding message to the first terminal.
[0063] Step 203: The first terminal receives a call holding message sent by the second terminal.
[0064] Step 204: When the first terminal itself is capable of providing a call hold tone, the first terminal generates a response message indicating that the source of the call hold tone is the first terminal, and sends the response message to the second terminal.
[0065] In this embodiment, the first terminal may determine, according to the configuration, that it can provide the call hold tone, and generate a response message indicating that the source providing the call hold tone is the first terminal.
[0066] In one implementation, the response message may be 200 OK, and SDP in the 200 OK includes: a=inactive.
[0067] The first terminal sends a response message to the network device, and the network device forwards the response message to the second terminal.
[0068] Step 205: The second terminal receives a response message sent by the first terminal.
[0069] Step 206: The second terminal determines not to provide a call holding tone to the first terminal according to the response message.
[0070] Since the response message indicates that the providing source is the first terminal, the second terminal determines not to provide the call holding tone to the first terminal, and the second terminal ends the process.
[0071] Step 207: The first terminal generates a call holding tone.
[0072] Step 208: The first terminal plays a call holding tone during the call holding period.
[0073] Among them, steps 201-202 and 205-206 can be implemented separately as an embodiment of the second terminal side, and steps 203-204 and 207-208 can be implemented separately as an embodiment of the first terminal side.
[0074] To summarize, the method for playing a call holding tone provided in an embodiment of the present application, since the call holding message is used to indicate whether the second terminal can provide the call holding tone to the first terminal, the first terminal can determine whether the source of the call holding tone is the first terminal or the second terminal based on whether it can provide the call holding tone and the call holding message, and then obtain the call holding tone from the source for playing, thereby avoiding obtaining the call holding tone from the media server, which can reduce the service pressure of the media server.
[0075] When the providing source is the first terminal, the first terminal can generate a call holding tone locally without transmitting the call holding tone through the network, thereby alleviating the pressure of network transmission.
[0076] For ease of understanding, assume that the second terminal is SIP UA A, the first terminal is SIP UA B, and the network device is Network. Figure 3 , which shows the process of the method for playing the call holding tone:
[0077] 1. SIP UA A sends INVITE to Network;
[0078] 2. Network sends an INVITE to SIP UA B.
[0079] 3. SIP UA B sends 100Trying to Network;
[0080] 4. Network sends 100Trying to SIP UA A;
[0081] 5. SIP UA B sends 180Ringing to Network;
[0082] 6. Network sends 180Ringing to SIP UA A;
[0083] 7. SIP UA B sends 200 OK to Network.
[0084] 8. Network sends 200 OK to SIP UA A.
[0085] 9. SIP UA A sends ACK to Network.
[0086] 10. Network sends ACK to SIP UA B.
[0087] 11. SIP UA A communicates with SIP UA B via Network using RTP (Real-time Transport Protocol) bidirectional media.
[0088] 12. SIP UA A sends an INVITE in-dialog to Network (SDP A, a=sendonly);
[0089] 13. Network sends an INVITE in-dialog (SDP A, a=sendonly) to SIP UA B.
[0090] 14. SIP UA B sends 200 OK to Network (SDP B / A, a=inactive);
[0091] 15. Network sends 200 OK to SIP UA A (SDP B / A, a=inactive).
[0092] Among them, no call holding tone is transmitted between SIP UA A and SIP UA B, that is, No media.
[0093] Please refer to Figure 4, which shows a method flow chart of a method for playing a call hold tone provided by another embodiment of the present application, the method for playing a call hold tone can be applied to a communication system including a first terminal and a second terminal, and the source provided in this embodiment is the second terminal. The method for playing a call hold tone includes:
[0094] Step 401: When a first terminal is talking with a second terminal, the second terminal generates a call holding message, where the call holding message is used to indicate that the second terminal can provide a call holding tone to the first terminal.
[0095] In this embodiment, the second terminal may determine, according to the configuration, that it can provide a call holding tone to the first terminal, and generate a call holding message indicating that the second terminal can provide a call holding tone to the first terminal.
[0096] In one implementation, the call holding message may be a re-invite, and SDP in the re-invite: a=sendonly.
[0097] Step 402: The second terminal sends a call hold message to the first terminal.
[0098] The second terminal sends a call holding message to the network device, and the network device forwards the call holding message to the first terminal.
[0099] Step 403: The first terminal receives a call holding message sent by the second terminal.
[0100] Step 404: When the first terminal itself cannot provide the call hold tone, the first terminal generates a response message indicating that the source providing the call hold tone is the second terminal, and sends the response message to the second terminal.
[0101] In this embodiment, the first terminal may determine, according to the configuration, that it can provide a call hold tone, and generate a response message indicating that the source providing the call hold tone is the second terminal.
[0102] In one implementation, the response message may be 200 OK, and SDP in the 200 OK is: a=recvonly.
[0103] The first terminal sends a response message to the network device, and the network device forwards the response message to the second terminal.
[0104] Step 405: The second terminal receives a response message sent by the first terminal.
[0105] Step 406: The second terminal determines to provide a call holding tone to the first terminal according to the response message.
[0106] Since the answer message indicates that the providing source is the first terminal, the second terminal determines to provide the call holding tone to the first terminal.
[0107] Step 407: The first terminal obtains a call holding tone from the second terminal.
[0108] After receiving the response message, the second terminal may generate a call holding tone, encode the call holding tone to obtain a data packet, and send the data packet to the first terminal; the first terminal receives the data packet, and decodes the data packet to obtain the call holding tone.
[0109] Step 408: The first terminal plays a call holding tone during the call holding period.
[0110] Among them, steps 401-402 and 405-406 can be implemented separately as an embodiment of the second terminal side, and steps 403-404 and 407-408 can be implemented separately as an embodiment of the first terminal side.
[0111] To summarize, the method for playing a call holding tone provided in an embodiment of the present application, since the call holding message is used to indicate whether the second terminal can provide the call holding tone to the first terminal, the first terminal can determine whether the source of the call holding tone is the first terminal or the second terminal based on whether it can provide the call holding tone and the call holding message, and then obtain the call holding tone from the source for playing, thereby avoiding obtaining the call holding tone from the media server, which can reduce the service pressure of the media server.
[0112] For ease of understanding, assume that the second terminal is SIP UA A, the first terminal is SIP UA B, and the network device is Network. Figure 5 , which shows the process of the method for playing the call holding tone:
[0113] 1. SIP UA A sends INVITE to Network;
[0114] 2. Network sends an INVITE to SIP UA B.
[0115] 3. SIP UA B sends 100Trying to Network;
[0116] 4. Network sends 100Trying to SIP UA A;
[0117] 5. SIP UA B sends 180Ringing to Network;
[0118] 6. Network sends 180Ringing to SIP UA A;
[0119] 7. SIP UA B sends 200 OK to Network.
[0120] 8. Network sends 200 OK to SIP UA A.
[0121] 9. SIP UA A sends ACK to Network.
[0122] 10. Network sends ACK to SIP UA B.
[0123] 11. SIP UAA communicates with SIP UAB via Network via RTP bidirectional media.
[0124] 12. SIP UA A sends an INVITE in-dialog to Network (SDP A, a=sendonly);
[0125] 13. Network sends an INVITE in-dialog (SDP A, a=sendonly) to SIP UAB.
[0126] 14. SIP UAB sends 200 OK to Network (SDP B / A, a=recvonly);
[0127] 15. Network sends 200 OK to SIP UAA (SDP B / A, a=recvonly);
[0128] 16. SIP UAA sends a call hold tone, namely RTP monodirectional media (hold tone), to SIP UAB through the Network.
[0129] Please refer to Figure 6 , which shows a method flow chart of a method for playing a call hold tone provided by another embodiment of the present application, the method for playing a call hold tone can be applied to a communication system including a first terminal and a second terminal, and the source provided in this embodiment is the first terminal. The method for playing a call hold tone includes:
[0130] Step 601: When a first terminal is talking with a second terminal, the second terminal generates a call holding message, where the call holding message is used to indicate that the second terminal cannot provide a call holding tone to the first terminal.
[0131] In this embodiment, the second terminal may determine, according to the configuration, that it cannot provide a call holding tone to the first terminal, and generate a call holding message indicating that the second terminal cannot provide a call holding tone to the first terminal.
[0132] In one implementation, the call holding message may be a re-invite, and SDP in the re-invite is: a=inactive.
[0133] Step 602: The second terminal sends a call hold message to the first terminal.
[0134] The second terminal sends a call holding message to the network device, and the network device forwards the call holding message to the first terminal.
[0135] Step 603: The first terminal receives a call holding message sent by the second terminal.
[0136] Step 604: When the first terminal itself is capable of providing a call hold tone, the first terminal generates a response message indicating that the source of the call hold tone is the first terminal, and sends the response message to the second terminal.
[0137] In this embodiment, the first terminal may determine, according to the configuration, that it can provide the call hold tone, and generate a response message indicating that the source providing the call hold tone is the first terminal.
[0138] In one implementation, the response message may be 200 OK, and SDP in the 200 OK includes: a=inactive.
[0139] The first terminal sends a response message to the network device, and the network device forwards the response message to the second terminal.
[0140] Step 605: The second terminal receives a response message sent by the first terminal.
[0141] Step 606: The second terminal determines not to provide a call holding tone to the first terminal according to the response message.
[0142] Since the response message indicates that the providing source is the first terminal, the second terminal determines not to provide the call holding tone to the first terminal, and the second terminal ends the process.
[0143] Step 607: The first terminal generates a call holding tone.
[0144] Step 608: The first terminal plays a call holding tone during the call holding period.
[0145] Among them, steps 601-602 and 605-606 can be implemented separately as an embodiment of the second terminal side, and steps 603-604 and 607-608 can be implemented separately as an embodiment of the first terminal side.
[0146] To summarize, the method for playing a call holding tone provided in an embodiment of the present application, since the call holding message is used to indicate whether the second terminal can provide the call holding tone to the first terminal, the first terminal can determine whether the source of the call holding tone is the first terminal or the second terminal based on whether it can provide the call holding tone and the call holding message, and then obtain the call holding tone from the source for playing, thereby avoiding obtaining the call holding tone from the media server, which can reduce the service pressure of the media server.
[0147] When the providing source is the first terminal, the first terminal can generate a call holding tone locally without transmitting the call holding tone through the network, thereby alleviating the pressure of network transmission.
[0148] For ease of understanding, assume that the second terminal is SIP UAA, the first terminal is SIP UA B, and the network device is Network. Figure 7 , which shows the process of the method for playing the call holding tone:
[0149] 1. SIP UAA sends INVITE to Network;
[0150] 2. Network sends an INVITE to SIP UA B.
[0151] 3. SIP UA B sends 100Trying to Network;
[0152] 4. Network sends 100Trying to SIP UA A;
[0153] 5. SIP UA B sends 180Ringing to Network;
[0154] 6. Network sends 180Ringing to SIP UA A;
[0155] 7. SIP UAB sends 200OK to Network;
[0156] 8. Network sends 200 OK to SIP UA A.
[0157] 9. SIP UA A sends ACK to Network.
[0158] 10. Network sends ACK to SIP UA B.
[0159] 11. SIP UA A communicates with SIP UA B via Network using RTP bidirectional media.
[0160] 12. SIP UA A sends an INVITE in-dialog (SDP A, a=inactive) to Network.
[0161] 13. Network sends an INVITE in-dialog (SDP A, a=inactive) to SIP UA B.
[0162] 14. SIP UA B sends 200 OK to Network (SDP B / A, a=inactive);
[0163] 15. Network sends 200 OK to SIP UA A (SDP B / A, a=inactive).
[0164] Among them, no call holding tone is transmitted between SIP UA A and SIP UA B, that is, No media.
[0165] Please refer to Figure 8 , which shows a structural block diagram of a device for playing a call holding tone provided by an embodiment of the present application, and the device for playing a call holding tone can be applied to a first terminal. The device for playing a call holding tone includes:
[0166] The receiving module 810 is used to receive a call holding message sent by the second terminal when the first terminal is talking with the second terminal, and the call holding message is used to indicate whether the second terminal can provide a call holding tone to the first terminal;
[0167] A generating module 820, configured to generate a response message according to whether the first terminal itself can provide a call holding tone and a call holding message, wherein the response message is used to indicate a source of the call holding tone, and the source is the first terminal or the second terminal;
[0168] An acquisition module 830 is used to acquire a call holding tone from a providing source;
[0169] The playing module 840 is used to play the call holding tone during the call holding period.
[0170] In one embodiment, the generation module 820 is also used to: when the first terminal itself can provide a call hold tone, and the call hold message is used to indicate that the second terminal can provide a call hold tone to the first terminal, generate a response message indicating that the source of the call hold tone is the first terminal.
[0171] In one embodiment, the generation module 820 is also used to: when the first terminal itself cannot provide a call hold tone, and the call hold message is used to indicate that the second terminal can provide a call hold tone to the first terminal, generate a response message indicating that the source of the call hold tone is the second terminal.
[0172] In one embodiment, the generation module 820 is also used to: when the first terminal itself can provide a call holding tone, and the call holding message is used to indicate that the second terminal cannot provide a call holding tone to the first terminal, generate a response message indicating that the source of the call holding tone is the first terminal.
[0173] In one implementation, the receiving module 810 is further configured to receive first configuration information;
[0174] Please refer to Fig. 9 The device also includes: a configuration module 850, which is used to configure whether the first terminal itself can provide a call holding tone according to the first configuration information.
[0175] To summarize, the call hold tone playback device provided in the embodiment of the present application, since the call hold message is used to indicate whether the second terminal can provide the call hold tone to the first terminal, the first terminal can determine whether the source of the call hold tone is the first terminal or the second terminal based on whether it can provide the call hold tone and the call hold message, and then obtain the call hold tone from the source for playback, thereby avoiding obtaining the call hold tone from the media server, which can reduce the service pressure of the media server.
[0176] When the providing source is the first terminal, the first terminal can generate a call holding tone locally without transmitting the call holding tone through the network, thereby alleviating the pressure of network transmission.
[0177] Please refer to Fig.10 , which shows a structural block diagram of a device for playing a call holding tone provided by another embodiment of the present application, and the device for playing a call holding tone can be applied to a second terminal. The device for playing a call holding tone includes:
[0178] A generating module 1010, configured to generate a call holding message when the first terminal is talking with the second terminal, the call holding message being used to indicate whether the second terminal can provide a call holding tone to the first terminal;
[0179] The sending module 1020 is used to send a call holding message to the first terminal;
[0180] The receiving module 1030 is used to receive a response message sent by the first terminal, where the response message is generated by the first terminal according to whether the first terminal itself can provide a call holding tone and a call holding message, and the response message is used to indicate a source of the call holding tone, which is the first terminal or the second terminal;
[0181] The determination module 1040 is configured to determine whether to provide a call holding tone to the first terminal according to the answer message, so that the first terminal plays the call holding tone during the call holding period.
[0182] In one embodiment, when the first terminal itself can provide a call holding tone, and the call holding message is used to indicate that the second terminal can provide a call holding tone to the first terminal, and the response message is used to indicate that the source of the call holding tone is the first terminal, the determination module 1040 is further used to determine, based on the response message, that the call holding tone is not provided to the first terminal.
[0183] In one embodiment, when the first terminal itself cannot provide a call holding tone, and the call holding message is used to indicate that the second terminal can provide a call holding tone to the first terminal, and the response message is used to indicate that the source of the call holding tone is the second terminal, the determination module 1040 is further used to determine whether to provide a call holding tone to the first terminal based on the response message.
[0184] In one embodiment, when the first terminal itself can provide a call holding tone, and the call holding message is used to indicate that the second terminal cannot provide a call holding tone to the first terminal, the response message is used to indicate that the source of the call holding tone is the first terminal, then the determination module 1040 is further used to determine, based on the response message, that the call holding tone is not provided to the first terminal.
[0185] In one implementation, the receiving module 1030 is further configured to receive second configuration information;
[0186] Please refer to Fig.11 The device also includes a configuration module 1050, which is used to configure whether the second terminal can provide a call holding tone to the first terminal according to the second configuration information.
[0187] To summarize, the call hold tone playback device provided in the embodiment of the present application, since the call hold message is used to indicate whether the second terminal can provide the call hold tone to the first terminal, the first terminal can determine whether the source of the call hold tone is the first terminal or the second terminal based on whether it can provide the call hold tone and the call hold message, and then obtain the call hold tone from the source for playback, thereby avoiding obtaining the call hold tone from the media server, which can reduce the service pressure of the media server.
[0188] When the providing source is the first terminal, the first terminal can generate a call holding tone locally without transmitting the call holding tone through the network, thereby alleviating the pressure of network transmission.
[0189] An embodiment of the present application provides a computer-readable storage medium, in which at least one instruction, at least one program, a code set or an instruction set is stored. The at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by a processor to implement the method for playing a call holding tone as described above.
[0190] An embodiment of the present application provides a communication system, the communication system comprising a first terminal and a second terminal;
[0191] The first terminal includes: Figure 8 and 9 The second terminal includes a calling holding tone playing device as shown; Fig.10 and 11 The device for playing the call holding tone.
[0192] It should be noted that: the above-mentioned embodiment provides a device for playing a call holding tone, and only uses the division of the above-mentioned functional modules as an example when playing the call holding tone. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure of the device for playing a call holding tone can be divided into different functional modules to complete all or part of the functions described above. In addition, the device for playing a call holding tone provided in the above-mentioned embodiment and the embodiment of the method for playing a call holding tone belong to the same concept. The specific implementation process is detailed in the method embodiment, which will not be repeated here.
[0193] A person skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware or by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.
[0194] The above description is not intended to limit the embodiments of the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the embodiments of the present application should be included in the protection scope of the embodiments of the present application.
Claims
1. A method for playing a call holding tone, characterized in that: Used in a first terminal, the method includes: When the first terminal is talking with the second terminal, receiving a call holding message sent by the second terminal, the call holding message being used to indicate whether the second terminal can provide a call holding tone to the first terminal; generating a response message according to whether the first terminal itself can provide the call holding tone and the call holding message, and sending the response message to the second terminal, wherein the response message is used to indicate a source providing the call holding tone, and the source providing the call holding tone is the first terminal or the second terminal; Acquire the call holding tone from the providing source; The call holding tone is played during the call holding period.
2. The method according to claim 1, characterized in that: The generating a response message according to whether the first terminal itself can provide the call holding tone and the call holding message includes: When the first terminal itself can provide the call hold tone, and the call hold message is used to indicate that the second terminal can provide the call hold tone to the first terminal, a response message is generated to indicate that the source of the call hold tone is the first terminal.
3. The method according to claim 1, characterized in that The generating a response message according to whether the first terminal itself can provide the call holding tone and the call holding message includes: When the first terminal itself cannot provide the call hold tone, and the call hold message is used to indicate that the second terminal can provide the call hold tone to the first terminal, a response message is generated to indicate that the source of providing the call hold tone is the second terminal.
4. The method according to claim 1, characterized in that: The generating a response message according to whether the first terminal itself can provide the call holding tone and the call holding message includes: When the first terminal itself can provide the call holding tone, and the call holding message is used to indicate that the second terminal cannot provide the call holding tone to the first terminal, a response message is generated to indicate that the source of providing the call holding tone is the first terminal.
5. The method according to any one of claims 1 to 4, characterized in that The method further comprises: receiving first configuration information; Whether the first terminal itself can provide the call holding tone is configured according to the first configuration information.
6. A method for playing a call holding tone, characterized in that: Used in a second terminal, the method includes: When the first terminal is talking with the second terminal, generating a call holding message, the call holding message being used to indicate whether the second terminal can provide a call holding tone to the first terminal; Sending the call holding message to the first terminal; receiving a response message sent by the first terminal, where the response message is generated by the first terminal according to whether the first terminal itself can provide the call hold tone and the call hold message, and the response message is used to indicate a source of the call hold tone, where the source is the first terminal or the second terminal; Determine whether to provide the call holding tone to the first terminal according to the answer message, so that the first terminal plays the call holding tone during the call holding period.
7. The method according to claim 6, characterized in that When the first terminal itself can provide the call holding tone, and the call holding message is used to indicate that the second terminal can provide the call holding tone to the first terminal, and the response message is used to indicate that the source of providing the call holding tone is the first terminal, then determining whether to provide the call holding tone to the first terminal according to the response message includes: Determine, according to the response message, not to provide the call holding tone to the first terminal.
8. The method according to claim 6, characterized in that When the first terminal itself cannot provide the call holding tone, and the call holding message is used to indicate that the second terminal can provide the call holding tone to the first terminal, and the response message is used to indicate that the source of providing the call holding tone is the second terminal, then determining whether to provide the call holding tone to the first terminal according to the response message includes: Determine, according to the response message, to provide the call holding tone to the first terminal.
9. The method according to claim 6, characterized in that When the first terminal itself can provide the call holding tone, and the call holding message is used to indicate that the second terminal cannot provide the call holding tone to the first terminal, and the response message is used to indicate that the source providing the call holding tone is the first terminal, then determining whether to provide the call holding tone to the first terminal according to the response message includes: Determine, according to the response message, not to provide the call holding tone to the first terminal.
10. The method according to any one of claims 6 to 9, characterized in that The method further comprises: receiving second configuration information; Whether the second terminal can provide the call holding tone to the first terminal is configured according to the second configuration information.
11. A device for playing a call holding tone, characterized in that: Used in a first terminal, the device includes: A receiving module, used for receiving a call holding message sent by a second terminal when the first terminal is talking with the second terminal, wherein the call holding message is used for indicating whether the second terminal can provide a call holding tone to the first terminal; a generating module, configured to generate a response message according to whether the first terminal itself can provide the call holding tone and the call holding message, and send the response message to the second terminal, wherein the response message is used to indicate a source of the call holding tone, and the source is the first terminal or the second terminal; An acquisition module, used for acquiring the call holding tone from the providing source; The playing module is used to play the call holding tone during the call holding period.
12. A device for playing a call holding tone, characterized in that: Used in a second terminal, the device includes: A generating module, used for generating a call holding message when the first terminal and the second terminal are talking, wherein the call holding message is used for indicating whether the second terminal can provide a call holding tone to the first terminal; A sending module, used for sending the call holding message to the first terminal; a receiving module, configured to receive a response message sent by the first terminal, wherein the response message is generated by the first terminal according to whether the first terminal itself can provide the call hold tone and the call hold message, and the response message is used to indicate a source of the call hold tone, and the source is the first terminal or the second terminal; The determination module is used to determine whether to provide the call holding tone to the first terminal according to the answer message, so that the first terminal plays the call holding tone during the call holding period.
13. A computer-readable storage medium, characterized in that: The storage medium stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by the processor to implement the method for playing the call holding tone as described in any one of claims 1 to 5; or, the at least one instruction, the at least one program, the code set or the instruction set are loaded and executed by the processor to implement the method for playing the call holding tone as described in any one of claims 6 to 10.
14. A communication system, characterized in that: The communication system includes a first terminal and a second terminal; The first terminal comprises the device for playing the call holding tone as claimed in claim 11; The second terminal includes the device for playing the call holding tone as claimed in claim 12.
Citation Information
Patent Citations
Hold detection and handling
CN102835098A
Exchange system
CN1498490A