Communication method and related apparatus
By installing DC applications on the terminal device and using the IMS data channel to realize the call assistant function, it solves the problem that users cannot obtain the other party’s messages in a ringing state, improving the user experience and reducing the implementation cost.
Patent Information
- Application Number
- PCT/CN2025/073158
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-01-29
- Filing Date
- 2025-01-18
- Publication Date
- 2025-08-07
AI Technical Summary
In the prior art, users cannot obtain the content of the other party's message when it is inconvenient to answer the call, and require specific user experience (UX) functions to realize the telephone assistant function, resulting in poor user experience.
By installing DC applications on the terminal device and using IMS data channel (DC) to implement the call assistant function, users can obtain the other party's message information in the ringing state and resume the call without the need for additional UX design.
It realizes real-time access to other party messages without interrupting the phone, improves user experience, and reduces the cost and efficiency of call assistant services.
Smart Images

Figure CN2025073158_07082025_PF_FP_ABST
Abstract
Description
Communication method and related device
[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on January 29, 2024, with application number 202410123917.4 and invention name “Communication Methods and Related Devices”, the entire contents of which are incorporated by reference into this application. Technical Field
[0002] The present application relates to the field of network communication technology, and in particular to a communication method and related devices. Background Art
[0003] In scenarios where it is inconvenient for users to answer calls (such as when in a conference room), it is expected that an agent will assist in answering the call (i.e., call assistant service).
[0004] Traditional agents answering calls typically record the call and then notify the user via voicemail (voicemail services); or they convert the voice message into text and then send it to the user via text message. In these methods, the user cannot see or hear the intended content until the call is disconnected. This results in users being unable to access the other party's message in real time.
[0005] Alternatively, in the prior art, the operating systems of some terminals are provided with an auxiliary answering button in the called user interface so as to receive the other party's message information in real time, but the implementation of such a button requires the development of specific user experience (UX) functions. The existing multimedia telephony service for IP multimedia subsystem (MTSI) client functions are limited, and only have very limited functions such as answering and hanging up in the ordinary call interface, which cannot meet the above demands. How to enable a large number of mobile phones, including existing mobile phones, to use the call assistant function, so that users can view the content of the other party's message in real time when it is inconvenient for them to answer the call, and during the viewing process, the called user can resume the call again through instructions, is an urgent problem to be solved. Summary of the Invention
[0006] An embodiment of the present application provides a communication method and related devices, which combine the data channel DC function of the terminal device to provide a call assistant function for the terminal device, so as to obtain the caller's message information without the need for additional UX design of the terminal. At the same time, the call is maintained during the process of obtaining the message information, which helps to restore the call between the two parties in real time.
[0007] In the first aspect, the present application provides a communication method, which is applied to a first terminal. The first terminal can be a terminal device or a chip in the terminal device. The first terminal supports the IP Multimedia System IMS data channel DC. The method includes: receiving a call request from a second terminal on a second server, and maintaining a ringing state according to the call request of the second terminal; when detecting a first instruction from a user, sending a first message to the first server, the first message is used to notify the start of a call assistant service, the first instruction is used to start the call assistant service, and the interaction between the first server and the first terminal is carried through the DC; receiving a first notification message from the first server, the first notification message including a first message from the second terminal.
[0008] It can be seen that in an embodiment of the present application, for a first terminal device that supports IMSDC, an operation interface for starting the voice call assistant service can be obtained through the DC application installed on the terminal, and the voice call assistant service on the first server can be started by operating the interface, and the first message information from the second server can be obtained through the first server. In this process, no additional UX design is required for the first terminal device. And in the process of obtaining the first message information, the first terminal remains in a ringing state, and there is no need to hang up the phone. The user can accept the call request of the second terminal at any time. This process reduces the implementation cost of the call assistant service and improves the implementation efficiency of the call assistant service.
[0009] In some possible implementations, after receiving the first message from the second terminal, the method further includes: playing the first message.
[0010] In some possible implementations, the method further includes: when a second instruction from the user is detected, sending a second message to the second server, the second message being used to indicate acceptance of the call request from the second terminal, and the second instruction being used to accept the call request; and when a two-way call channel is established between the first terminal and the second terminal, entering a connected state.
[0011] In some possible implementations, maintaining the ringing state according to the call request of the second terminal includes: starting a first ringing state timer, and maintaining the ringing state for a first preset duration corresponding to the first ringing state timer.
[0012] In some possible implementations, the method further includes: receiving a third message from the second server, where the third message is used to instruct to restart the first ringing state timer; and restarting the first ringing state timer based on the third message.
[0013] As can be seen, in this embodiment of the present application, the duration of the ringing service provided by the second server to the first terminal is determined by the ringing timer, and the ringing timer is a restartable (or refreshable) timer, so that the ringing of the first terminal can be delayed. This ensures that the user of the first terminal has sufficient time to answer the message from the second terminal, avoiding inaccurate judgment on whether to answer the call due to insufficient time to answer the message, thereby improving the user experience.
[0014] In the second aspect, the present application provides a communication method, which is applied to a first server. The first server can be a network device or a chip in the network device. The method includes: receiving a first message from a first terminal, the first message is used to notify the start of the call assistant service of the first terminal, and the interaction between the first server and the first terminal is carried by DC; based on the first message, a fourth message is sent to the second server, and the fourth message is used to indicate the acquisition of message information for the first terminal; receiving a second notification message from the second server, and the second notification message includes the first message information from the second terminal; sending a first notification message to the first terminal based on the second notification message, and the first notification message includes the first message information.
[0015] In a third aspect, the present application provides a communication method, which is applied to a second server. The second server can be a network device or a chip in the network device. The method includes: receiving a call request from the second terminal, and forwarding the call request of the second terminal to the first terminal; receiving a fourth message from the first server, and the fourth message is used to request to obtain message information for the first terminal; instructing the media resource to send a first prompt message to the second terminal, and the first prompt message is used to prompt to send the message information; obtaining the first message information from the second terminal through the media resource; and sending a second notification message to the first server, and the second notification message includes the first message information.
[0016] In some possible implementations, the method further includes: receiving a second message from the first terminal, the second message being used to indicate acceptance of a call request from the second terminal; and establishing a two-way call channel between the first terminal and the second terminal based on the second message.
[0017] In some possible implementations, after forwarding the call request of the second terminal to the first terminal, the method further includes: starting a second ringing state timer, and maintaining the ringing state of the first terminal within a second preset duration corresponding to the second ringing state timer.
[0018] In some possible implementations, if the remaining time of the ringing timer is less than the first duration, the second ringing timer is restarted, and a third message is sent to the first terminal, where the third message is used to instruct the restart of the first ringing timer.
[0019] In some possible implementations, before instructing the media resource to send the first prompt information to the second terminal, the method further includes: applying to the media network element for obtaining the media resource.
[0020] In a fourth aspect, the present application provides a communication method, which is applied to a first terminal. The first terminal can be a terminal device or a chip in the terminal device. The first terminal supports the IP Multimedia System IMS data channel DC. The method includes: receiving a call request from the second terminal from the second server, and maintaining a ringing state according to the call request of the second terminal; sending a first message to the first server, the first message is used to notify the start of the call assistant service, and the interaction between the first server and the first terminal is carried by the DC; when the user's second instruction is detected, sending a second message to the second server, the second message is used to accept the call request from the second terminal, and the second instruction is used to accept the call request; entering a silent call state with the second terminal, the silent call connection indicates that the first terminal enters a connected state, and the first terminal cannot receive voice information from the second terminal; receiving a first notification message from the first server, the first notification message includes a first message from the second terminal.
[0021] It can be seen that in an embodiment of the present application, for a first terminal device that supports IMSDC, the voice call assistant service on the first server can be automatically triggered to start by receiving a call request from the second terminal, and the first message information from the second server can be obtained through the first server. In this process, no additional UX design is required for the first terminal device, and the first message information of the caller can be left on the first server before the user accepts the call request from the caller, thereby improving the efficiency of the first terminal in obtaining the first message information. In addition, during the process of obtaining the first message information, the first terminal remains in a ringing state and does not need to hang up the phone. The user can accept the call request from the second terminal at any time. This process reduces the implementation cost of the call assistant service and improves the implementation efficiency of the call assistant service.
[0022] In some possible implementations, the method further includes: upon detecting a third instruction from the user, sending a third message to the first server, where the third message is used to request resumption of the two-way call with the second terminal, and the third instruction is used to resume the two-way call.
[0023] In a fifth aspect, the present application provides a communication method, which is applied to a first server. The first server can be a network device or a chip in the network device. The method includes: receiving a first message from the first terminal, the first message is used to notify the start of the call assistant service, and the interaction between the first server and the first terminal is carried by the DC; sending a fourth message to the second server according to the first message, the fourth message is used to indicate the acquisition of message information for the first terminal; receiving a second notification message from the second server, the second notification message includes the first message information from the second terminal; receiving a fifth message from the second server, the fifth message is used to request to provide the first terminal with the first message information from the second terminal; sending a first notification message to the first terminal according to the fifth message, the first notification message includes the first message information from the second terminal.
[0024] In some possible implementations, the method further includes: receiving a third message from the first terminal, the third message being used to request resumption of the two-way call with the second terminal; and sending a sixth message to the second server based on the third message, the sixth message being used to request resumption of the two-way call between the first terminal and the second terminal.
[0025] In a sixth aspect, the present application provides a communication method, which is applied to a second server, and the second server can be a network device or a chip in the network device. The method includes: receiving a call request from the second terminal, and forwarding the call request of the second terminal to the first terminal; receiving a fourth message from the first server, and the fourth message is used to indicate the acquisition of message information for the first terminal; based on the fourth message, instructing the media resource to send a first prompt message to the second terminal, and the first prompt message is used to prompt the second terminal to send the message information; obtaining the first message information from the second terminal through the media resource; sending a second notification message to the first server, and the second notification message includes the first message information of the second terminal; receiving a second message from the first terminal, and the second message is used to accept the call request from the second terminal; establishing a silent call connection between the first terminal and the second terminal based on the second message, and the silent call connection represents the establishment of other media connections other than voice between the first terminal and the second terminal; sending a fifth message to the first server, and the fifth message is used to request to provide the first terminal with the first message information from the second terminal.
[0026] In some possible implementations, the method further includes: receiving a sixth message from the first server, the sixth message being used to request resumption of the two-way call with the second terminal; and ending the silent call state and resuming the two-way call between the first terminal and the second terminal.
[0027] In some possible implementations, before instructing the media resource to send the first prompt information to the second terminal, the method further includes: applying to the media network element for obtaining the media resource.
[0028] In the seventh aspect, a communication device is provided, which includes: a transceiver unit for receiving a call request from a second terminal on a second server; a processing unit for maintaining a ringing state according to the call request of the second terminal; the processing unit is also used to, when detecting a first instruction from the user, send a first message to the first server in combination with the transceiver unit, the first message is used to notify the start of a call assistant service, the first instruction is used to start the call assistant service, and the interaction between the first server and the first terminal is carried through the DC; the transceiver unit is also used to receive a first notification message from the first server, the first notification message including a first message from the second terminal.
[0029] In some possible implementations, the device further includes a display unit configured to play the first message.
[0030] In some possible implementations, the processing unit is also used to, in conjunction with the transceiver unit, send a second message to the second server when a second instruction from the user is detected, where the second message is used to indicate acceptance of the call request from the second terminal, and the second instruction is used to accept the call request; the processing unit is also used to enter a connected state when a two-way call channel is established between the first terminal and the second terminal.
[0031] In some possible implementations, maintaining the ringing state according to the call request of the second terminal includes: starting a first ringing state timer, and maintaining the ringing state for a first preset duration corresponding to the first ringing state timer.
[0032] In some possible implementations, the transceiver unit is further configured to receive a third message from the second server, where the third message is configured to instruct restarting the first ringing state timer; and the processing unit is further configured to restart the first ringing state timer based on the third message.
[0033] In an eighth aspect, the present application provides a communication device, comprising: a transceiver unit for receiving a first message from a first terminal, the first message being used to notify the start of a call assistant service of the first terminal, and the interaction between the first server and the first terminal being carried through a DC; the transceiver unit is also used to send a fourth message to the second server based on the first message, the fourth message being used to indicate the acquisition of message information for the first terminal; the transceiver unit is also used to receive a second notification message from the second server, the second notification message including the first message information from the second terminal; the transceiver unit is also used to send a first notification message to the first terminal based on the second notification message, the first notification message including the first message information.
[0034] In the ninth aspect, the present application provides a communication device, which includes: a transceiver unit, used to receive a call request from a second terminal and forward the call request of the second terminal to the first terminal; the transceiver unit is also used to receive a fourth message from the first server, and the fourth message is used to request to obtain message information for the first terminal; a processing unit, used to instruct the media resource to send a first prompt message to the second terminal, and the first prompt message is used to prompt to send message information; the processing unit is also used to obtain the first message information from the second terminal through the media resource; the transceiver unit is also used to send a second notification message to the first server, and the second notification message includes the first message information of the second terminal.
[0035] In some possible implementations, the transceiver unit is further used to: receive a second message from the first terminal, the second message being used to indicate acceptance of the call request from the second terminal; the processing unit is further used to: establish a two-way call channel between the first terminal and the second terminal based on the second message.
[0036] In some possible implementations, after forwarding the call request of the second terminal to the first terminal, the processing unit is further configured to: start a second ringing state timer, and maintain the ringing state of the first terminal within a second preset duration corresponding to the second ringing state timer.
[0037] In some possible implementations, the processing unit is also used to: if the remaining time of the ringing state timer is less than the first duration, restart the second ringing state timer, and send a third message to the first terminal in conjunction with the transceiver unit, where the third message is used to indicate the restart of the first ringing state timer.
[0038] In some possible implementations, before instructing the media resource to send the first prompt information to the second terminal, the transceiver unit is further configured to: apply to the media network element for obtaining the media resource.
[0039] In the tenth aspect, the present application provides a communication device, which includes: a transceiver unit for receiving a call request from a second terminal on a second server; a processing unit for maintaining a ringing state according to the call request of the second terminal; the transceiver unit is also used to send a first message to the first server, the first message is used to notify the start of the call assistant service, and the interaction between the first server and the first terminal is carried by DC; the processing unit is used to send a second message to the second server in combination with the transceiver unit when detecting the user's second instruction, the second message is used to accept the call request from the second terminal, and the second instruction is used to accept the call request; the processing unit is used to enter a silent call state with the second terminal, the silent call connection indicates that the first terminal enters a connected state, and the first terminal cannot receive voice information from the second terminal; the transceiver unit is also used to receive a first notification message from the first server, and the first notification message includes a first message from the second terminal.
[0040] In some possible implementations, the processing unit is further used to: when detecting the user's third instruction, in conjunction with the transceiver unit, send a third message to the first server, the third message is used to request the resumption of the two-way call with the second terminal, and the third instruction is used to resume the two-way call.
[0041] In the eleventh aspect, the present application provides a communication device, which includes: a transceiver unit for receiving a first message from a first terminal, the first message being used to notify the start of a call assistant service, and the interaction between the first server and the first terminal is carried by a DC; a fourth message is sent to the second server according to the first message, and the fourth message is used to indicate the acquisition of message information for the first terminal; the transceiver unit is also used to receive a second notification message from the second server, and the second notification message includes the first message information of the second terminal; the transceiver unit is also used to receive a fifth message from the second server, and the fifth message is used to request the provision of the first message information from the second terminal to the first terminal; a first notification message is sent to the first terminal according to the fifth message, and the first notification message includes the first message information from the second terminal.
[0042] In some possible implementations, the transceiver unit is further used to: receive a third message from the first terminal, where the third message is used to request the resumption of the two-way call with the second terminal; and the processing unit is further used to: send a sixth message to the second server based on the third message, where the sixth message is used to request the resumption of the two-way call between the first terminal and the second terminal.
[0043] In a twelfth aspect, the present application provides a communication device, which includes: a transceiver unit for receiving a call request from a second terminal and forwarding the call request of the second terminal to the first terminal; the transceiver unit is also used to: receive a fourth message from the first server, the fourth message is used to indicate the acquisition of message information for the first terminal; based on the fourth message, instruct the media resource to send a first prompt message to the second terminal, the first prompt message is used to prompt the second terminal to send the message information; a processing unit is used to obtain the first message information from the second terminal through the media resource; the transceiver unit is also used to send a second notification message to the first server, the second notification message includes the first message information of the second terminal; receive a second message from the first terminal, the second message is used to accept the call request from the second terminal; the processing unit is also used to: establish a silent call connection between the first terminal and the second terminal based on the second message, the silent call connection represents the establishment of other media connections between the first terminal and the second terminal except for voice, and discards the voice packet from the first terminal, and sends a silent packet to the first terminal; the transceiver unit is also used to: send a fifth message to the first server, the fifth message is used to request to provide the first terminal with the first message information from the second terminal.
[0044] In some possible implementations, the transceiver unit is further used to: receive a sixth message from the first server, the sixth message being used to request resumption of the two-way call with the second terminal; the processing unit is further used to: end the silent call state and resume the two-way call between the first terminal and the second terminal.
[0045] In some possible implementations, before instructing the media resource to send the first prompt information to the second terminal, the transceiver unit is further configured to: apply to the media network element for obtaining the media resource.
[0046] In the thirteenth aspect, the present application provides a communication device, which includes a processor coupled to a memory. When the processor executes a computer program or instruction in the memory, the method of any embodiment of the above-mentioned first aspect is executed, or the method of any embodiment of the above-mentioned fourth aspect is executed.
[0047] Optionally, the device further comprises a memory.
[0048] Optionally, the device further includes a communication interface, and the processor is coupled to the communication interface.
[0049] Optionally, there are one or more processors and one or more memories.
[0050] Optionally, the memory may be integrated with the processor, or the memory may be provided separately from the processor.
[0051] Optionally, the transceiver may include a transmitter (transmitter) and a receiver (receiver).
[0052] In one implementation, the communication device is a terminal device. When the communication device is a terminal device, the communication interface may be a transceiver or an input / output interface. Alternatively, the transceiver may be a transceiver circuit. Alternatively, the input / output interface may be an input / output circuit.
[0053] In another implementation, the communication device is a chip or a chip system. When the device is a chip or a chip system, the communication interface can be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip or chip system. The processor can also be embodied as a processing circuit or a logic circuit.
[0054] In the fourteenth aspect, the present application provides a communication device, which includes a processor coupled to a memory. When the processor executes a computer program or instruction in the memory, the method of any embodiment of the second or third aspect above is executed, or the method of any embodiment of the fifth or sixth aspect above is executed.
[0055] Optionally, the device further comprises a memory.
[0056] Optionally, the device further includes a communication interface, and the processor is coupled to the communication interface.
[0057] Optionally, there are one or more processors and one or more memories.
[0058] Optionally, the memory may be integrated with the processor, or the memory may be provided separately from the processor.
[0059] Optionally, the transceiver may include a transmitter (transmitter) and a receiver (receiver).
[0060] In one implementation, the communication device is an access network device. When the communication device is an access network device, the communication interface may be a transceiver or an input / output interface. Alternatively, the transceiver may be a transceiver circuit. Alternatively, the input / output interface may be an input / output circuit.
[0061] In another implementation, the communication device is a chip or a chip system. When the device is a chip or a chip system, the communication interface can be an input / output interface, interface circuit, output circuit, input circuit, pin, or related circuit on the chip or chip system. The processor can also be embodied as a processing circuit or a logic circuit.
[0062] In a fifteenth aspect, the present application provides a communication system, the communication system including the communication apparatus according to the seventh to ninth aspects, or the communication system including the communication apparatus according to the tenth to twelfth aspects.
[0063] In the sixteenth aspect, the present application provides a computer program product, which includes: a computer program (also referred to as code, or instructions), which, when the computer program is run, enables the computer to execute the method in any possible implementation of the above-mentioned first to sixth aspects.
[0064] In the seventeenth aspect, the present application provides a computer-readable storage medium, which stores a computer program (also referred to as code, or instructions). When the computer program is run on a computer, the computer executes the method in any possible implementation of the first to sixth aspects above.
[0065] In the eighteenth aspect, the present application also provides a circuit, comprising: a processor and an interface, for executing a computer program or instruction stored in a memory, and executing a method in any possible implementation of the above-mentioned first to sixth aspects. BRIEF DESCRIPTION OF THE DRAWINGS
[0066] FIG1A is a schematic diagram of a DC workflow provided by an embodiment of the present application;
[0067] FIG1B is a schematic diagram of an IMS network architecture supporting DC provided in an embodiment of the present application;
[0068] FIG2 is a schematic diagram of a communication scenario provided in an embodiment of the present application;
[0069] FIG3 is a caller ID interface provided by an embodiment of the present application;
[0070] FIG4A is a flow chart of a communication method provided in an embodiment of the present application;
[0071] FIG4B is a schematic diagram of an operation interface for starting a call assistant service according to an embodiment of the present application;
[0072] FIG4C is a schematic diagram of an interface for receiving message information provided in an embodiment of the present application;
[0073] FIG4D is a flow chart of another communication method provided in an embodiment of the present application;
[0074] FIG5A is a flow chart of a specific communication method provided in an embodiment of the present application;
[0075] FIG5B is a schematic diagram of an application list provided in an embodiment of the present application;
[0076] FIG6A is a flow chart of another communication method provided in an embodiment of the present application;
[0077] FIG6B is a schematic diagram of a call interface provided in an embodiment of the present application;
[0078] FIG6C is a flow chart of another communication method provided in an embodiment of the present application;
[0079] FIG7 is a flow chart of a specific communication method provided in an embodiment of the present application;
[0080] FIG8 is a schematic diagram of the structure of a communication device provided in an embodiment of the present application;
[0081] FIG9 is a schematic structural diagram of another communication device provided in an embodiment of the present application;
[0082] FIG10 is a schematic diagram of the hardware structure of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0083] The embodiments of the present invention are described below with reference to the accompanying drawings.
[0084] The terms "first," "second," "third," and "fourth," etc., in the specification and claims of this application and the accompanying drawings are used to distinguish between different objects, rather than to describe a specific order. In addition, the terms "including," "having," and any variations thereof, are intended to cover non-exclusive inclusions. For example, a process, method, system, product, or apparatus comprising a series of steps or elements is not limited to the listed steps or elements, but may optionally include steps or elements not listed, or may optionally include other steps or elements inherent to the process, method, product, or apparatus.
[0085] Reference herein to an "embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least one embodiment of the present application. The appearance of this phrase in various places in the specification does not necessarily refer to the same embodiment, nor does it constitute an independent or alternative embodiment that is mutually exclusive of other embodiments. It is understood, both explicitly and implicitly, by those skilled in the art that the embodiments described herein may be combined with other embodiments.
[0086] "Multiple" means two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent three situations: A exists alone, A and B exist at the same time, and B exists alone. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following" or similar expressions is used to indicate any combination of the listed items; for example, at least one of A, B and (or) C can represent the following situations: A exists alone, B exists alone, C exists alone, A and B exist at the same time, B and C exist at the same time, A and C exist at the same time, and A, B and C exist at the same time, where A, B, and C can be single or multiple.
[0087] The following first introduces the system architecture involved in the embodiments of the present application.
[0088] Please refer to Figure 1A, which is a schematic diagram of a DC workflow provided by an embodiment of the present application. As shown in Figure 1A, it is a data channel (DC) workflow. The execution process of the DC workflow is shown in 1 to 6 in Figure 1A. The DC server is started (through an offline program), and the application stored in the DC application warehouse is interacted with to provide DC services to UE A that has installed the application, so that UE A can interact with the application on the remote UE B through DC. The relationship between the DC architecture and the IP Multimedia Subsystem (IMS) network architecture is not clearly defined.
[0089] Please refer to Figure 1B, which is a schematic diagram of an IMS network architecture supporting DC provided in an embodiment of the present application. As shown in Figure 1B, the IMS network supports DC and has enhanced DC capabilities. The DC signaling function (DC singaling function, DCSF) is connected to the home subscriber server (HSS), network exposure function (NEF) and IMS application server (AS) in the IMS network. The media function (MF) network element is connected to the IMS AS, IMS application gateway (AGW) and remote IMS (IMS in the home network of other UEs except the current UE). That is, the service-based architecture (SBA) and the traditional IMS network elements are interconnected through the newly added DCSF and MF (through the DC1-DC5 and MDC1-MDC3 interfaces).
[0090] The following is an introduction to the professional terms involved in the diagram.
[0091] Terminal devices, also known as user equipment (UE) or terminals, are devices with wireless transceiver capabilities that can communicate with one or more core networks (CNs) via a radio access network (RAN). They can be deployed on land, indoors or outdoors, handheld, wearable, or in vehicles; on water, such as on ships; or in the air, such as on airplanes, balloons, or satellites. Terminal devices can be mobile phones, tablets, computers with wireless transceiver capabilities, virtual reality (VR) devices, augmented reality (AR) devices, wireless terminals in industrial control, wireless terminals in self-driving cars, wireless terminals in remote medical care, wireless terminals in smart grids, wireless terminals in transportation safety, wireless terminals in smart cities, wireless terminals in smart homes, and so on.
[0092] MF: A new media network element that provides DC resource management and augmented reality (AR) rendering capabilities through a service-based interface (SBI). With the service-based implementation of traditional media processing functions such as announcement playback and number collection, and the introduction of new media processing technologies such as automatic speech recognition (ASR) and text-to-speech (TTS) into IMS networks, the media services provided by MF will become even richer.
[0093] Media Resource Point (MRP) or Multimedia Resource Function Processor (MRFP) (not shown): The MRP or (or) MRFP is a logical functional entity in the core network used to implement multiparty calls. It primarily provides and carries multimedia resources. The MF in Figure 1B can also be replaced by an MRP / MRFP. The MRP / MRFP uses traditional interfaces to connect to the S-CSCF and IMS AS.
[0094] DCSF: Provides DC control capabilities and is open to the DC AS to the north.
[0095] DC application repository (DCAR): used to store DC applications.
[0096] HSS: The main subscriber database supporting the IMS network entities used to handle calls / sessions. It contains subscriber profiles, performs authentication and authorization of users, and can provide information about the user's physical location.
[0097] NEF: Used to open system capabilities and events to third parties, supporting external applications to securely provide application information to the system.
[0098] IMS AS: This can include a Session Initialization Protocol (SIP) AS. It provides services for the IMS architecture. The SIP AS and the Serving Call Session Control Function (S-CSCF) directly utilize SIP and its extended call signaling protocols to efficiently deliver a variety of new converged services.
[0099] S-CSCF: plays a core control role in the IMS core network and is responsible for UE registration and authentication, conference control, and user data management.
[0100] P-CSCF: Proxy Call Session Control Function. It is the first connection point with users in the IMS and provides proxy functionality, accepting service requests and forwarding them. In some cases, the P-CSCF can also provide user agent (UA) functionality.
[0101] IMS AGW: used for media interaction processing and controlled by P-CSCF.
[0102] Nimsas: The IMS AS provides the SBI externally, sends call and media implementation notifications to the DCSF, and completes corresponding media resource processing and media negotiation according to the DCSF's instructions.
[0103] Nmf: SBI provided by MF to consumers such as IMS AS for allocating and releasing DC and AR resources.
[0104] Ndcsf: DCSF provides external SBI. DC AS uses this interface to operate DC resources and AR resources and implement their respective business logic.
[0105] Based on the above evolution, please refer to Figure 2, which is a schematic diagram of a communication scenario provided in an embodiment of the present application. As shown in Figure 2, the communication scenario applied in the embodiment of the present application includes a UE that supports DC, and the UE's home network. Among them, the UE's home network includes a DC AS and an IMS AS. Among them, the IMS AS is an IMS-based multimedia telephony service, which realizes the interconnection between multimedia telephony (MMTel) and traditional circuit switching services through the media gateway control function (MGCF) and media gateway (MGW) in the IMS core network. In the embodiment of the present application, DC AS serves as an application server that provides call assistant services, and IMS AS serves as a server that provides multimedia telephony services.
[0106] Correspondingly, the UE is downloaded with a DC application (App), which is used to display the call assistant service interface and communicate with the DC AS. The DC App can be installed in the UE's application processor (AP). The AP includes a DC operating environment. In addition, the UE's baseband chip plus coprocessor (CP) includes a SIP protocol stack, which is used for signaling interaction based on the SIP protocol with the P-CSCF in the home network. The CP also includes a DC stack for media interaction with the IMS-AGW. The media content in the IMS-AGW is provided by the MF network element. Incoming calls from other UEs are received and forwarded by the S-CSCF in the UE's home network.
[0107] The following is an introduction to the prior art related to the embodiments of this application.
[0108] Some terminal devices have implemented the phone assistant function. The specific process is as follows:
[0109] (1) The user's phone rings. Please refer to Figure 3, which shows an incoming call display interface provided by an embodiment of the present application. As shown in Figure 3 (a), the user's phone receives an incoming call and rings, displaying the contact interface. This interface may include the caller's avatar and name, etc. In addition, the user may display an answer button, a reject button (hang up button), a voicemail entry, and a reply text message entry.
[0110] (2) Receiving voice messages. Because the user has signed up for the mobile assistant service, after the call is answered, the IMS AS can remind the other party to leave a message and send the other party's voice message content to the user's voice mailbox (at this time, the user's mobile phone enters the connected state, but it is not a true two-way connection state. Instead, the user's mobile phone receives the other party's message but does not send a voice packet to the other party). The terminal uses AI capabilities to convert the voice message into text to protect the user's privacy.
[0111] (3) The user views the text message. The user can operate the voicemail entry on the mobile phone interface to view the text message. For details, please refer to Figure 3, which is a display interface for message text provided in an embodiment of the present application. As shown in (b) of Figure 3, after the user clicks on the "Voicemail Entry", the message text is displayed on the interface.
[0112] (4) The user answers the call. After viewing the text message, the user can decide whether to answer the call based on its importance (at this point, the two-way conversation state is entered).
[0113] It should be noted that when a user receives a voice message from the other party, the answer button is still displayed on the phone interface. This is a special enhancement to the user interface (UI) so that the user can press the button to enter a true two-way connection state.
[0114] The above-mentioned existing technology has the following defects: the terminal interface needs to cooperate in the development of the UX interface. The called user interface of the above-mentioned terminal device has an auxiliary answering button for answering messages, and this button requires specific UX function development. However, the existing IMS multimedia telephony service for IMS (MTSI) client has limited functions, and only has very limited functions such as answering and hanging up in the ordinary call interface, which cannot cooperate to achieve the above demands. The reason is that the UX interface needs to be specially customized and developed. And if this function is implemented, a business closed loop cannot be achieved. Therefore, how to realize the process of the MTSI terminal supporting DC capabilities to view the other party's voice content in real time when the user is not convenient to answer the call without doing special UX interface customization and development, and how the called user can resume the call again through instructions during the viewing process, is an urgent problem to be solved.
[0115] Please refer to FIG4A , which is a flow chart of a communication method provided in an embodiment of the present application. As shown in FIG4A , the method includes:
[0116] 101. A second server receives a call request from a second terminal, and forwards the call request from the second terminal to a first terminal.
[0117] In this embodiment of the present application, the second server may be an IMS AS, located in the home network of the first terminal. Furthermore, the home network of the first terminal may also include network elements such as an S-CSCF, a P-CSCF, and an IMS-AGW, which, in conjunction with the IMS AS, implement the functions of the IMS AS in this embodiment of the present application. For example, in the process of receiving and forwarding a call request from the second terminal, the S-CSCF receives the call request from the second terminal, the IMS AS instructs the S-CSCF to forward the call request to the P-CSCF, which then sends it to the first terminal, specifically, to the SIP protocol stack on the CP of the first terminal. Furthermore, since the first terminal (or the second terminal) in this embodiment supports DC, the call request from the second terminal forwarded by the S-CSCF carries the network DC Session Description Protocol (SDP) address, enabling a media channel to be established between the DC stack of the first terminal and the MF in the home network of the first terminal through the IMS AGW. The second terminal is the calling terminal, and the first terminal is the called terminal. For a detailed description, please refer to the relevant description of the terminal devices mentioned above. The calling terminal initiates a call request, the second server receives the call request from the calling terminal, and forwards the call request to the called terminal.
[0118] 102. The first terminal receives a call request from a second terminal on a second server, and maintains a ringing state according to the call request from the second terminal.
[0119] After receiving the call request from the second terminal, the first terminal starts the ringing state and keeps it on hold, waiting for user 1 corresponding to the first terminal to answer the call.
[0120] 103. When the first terminal detects the user's first instruction, it sends a first message to the first server. The first message is used to notify the start of the call assistant service. The first instruction is used to start the call assistant service. The interaction between the first server and the first terminal is carried through the DC.
[0121] The first terminal in the embodiment of the present application supports IMSDC. And the first terminal has signed a call assistant service, and the first server providing the call assistant service may be a DC AS. In addition, since the DCSF network element can provide DC control capabilities, the first server may also be formed by a combination of a DC AS and a DCSF network element. The interactive data or signaling between the first terminal and the first server is carried by the DC. Correspondingly, an application (DC App) corresponding to the call assistant service is installed on the first terminal to provide a user with an entry for operating the call assistant service.
[0122] Please refer to Figure 4B, which is a schematic diagram of an operation interface for starting a call assistant service provided in an embodiment of the present application. As shown in (a) in Figure 4B, the mobile phone interface includes an "AI Call Assistant" button. When the user clicks the button, the first terminal receives the first instruction for starting the call assistant service, and the first terminal sends a first message to the DC AS to notify the start of the call assistant service. The interface of the first terminal switches to that shown in (b) in Figure 4B, displaying "AI Call Assistant has been started". The user of the first terminal can wait to receive a message from the user of the second terminal.
[0123] In some cases, the application corresponding to the call assistant service on the first terminal may not be pre-installed. Instead, the application list is loaded after receiving a call request from the second terminal, and the relevant application is installed and loaded according to the user's instructions for downloading the call assistant service application (embedded applications do not need to be installed).
[0124] In other cases, the first terminal may not have established a DC before installing and loading the relevant application. Therefore, when the first terminal receives a call request from the second terminal, it can trigger the first terminal to establish a DC with the first server.
[0125] In other cases, the first terminal uses the call assistant service only for calls from some preset users. Therefore, the first terminal can trigger the start of the call assistant service (or trigger the installation and loading of related applications) when determining that the incoming call number is from a preset user.
[0126] 104. The first server receives a first message from the first terminal, and sends a fourth message to the second server based on the first message, where the fourth message is used to instruct to obtain message information for the first terminal.
[0127] After receiving the first message, the first server activates the call assistant service for the first terminal. A fourth message is sent to the second server to indicate that the call assistant service for the first terminal has been activated, or to directly instruct the second server to retrieve message information for the first terminal. The interactive data or signaling between the first server and the second server may be transmitted via the Hypertext Transfer Protocol (HTTP). The HTTP transmission channel may be established before the first server sends the fourth message to the second server, or may be requested to be established at the same time as the fourth message is sent.
[0128] 105. The second server receives the fourth message from the first server, and instructs the media resource to send first prompt information to the second terminal based on the fourth message, where the first prompt information is used to prompt the second terminal to send a message.
[0129] After receiving the fourth message, the second server can instruct (via the media network element) the media resource to send a first prompt message to the first server, prompting user 2 of the second terminal to leave a message. The content of the first prompt message can be, for example, a voice message such as "The host is busy and cannot answer the call. How can I help you?" After receiving the first prompt message, user 2 of the second terminal can leave a voice message.
[0130] Before instructing the media resource to send the first prompt information to the first server, the second server may also first request the media network element to obtain the media resource. The media network element may be an MF network element or an MRP / MRFP. This description applies to all the following embodiments and will not be repeated hereafter.
[0131] The step of the second server requesting to obtain the media resource may also be performed after receiving the incoming call from the second terminal, or in other steps, which is not specifically limited in this embodiment.
[0132] 106. The second server obtains the first message information from the second terminal through the media resource.
[0133] 107. The second server sends a second notification message to the first server, where the second notification message includes the first message message.
[0134] 108. The first server receives the second notification information from the second server, and sends the first notification information to the first terminal based on the second notification information, wherein the first notification information includes the first message information. Correspondingly, the first terminal receives the first notification information from the first server.
[0135] The second server obtains the first message from the second terminal through the media resource. The specific process includes receiving the first message to the media network element through the media resource. After the media network element receives the first message from the second terminal, because the first message is a voice version and the user may not be able to play the voice at this time, the media network element can perform ASR processing to convert the voice message into a text message. The text message is then sent to the second server. The second server sends the first message (text version) to the first server through the second notification information, and the first server sends the first message to the first terminal.
[0136] If possible, the first message information sent by the media network element to the second server and forwarded by the second server to the first terminal can also be a voice version of the message information (for example, when the user is convenient to answer the message but does not want to talk directly to an unsafe user). The embodiment of the present application does not specifically limit the media format of the message information.
[0137] Please refer to Figure 4C, which is a schematic diagram of an interface for receiving message information provided by an embodiment of the present application. As shown in (a) in Figure 4C, after user 1 starts the call assistant service through the first instruction, assuming that user 2 of the second terminal leaves a message, the first terminal can receive the first message information from the second terminal and display the first message information in the form of text on the mobile phone interface. Among them, the display of the first message information includes: full version display, partial display, summary display, or display in the form of prompt information, etc. If the first message information displayed is not the complete first message information, the user of the first terminal can view the complete first message information by clicking on the displayed content. Specifically, it is shown in (b) in Figure 4C.
[0138] User 1 on the first terminal views the first message, learns the message's content, and decides whether to answer the incoming call from the second terminal based on its importance. For example, if the message reads, "Xiao A, your mother has suddenly collapsed and is hospitalized. She's been sent to XXX Hospital. Please come immediately." User 1 then determines that they need to answer the call. As shown in Figure 4C , the interface includes an answer button and an end button. User 1 can directly press the answer button to answer the call, allowing for a two-way conversation with User 2 on the second terminal.
[0139] In some cases, the first message received by the first terminal from the second terminal may also be a voice message, and the first terminal plays the voice message. This situation corresponds to scenarios such as when user 1 does not want to answer an unknown call directly or needs to verify the caller's voice. In this case, user 1 can first answer the other party's voice message and then answer the other party's call.
[0140] It can be seen that in an embodiment of the present application, for a first terminal device that supports IMSDC, an operation interface for starting the voice call assistant service can be obtained through the DC application installed on the terminal, and the voice call assistant service on the first server can be started by operating the interface, and the first message information from the second server can be obtained through the first server. In this process, no additional UX design is required for the first terminal device. And in the process of obtaining the first message information, the first terminal remains in a ringing state, and there is no need to hang up the phone. The user can accept the call request of the second terminal at any time. This process reduces the implementation cost of the call assistant service and improves the implementation efficiency of the call assistant service.
[0141] Optionally, please refer to Figure 4D, which is a flow chart of another communication method provided in an embodiment of the present application. Steps 101 to 108 thereof can refer to the relevant description of Figure 4A above and will not be repeated here.
[0142] In addition, after step 108, the method further includes:
[0143] 1001. When detecting a second instruction, the first terminal sends a second message to the second server, where the second message is used to indicate acceptance of a call request from the second terminal, and the second instruction is used to accept the call request.
[0144] User 1 can slide the answer button as a second instruction to accept the call request from the second terminal. After receiving the second instruction, the first terminal sends a second message to the second server, indicating that the call request from the second terminal is received.
[0145] 1002. The second server receives a second message from the first terminal and establishes a two-way communication channel between the first terminal and the second terminal. Correspondingly, after the two-way communication channel between the first terminal and the second terminal is established, the first terminal enters a connected state.
[0146] After receiving the second message from the first terminal, the second server establishes a two-way communication channel between the first terminal and the second terminal. The specific process is the same as the existing process of connecting a call between the calling end and the called end.
[0147] The first terminal cooperates with the second server to establish a two-way communication channel, and after completing the establishment of the two-way communication channel, enters a connected state. User 1 can have a normal conversation with user 2.
[0148] It can be seen that in the embodiment of the present application, after the user of the first terminal answers the call from the second terminal, turning off the call assistant service on the first terminal can reduce the resource consumption of the first terminal and improve the operating efficiency of the first terminal.
[0149] Optionally, as shown in FIG4D , the method may further include the following steps:
[0150] 1101. After forwarding the call request of the second terminal to the first terminal, the second server starts the first ringing timer and notifies other relevant network elements (including the first terminal) to start the ringing timer. If possible, step 1101 and step 101 can also be performed simultaneously (combined into one step), that is, the second server starts the first ringing timer while forwarding the call request of the second terminal to the first terminal.
[0151] The second server starts a ringing timer corresponding to a first preset duration, indicating that the ringing state of the first terminal is maintained within the first preset duration. After the first preset duration, the second server stops the call request to the first terminal.
[0152] In addition, the second server sends notification information to the first terminal and other relevant network elements corresponding to the call service of the first terminal in the network B corresponding to the first terminal, such as S-CSCF, P-CSCF\MF or IMS-AGW, to notify them to start a timer with a first preset duration.
[0153] 1102. The first terminal starts a second ringing state timer.
[0154] After the first terminal receives the call request from the second terminal forwarded to the first terminal by the second server (second server), the first terminal enters the ringing state and waits for user 1 to answer. Based on the notification information of the second server, the first terminal starts the second ringing state timer, and the second ringing state timer may also correspond to the first preset duration. If user 1 does not answer the call request within the first preset duration, the first terminal remains in the ringing state. After the second ringing state timer expires (after the first preset duration), the first terminal stops ringing. The first preset duration can be, for example, 60s (seconds), 30s, or 45s.
[0155] Furthermore, since the second server's provision of call services for the first terminal involves the participation of a series of other network elements, such as the aforementioned MF network element providing media resources, the S-CSCF network element, the P-CSCF network element, and the SIP protocol stack on the CP of the first terminal, the second server will notify the server to provide call-related services within the first preset duration. This is equivalent to starting a ringing timer in each of these call-related network elements to measure the duration of the call service provision.
[0156] 1103. If the remaining time of the ringing state timer is less than the first duration, the second server restarts the first ringing state timer.
[0157] 1104. The second server sends a third message to the first terminal, instructing the first terminal to restart the second ringing state timer.
[0158] In an embodiment of the present application, since the first terminal needs to answer the message from the second terminal, the time required to maintain the ringing state may be extended. Therefore, the first preset duration in an embodiment of the present application can be an extended version of the duration, such as 2 minutes, 3 minutes, etc.
[0159] Alternatively, the duration of the ringing state can be a trigger-extended duration. That is, the duration of the ringing state timer is a first preset duration. When the remaining duration of the ringing state timer is less than the first duration, the second server restarts (refreshes) the ringing state timer, and the duration of the ringing state is increased by the first preset duration. The first duration can be a very small value relative to the first preset duration, such as close to 0. Correspondingly, the second server sends a message to other network elements related to the first terminal's call service, prompting these related network elements to refresh their own ringing state timers. When the second server restarts the ringing state timer, the ringing state timer starts again from 0. The second server and related network elements continue to provide call-related services to the first terminal, and the first terminal can continue to maintain the ringing state. Therefore, the duration T that the first terminal can maintain the ringing state is T = T1*(N+1), where T1 represents the first preset duration of the ringing state timer and N represents the number of times the ringing state timer has been refreshed. The first duration can be, for example, 5 seconds, 3 seconds, or the like.
[0160] The time for triggering the second server to restart the ringing state timer may be one or more of the following:
[0161] 1) The second server continuously receives message information from the second terminal.
[0162] This indicates that user 2 of the second terminal is still sending messages to the first terminal, and the first terminal still needs to receive messages and can continue to maintain the ringing state.
[0163] 2) The second server does not receive the call rejection information from the first terminal.
[0164] 3) The time from the second server receiving the last message from the first server does not exceed the second duration.
[0165] This indicates that the second server has just received a message from the first server not long ago, and the message sent by the first server is likely based on the first terminal operating the DC App to obtain relevant content of the message information. In this case, the second server can continue to provide more time for the first terminal user to obtain the message information of the second terminal.
[0166] As can be seen, in this embodiment of the present application, the duration of the ringing service provided by the second server to the first terminal is determined by the ringing timer, and the ringing timer is a restartable (or refreshable) timer, so that the ringing of the first terminal can be delayed. This ensures that the user of the first terminal has sufficient time to answer the message from the second terminal, avoiding inaccurate judgment on whether to answer the call due to insufficient time to answer the message, thereby improving the user experience.
[0167] The above embodiment is described in detail below with reference to SIP signaling messages.
[0168] Please refer to FIG5A , which is a flowchart of a specific communication method provided in an embodiment of the present application. As shown in FIG5A , the method includes:
[0169] 1. Terminal A sends an INVITE message, inviting Terminal A as the caller and Terminal B as the called party.
[0170] 2. The S-CSCF receives the INVITE (message) and triggers the INVITE to the IMS AS to which terminal B subscribes.
[0171] The home network subscribed by terminal B includes IMS AS, S-CSCF, P-CSCF, IMS-AGW and other network elements, which are used to implement the call process of terminal B. In this embodiment, the specific functions of these network elements will be separated and explained.
[0172] S-CSCF is mainly used to manage the calls of terminal B.
[0173] 3. The S-CSCF routes the INVITE to the P-CSCF where terminal B is located, and carries the DC session description protocol (SDP) corresponding to the network.
[0174] The DC SDP includes the network address of the DCSF, which is used by the terminal B to establish a bootstrap DC (BDC) flow with the DCSF according to the network address, and further establish a DC service.
[0175] 4. The P-CSCF routes the INVITE to the corresponding SIP protocol stack on terminal B.
[0176] At this time, the interface of terminal B displays the call information.
[0177] 5. The SIP protocol stack of terminal B replies with a 180 message (Ringring message, or ringing message), indicating that terminal B has rung.
[0178] At this time, terminal B starts the ringing state. In addition, terminal B can initiate media negotiation with the IMS AS to obtain media resources for terminal B from the MF.
[0179] 6. After receiving the 180 message, the IMS AS starts timer t1.
[0180] Correspondingly, other relevant network elements in the home network of terminal B (which may be notified by the IMS AS) also start timers. The relevant network elements may include S-CSCF, MF, IMS-AGW or P-CSCF. Terminal B starts timer t2. (Optional step)
[0181] 7. The IMS AS forwards the 180 message to terminal A (calling side).
[0182] Terminal A learns from the received 180 message that terminal B has rung.
[0183] 8. Terminal B initiates the BDC flow establishment process. This process enables Terminal B to complete the loading of the DC operating environment and establish a connection with the DCSF.
[0184] 9. Terminal B downloads the boot program and the mini-program application list (the application (app) of the call assistant service (hereinafter referred to as DC App) can be automatically loaded). (Optional step)
[0185] 10. Terminal B downloads the DC App according to the automatic loading instructions.
[0186] Terminal B downloads the boot program and the mini-program application list from DCSF, which includes the application corresponding to the call assistant service. The call assistant service can be provided by an independent application or by an embedded application (mini-program). For details, please refer to Figure 5B, which is a schematic diagram of an application list provided in an embodiment of the present application. As shown in (a) in Figure 5B, the DC App (the AI call assistant in the figure) is provided by an independent application. The user needs to click on the application list and install "AI call assistant".
[0187] Alternatively, as shown in (b) of FIG5B , the “AI Call Assistant” is provided by the mini program, and there is no need to download the DC App. In this case, step 10 does not need to be executed.
[0188] 11. Terminal B loads the DC App.
[0189] Terminal B can load the DC App based on the user's operation instruction. At this time, the DC App's operation button can be displayed on the call interface of terminal B, for example, the mobile phone interface described in Figure 4B in the above embodiment displays the "AI Call Assistant" button.
[0190] 12. Application-to-person (A2P) application DC (ADC) is established, and the DC App establishes communication with the DC AS.
[0191] 13. Terminal B sends a startup message to the DC AS based on user B's DC App operation instruction.
[0192] User B chooses whether to launch the DC App based on the actual environment. Assuming it is necessary, as shown in Figure 4B (a) of the aforementioned embodiment, User B initiates the operation by clicking the "AI Call Assistant" button in the center of Terminal B's interface. The DC App then sends a startup message to the DC AS, instructing it to launch the call assistant service.
[0193] It should be noted that the DC App may have been installed on Terminal B in advance, and when Terminal B receives a call message, it can trigger the pop-up operation button of the DC App to provide it to the user for operation. Therefore, the above steps (9) and (10) are all non-essential optional steps.
[0194] 14. The DC AS initiates a notification to the DCSF, notifying the DCSF of terminal B that terminal B requests to start the call assistant service.
[0195] 15. DCSF forwards the notification to the IMS AS, notifying terminal B to request the activation of the call assistant service.
[0196] 16. The IMS AS determines the media resources to be applied for (eg, playback and ASR resources) based on the received notification.
[0197] After receiving the notification from terminal B requesting to start the call assistant service, the IMS AS executes a series of processes to implement the call assistant service for terminal B. The first step is to determine the media resources that need to be applied for, which are used for media interaction with terminal A.
[0198] 17. The IMS AS requests the media resource from the MF. The MF allocates the media resource for playing audio and performing ASR to Terminal A.
[0199] 18. The IMS AS sends a 200 OK message to Terminal A and a tone prompt indicating that a message should be left.
[0200] Specifically, the IMS AS sends a 200 OK message to Terminal A (including the network elements in Terminal A's home network that participate in the call, which are the same network elements in Terminal B's home network that participate in the call described above), indicating that Terminal A's call has been answered (but not actually connected to Terminal B), so that Terminal A's media network elements can be connected. Simultaneously, the IMS AS links Terminal A's media to the announcement resources on the MF (included in the media resources requested in step 17). The MF then sends a prompt to Terminal A, prompting Terminal B's user to leave a message. The prompt may read, for example, "The host is busy and cannot answer the call. How can I help you?"
[0201] 19. Terminal A sends user A's message to MF.
[0202] 20. MF converts the received message into text version through ASR processing.
[0203] 21. MF reports the message information (text version) to the IMS AS.
[0204] The MF can also directly report the voice version of the message to the IMS AS. In this case, step 20 is not performed, and the message forwarded subsequently is also the voice version.
[0205] 22. The IMS AS reports the message information (text version) to the DCSF.
[0206] 23. DCSF reports the message information (text version) to DC AS.
[0207] 24. DC AS uploads the message information (text version) to the DC App on terminal B through the ADC media channel.
[0208] At this time, the message information is displayed on the DC App on the terminal B, and the interface of the terminal B is a ringing state interface. The specific interface display content can be found in the relevant description of Figure 4C above, which will not be repeated here.
[0209] 25. When timer t1 is about to time out, the IMS AS restarts timer t1.
[0210] Because user A takes a while to speak, it takes terminal B a correspondingly longer time to receive user A's message. If this time exceeds the duration of timer t1 (e.g., 30s or 60s), the IMS AS restarts (or refreshes) timer t1 upon detecting that timer t1 has expired or is nearing expiration (e.g., the remaining duration is 0s, 1s, or 2s). Timer t1 then starts counting from 0, and the duration for which the IMS AS can provide call-related services to terminal B also restarts.
[0211] 26. The IMS AS sends an INFO message to notify the restart timer.
[0212] INFO messages are used to communicate signaling messages in a conference along the call signaling path. Therefore, the INFO message sent by the IMS AS will reach terminal B along network elements such as the S-CSCF, MF, IMS-AGW, and P-CSCF, and the INFO message will carry the p-ringing-timer-refresh=True header field / parameter to notify these network elements and terminal B to restart their own timers. After the INFO message is transparently transmitted to the network-related network elements and terminal B, the p-ringing-timer-refresh=True parameter is identified and the timers of each network element are restarted. Correspondingly, terminal B restarts its own timer t2.
[0213] 27. Terminal B responds with 200 OK to the INFO message, indicating that the timer has been successfully refreshed.
[0214] 28. If timer t1 is nearing expiration again, the IMS AS may repeat steps 25-27. The stopping time depends on the service requirements of each network and is configurable (see the description of the triggering conditions for restarting the ringing state timer described above. If the triggering conditions are not met, the restarting of the ringing state timer may be stopped).
[0215] The aforementioned steps 25-28 are all optional steps.
[0216] 29. Terminal B detects the user's call answering operation.
[0217] User B finds the message on terminal A very important, quickly finds a quiet environment, and slides the button to answer the call. The terminal detects the answering operation.
[0218] 30. Terminal B sends a 200 OK message to the P-CSCF based on the detected call answering operation, indicating that the call from terminal A has been answered.
[0219] 31. The P-CSCF forwards the 200 OK message to the IMS AS.
[0220] 32. The IMS AS finds that the called terminal B has answered the call and initiates a ReInvite media redirection to the calling terminal A to obtain the full media of terminal A.
[0221] 33. The IMS AS initiates a ReInvite media redirection to the called terminal B, sending the full media of terminal A and simultaneously initiating media redirection with terminal B.
[0222] 34. Terminal B communicates with terminal A via MF.
[0223] 35. Terminal A communicates with terminal B via MF.
[0224] The above steps 30 to 35 may be referred to as a process in which the IMS AS establishes a two-way conversation between terminal A and terminal B.
[0225] The above embodiment introduces a communication method process for implementing a call assistant service. This application also provides another communication method for implementing a call assistant service. For details, please refer to Figure 6A, which is a flow chart of another communication method provided in an embodiment of this application, as shown in Figure 6A, including:
[0226] 201. A second server receives a call request from a second terminal, and forwards the call request from the second terminal to a first terminal.
[0227] As described in the above embodiment, in the embodiment of the present application, the second server can be an IMS AS, located in the home network of the first terminal. In addition, a series of network elements in the home network of the first terminal that participate in the call service between the first terminal and the second terminal include S-CSCF, P-CSCF, IMS-AGW, etc. The specific manner of participating in the call service process between the first terminal and the second terminal is as described in the relevant description of the aforementioned step 101 and will not be repeated here. The second terminal is the calling terminal and the first terminal is the called terminal. The calling terminal initiates a call request, the second server receives the call request from the calling terminal, and forwards the call request to the called terminal.
[0228] 202. The first terminal receives a call request from the second terminal of the second server, maintains a ringing state according to the call request of the second terminal, and sends a first message to the first server. The first message is used to notify the start of the call assistant service. The interaction between the first server and the first terminal is carried through the DC.
[0229] After receiving the call request from the second terminal, the first terminal starts the ringing state and keeps it on hold, waiting for user 1 corresponding to the first terminal to answer the call.
[0230] The first terminal supports IMSDC and has subscribed to the call assistant service. The first server providing the call assistant service may be a DC AS. Furthermore, since the DCSF network element can provide DC control capabilities, the first server may also be a combination of the DC AS and DCSF network elements. Data or signaling exchanged between the first terminal and the first server is carried over the DC.
[0231] Correspondingly, the DC App is installed on the first terminal to provide the user with an entry for operating the call assistant service. In this embodiment, after the second terminal detects the call request, it automatically starts the call assistant service (DC App) on the second terminal. And a first message is sent to the first server through the DC App to notify the startup of the call assistant service. This means that once the user of the first terminal signs up for the call assistant service, it becomes impossible to directly connect to the call of the second terminal, and the user of the second terminal will always need to leave a message before being connected.
[0232] In this embodiment, the process of downloading, installing, and loading the application corresponding to the call assistant service is as described in the aforementioned step 103 and will not be repeated here.
[0233] 203. The first server receives the first message from the first terminal, and sends a fourth message to the second server according to the first message, where the fourth message is used to instruct to obtain message information for the first terminal.
[0234] 204. The second server receives the fourth message from the first server, and instructs the media resource to send first prompt information to the second terminal based on the fourth message, where the first prompt information is used to prompt the second terminal to send a message.
[0235] 205. The second server obtains the first message information from the second terminal through the media resource.
[0236] 206. The second server sends second notification information to the first server, where the second notification information includes the first message information.
[0237] The descriptions of steps 203 to 206 can be found in the descriptions of steps 104 to 107 , which will not be repeated here.
[0238] 207. When detecting the second instruction of the user, the first terminal sends a second message to the second server. The second message is used to accept the call request of the second terminal, and the second instruction is used to accept the call request.
[0239] The first terminal activates the call assistant service after receiving a call request from the second terminal. However, user 1 of the first terminal needs to press a key to view the message information on the second terminal. User 1 presses a second command on the first terminal to accept the call request from the second terminal. At this time, user 1 does not actually want to talk to the other party, but only wants to receive the message information on the second terminal.
[0240] 208. The second server receives the second message from the first terminal, and sends a fifth message to the first server based on the second message, where the fifth message is used to request that the first terminal be provided with the first message information from the second terminal.
[0241] 209. The second server establishes a silent call connection between the first terminal and the second terminal. The silent call connection represents establishing a media connection other than voice between the first terminal and the second terminal.
[0242] 210. The first terminal enters a silent call state with the second terminal.
[0243] The second server receives the second message from the first terminal. Since the message from the second terminal has been (or will be) sent to the second server, the first server sends a fifth message to the second server, requesting the second server to provide the first terminal with a message from the second terminal.
[0244] At the same time, because the first and second terminals are not actually initiating a call, the second server establishes a silent call connection between the first and second terminals. In this state, the second server establishes a media connection other than voice between the first and second terminals. In other words, the first and second terminals can exchange some media information, such as video, but cannot exchange voice. The voice packets sent by the first terminal to the media network element are discarded, and the media network element sends silent packets to the first terminal.
[0245] Please refer to Figure 6B, which is a schematic diagram of a call interface provided in an embodiment of the present application. As shown in (a) in Figure 6B, when the first terminal receives a call request from the second terminal, the interface displays the incoming call information, the answer button, and the reject button (corresponding to the aforementioned step 202). At the same time, the first terminal starts the call assistant service (DC App) and instructs the DC AS to also start the call assistant service. In the embodiment, after the first terminal starts the DC App, a prompt message is displayed on the interface, prompting user 1 that "the call assistant service has been started, press the answer button to answer the other party's message", and user 1 can operate according to the prompt message. Alternatively, the prompt message may not be displayed on the interface, and user 1 defaults to the answer button to answer the message message of the second terminal.
[0246] When the user wants to answer the message on the second terminal, he operates the second command on the first terminal to receive the call request from the second terminal, and the interface displays relevant information of the connected call, including the character portrait, call duration, call recipient, and hang-up button (reject call button), as shown in (b) of Figure 6B.
[0247] In addition, since the first terminal enters the silent call state and cannot conduct a normal call with the second terminal, the DC App can provide a button on the first terminal for receiving an instruction from user 1 to resume the two-way call, such as the "Resume Two-Way Call" button shown in (b) of Figure 6B.
[0248] 211. The first server receives a fifth message from the second server, and sends a first notification message to the first terminal based on the fifth message, where the first notification message includes the first message from the second terminal. Correspondingly, the first terminal receives the first notification message from the first server.
[0249] Before the second server implements the silent call state between the first terminal and the second terminal, it has already sent a fifth message to the first server, requesting that the first terminal be provided with the first message from the second terminal. After the first server receives the fifth message, since the first message from the second terminal has already been sent to the first server via the transmission channel between the first and second servers (and the second server can subsequently continue to send the message from the second terminal to the first server), the first server can send the received first message to the first terminal so that user 1 of the first terminal can view the message and decide whether to answer the incoming call from the second terminal.
[0250] As shown in (c) of FIG6B , after the first terminal receives the first message from the second terminal, the text message content is displayed on the display interface for the user to view. Similarly, the displayed content can be the full content, or it can be an abbreviated content or summary content. User 1 clicks on the display interface to view the full message content, as shown in (d) of FIG6B .
[0251] When the full content of the first message is displayed on the display interface, the "Resume Two-Way Call" button of the DC App can be in a floating window state or in a hidden state. The user can call out the button by clicking the display interface again or by voice.
[0252] It can be seen that in an embodiment of the present application, for a first terminal device that supports IMSDC, the voice call assistant service on the first server can be automatically triggered to start by receiving a call request from the second terminal, and the first message information from the second server can be obtained through the first server. In this process, no additional UX design is required for the first terminal device, and the first message information of the caller can be left on the first server before the user accepts the call request from the caller, thereby improving the efficiency of the first terminal in obtaining the first message information. In addition, during the process of obtaining the first message information, the first terminal remains in a ringing state and does not need to hang up the phone. The user can accept the call request from the second terminal at any time. This process reduces the implementation cost of the call assistant service and improves the implementation efficiency of the call assistant service.
[0253] Please refer to Figure 6C, which is a flow chart of another communication method provided in an embodiment of the present application. Steps 201 to 210 thereof can refer to the relevant description of Figure 4A above and will not be repeated here.
[0254] After step 211, the method further includes:
[0255] 2101. When detecting a third instruction from a user, the first terminal sends a third message to the first server. The third message is used to request to resume the two-way call with the second terminal. The third instruction is used to resume the two-way call.
[0256] User 1 can click the "Resume Two-Way Call" button provided by the DC App, or slide the button to a specified position as a third instruction for the first terminal to resume the two-way call with the second terminal from the current silent call state.
[0257] 2102. The first server receives a third message from the first terminal, and sends a sixth message to the second server based on the third message, where the sixth message is used to request to resume the two-way call between the first terminal and the second terminal.
[0258] 2103. The second server receives the sixth message from the first server, ends the mute call state of the first terminal, and resumes the two-way call between the first terminal and the second terminal.
[0259] After receiving the third message, the first server may send a sixth message to the second server, requesting the second server to restore the two-way call between the first terminal and the second terminal. The second server, as the home network server of the first terminal, may instruct the media network element to send the voice packets from the second terminal to the first terminal, and also send the voice packets from the first terminal to the second terminal, thereby enabling the two-way call between the first terminal and the second terminal.
[0260] It can be seen that in the embodiment of the present application, after the first terminal and the second terminal resume two-way communication, turning off the call assistant service on the first terminal can reduce the resource consumption of the first terminal and improve the operating efficiency of the first terminal.
[0261] The above embodiment is described in detail below with reference to SIP signaling messages.
[0262] Please refer to FIG. 7 , which is a flowchart of a specific communication method provided in an embodiment of the present application. As shown in FIG. 7 , the method includes:
[0263] 1. Terminal A sends an INVITE message, inviting Terminal A as the caller and Terminal B as the called party to be paged.
[0264] 2. The S-CSCF receives the call and triggers the call to the IMS AS to which terminal B is subscribed.
[0265] 3. The S-CSCF routes the call to the P-CSCF where terminal B is located, and carries the DC SDP address corresponding to the network.
[0266] 4. The P-CSCF routes the call to the SIP protocol stack corresponding to terminal B, and the interface of terminal B displays the call information.
[0267] 5. Terminal B starts the ringing state and the SIP protocol stack of Terminal B responds with a 180 message (Ringring message, or ringing message), indicating that Terminal B is ringing.
[0268] The above steps 1-5 are the same as the corresponding steps in FIG. 5A .
[0269] 6. After processing, the IMS AS forwards the 180 message to terminal A (calling side).
[0270] 7. Terminal B initiates the BDC flow establishment process.
[0271] 8. Terminal B downloads the boot program and the mini-program application list (the attribute of the call assistant service application (DC App for short) is autoload).
[0272] 9. Terminal B downloads the DC App according to the automatic loading instructions.
[0273] For the description of steps 6 to 9, please refer to the description of steps 7 to 10 in FIG. 5A .
[0274] 10. After the DC App of terminal B is automatically loaded, A2P ADC signaling negotiation is initiated.
[0275] 11. The A2P ADC channel is established, and the DC App on terminal B communicates with the DC AS.
[0276] 12. The UX interface of the DC App of terminal B is loaded to the front end.
[0277] The display interface may display "Your assistant has been activated, please press the answer key to view the other party's content" to remind user B that the current answer key is not used for a two-way call with terminal A, but is used to answer the other party's message. For details, please refer to the description related to (a) in Figure 6B above.
[0278] 13. The DC AS sends a notification to the DCSF, notifying the DCSF of terminal B that terminal B requests to start the call assistant service.
[0279] The notification includes a voice message and an ASR instruction. The voice message is used to prompt user A of terminal A to leave a voice message.
[0280] 14. DCSF sends a notification to IMS AS, informing terminal B to activate the call assistant service.
[0281] 15. The IMS AS receives the notification and determines the media resources to be applied for (such as playback and ASR resources).
[0282] 16. The IMS AS applies to the MF for the media resource.
[0283] The MF allocates corresponding media resources for playing voice messages to terminal A and performing ASR on the voice messages left by terminal A.
[0284] 17. The IMS AS sends a 200 OK message to terminal A (including network elements participating in the call process in the home network of terminal A) and sends a prompt tone to indicate that a message should be left.
[0285] 18. Terminal A sends user A's message to MF.
[0286] 19. MF converts the received message into text message through ASR processing.
[0287] 20. MF reports the message information (text version) to the IMS AS.
[0288] 21. The IMS AS reports the message information (text version) to the DCSF.
[0289] 22. DCSF reports the message information (text version) to DC AS.
[0290] 23. User B is not in a position to answer the call, so he slides and presses the answer button.
[0291] 24. Terminal B sends a 200 OK message to the IMS AS to indicate that it has answered the call from Terminal A.
[0292] 25. The IMS AS reports the (user) answering event to the DCSF.
[0293] In the embodiment of the present application, the instruction corresponding to the answer button on terminal B is not used to actually connect the call of user A on the calling side, but to answer the message of user A. Therefore, the IMS AS reports the user answer event to the DCSF instead of establishing a two-way call between terminal A and terminal B.
[0294] 26. DCSF reports the call reception event to DC AS.
[0295] 27. DC AS uploads the message information (text version) to the DC App on terminal B through the ADC media channel.
[0296] The connection interface of terminal B displays the message from terminal A. At the same time, the DC AS can instruct the DC App to provide a "Resume Two-Way Call" button to allow the user to end the message and enter the two-way call state. For details, please refer to the description of (b) in Figure 6B above.
[0297] 28. Although the connection is established, MF sends a mute packet to terminal B, and any sound from the other party cannot be played through terminal B.
[0298] At this time, terminal B can be said to be in a silent call state.
[0299] 29. Terminal B sends a voice packet to the caller.
[0300] 30. However, the MF does not forward the voice packets from terminal B to the calling party. Instead, the voice packets from terminal B may be discarded.
[0301] 31. User B finds that user A's message is very important and presses the "Resume Two-Way Call" button on the DC App interface.
[0302] 32. The DC App of terminal B sends a media redirection request message to the DC AS.
[0303] 33. The DC AS instructs the DCSF to initiate media redirection and establish two-way voice.
[0304] 34. DCSF instructs the IMS AS to initiate media redirection and establish two-way voice.
[0305] 35. The IMS AS initiates a ReInvite media redirection to the calling terminal A and obtains the full media of terminal A.
[0306] 36. The IMS AS initiates a ReInvite media redirection to the called terminal B, sending the full media of terminal A and simultaneously initiating media redirection with terminal B.
[0307] 37. Terminal B communicates with terminal A via MF.
[0308] 38. Terminal A communicates with terminal B via MF.
[0309] The above steps 32 to 38 are the process of terminal A exiting the silent call state and resuming the two-way call with terminal B.
[0310] As shown in the structural diagram of the communication device in Figure 8, the embodiment of the present application also provides a communication device 1200, which can be a terminal device, or can be used for but not limited to a terminal device. The communication device 1200 includes a transceiver unit 1201 and a processing unit 1202. The transceiver unit 1201 can be or can be deployed in a unit or module that can realize the information transmission and reception function, such as a transceiver, a transceiver antenna, an input and output interface. The processing unit 1202 can be or can be deployed in a processor. Among them,
[0311] The transceiver unit 1201 is configured to receive a call request from a second terminal on a second server;
[0312] The processing unit 1202 is configured to maintain a ringing state according to a call request from the second terminal;
[0313] Processing unit 1202 is used to send a first message to the first server in combination with the transceiver unit when detecting the user's first instruction. The first message is used to notify the start of the call assistant service. The first instruction is used to start the call assistant service. The interaction between the first server and the first terminal is carried by DC; the transceiver unit is also used to receive a first notification information from the first server, and the first notification information includes a first message information from the second terminal.
[0314] Optionally, the device further includes a display unit 1203, configured to play the first message information.
[0315] Optionally, the processing unit 1202 is further configured to, in conjunction with the transceiver unit 1201, send a second message to the second server when a second instruction from the user is detected, where the second message is used to indicate that the call request from the second terminal is accepted, and the second instruction is used to accept the call request;
[0316] The processing unit 1202 is further configured to enter a connected state when a two-way communication channel is established between the first terminal and the second terminal.
[0317] Optionally, maintaining the ringing state according to the call request of the second terminal includes: starting a first ringing state timer, and maintaining the ringing state within a first preset time period corresponding to the first ringing state timer.
[0318] Optionally, the transceiver unit 1201 is further used to receive a third message from the second server, where the third message is used to instruct to restart the first ringing state timer; the processing unit 1202 is further used to restart the first ringing state timer based on the third message.
[0319] Optionally, the communication device 1200 shown in FIG. 8 may also be used to perform the following operations:
[0320] The transceiver unit 1201 is configured to receive a call request from a second terminal on a second server;
[0321] The processing unit 1202 is configured to maintain a ringing state according to a call request from the second terminal;
[0322] The transceiver unit 1201 is further configured to send a first message to the first server, where the first message is used to notify the first server to start the call assistant service, and the interaction between the first server and the first terminal is carried out through the DC bearer;
[0323] The processing unit 1202 is configured to, when detecting a second instruction from the user, send a second message to the second server in conjunction with the transceiver unit 1201, where the second message is used to accept the call request from the second terminal, and the second instruction is used to accept the call request;
[0324] The processing unit 1202 is configured to enter a silent call state with the second terminal, where the silent call state indicates that the first terminal enters a connected state and the first terminal cannot receive voice information from the second terminal;
[0325] The transceiver unit 1201 is further configured to receive first notification information from the first server, where the first notification information includes first message information from the second terminal.
[0326] In some possible implementations, the processing unit 1202 is further used to: when detecting the user's third instruction, send a third message to the first server in conjunction with the transceiver unit 1201, the third message is used to request the resumption of the two-way call with the second terminal, and the third instruction is used to resume the two-way call.
[0327] As shown in the structural diagram of the communication device in Figure 9, the embodiment of the present application also provides a communication device 1300, which can be a terminal device, or can be used for but not limited to a terminal device. The communication device 1300 includes a transceiver unit 1301 and a processing unit 1302. The transceiver unit 1301 can be or can be deployed in a unit or module that can realize the information transmission and reception function, such as a transceiver, a transceiver antenna, an input and output interface. The processing unit 1302 can be or can be deployed in a processor. Among them,
[0328] The transceiver unit 1301 is configured to receive a first message from a first terminal, where the first message is used to notify the first terminal to start a call assistant service, and the interaction between the first server and the first terminal is carried out through a DC bearer;
[0329] The transceiver unit 1301 is further configured to send a fourth message to the second server based on the first message, where the fourth message is used to instruct to obtain message information for the first terminal;
[0330] The transceiver unit 1301 is further configured to receive second notification information from the second server, where the second notification information includes the first message information from the second terminal;
[0331] The transceiver unit 1301 is further configured to send first notification information to the first terminal based on the second notification information, where the first notification information includes the first message information.
[0332] Optionally, the communication device 1300 shown in FIG. 9 may also be used to perform the following operations:
[0333] The transceiver unit 1301 is configured to receive a call request from the second terminal and forward the call request from the second terminal to the first terminal;
[0334] The transceiver unit 1301 is further configured to receive a fourth message from the first server, where the fourth message is used to request to obtain message information for the first terminal;
[0335] Processing unit 1302 is configured to instruct the media resource to send a first prompt message to the second terminal, where the first prompt message is used to prompt the second terminal to send a message;
[0336] The processing unit 1302 is further configured to obtain the first message information from the second terminal through the media resource;
[0337] The transceiver unit 1301 is further configured to send second notification information to the first server, where the second notification information includes the first message information.
[0338] Optionally, the transceiver unit 1301 is further used to: receive a second message from the first terminal, the second message is used to indicate acceptance of the call request from the second terminal; the processing unit 1302 is further used to: establish a two-way call channel between the first terminal and the second terminal based on the second message.
[0339] Optionally, after forwarding the call request of the second terminal to the first terminal, the processing unit 1302 is further configured to: start a second ringing state timer, and maintain the ringing state of the first terminal within a second preset duration corresponding to the second ringing state timer.
[0340] Optionally, the processing unit 1302 is further used to: if the remaining time of the ringing state timer is less than the first duration, restart the second ringing state timer, and combine with the transceiver unit 1301 to send a third message to the first terminal, the third message is used to indicate the restart of the first ringing state timer.
[0341] Optionally, before instructing the media resource to send the first prompt information to the second terminal, the transceiver unit 1301 is further configured to: apply to the media network element for obtaining the media resource.
[0342] Optionally, the communication device 1300 shown in FIG. 9 may also be used to perform the following operations:
[0343] In an eleventh aspect, the present application provides a communication device, comprising:
[0344] The transceiver unit 1301 is configured to receive a first message from the first terminal, the first message being used to notify the activation of the call assistant service, and the interaction between the first server and the first terminal being carried out through the DC bearer; and to send a fourth message to the second server based on the first message, the fourth message being used to instruct the acquisition of message information for the first terminal;
[0345] The transceiver unit 1301 is further configured to receive second notification information from the second server, where the second notification information includes the first message information from the second terminal;
[0346] The transceiver unit 1301 is further used to receive a fifth message from the second server, the fifth message being used to request that the first terminal be provided with the first message information from the second terminal; and to send a first notification information to the first terminal according to the fifth message, the first notification information including the first message information from the second terminal.
[0347] Optionally, the transceiver unit 1301 is further configured to: receive a third message from the first terminal, where the third message is used to request resumption of a two-way call with the second terminal;
[0348] The processing unit 1302 is further configured to send a sixth message to the second server based on the third message, where the sixth message is used to request to resume the two-way conversation between the first terminal and the second terminal.
[0349] Optionally, the communication device 1300 shown in FIG. 9 may also be used to perform the following operations:
[0350] The transceiver unit 1301 is configured to receive a call request from the second terminal and forward the call request from the second terminal to the first terminal;
[0351] The transceiver unit 1301 is further configured to: receive a fourth message from the first server, the fourth message being used to instruct to obtain message information for the first terminal; instruct the media resource to send first prompt information to the second terminal based on the fourth message, the first prompt information being used to prompt the second terminal to send the message information;
[0352] The processing unit 1302 is configured to obtain the first message information from the second terminal through the media resource; the transceiver unit 1301 is further configured to send a second notification message to the first server, the second notification message including the first message information; and receive a second message from the first terminal, the second message being used to accept the call request from the second terminal.
[0353] The processing unit 1302 is further configured to: establish a silent call connection between the first terminal and the second terminal based on the second message, where the silent call connection represents establishing a media connection other than voice between the first terminal and the second terminal;
[0354] The transceiver unit 1301 is further configured to send a fifth message to the first server, where the fifth message is used to request that the first terminal be provided with the first message information from the second terminal.
[0355] Optionally, the transceiver unit 1301 is further used to: receive a sixth message from the first server, the sixth message being used to request resumption of the two-way call with the second terminal; the processing unit 1302 is further used to: end the silent call state and resume the two-way call between the first terminal and the second terminal.
[0356] Optionally, before instructing the media resource to send the first prompt information to the second terminal, the transceiver unit 1301 is further configured to: apply to the media network element for obtaining the media resource.
[0357] As shown in FIG10 , FIG10 shows a schematic diagram of the hardware structure of a communication device 1400 in an embodiment of the present application. The structure of the communication device 1200 or the communication device 1300 can refer to the structure shown in FIG10 . The communication device 1400 includes: a processor 111 and a transceiver 112, wherein the processor 111 and the transceiver 112 are electrically coupled;
[0358] The processor 111 is configured to execute part or all of the computer program instructions in the memory. When the part or all of the computer program instructions are executed, the device executes the method described in any one of the above embodiments.
[0359] The transceiver 112 is used to communicate with other devices; for example, to receive a call request from a second terminal of a second server.
[0360] Optionally, a memory 113 is also included for storing computer program instructions. Optionally, the memory 113 (memory #1) is located within the device, the memory 113 (memory #2) is integrated with the processor 111, or the memory 113 (memory #3) is located outside the device.
[0361] It should be understood that the communication device 1300 shown in FIG10 may be a chip or circuit. For example, the chip or circuit may be provided within a terminal device or a communication device. The transceiver 112 may also be a communication interface. A transceiver includes a receiver and a transmitter. Furthermore, the communication device 1300 may also include a bus system.
[0362] Among them, the processor 111, memory 113, and transceiver 112 are connected via a bus system. The processor 111 is used to execute instructions stored in the memory 113 to control the transceiver to receive and transmit signals, thereby completing the steps of the transmitting end or the receiving end in the implementation method involved in this application. The memory 113 can be integrated into the processor 111 or set separately from the processor 111.
[0363] As an implementation method, the functions of the transceiver 112 can be implemented by a transceiver circuit or a dedicated transceiver chip. The processor 111 can be implemented by a dedicated processing chip, a processing circuit, a processor, or a general-purpose chip. The processor can be a central processing unit (CPU), a network processor (NP), or a combination of a CPU and an NP. The processor can further include a hardware chip or other general-purpose processor. The above-mentioned hardware chip can be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The above-mentioned PLD can be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), and other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc., or any combination thereof. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.
[0364] It should also be understood that the memory mentioned in the embodiments of the present application may be a volatile memory or a non-volatile memory, or 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. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct RAM bus random access memory (DR RAM). It should be noted that the memory described herein is intended to include, but is not limited to, these and any other suitable types of memory.
[0365] An embodiment of the present application provides a computer storage medium storing a computer program, wherein the computer program includes a method for executing the method corresponding to the first device, the first server, or the second server in the above embodiment.
[0366] An embodiment of the present application provides a computer program product comprising instructions, which, when executed on a computer, enables the computer to execute the method corresponding to the first device, the first server, or the second server in the above embodiment.
[0367] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0368] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0369] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0370] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0371] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0372] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0373] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk.
[0374] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present application should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.
Claims
1. A communication method, characterized in that: Applied to a first terminal, the first terminal supports an IP Multimedia System IMS data channel DC, and the method includes: receiving a call request from a second terminal on a second server, and maintaining a ringing state according to the call request from the second terminal; When a first instruction from the user is detected, a first message is sent to the first server, where the first message is used to notify the user to start the call assistant service. The first instruction is used to start the call assistant service. The interaction between the first server and the first terminal is carried out through the DC bearer. First notification information is received from the first server, where the first notification information includes first message information from the second terminal.
2. The method according to claim 1, characterized in that The method further includes: after receiving the first message information from the second terminal, playing the first message information.
3. The method according to claim 1 or 2, characterized in that The method further comprises: When a second instruction of the user is detected, sending a second message to the second server, where the second message is used to instruct to accept the call request of the second terminal, and the second instruction is used to accept the call request; When a two-way communication channel is established between the first terminal and the second terminal, a connected state is entered.
4. The method according to claim 3, characterized in that The maintaining the ringing state according to the call request of the second terminal includes: A first ringing state timer is started, and the ringing state is maintained within a first preset time period corresponding to the first ringing state timer.
5. The method according to claim 4, characterized in that The method further comprises: receiving a third message from the second server, where the third message is used to instruct restarting the first ringing state timer; Restart the first ringing state timer based on the third message.
6. A communication method, characterized in that: Applied to the first server, the method includes: receiving a first message from a first terminal, where the first message is used to notify the first terminal to start a call assistant service; Sending a fourth message to the second server based on the first message, where the fourth message is used to instruct to obtain message information for the first terminal; receiving a second notification message from the second server, wherein the second notification message includes the first message message from the second terminal; The first notification information is sent to the first terminal based on the second notification information, where the first notification information includes the first message information.
7. A communication method, characterized in that: Applied to the second server, the method includes: receiving a call request from a second terminal, and forwarding the call request of the second terminal to the first terminal; receiving a fourth message from the first server, wherein the fourth message is used to request to obtain message information for the first terminal; Instructing the media resource to send a first prompt message to the second terminal, where the first prompt message is used to prompt the second terminal to send a message; obtaining, through the media resource, first message information from the second terminal; Sending second notification information to the first server, where the second notification information includes the first message information.
8. The method according to claim 7, characterized in that The method further comprises: receiving a second message from the first terminal, where the second message is used to indicate that a call request from the second terminal is accepted; A two-way communication channel between the first terminal and the second terminal is established based on the second message.
9. The method according to claim 8, characterized in that After forwarding the call request of the second terminal to the first terminal, the method further includes: A second ringing state timer is started, and the ringing state of the first terminal is maintained within a second preset duration corresponding to the second ringing state timer.
10. The method according to claim 9, characterized in that If the remaining time of the ringing timer is less than the first duration, restart the second ringing timer and send a third message to the first terminal, where the third message is used to instruct to restart the first ringing timer.
11. The method according to any one of claims 7 to 10, characterized in that: Before instructing the media resource to send the first prompt information to the second terminal, the method further includes: applying to a media network element to obtain the media resource.
12. A communication method, characterized in that: Applied to a first terminal, the first terminal supports an IP Multimedia System IMS data channel DC, and the method includes: receiving a call request from a second terminal on a second server, and maintaining a ringing state according to the call request from the second terminal; Sending a first message to a first server, where the first message is used to notify the first server to start the call assistant service, and the interaction between the first server and the first terminal is carried out through the DC bearer; When a second instruction of the user is detected, a second message is sent to the second server, where the second message is used to accept the call request of the second terminal, and the second instruction is used to accept the call request; Entering a silent call state with the second terminal, wherein the silent call connection indicates that the first terminal has entered a connected state and the first terminal cannot receive voice information from the second terminal; First notification information is received from a first server, where the first notification information includes first message information from a second terminal.
13. The method according to claim 12, characterized in that The method further comprises: When a third instruction from the user is detected, a third message is sent to the first server, where the third message is used to request to resume the two-way conversation with the second terminal, and the third instruction is used to resume the two-way conversation.
14. A communication method, characterized in that: Applied to the first server, the method includes: receiving a first message from a first terminal, where the first message is used to notify the user to start a call assistant service, and the interaction between the first server and the first terminal is carried out through a DC bearer; Sending a fourth message to the second server according to the first message, wherein the fourth message is used to instruct to obtain message information for the first terminal; receiving a second notification message from the second server, wherein the second notification message includes the first message message from the second terminal; receiving a fifth message from the second server, the fifth message being used to request providing first message information from the second terminal to the first terminal; First notification information is sent to the first terminal according to the fifth message, where the first notification information includes first message information from the second terminal.
15. The method according to claim 14, characterized in that The method further comprises: receiving a third message from the first terminal, the third message being used to request resumption of a two-way call with the second terminal; A sixth message is sent to the second server based on the third message, where the sixth message is used to request resumption of the two-way conversation between the first terminal and the second terminal.
16. A communication method, characterized in that: Applied to the second server, the method includes: receiving a call request from the second terminal, and forwarding the call request of the second terminal to the first terminal; receiving a fourth message from the first server, wherein the fourth message is used to instruct to obtain message information for the first terminal; Instructing the media resource to send first prompt information to the second terminal based on the fourth message, where the first prompt information is used to prompt the second terminal to send a message; obtaining, through the media resource, first message information from the second terminal; Sending a second notification message to the first server, where the second notification message includes the first message information; receiving a second message from the first terminal, where the second message is used to accept a call request from the second terminal; Establishing a silent call state between the first terminal and the second terminal based on the second message, where the silent call connection represents establishing a media connection other than voice between the first terminal and the second terminal; A fifth message is sent to the first server, where the fifth message is used to request that the first message information from the second terminal be provided to the first terminal.
17. The method according to claim 16, characterized in that The method further comprises: receiving a sixth message from the first server, the sixth message being used to request resumption of a two-way call with the second terminal; The mute call state is ended, and the two-way call between the first terminal and the second terminal is restored.
18. The method according to claim 16 or 17, characterized in that Before instructing the media resource to send the first prompt information to the second terminal, the method further includes: applying to a media network element to obtain the media resource.
19. A communication device, characterized in that: The communication device comprises means for performing the method according to any one of claims 1-11, or comprises means for performing the method according to any one of claims 12-18.
20. A communication device, characterized in that: The method comprises a processor configured to execute the method according to any one of claims 1 to 11, or configured to execute the method according to any one of claims 12 to 18.
21. A computer-readable storage medium, characterized in that The computer-readable storage medium comprises instructions, which, when executed, enable the method according to any one of claims 1 to 11 to be implemented, or enable the method according to any one of claims 12 to 18 to be implemented.
22. A computer program product, characterized in that The computer program product comprises instructions, which, when executed, enable the method according to any one of claims 1 to 11 to be implemented, or enable the method according to any one of claims 12 to 18 to be implemented.
Citation Information
Patent Citations
Call-based message-leaving method, device, terminal and server
CN104917909A
Method and device for enhancing user information display in call process
CN116132577A
Multimedia call method and device, electronic equipment and storage medium
CN116260597A
Method and device for transmitting a text message over a voice call
US20180295163A1