WO2022022427A1 - 通话方法、系统和相关装置 - Google Patents

通话方法、系统和相关装置 Download PDF

Info

Publication number
WO2022022427A1
WO2022022427A1 PCT/CN2021/108234 CN2021108234W WO2022022427A1 WO 2022022427 A1 WO2022022427 A1 WO 2022022427A1 CN 2021108234 W CN2021108234 W CN 2021108234W WO 2022022427 A1 WO2022022427 A1 WO 2022022427A1
Authority
WO
WIPO (PCT)
Prior art keywords
call
voip
terminal device
target number
call request
Prior art date
Application number
PCT/CN2021/108234
Other languages
English (en)
French (fr)
Inventor
龚卫林
姚晶晶
樊宇伟
连海
贾银元
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to US18/015,373 priority Critical patent/US20230319189A1/en
Publication of WO2022022427A1 publication Critical patent/WO2022022427A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/006Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
    • H04M7/0075Details of addressing, directories or routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/16Communication-related supplementary services, e.g. call-transfer or call-hold
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/20Transfer of user or subscriber data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/18Processing of user or subscriber data, e.g. subscribed services, user preferences or user profiles; Transfer of user or subscriber data
    • H04W8/20Transfer of user or subscriber data
    • H04W8/205Transfer to or from user equipment or user record carrier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2207/00Type of exchange or network, i.e. telephonic medium, in which the telephonic communication takes place
    • H04M2207/20Type of exchange or network, i.e. telephonic medium, in which the telephonic communication takes place hybrid systems
    • H04M2207/203Type of exchange or network, i.e. telephonic medium, in which the telephonic communication takes place hybrid systems composed of PSTN and data network, e.g. the Internet
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Definitions

  • the present application relates to the field of communication technologies, and in particular, to a calling method, system and related apparatus.
  • the called terminal for example, a mobile phone
  • the called terminal may not be able to receive the call request from the calling terminal, resulting in the inability of the calling terminal to establish a connection between the calling terminal and the called terminal. call connection.
  • the dual-card single-pass scenario may also cause the calling terminal and the called terminal to fail to establish a call connection.
  • the called terminal for example, a mobile phone
  • the called terminal supports dual SIM cards, and the dual SIM cards share a set of radio frequency resources, so simultaneous transmission cannot be achieved. If one of the cards is in a call, the other card will not be able to receive the call request from the calling terminal due to lack of radio frequency resources, thus causing the calling terminal and the called terminal to fail to establish a call connection.
  • the called terminal cannot receive the call request from the calling terminal, for example, the called terminal is in the airplane mode.
  • Embodiments of the present application provide a method, a system, and a related device for calling, so as to solve the problem that the called terminal cannot receive the calling terminal's call due to the operator's network signal problem or other reasons (for example, dual-card single-pass, airplane mode, etc.). The problem with the call request.
  • an embodiment of the present application provides a call system, the system includes a first terminal device, a network device, a VoIP server, and a second terminal device, and the second terminal device is installed with a first application as a VoIP client.
  • the first terminal device is configured to, after detecting the first operation, send a first call request to the network device in response to the first operation, where the first call request is a call request initiated for the target number; After the first call request is reached, send a first message to the VoIP server according to the first call request, the first message carries the target number, and the target number has been activated with a call forwarding service; the VoIP server is used to, after receiving the first message, According to the first message, a second call request is sent to the second terminal device associated with the target number; the second terminal device is used for receiving the second call request.
  • the second call request is a VoIP call request.
  • the network device sends the first message carrying the target number to the VoIP server according to the call request of the target number for which the call forwarding service has been activated, that is, the network device forwards the first call request to the VoIP server, and the VoIP server forwards the first call request to the VoIP server.
  • the target number in the first message initiate a VoIP call to the second terminal device associated with the target number, so that the called party can still receive the main call request.
  • the call forwarding service activated by the target number includes the inaccessible call forwarding service, and the target number is the SIM card number of the second terminal device.
  • the first terminal device initiates a cellular call request (ie, a first call request) for the target number. After the cellular call request is transmitted to the network device, the network device pages the target number. At this time, the SIM card of the second terminal device is in an out-of-service state due to reasons such as airplane mode or no operator network signal, which causes the network device to fail to page. .
  • the network device When the paging fails, the network device generates a first message carrying the target number, and sends the first message to the VoIP server.
  • the VoIP server then obtains the target number by parsing the first message, and after finding the second terminal device associated with the target number, initiates a VoIP call to the second terminal device. In this way, the second terminal device can still receive the call initiated by the first terminal when the SIM card is out of service.
  • the network device may refer to an operator network device, and the first message may refer to a forwarding message, such as an Invite message.
  • the call forwarding service includes an unreachable call forwarding service.
  • the network device is specifically configured to page the target number according to the first call request; when the paging fails, and the target If the pre-set unreachable call forwarding number is the preset number, the first message is generated according to the preset number and the first call request, and the first message is sent to the VoIP server.
  • the call forwarding service activated by the target number may also include at least one of an unconditional call forwarding service, a busy call forwarding service, and a no-answer call forwarding service.
  • the network device when receiving the call request for the target number and determining that the call forwarding condition is satisfied, the network device sends a first message carrying the target number to the VoIP server.
  • the VoIP server includes a first VoIP server and a second VoIP server.
  • the first VoIP server is used to receive the first message from the network device, parse the first message, obtain the target number, and send the target number to the second VoIP server;
  • the second VoIP server is used to receive the target number from the first VoIP server ; Find the VoIP communication information associated with the target number, and send a second call request to the second terminal device according to the VoIP communication information.
  • the first VoIP server may be a VoIP gateway.
  • the first VoIP server and the second VoIP server may also be integrated on the same server.
  • the VoIP communication information includes at least one of the following: a physical address of the second terminal device, a mobile equipment identifier (Mobile Equipment Identifier, MEID) of the second terminal device, a second terminal device (International Mobile Equipment Identity, IMEI). These information can be used as the equipment unique identification information of the second terminal equipment.
  • the VoIP server can initiate a VoIP call to the second terminal equipment through these equipment unique identification information .
  • the VoIP communication information may also take other forms, for example, the VoIP communication information may include a VoIP number.
  • an embodiment of the present application provides a call system, the system includes a first terminal device and a second terminal device, and the second terminal device is installed with a first application program serving as a VoIP client.
  • the first terminal device is configured to, after detecting the first operation, send a first call request to the network device in response to the first operation, where the first call request is a call request initiated for the target number;
  • the second terminal device is configured to receive a second call request from the VoIP server.
  • the second call request is a VoIP call request sent by the VoIP server to the second terminal device associated with the target number according to the first message from the network device.
  • the first The message is a message sent by the network device to the VoIP server according to the first call request.
  • the first message carries the target number, and the target number has activated the call forwarding service.
  • the first operation may refer to a user operation for triggering a call to the target number, and the operation may include one action or multiple actions.
  • the first operation is a dialing operation of the user.
  • the call forwarding service activated by the target number includes at least one of the following: unreachable call forwarding, unconditional call forwarding, busy call forwarding, and no-answer call forwarding.
  • the second terminal device after receiving the second call request, is further configured to: display a first interface in response to the second call request through the first application, where the first interface includes the following At least one item: the number of the first terminal device, the first button, and the second button; wherein the first button is used to answer the call, and the second button is used to reject the call.
  • the first interface is an incoming call interface.
  • the second terminal device is further configured to: after detecting the second operation on the first button, in response to the second operation, establish a connection with the first terminal device through the first application program call connection. For example, the second terminal device displays an incoming call interface, and when the second terminal device receives the user's answering operation (ie, the second operation), a call connection is established with the first terminal device.
  • the first terminal device after detecting the first operation, is further configured to: in response to the first operation, display a second interface, where the second interface includes at least one of the following: a target number and the third button; where the third button is used to hang up the call.
  • the first terminal device also displays a dialing interface (ie, a second interface) while making a call.
  • the first terminal device is installed with a second application program as a VoIP client, and the first terminal device is further configured to hang up the call corresponding to the first call request when it is determined that the target condition is met, Send a third call request to the VoIP server through the second application, where the third call request is a VoIP call request for the target number;
  • the second terminal device is further configured to receive a third call request from the VoIP server.
  • the first terminal device can automatically hang up the current cellular call, and automatically initiate a VoIP call to the target number, and the user experience is high.
  • the first terminal device after determining that the first terminal device meets the target condition, is further configured to: display first prompt information on the second interface, where the first prompt information is used to prompt whether to switch to a VoIP call A third operation is detected, and the third operation is used to instruct the first terminal device to switch to a VoIP call; In response to the third operation, the call corresponding to the request to hang up the first call is entered, and the third operation is sent to the VoIP server through the second application program. Steps to call request.
  • the second interface may be a dial-up interface
  • the first terminal device determines that the target condition is met, it may prompt the user on the dial-up interface whether to switch the VoIP call.
  • the first terminal device receives the user's confirmation operation (ie, the third operation), considers that the user confirms the switch to the VoIP call, and initiates a VoIP call to the target number.
  • the first terminal device after the first terminal device hangs up the call corresponding to the first call request and sends the third call request to the VoIP server through the second application program, the first terminal device is further used for: on the second interface
  • the second prompt information is displayed, and the second prompt information is used to prompt that the VoIP call has been switched.
  • the user after switching to the VoIP call, the user may also be prompted on the dial-up interface that the user has switched to the VoIP call, thereby improving user experience.
  • the first terminal device is specifically configured to: determine whether the first preset condition is met; when the first preset condition is met, obtain relevant information associated with the target number; according to the relevant information, It is determined whether the second preset condition is met; when the second preset condition is met, it is determined that the target condition is met; when the first preset condition and/or the second preset condition is not met, it is determined that the target condition is not met.
  • the first terminal device is specifically configured to: when receiving the second message returned by the network device, determine that the first preset condition is met, and the second message is used to describe the failure of paging by the target number Or, when the time detected by the timer exceeds the preset time threshold, it is determined that the first preset condition is met, and the timer is used to detect the time from call initiation to ringing; when the second message returned by the network device and/or If the time detected by the timer does not exceed the preset time threshold, it is determined that the first preset condition is not met.
  • the second message may include a network error code returned by the network device, etc.
  • the first terminal device can learn that the target number paging fails.
  • the timer may refer to a T-Alerting timer.
  • the first terminal device is specifically configured to: send a query request to the VoIP server through the second application program, where the query request carries the target number; receive the relevant information associated with the target number from the VoIP server information.
  • the related information includes first information, second information, third information, and fourth information
  • the first information is used to describe whether a target number is stored on the VoIP server
  • the second information is used to describe whether the target number is stored on the VoIP server.
  • the third information is used to describe the operator network signal situation of the second terminal
  • the fourth information is used to describe whether the target number has activated the call forwarding service;
  • the first terminal device is specifically used for: when the target number is stored on the VoIP server, the first application is in an online state, the operator network signal of the second terminal is in an out-of-service state, and the target number has not opened the call forwarding service, and it is determined that the first Two preset conditions.
  • the first terminal device after detecting the first operation, is further configured to: display a third interface, where the third interface includes third prompt information for prompting the user to select a call mode, And the cellular call option and the VoIP call option; when an operation for the cellular call option is detected, enter the step of sending a first call request to the network device in response to the first operation; when an operation for the VoIP call option is detected, through the second The application sends a fourth call request to the VoIP server, where the fourth call request is used to instruct the VoIP server to initiate a VoIP call to the second terminal device associated with the target number, and the fourth call request is a VoIP call request for the target number.
  • the first terminal device may prompt the user to select a call mode before the user triggers a cellular call to the target number. And, further, the first terminal device may first perform a call origination decision process to determine whether a cellular call can be initiated to the target number. In addition, the first terminal device may also query information such as whether the second terminal device associated with the target number supports VoIP calls, to determine whether a VoIP call can be initiated to the target number. Finally, according to these judgment results, a prompt for selecting a call mode is given to prompt the user to select a call mode.
  • the second terminal device satisfies at least one of the following: the target number is bound to the account of the first application, the target number is the SIM card number of the second terminal device, and the second terminal device 's SIM card is out of service.
  • the second terminal device is associated with the target number.
  • the target number may be the SIM card number of the second terminal device; or the target number may be bound to the account of the first application, and in this case, the target number may not be the SIM card number of the second terminal device.
  • the reason why the SIM card of the second terminal device is in an out-of-service state may be: no operator's network signal, poor operator's network signal, in airplane mode, dual-card single-pass scenario, etc.
  • an embodiment of the present application provides a calling method, which is applied to a VoIP server, and the method may include:
  • the first message carries the target number
  • the first message is a message sent by the network device to the VoIP server according to the first call request after receiving the first call request from the first terminal device , the target number has activated the call forwarding service, and the first call request is a call request initiated by the first terminal device for the target number; according to the first message, the second call request is sent to the second terminal device associated with the target number.
  • the above process of sending the second call request to the second terminal device associated with the target number according to the first message may include: parsing the first message to obtain the target number; , look up the VoIP communication information associated with the target number; send a second call request to the second terminal device according to the VoIP communication information.
  • the VoIP communication information includes at least one of the following: a physical address of the second terminal device, a mobile device identification code of the second terminal device, and an international mobile device identification code of the second terminal device.
  • the method further includes: receiving a first registration request from the first terminal device, where the first registration request includes the number of the first terminal device, the account of the second application, and the first registration request.
  • Device identification information of the terminal device, and the second application program is an application program on the second terminal device as a VoIP client;
  • the second registration request includes the target number, the account number of the first application and the device identification information of the second terminal device, and the first application is on the second terminal device.
  • the second registration request includes the target number, the account number of the first application and the device identification information of the second terminal device, and the first application is on the second terminal device.
  • an application program of a VoIP client associate the account of the first application program and the device identification information of the second terminal device with the target number.
  • the device identification information may be information such as the physical address, IMEI, and MEID of the device.
  • an embodiment of the present application provides a calling method, which is applied to a first terminal device, where a second application program serving as a VoIP client is installed on the first terminal device, and the method includes:
  • the first operation is detected; in response to the first operation, a first call request is sent to the network device, and the first call request is a call request initiated for the target number; when it is determined that the target condition is met, the call corresponding to the first call request is hung up (for example, the cellular call to the target number can be hung up), a third call request is sent to the VoIP server through the second application, the third call request is a VoIP call request to the target number, and the third call request is used to instruct the VoIP server to send The second terminal device associated with the target number initiates a VoIP call.
  • the first terminal device automatically hangs up the current cellular call when it is determined that the target condition is met, for example, when the called paging fails, and when it is determined that the second terminal device associated with the target number supports VoIP calls , automatically initiate a VoIP call to the target number, so that the called party can still receive the call request from the first terminal device even if it is in airplane mode or has no operator network signal.
  • the call mode is automatically switched according to the target condition, which improves the user experience.
  • the method further includes: in response to the first operation, displaying a second interface, where the second interface includes: a target number and a third button; wherein, The third button is used to hang up the call.
  • the method may further include: displaying first prompt information on the second interface, where the first prompt information is used to prompt whether to switch to a VoIP call; detecting To the third operation, the third operation is used to instruct the first terminal device to switch to the VoIP call; in response to the third operation, the call corresponding to the request to hang up the first call is entered, and the second application program is used to send a message for the target number to the VoIP server.
  • the third step of VoIP call request is performed by the third step of VoIP call request.
  • the method further includes: in the second The interface displays second prompt information, where the second prompt information is used to prompt that the VoIP call has been switched.
  • the process of determining whether the target condition is met may include: determining whether the first preset condition is met; when the first preset condition is met, acquiring relevant information associated with the target number; information to determine whether the second preset condition is met; when the second preset condition is met, it is determined that the target condition is met; when the first preset condition and/or the second preset condition is not met, it is determined that the target condition is not met .
  • the process of determining whether the first preset condition is met may include:
  • the second message When receiving the second message returned by the network device, it is determined that the first preset condition is met, and the second message is used to describe the failure of paging the target number; or, when the time detected by the timer exceeds the preset time threshold, it is determined that the first preset condition is met.
  • the preset condition is that the timer is used to detect the time from the call initiation to the ringing; when the second message returned by the network device is not received and/or the time detected by the timer does not exceed the preset time threshold, it is determined that the first preset is not met condition.
  • the process of acquiring the relevant information associated with the target number may include: sending a query request to the VoIP server through the second application, where the query request carries the target number; receiving the target number from the VoIP server Information about number associations.
  • the related information may include first information, second information, third information, and fourth information, where the first information is used to describe whether a target number is stored on the VoIP server, and the second information is used to describe whether a target number is stored on the VoIP server.
  • the information is used to describe whether the first application is in an online state
  • the third information is used to describe the operator network signal condition of the second terminal
  • the fourth information is used to describe whether the target number has activated the call forwarding service
  • the process of determining whether the second preset condition is met may include: when the target number is stored on the VoIP server, the first application is in an online state, and the operator network signal of the second terminal is in an out-of-service state, And the call forwarding service is not activated on the target number, and it is determined that the second preset condition is met; wherein, the second terminal device is installed with the first application as a VoIP client.
  • the method further includes: displaying a third interface, where the third interface includes third prompt information for prompting the user to select a call mode, and a cellular call options and VoIP call options; when an operation for the cellular call option is detected, enter the step of sending a first call request to the network device in response to the first operation; when an operation for the VoIP call option is detected, send the request to the network device through the second application.
  • the VoIP server sends a fourth call request, where the fourth call request is a VoIP call request for the target number, and the fourth call request is used to instruct the VoIP server to initiate a VoIP call to the second terminal device associated with the target number.
  • an embodiment of the present application provides a call system, including a first terminal device, a VoIP server, and a second terminal device, where the second terminal device is installed with a first application as a VoIP client, and the first terminal device is installed with a Second application for VoIP client.
  • the first terminal device is configured to send a first call request to the network device in response to the first operation after detecting the first operation, where the first call request is a call request initiated for the target number; when it is determined that the target condition is met, then Hang up the call corresponding to the first call request, send a third call request to the VoIP server through the second application program, and the third call request is a VoIP call request for the target number;
  • the second terminal device associated with the number sends the third call request; the second terminal device is configured to receive the third call request through the first application program.
  • the first terminal device is further configured to: in response to the first operation, display a second interface, where the second interface includes: a target number and a third button; wherein the third button is used for Hang up the call.
  • the first terminal device is further configured to: when it is determined that the target condition is met, display first prompt information on the second interface, where the first prompt information is used to prompt whether to switch to a VoIP call; detect To the third operation, the third operation is used to instruct the first terminal device to switch to the VoIP call; in response to the third operation, the call corresponding to the request to hang up the first call is entered, and the second application program is used to send a message for the target number to the VoIP server.
  • the third step of VoIP call request is further configured to: when it is determined that the target condition is met, display first prompt information on the second interface, where the first prompt information is used to prompt whether to switch to a VoIP call; detect To the third operation, the third operation is used to instruct the first terminal device to switch to the VoIP call; in response to the third operation, the call corresponding to the request to hang up the first call is entered, and the second application program is used to send a message for the target number to the VoIP server. The third step of VoIP call request.
  • the first terminal device is further configured to: display second prompt information on the second interface, where the second prompt information is used to prompt that the VoIP call has been switched.
  • the first terminal device is specifically configured to: determine whether the first preset condition is met; when the first preset condition is met, obtain relevant information associated with the target number; according to the relevant information, It is determined whether the second preset condition is met; when the second preset condition is met, it is determined that the target condition is met; when the first preset condition and/or the second preset condition is not met, it is determined that the target condition is not met.
  • the first terminal device is specifically configured to: when receiving the second message returned by the network device, determine that the first preset condition is met, and the second message is used to describe the failure of paging by the target number Or, when the time detected by the timer exceeds the preset time threshold, it is determined that the first preset condition is met, and the timer is used to detect the time from call initiation to ringing; when the second message returned by the network device and/or If the time detected by the timer does not exceed the preset time threshold, it is determined that the first preset condition is not met.
  • the first terminal device is specifically configured to: send a query request to the VoIP server through the second application program, and the query request carries the target number; through the second application program, receive data from the VoIP server The relevant information corresponding to the target number of .
  • the related information includes first information, second information, third information, and fourth information, where the first information is used to describe whether a target number is stored on the VoIP server, and the second information It is used to describe whether the first application is in an online state, the third information is used to describe the operator network signal condition of the second terminal, and the fourth information is used to describe whether the target number has activated the call forwarding service.
  • the first terminal device is specifically used for: when the target number is stored on the VoIP server, the first application is in an online state, the operator network signal of the second terminal is in an out-of-service state, and the target number has not activated the call forwarding service, It is determined that the second preset condition is met.
  • the second terminal device is further configured to: through the first application, in response to the third call request, display a first interface, where the first interface includes at least one of the following: the first terminal The number, the first button and the second button of the device; wherein the first button is used to answer the call, and the second button is used to reject the call.
  • the second terminal device is further configured to: detect a second operation on the first button; in response to the second operation, establish a VoIP call with the first terminal device through the first application connect.
  • the VoIP server is further configured to: receive a first registration request from the first terminal device, where the first registration request includes the number of the first terminal device, the account of the second application and the first registration request.
  • Device identification information of a terminal device associate the account of the second application and the device identification information of the first terminal device with the number of the first terminal device; receive a second registration request from the second terminal device, the second registration request includes The target number, the account of the first application, and the device identification information of the second terminal device; the account of the first application and the device identification information of the second terminal device are associated with the target number.
  • the first terminal device is further configured to: display a third interface, where the third interface includes third prompt information for prompting the user to select a call mode, as well as a cellular call option and a VoIP call option
  • the third interface includes third prompt information for prompting the user to select a call mode, as well as a cellular call option and a VoIP call option
  • enter the step of sending the first call request to the network device in response to the first operation when detecting the operation for the VoIP call option, send the fourth to the VoIP server through the second application program The call request.
  • the fourth call request is a VoIP call request for the target number, and the fourth call request is used to instruct the VoIP server to initiate a VoIP call to the second terminal device associated with the target number.
  • an embodiment of the present application provides a communication device, which is applied to a VoIP server, and the device may include:
  • the receiving module is configured to receive the first message from the network device, the first message carries the target number, and the first message is that after the network device receives the first call request from the first terminal device, according to the first call request, to the The message sent by the VoIP server, the target number has activated the call forwarding service, and the first call request is a call request initiated by the first terminal device for the target number;
  • the VoIP calling module is configured to send a second call request to the second terminal device associated with the target number according to the first message.
  • the above-mentioned VoIP calling module is specifically configured to: parse the first message to obtain the target number; search for the VoIP communication information associated with the target number according to the target number; The second terminal device sends a second call request.
  • the VoIP communication information includes at least one of the following: a physical address of the second terminal device, a mobile device identification code of the second terminal device, and an international mobile device identification code of the second terminal device.
  • the apparatus further includes: a registration module, configured to: receive a first registration request from the first terminal device, where the first registration request includes the number of the first terminal device, the second application The account of the program and the device identification information of the first terminal device, and the second application program is an application program on the second terminal device as a VoIP client;
  • the second registration request includes the target number, the account number of the first application and the device identification information of the second terminal device, and the first application is on the second terminal device.
  • the second registration request includes the target number, the account number of the first application and the device identification information of the second terminal device, and the first application is on the second terminal device.
  • an application program of a VoIP client associate the account of the first application program and the device identification information of the second terminal device with the target number.
  • the device identification information may be information such as the physical address, IMEI, and MEID of the device.
  • the above-mentioned communication device has the function of realizing the above-mentioned third aspect of the communication method, and the function can be realized by hardware, and can also be realized by executing corresponding software through hardware.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions. is software and/or hardware.
  • an embodiment of the present application provides a communication device, which is applied to a first terminal device, where a second application program serving as a VoIP client is installed on the first terminal device, and the device includes:
  • a first detection module for detecting a first operation
  • a first sending module configured to send a first call request to the network device in response to the first operation, where the first call request is a call request initiated for a target number;
  • the switching module is configured to, when it is determined that the target condition is met, hang up the call corresponding to the first call request (for example, the cellular call to the target number can be hung up), send a third call request to the VoIP server through the second application, and the third The call request is a VoIP call request for the target number, and the third call request is used to instruct the VoIP server to initiate a VoIP call to the second terminal device associated with the target number.
  • the apparatus further includes: a first display module, configured to display a second interface in response to the first operation, the second interface includes: a target number and a third button; Three buttons are used to hang up the call.
  • the apparatus may further include:
  • a first prompt module configured to display first prompt information on the second interface, where the first prompt information is used to prompt whether to switch to a VoIP call;
  • the second detection module is used to detect a third operation, and the third operation is used to instruct the first terminal device to switch to a VoIP call; in response to the third operation, enter and hang up the call corresponding to the first call request, through the second application program The step of sending a third VoIP call request for the target number to the VoIP server.
  • the apparatus further includes: a second prompt module, configured to display second prompt information on the second interface, where the second prompt information is used to prompt that the VoIP call has been switched.
  • the switching module is specifically configured to: determine whether the first preset condition is met; when the first preset condition is met, obtain relevant information associated with the target number; according to the relevant information, determine whether The second preset condition is met; when the second preset condition is met, it is determined that the target condition is met; when the first preset condition and/or the second preset condition is not met, it is determined that the target condition is not met.
  • the switching module is specifically configured to: when receiving the second message returned by the network device, determine that the first preset condition is met, and the second message is used to describe the failure of paging by the target number; or , when the time detected by the timer exceeds the preset time threshold, it is determined that the first preset condition is met, and the timer is used to detect the time from the call initiation to the ringing; when the second message and/or the timer returned by the network device is not received If the detected time does not exceed the preset time threshold, it is determined that the first preset condition is not met.
  • the switching module is specifically configured to: send a query request to the VoIP server through the second application program, where the query request carries the target number; and receive relevant information associated with the target number from the VoIP server.
  • the related information may include first information, second information, third information, and fourth information, where the first information is used to describe whether a target number is stored on the VoIP server, and the second information is used to describe whether a target number is stored on the VoIP server.
  • the information is used to describe whether the first application is in an online state
  • the third information is used to describe the operator network signal condition of the second terminal
  • the fourth information is used to describe whether the target number has activated the call forwarding service
  • the switching module is specifically used for: when the target number is stored on the VoIP server, the first application is in an online state, the operator network signal of the second terminal is in an out-of-service state, and the target number has not opened the call forwarding service, and it is determined that the The second preset condition; wherein, a first application as a VoIP client is installed on the second terminal device.
  • the apparatus further includes: a second display module configured to display a third interface, where the third interface includes third prompt information for prompting the user to select a call mode, and a cellular call option and the VoIP call option; when an operation for the cellular call option is detected, enter the step of sending a first call request to the network device in response to the first operation; when an operation for the VoIP call option is detected, send the VoIP call through the second application
  • the server sends a fourth call request, where the fourth call request is a VoIP call request for the target number, and the fourth call request is used to instruct the VoIP server to initiate a VoIP call to the second terminal device associated with the target number.
  • the above-mentioned communication device has the function of realizing the above-mentioned fourth aspect of the communication method.
  • This function can be realized by hardware or by executing corresponding software through hardware.
  • the hardware or software includes one or more modules corresponding to the above-mentioned functions. is software and/or hardware.
  • an embodiment of the present application provides a terminal device, including a memory, a processor, and a computer program stored in the memory and running on the processor.
  • a terminal device including a memory, a processor, and a computer program stored in the memory and running on the processor.
  • the processor executes the computer program, any one of the above-mentioned third aspects is implemented. item method.
  • an embodiment of the present application provides a terminal device, including a memory, a processor, and a computer program stored in the memory and running on the processor.
  • a terminal device including a memory, a processor, and a computer program stored in the memory and running on the processor.
  • the processor executes the computer program, any one of the above-mentioned fourth aspects is implemented. item method.
  • an embodiment of the present application provides a computer-readable storage medium, where the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of the third aspect or the fourth aspect is implemented .
  • an embodiment of the present application provides a chip system, where the chip system includes a processor, the processor is coupled to a memory, and the processor executes a computer program stored in the memory, so as to implement any one of the third aspect or the fourth aspect above. a method.
  • the chip system may be a single chip, or a chip module composed of multiple chips.
  • an embodiment of the present application provides a computer program product that, when the computer program product runs on an electronic device, enables the electronic device to execute the method described in any one of the third aspect or the fourth aspect.
  • 1 is a schematic block diagram of an existing call network architecture
  • FIG. 2 is a schematic diagram of a call network architecture provided by an embodiment of the present application.
  • 3A is a schematic diagram of a call scenario provided by an embodiment of the present application.
  • 3B is a schematic diagram of an interface for answering a call in an airplane mode according to an embodiment of the present application
  • 4A is a schematic diagram of a call forwarding setting interface provided by an embodiment of the present application.
  • FIG. 4B is a schematic diagram of setting a Changlian call number provided by an embodiment of the present application.
  • FIG. 5 is a schematic diagram of another call network architecture provided by an embodiment of the present application.
  • FIG. 6 is an interactive schematic diagram of a calling method provided by an embodiment of the present application.
  • FIG. 7 is another schematic diagram of interaction of the calling method provided by the embodiment of the present application.
  • FIG. 8A is a schematic diagram of another call scenario provided by an embodiment of the present application.
  • 8B to 8D are schematic diagrams of call interfaces provided by embodiments of the present application.
  • FIG. 9 is a schematic diagram of another call network architecture provided by an embodiment of the present application.
  • FIG. 10 is another schematic diagram of interaction of the calling method provided by the embodiment of the present application.
  • FIG. 11 is a schematic diagram of another call scenario provided by an embodiment of the present application.
  • FIG. 12 is another schematic diagram of interaction of the calling method provided by the embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of an electronic device 1300 provided by an embodiment of the present application.
  • FIG. 14 is a schematic diagram of a software structure of an electronic device 1300 according to an embodiment of the present application.
  • the existing call network architecture includes a calling terminal 11 , a calling side network 13 , a called side network 14 and a called terminal 12 .
  • the above-mentioned calling side network 13 refers to the operator network on the calling terminal side or the operator network in the area where the calling terminal is currently located;
  • the above-mentioned called side network 14 refers to the operator network on the called terminal side or the called terminal. Call the operator network in the area where the terminal is currently located.
  • the call request initiated by the calling terminal 11 will first be delivered to the calling side network 13, then the calling side network 13 will deliver the call request to the called side network 14, and finally the called side network 14 will deliver the call request to the called side network 14.
  • the called side network 14 cannot deliver the call request to the called terminal 12, resulting in a call failure.
  • this method cannot realize the intercommunication between the calling terminal and the called terminal. Moreover, the called terminal still needs to wait until there is an operator's network signal before receiving the SMS reminder.
  • VoWiFi Vehicle over Wi-Fi
  • VoWiFi means that the call terminal accesses the ePDG (Evolved Packet Data Gateway) network element of the operator's network through Wi-Fi to access the operator's network.
  • the ePDG network element is a necessary network element in the untrusted Wi-Fi network access mode.
  • the called terminal is connected to the operator's network through VoWi-Fi, so that the called terminal can still receive the call request of the calling terminal through VoWi-Fi when the signal of the operator's network is not good.
  • VoWi-Fi is currently not deployed in many places.
  • OTT services include instant messaging and IP-based voice transmission (Voice over Internet Protocol, VoIP) services.
  • VoIP Voice over Internet Protocol
  • the calling terminal can actively initiate an OTT call to the called terminal through the Internet, so that the calling terminal and the called terminal can also communicate with each other.
  • the calling terminal and the called terminal must log in to the OTT software at the same time, and need to add friends to each other, and an OTT call cannot be initiated without adding friends to each other.
  • the third-party instant messaging tool is WeChat
  • the embodiments of the present application provide several call solutions, which may be that the operator network signal on the called terminal side is not good, or the called terminal side has no operator network signal at all, or It is because the called terminal has no available radio frequency resources due to the dual-card single-pass scenario, or the called terminal is in airplane mode, etc., the call request of the calling terminal can still be delivered to the called terminal, so that the calling terminal can still be called.
  • the call connection between the terminal and the called terminal are described in detail below.
  • FIG. 2 shows a call network architecture diagram of a call solution (hereinafter referred to as "the first call solution") provided by an embodiment of the present application.
  • the call network architecture may include a calling terminal 21, a called terminal 22, a calling side network 23 (ie, the operator network on the calling terminal side), and the called side network 24 (ie, the operator network on the called terminal side) ), VoIP gateway 25 and VoIP server 26.
  • the call request initiated by the calling terminal 21 will be transmitted to the called terminal 22 through the calling side network 23 and the called side network 24 in turn.
  • the called terminal 22 can communicate with the calling terminal 22.
  • the terminal establishes a call connection.
  • the called side network 24 has poor signal or no signal, or the called terminal 22 is in a dual-card single-pass scenario, or other scenarios, for example, the called terminal is in airplane mode, or is If the calling terminal does not have a SIM card installed, the called-side network 24 cannot transmit the call request of the calling terminal 21 to the called terminal 22 .
  • the embodiment of the present application forwards the call request to the VoIP gateway 25 through the called side network 24, and then the VoIP gateway 25 and the VoIP server 26 forward the call request to the called terminal 22, so that the called terminal can 22 Even when the signal of the called side network 24 is poor or has no signal, the call request of the calling terminal 21 can still be received.
  • a forwarding message may be generated according to a pre-agreed forwarding number, and the forwarding message may be routed to the VoIP gateway 25 .
  • the VoIP gateway 25 After analyzing the forwarding message to obtain the called number, the VoIP gateway 25 sends the called number to the VoIP server 26 . After finding the called terminal 22 according to the called number, the VoIP server 26 initiates a VoIP call to the called terminal 22 .
  • the call network architecture ( FIG. 2 ) provided by the embodiment of the present application has the addition of a VoIP gateway 25 and a VoIP server 26 .
  • the VoIP gateway 25 is connected to the called side network 24
  • the VoIP server 26 is connected to the VoIP gateway 25 and the called terminal 22 respectively.
  • the operator network and the VoIP network are independent of each other, that is, the two are not connected by a communication link. Therefore, when the called side network paging fails, the call request cannot be sent to the VoIP server, and thus, the call request cannot be relayed to the called terminal through the VoIP server.
  • the operator network is connected to the VoIP network, so that the operator network and the called terminal are connected.
  • VoIP networks are no longer independent of each other.
  • the called side network can forward the call request to the VoIP gateway through the call forwarding service, the VoIP gateway then sends the called number to the VoIP server, and the VoIP server sends the called terminal to the called terminal. Initiate a VoIP call, so as to relay the call request to the called terminal when the paging fails.
  • the called terminal may enable the unreachable call forwarding service in advance. In this way, the called-side network can forward the call request to the VoIP gateway when the paging fails.
  • the called terminal can also be registered on the VoIP server in advance. In this way, when the VoIP server receives the called number sent by the VoIP gateway, the VoIP server can find the corresponding called terminal according to the called number, and report to the corresponding called terminal. The called terminal initiates a VoIP call.
  • VoIP gateway and the VoIP server in Figure 1 can be expressed as two servers respectively, or can be integrated on one server, that is, the VoIP gateway and the VoIP server can be integrated into one server, and one server can go to the server. Realize the functions of VoIP gateway and VoIP server.
  • the VoIP gateway is set up separately, and the VoIP gateway and the VoIP server are not integrated into one server, which can make adaptation, maintenance and changes more flexible. It can be seen from the above that in the first call solution, the embodiment of the present application builds a VoIP gateway and a VoIP server on the called side, and connects the called side network with the VoIP gateway, so that the called side network is looking for When the call fails, the call request can be forwarded to the VoIP gateway, and the VoIP gateway and the VoIP server relay the call request to the called terminal to realize the communication between the called terminal and the calling terminal.
  • the called terminal when the network signal on the called side is poor or there is no operator network signal, it can still receive a call request and establish a call connection with the calling terminal to realize intercommunication.
  • this scenario includes a calling terminal 31 , a called terminal 32 , a calling side network 33 , a called side network 34 and a cloud 35 , and the cloud 35 includes an interworking gateway 351 and a call forwarding service 352 .
  • the interworking gateway 351 may be equivalent to the VoIP gateway in FIG. 2
  • the call forwarding service 352 may be integrated on the VoIP server as a hardware device and/or software module.
  • Both the calling terminal 31 and the called terminal 32 have two Subscriber Identity Module (SIM) cards, and both of the two SIM cards support Voice over Long-Term Evolution (Voice over Long-Term Evolution, VoLTE) high-definition calls.
  • SIM Subscriber Identity Module
  • the number of the SIM card 1 of the calling terminal 31 is 654321
  • the number of the SIM card 1 of the called terminal is 123456.
  • the signals of the SIM card 1 and the SIM card 2 of the calling terminal 31 are full, that is, the network signal of the operator on the side of the calling terminal 21 is better.
  • both the SIM card 1 and the SIM card 2 of the called terminal 32 are in an out-of-service state, that is, the network signal of the operator on the called terminal side is poor.
  • the Wi-Fi signal on the called terminal side is good, and the called terminal 31 has been connected to the Wi-Fi network.
  • the operator network signal situation of the called terminal 32 is specifically shown in Fig. 3A 321, and the Wi-Fi network signal is specifically shown in Fig. 3A 322.
  • the calling terminal 31 in FIG. 3A displays a dialing interface
  • the called terminal 32 displays a waiting interface.
  • the called terminal 32 can still receive the call from the calling terminal 31. call.
  • the SIM card signal display area 321 in the called terminal 32 indicates that both SIM card 1 and SIM card 2 have no operator's network signal, that is, Fig. 3A shows the scene of poor network coverage on the called side
  • the called side network 34 generates a forwarding message according to the call request of the calling terminal 31 and the forwarding number, and routes the forwarding message to the interworking gateway 351, and then the interworking gateway 351 and the call forwarding service 352 follow the forwarding The message sends the call request of the calling terminal to the called terminal 32 .
  • the calling side network 33 can be an IP Multimedia Subsystem (IP Multimedia Subsystem, IMS) network, can be a Public Switched Telephone Network (Public Switched Telephone Network, PSTN), or can be a Circuit Switched (Circuit Switched, CS) network.
  • IMS IP Multimedia Subsystem
  • PSTN Public Switched Telephone Network
  • CS Circuit Switched
  • the calling side network 33 may also include an IMS network, a PSTN and a CS network.
  • the calling terminal 31 may be a mobile phone.
  • the calling terminal 31 can communicate with the called terminal through the IMS network, or communicate with the called terminal through the CS network; it can also be a fixed line.
  • the calling terminal 31 can communicate with the called terminal through the PSTN.
  • FIG. 3A only exemplarily shows that the calling terminal 31 is a mobile phone.
  • the calling terminal 31 may also be other types of mobile terminals that support calls by operators, such as wearable devices and tablet computers that can make calls.
  • the called side network 34 is generally an IMS network, and the called terminal 32 is generally a mobile phone or other terminal device having a call function except the mobile phone.
  • the called terminal 32 can communicate with the VoIP server through Wi-Fi.
  • the called terminal can also communicate with the VoIP server through a SIM card with a signal.
  • the two SIM cards do not belong to the same carrier.
  • the operators of SIM card 1 and SIM card 2 of the called terminal 32 are China Mobile and China Unicom respectively.
  • SIM card 1 has a signal and SIM card 2 has no signal.
  • the call request for the SIM card 2 cannot be delivered to the called terminal 32.
  • the called terminal 32 can communicate with the VoIP server through the cellular data of the SIM card 1 , that is, the called terminal 32 can receive the VoIP call initiated by the VoIP server through the cellular data of the SIM card 1 . In this way, even if the SIM card 2 has no signal, the call request can still be received through the cellular data of the SIM card 1 .
  • the called terminal 32 can still receive the call request of the calling terminal.
  • the SIM card 2 of the called terminal 32 is on a call, so that the SIM card 1 has no available radio frequency resources, resulting in no operator network signal.
  • the calling terminal 31 initiates a call to the SIM card 1 of the called terminal, based on the network architecture of FIG. 2
  • the called terminal 32 can receive the VoIP call initiated by the VoIP server through the Wi-Fi network.
  • SIM card 1 and SIM card 2 may or may not be the same operator.
  • the called terminal can be dual-card or single-card.
  • the called terminal can communicate and connect with the VoIP server through a communication method such as a Wi-Fi network.
  • the called terminal 32 may be in the airplane mode, or the called terminal is not installed with a SIM card. At this time, the called terminal 32 can still receive the call from the calling terminal 31 .
  • FIG. 3B it shows a schematic diagram of an interface for receiving an incoming call from the calling terminal 31 when the called terminal 32 is in the airplane mode. At this time, the status bar of the called terminal 32 displays an airplane mode icon 323 and a Wi-Fi icon 324, indicating that The called terminal 32 is currently in airplane mode and connected to Wi-Fi.
  • the called side network 34 when the called side network 34 finds that the paging fails, it can forward the call request to the interworking gateway 351, and relay or transfer the call request of the calling terminal 31 through the interworking gateway 351 and the switching service 352, etc. to the called terminal 32, so that the called terminal 32 can still receive an incoming call from the calling terminal 31 when the called terminal 32 is in the airplane mode.
  • the called terminal 32 when the user of the called terminal 32 is on an airplane, due to the limitation of flight conditions, the called terminal 32 needs to be adjusted to the airplane mode. However, the user needs to wait for an important call. At this time, in order to avoid missing calls, the user may set the user unavailable to forward to a smooth call according to the process shown in FIG. 4A . And, the called terminal 32 is operated to access the Wi-Fi network of the aircraft. In this way, the user can receive the call initiated by the calling terminal 32 during the flight and not miss the call.
  • the called terminal 32 may also be a mobile phone without a SIM card installed. In this case, the called terminal 32 only needs to The terminal is bound to a mobile phone number, and forwarding to the VoIP client is enabled. In this way, even if the called terminal 32 does not have a SIM card installed, it can still receive a call to the bound mobile phone number.
  • the VoIP server may refer to a server of an application program on the called terminal 32 that implements a VoIP call.
  • the VoIP server locally stores information such as the called number, the device information of the called terminal corresponding to the called number, and the application account information corresponding to the called number.
  • the called number, device information and other information stored on the VoIP server are stored encrypted or hashed. Based on this, after receiving the called number sent by the VoIP gateway, the VoIP server can find the called terminal device corresponding to the called number, and initiate a VoIP call to the called terminal device.
  • the called user needs to enable the unreachable forwarding service in advance, so that the called-side network will automatically forward the call request of the calling terminal to the VoIP gateway when the paging fails.
  • the VoIP gateway connects the VoIP gateway to the called-side network in advance, and enable the call forwarding to a specific number that is unavailable to the user.
  • the called-side network may generate a forwarding message (eg, an Invite message) for the specific number, and the forwarding message carries the called number.
  • the called-side network routes the forwarding message to the VoIP gateway, so as to forward the call request of the calling terminal to the VoIP gateway.
  • the called number or the called terminal may also be registered on the VoIP server in advance, so as to store the called number, the application account of the VoIP client, and the information of the called terminal device in the VoIP server. In this way, the VoIP server can find the corresponding called terminal according to the called number.
  • FIG. 4A for a schematic diagram of the call forwarding setting interface.
  • the called terminal takes the mobile phone 41 as an example. Go to the call forwarding setting interface, and click "Call Forwarding Unreachable by User". Then, the mobile phone 41 pops up an interactive window, and the user can enter "Changlian Call” in the corresponding position of the window, and then click "Enable” to enable the inaccessible forwarding to Changlian Call.
  • Changlian Call is an application on the mobile phone 41 , which can be used as a VoIP client, and the server of the application is used as a VoIP server. It is understandable that, in addition to setting the inaccessible forwarding to the VoIP client in the call settings, the VoIP client can also provide a corresponding setting interface, that is, you can set the VoIP client to be forwarded to the VoIP client inaccessible.
  • the appearance form of the VoIP client may be arbitrary, for example, the VoIP client may appear as an application program, or may appear as a web client (ie, a web client).
  • the user of the called terminal does not need to know the specific number to be forwarded to, but only needs to set the unreachable forwarding to the VoIP client on the called terminal.
  • the user can also be informed of the target number of the inaccessible call forwarding, so that the user can directly input the target number corresponding to the inaccessible call forwarding when activating the user inaccessible call forwarding service.
  • the called terminal can notify the operator according to the preset forwarding number (or the target number corresponding to the unreachable call forwarding service).
  • the specific number to which the business is forwarded In this way, when the call fails, the called-side network will automatically forward the call request of the calling terminal through the pre-agreed forwarding number according to the unreachable call forwarding service (or called the unreachable forwarding service) enabled by the called terminal. to the VoIP gateway.
  • the specific number to be forwarded to can be set as required.
  • a dedicated line is pre-built to connect the VoIP gateway and the called side network. And pre-set the user's unreachable call forwarding to 6061XXX, that is, when the SIM card of the called terminal is enabled to forward to the VoIP client, the default unreachable call forwarding service is: unreachable call forwarding to 6061XXX.
  • the network on the called side will generate a forwarding message with a target number of 6061XXX, and the forwarding message carries the called number. All forwarding messages with the destination number 6061XXX are transmitted from the called side network to the VoIP gateway through the pre-built dedicated line, so that the called party cannot be forwarded to the VoIP gateway in time.
  • the called terminal may bind the mobile phone number of the called terminal with the VoIP client, so as to register the called terminal with the VoIP server.
  • the VoIP client of the called terminal 32 in FIG. 3A is Changlian Call.
  • the user can set the bound mobile phone number of Changlian Call to 123456.
  • the mobile phone number of the called terminal is stored on the server of Changlian Call.
  • you can also bind the device information of the called terminal with the application account of Changlian Call.
  • the device information of the called terminal may include device unique identification information. In this way, if a user logs in to Changlian Call on multiple devices at the same time, the VoIP server can initiate a VoIP call to multiple devices at the same time.
  • the calling terminal 31 can initiate a call to the called terminal 32 .
  • the called-side network 34 forwards the call request to the corresponding forwarding number according to the pre-agreed forwarding number, so as to transmit the calling request of the calling terminal to the interworking gateway 351 in the cloud, and the interworking gateway 351 then The called number carried in the call request is sent to the call forwarding service 352 .
  • the call forwarding service 352 may find the called terminal 32 corresponding to the called number, and initiate a VoIP call to the found called terminal 32 .
  • the user is unavailable or the paging fails, including but not limited to the following possibilities: the called terminal has no operator network signal, the called side network signal is weak, and one of the dual cards of the called terminal is in a call.
  • the mobile phone 42 has the Changlian call application installed on the mobile phone 42 as a VoIP client.
  • the user selects +86188******88 for the mobile phone number bound to the Changlian call, so that others can call +86188******88 , initiates a call to the Changlian call of the mobile phone 42 , in addition, when the mobile phone 42 makes a call to another person through the Changlian call, the call interface also displays +86188******88.
  • the Changlian mobile phone number displayed in the account of mobile phone 42 and Changlian mobile phone number is +86188******88.
  • the mobile phone 42 can upload the information to the server 43 of the mobile phone, which serves as a VoIP server.
  • the server 43 can store the information, and associate and store information such as the account number of the Changlian call application program and the Changlian mobile phone number.
  • the information shown in 431 is stored on the server 43, and the information may include but is not limited to information such as account number, Changlian mobile phone number, device ID, device name, IMEI, MEID, etc. These information are stored in association, that is, through the Any information can find other information.
  • the device ID, device name, IMEI, and MEID are all device information of the mobile phone 42 , and these device information can be used as the unique identification information of the mobile phone 42 .
  • device unique identification information such as device ID, device name, IMEI, and MEID can be used as VoIP communication information, that is, to find the device unique identification information through the mobile phone number, and then initiate a VoIP call to the device corresponding to the device unique identification information.
  • a unique VoIP communication number or communication ID can also be set for the mobile phone 42 , and the VoIP communication number or communication ID can be stored in association with the information in 431 . In this way, information such as a VoIP communication number or a communication ID can be found subsequently through information such as a mobile phone number.
  • the server 43 stores the relevant information of the mobile phone 42 , so that the server 43 can find the mobile phone 42 subsequently, and then initiate a VoIP call to the mobile phone 42 .
  • the called-side network when the called-side network fails to paging, the called-side network can first determine whether the called number has enabled the inaccessible call forwarding service. If the called number has activated the unreachable call forwarding service, the called-side network can generate a forwarding message, which carries the called number, and route the forwarding message to the VoIP gateway. The VoIP gateway parses the received forwarding message, obtains the called number, and sends the called number to the VoIP server.
  • the called-side network after receiving the call request sent by the calling side network, the called-side network can first determine which services have been activated on the called number, for example, whether to activate the unconditional forwarding service, and whether to activate the unreachable service. Forwarding business, etc. Then, the called side network can perform paging according to the call request.
  • the VoIP server stores the correspondence between the called number and the VoIP number, and through the correspondence, the VoIP number corresponding to the called number can be found. Then, the VoIP server initiates a VoIP call to the called terminal through a communication link (eg, Wi-Fi, cellular data) between the VoIP server and the called terminal according to the found VoIP number.
  • a communication link eg, Wi-Fi, cellular data
  • the called terminal can still receive the call request from the calling terminal, and can establish a call connection with the calling terminal to realize the communication between the calling terminal and the called terminal. Intercommunication.
  • the calling terminal initiates a cellular call to the mobile phone number +86188******88
  • the cellular call will be delivered to the called side network first, and the called side network pair +86188******88
  • the called side network When paging fails, the called side network generates a message carrying +86188******88, sends the message to the VoIP gateway, and the VoIP gateway parses the message to obtain the mobile phone number +86188* *****88.
  • the VoIP gateway sends the mobile phone number +86188******88 to the server 43.
  • the server 43 After the server 43 receives the mobile phone number +86188******88, it first checks whether the mobile phone number +86188**** is stored locally. **88, after finding the mobile phone number +86188******88, the server 43 can find the account number, device ID, IMEI and VoIP number associated with +86188******88, and initiate a call to the mobile phone 42 VoIP calls.
  • FIG. 2 and FIG. 3A can not only be applied to the call forwarding scenario where the user is not reachable, that is, when the called side network fails to paging, the call request of the calling terminal is forwarded to the VoIP gateway, and the VoIP gateway and The VoIP server bridges or relays the call request of the calling terminal to the called terminal; it can also be applied to unconditional call forwarding scenarios, busy call forwarding scenarios and no-answer call forwarding scenarios.
  • the network on the called side after determining that the called number has activated the unconditional call forwarding service, the network on the called side will obtain the target number of the unconditional call forwarding; then, the network on the called side generates a forwarding message according to the target number, The forwarding message is routed to the VoIP gateway, and the forwarding message carries the called number; finally, the VoIP gateway parses the forwarding message, obtains the called number, and sends the called number to the VoIP server. Initiate a VoIP call.
  • the user can enable unconditional call forwarding to Unconditional Call.
  • all call requests initiated to the called terminal are forwarded to the VoIP gateway by the network on the called side, and the VoIP gateway then sends the called number obtained by parsing to the server of Changlian Talk.
  • the server of Changlian Talk After finding the called terminal corresponding to the called number, the server of Changlian Talk initiates a VoIP call to the called terminal to realize the unconditional call transfer service.
  • the user can set unconditional call forwarding to the VoIP client of the called terminal, or set unconditional call forwarding to the VoIP client of another terminal device.
  • the VoIP client is Changlian Call
  • the called terminal is a mobile phone.
  • the user's mobile phone and tablet computer have Changlian Call installed. Users can set up unconditional forwarding of incoming calls from mobile phones to Changlian Call on the tablet.
  • the situations of busy call forwarding may include but are not limited to: the user manually hangs up when the called party is ringing, the called number is on a call, and the called terminal is in international roaming.
  • the called-side network when the called-side network determines that the called terminal satisfies the forward-on-busy condition (for example, the user of the called terminal manually hangs up the call request of the calling terminal), the called-side network can forward the call according to the busy condition.
  • the forwarding message After the forwarding message is generated, the forwarding message carrying the called number is routed to the VoIP gateway.
  • the VoIP gateway parses the forwarding message to obtain the called number, it sends the called number to the VoIP server.
  • the VoIP server initiates a VoIP call to the VoIP client according to the called number to implement the call forwarding service when busy.
  • the activation process of the call forwarding service in case of busy is similar to the activation process of the inaccessible call forwarding service above. For details, please refer to the corresponding content above, which will not be repeated here. It should also be noted that the user can set the busy call to be forwarded to the VoIP client of the called terminal, or set the busy call to be forwarded to the VoIP client of another terminal device.
  • No-answer call forwarding may refer to forwarding a call request to a specific number when the called terminal does not answer. In this embodiment of the present application, it can be set that the call is transferred to the VoIP client when there is no answer.
  • the called-side network After the user configures the no-answer call to be forwarded to the VoIP client, when the called-side network determines that the called terminal does not answer, it can generate a forwarding message based on the target number of the no-answer call forwarding, and then forward the call with the called number. The message is routed to the VoIP gateway. After the VoIP gateway parses the forwarding message to obtain the called number, it sends the called number to the VoIP server. The VoIP server initiates a VoIP call to the VoIP client according to the called number to realize no-answer call transfer.
  • the user can set the unanswered call to be forwarded to the VoIP client of the called terminal, or set the unanswered call to be forwarded to the VoIP client of another terminal device.
  • the call request of the calling terminal can be forwarded to the VoIP gateway.
  • the forwarding condition can be that the user is unreachable, that is, the paging fails; it can also be busy, unconditional, and no response.
  • unconditional call forwarding Once set, all calls to you will be forwarded to your pre-designated phone, your mobile phone will no longer ring, and can only be answered from the pre-designated phone.
  • No answer call forwarding Once set, when your mobile phone is ringing and no one answers, all calls to you will be forwarded to the phone or mobile phone of your pre-designated number.
  • Unreachable call forwarding Once set, when your mobile phone is turned off or there is no signal, all calls to you will be forwarded to the phone or mobile phone of your pre-designated number.
  • the application scenarios of the embodiments of the present application may be applicable to voice call scenarios and/or video call scenarios.
  • the above and the following descriptions mainly take a voice call scenario as an example.
  • a video call scenario reference may be made to the corresponding description of the voice call scenario, which will not be repeated here.
  • An eNodeB (Evolved Node B) is a radio base station in a Long Term Evolution (LTE) network, and is also a network element of an LTE radio access network.
  • LTE Long Term Evolution
  • a Serving/PDN Gateway (Serving/PDN GateWay, S/P-GW) is a network element in an LTE network.
  • a session border controller (Session Border Controller, SBC) is a network element in an IMS network.
  • Border Controller Function (Border Controller Function, BCF) is a network element in the IMS network and is used to implement the border control function or SBC signaling processing.
  • MRF Multimedia Resource Function
  • Multimedia resource function controller Multimedia Resource Function Controller, MRFC.
  • Multimedia resource function processor Multimedia Resource Function Processor, MRFP.
  • I-CSCF interrogating-call session control function
  • serving call session control function serving-call session control function, S-CSCF.
  • the breakout gateway control function (BGCF), a network entity in the IMS domain, realizes the interworking between the IMS domain and the CS domain by analyzing the called number.
  • the interconnection border control function (I-BCF) is the control plane.
  • ATS Advanced telephony server
  • SIP application server SIP application server
  • IP media gateway IM-MGW
  • IM-MGW IP media gateway
  • the media gateway control function is a gateway for communication between the IMS domain and the CS domain.
  • POP can be used for NAT traversal to transmit media data.
  • the calling (Mobile Origination Call, MO) 51 includes a mobile phone and a fixed line
  • the called (Mobile Termination Call, MT) 52 is a mobile phone.
  • MO51 is a fixed line
  • the MO51 is connected to the IMS network 56 of the MT through the PSTN; when the mobile phone only supports the CS network, the MO51 is connected to the IMS network 56 of the MT through the CS network 53 .
  • the calling side network includes a CS network 53, a PSTN 54 and an IMS network 55
  • the CS network 53 includes a mobile switching center (Mobile Switching Center, MSC).
  • the called side network includes the IMS network 56 .
  • the IMS network 55 includes the following network elements: eNodeB, S/P-GW, SBC, I/S-CSCF/BGCF/MRFC/I-BCF and MRFP.
  • the IMS network 56 of the MT includes the following network elements: eNodeB, S/P-GW, SBC, ATS, MGCF/IM-MGW, I/S-CSCF/BGCF/MRFC/I-BCF and MRFP.
  • the signaling interaction process between MO51 and MT52 may include: MO51 initiates a call to MT52, and the call request of MO51 is transmitted to the IMS network 55, CS network 53 or PSTN54 to The multimedia resource control network element 561 in the IMS network 56 on the MT52 side.
  • the multimedia resource control network element 561 then transmits the call request of the MO51 to the MT52 to establish a call connection between the MO51 and the MT52.
  • voice data and/or video data can be transmitted between MO51 and MT52 based on the call network architecture.
  • the multimedia resource control network element 561 of the MT52 cannot pass the SBC564, S/P in the IMS network 56, etc. -GW and eNodeB, transmit the call request of MO51 to MT52, so that MT52 cannot receive the call of MO51.
  • a Real-time Network (RTN) 58 on the MT52 side was built.
  • the RTN 58 is communicatively connected to the SBC 563 of the IMS network 56 through the Internet 57, and the RTN 58 can be equivalent to a VoIP gateway.
  • the RTN 58 can also communicate with the VoIP server 510 through the Internet 59, and the VoIP server is connected with the MT52 through the Internet 511 and Wi-Fi 512.
  • the MT 52 can also communicate with the VoIP server 510 through a cellular network and the Internet 511 .
  • the multimedia resource control network element 561 in the IMS network 56 of the MT52 finds that the paging fails, it queries the ATS 562 whether the called number has the forwarding service enabled. Since the user cannot forward 6061XXX in time, the multimedia resource control network element 561 forwards the call request to the I-SBC581 in the RTN58 through the SBC563, specifically, generates the Invite message of 6061XXX, and routes the Invite message to the I-SBC581, which The Invite message carries the called number. After receiving the Invite message of 6061XXX, I-SBC581 transmits the Invite message of 6061XXX to BCF582 according to the forwarding signaling.
  • the BCF 582 obtains the called number by parsing the Invite message, and sends the called number obtained by parsing to the VoIP server 510 through the Internet 59 .
  • the VoIP server 510 After receiving the called number, the VoIP server 510 searches the called device information corresponding to the called number, and the called device information includes the VoIP number (or VoIP communication number) and the unique device identifier. Then, the VoIP server 510 initiates a VoIP call to the MT52 through the Internet 511 and the Wi-Fi 512.
  • the RTN 58 and the VoIP server 510 may not need to cross the Internet, that is, the communication connection between the RTN 58 and the VoIP server 510 is not limited to the Internet.
  • the RTN 58 can be equivalent to the VoIP gateway mentioned above, and is configured to receive the forwarding message sent by the IMS network 56 , and after parsing the called number from the forwarding message, transmit the called number to the VoIP server 510 .
  • RTN 58 and VoIP server 510 may also be integrated into one server.
  • the functions implemented by the SBC 563 and the SBC 564 in the IMS network 56 can also be integrated into one SBC.
  • the called party cannot be timely, and the called side network forwards the call request of the calling terminal to RTN58, which then transfers the call request of the calling terminal to the RTN58.
  • the VoIP server initiates a VoIP call to the called party.
  • the called side even if the operator's network coverage is poor, it can still receive the call request from the calling terminal and establish a call connection.
  • the calling-side user it is generally insensitive, that is, the calling-side user generally cannot perceive the operator's network status on the called-side. ” and other prompts.
  • FIG. 6 shows an interactive schematic diagram of a calling method provided by an embodiment of the present application.
  • the method may include the following steps:
  • Step S601 the calling terminal sends a first call request to the calling-side network to initiate a call to the called terminal.
  • the calling terminal may be a mobile terminal or a fixed line, and the mobile terminal may communicate with the called terminal through the IMS network or the CS network.
  • the fixed line can initiate a call to the called terminal through the PSTN.
  • the above-mentioned first call request is an Invite message generated by the calling terminal according to the called number, where the Invite message includes the called number.
  • Step S602 the calling side network sends the first call request to the called side network.
  • Step S603 the called-side network paging the called terminal according to the first call request.
  • Step S604 when the paging fails, the network on the called side determines whether the called party has activated the inaccessible call forwarding service.
  • Step S605 if the called party has activated the unreachable call forwarding service, the network on the called side obtains the target number corresponding to the unreachable call forwarding service.
  • Step S606 the called-side network generates a forwarding message according to the first call request and the target number, and the forwarding message carries the called number.
  • the forwarding message is an Invite message generated by the called side network according to the target number, and the Invite message carries the called number.
  • the ways in which the called number is carried in the forwarding message may include but are not limited to the following two ways:
  • the porting method as: forwarding line number + called number.
  • the target number is 6061XXX
  • the called number is 123456
  • the method of carrying the called number in the Invite message is 6061XXX123456.
  • the first VoIP server when it receives the forwarding message, it can directly resolve the called number. For example, use the last six digits of 6061XXX123456 as the called number.
  • the porting method as: forwarding to dedicated line number.
  • the forwarding message only carries the target number, and does not have the called number.
  • the existing Session Initiation Protocol (SIP) signaling is used to carry the History-Info in the forwarding message, and the called number is carried in the History-Info. In this way, the called number can be extracted from the History-Info subsequently.
  • SIP Session Initiation Protocol
  • History-Info is specifically:
  • the called number By parsing the History-Info, the called number can be extracted.
  • Step S607 the called side network sends the forwarding message to the first VoIP server.
  • Step S608 the first VoIP server parses the forwarding message to obtain the called number.
  • the first VoIP server may be equivalent to the above VoIP gateway or RTN.
  • Step S609 the first VoIP server sends the called number to the second VoIP server.
  • Step S610 the second VoIP server searches for called information corresponding to the called number.
  • Step S611 the second VoIP server initiates a VoIP call to the called terminal according to the called information, so as to establish a call connection between the calling terminal and the called terminal.
  • the above-mentioned called information may include, but is not limited to, a VoIP communication number, a unique device identifier, and the like.
  • One called number may correspond to one or more unique device identifiers.
  • the VoIP server can initiate a VoIP call to multiple devices at the same time.
  • the VoIP client is Changlian Call
  • the called user has three electronic devices, mobile phone 1, mobile phone 2, and tablet computer.
  • the unique device identifier of the mobile phone 1 is 111XX
  • the unique device identifier of the mobile phone 2 is 222XXX
  • the unique device identifier of the tablet computer is 333XXX.
  • the called information stored on the second VoIP server includes: 123456 corresponds to three communication numbers, and the three communication numbers are in one-to-one correspondence with the device unique ID of mobile phone 1, the device unique ID of mobile phone 2, and the device unique ID of the tablet computer.
  • the second VoIP server initiates a VoIP call to these three communication numbers at the same time. In this way, mobile phone 1, mobile phone 2 and tablet computer all receive the call.
  • the VoIP server may only initiate a VoIP call to the main device, and then the main device initiates a call to other devices, so as to initiate a VoIP call to multiple devices.
  • the master device can communicate with other devices, and the communication method can be a near-field communication method, such as Bluetooth, Wi-Fi point-to-point, and Wi-Fi STA.
  • the main device and other devices can be in the same local area network; The device and other devices can pass through the network firewall to achieve point-to-point connection; it can also be connected to each other through the server, that is, the main device can exchange data with other devices through the server.
  • the main device is a mobile phone
  • the other devices are a tablet computer and a smart large screen
  • the mobile phone, the tablet computer and the smart large screen are connected to a Wi-Fi router.
  • the mobile phone receives a VoIP call initiated by the VoIP server
  • the mobile phone can initiate a call to the tablet computer and smart screen through the Wi-Fi router.
  • the VoIP server can initiate a VoIP call to the corresponding terminal device according to the mobile phone number bound to the VoIP client account.
  • the VoIP server may also initiate a VoIP call according to the number of the currently inserted SIM card.
  • the mobile phone number originally bound to the called terminal is 123456, but the number of the SIM card currently inserted into the called terminal is 234567.
  • the VoIP server can also know the number of the currently inserted SIM card of the called terminal. Number. Based on this, the VoIP server can also initiate a VoIP call according to the number of the SIM card currently inserted in the called terminal.
  • a keep-alive communication link is maintained between the called terminal and the second VoIP server, and the communication link may be, but not limited to, a Wi-Fi communication link or a cellular network.
  • Mark's mobile phone number is 123456, and Changlian Call is installed on Mark's mobile phone. Mark has set that users cannot be forwarded to Changlian call in time, and has bound Changlian call to mobile phone number 123456. That is to say, the server of Changlian Call stores the correspondence between the mobile phone number 123456 and the communication number 8082XXX, and 8082XXX is the VoIP communication number of Changlian Call on Mark's mobile phone. In addition, Mark's mobile phone has Wi-Fi turned on and is connected to the Wi-Fi network at home.
  • Step S701 the calling terminal sends an Invite message including the called number 123456 to the network on the calling side.
  • Step S702 the calling side network sends the Invite message to the called side network.
  • Step S703 when the called side network paging fails, forward the call request of the calling terminal to the first VoIP server.
  • the called-side network may generate a forwarding message according to the forwarding number, and route the forwarding message to the first VoIP server.
  • the forwarding message is an Invite message, including the forwarding target number 6061XXX and carrying the called number 123456.
  • Step S704 the first VoIP server parses the forwarding message to obtain the called number 123456, and sends the called number 123456 to the second VoIP server.
  • Step S705 the second VoIP server finds the communication number 8082XXX corresponding to the called number 123456.
  • Step S706 the second VoIP server initiates a VoIP call to the 8082XXX to establish a call connection.
  • Mark's mobile phone will ring after receiving the VoIP call.
  • the called terminal After Mark picks up the phone, the called terminal returns a message to the second VoIP server indicating that the called party has answered the call, and the second VoIP server transmits the message to the first VoIP server. server.
  • the first VoIP server starts charging according to the message, and returns Invite 200OK to the called-side network, and the called-side network sends Invite 200OK to the calling terminal, and a call connection is successfully established between the calling terminal and the called terminal.
  • a VoIP gateway and a VoIP server are built on the called side, and the VoIP gateway is connected to the operator network of the called side.
  • the called-side network fails to paging, the called-side network can generate a forwarding message according to the target number corresponding to the call forwarding, and route the forwarding message to the VoIP gateway, and the VoIP gateway will then parse the forwarding message from the forwarding message.
  • the called number is sent to the VoIP server, and the VoIP server queries the called terminal corresponding to the called number, initiates a VoIP call to the called terminal, and establishes a call connection.
  • the call request of the calling terminal can still be received, and a call connection can be established.
  • the call solution provided by the embodiments of the present application can realize the intercommunication between the calling terminal and the called terminal when the network signal on the called side is poor or the call is unreachable due to other reasons.
  • the call solution provided by the embodiment of the present application can realize the intercommunication between the calling terminal and the called terminal when the call is unreachable based on the existing operator network.
  • the call solution provided by the embodiments of the present application does not require the calling party and the called party to add friends to each other, nor does the calling user manually initiate a VoIP call when the cellular call fails.
  • the call solution is insensitive to the calling side, that is, the calling terminal does not perceive that the called terminal operator's network signal is not good. And there is no restriction on the calling mode of the calling terminal, that is, the calling terminal can conduct CS calls, PSTN calls, and VoLTE calls.
  • the called terminal it only needs to enable the unreachable call transfer to the VoIP client, and register the called number and the device information of the called terminal to the VoIP server.
  • the called terminal and the VoIP server are also required. can communicate with each other. It is not necessary for the called user to manually operate the called terminal to inform the VoIP server that the operation network signal of the called terminal is not good when the operation network signal is found to be poor.
  • the called terminal also does not need to report its own status and its own location to the VoIP server at all times.
  • the call solution provided in this embodiment has better user experience and simpler user operations.
  • the first call solution introduced above needs to build a VoIP gateway and a VoIP server on the called side in advance, so that when the paging fails, the call request of the calling terminal can be forwarded through the network on the called side.
  • VoIP gateway which passes the call to the called party through the VoIP gateway and VoIP server.
  • the calling terminal may also initiate a VoIP call to the called terminal actively, so that the called terminal can be called when the operating network signal of the called terminal is poor or there is no operating network signal.
  • the calling terminal can still receive the call request from the calling terminal and establish a call connection with the calling terminal.
  • the embodiment of the present application can also provide another call solution (hereinafter referred to as "the second call solution").
  • the second call solution based on the existing call network architecture, when the called side network paging fails, the calling terminal automatically determines whether a VoIP call can be initiated, and automatically hangs up the current cellular phone when certain conditions are met. call, trigger a VoIP call, and realize the communication between the calling terminal and the called terminal. That is, when paging fails, the second call solution can automatically initiate a VoIP call through the calling terminal without forwarding the call request of the calling terminal to the VoIP gateway through the called-side network.
  • the second call solution can be based on the existing network architecture without changing the existing network architecture.
  • the call network architecture of the second call solution may include a calling terminal, a called terminal, a calling-side network and a called-side network, and a VoIP server.
  • the calling terminal can communicate with the VoIP server through the Internet, and the called terminal can also communicate with the VoIP server through the Internet.
  • the connection relationship between the calling terminal, the called terminal, the calling-side network, and the called-side network may be the call network architecture shown in FIG. 1 .
  • the calling terminal can automatically determine whether a VoIP call can be initiated, and if so, initiate a VoIP call to the called terminal through the VoIP server.
  • FIG. 8A it includes a calling terminal 81 , a called terminal 82 , a calling side network 83 , a called side network 84 , a VoIP server 85 , the Internet 86 and the Internet 87 .
  • the connection relationship between the calling terminal 81 , the called terminal 82 , the calling side network 83 and the called side network 84 is the same as that of the call network architecture in FIG. 1 .
  • FIG. 8A is similar to FIG. 3A , and the content similar to FIG. 3A can be referred to the content of FIG. 3A above, which will not be repeated here.
  • the operator's network signal of the called terminal 82 is poor, and the Wi-Fi network signal is good.
  • the called terminal 82 can judge whether the network signal is good or bad according to the signal strength. Specifically, if the signal strength of the operator's network in the area where the called terminal is located is lower than a certain threshold, the called terminal may determine that the signal of the operator's network is poor. Similarly, if the Wi-Fi signal strength in the area where the called terminal is located is higher than a certain threshold, the called terminal can determine that the Wi-Fi network signal is better.
  • the server can monitor the quality of the operator's network signal through data interaction with the called terminal.
  • the called terminal can exchange data with the server through the cellular network.
  • the server can monitor the information such as delay, packet loss and jitter during the data exchange process, and determine the called terminal according to the information such as delay, packet loss and jitter.
  • the carrier network signal on one side is good or bad.
  • the called-side network 84 will not forward the call request of the calling terminal to the VoIP gateway as in FIG. 3A, but the calling terminal 81 will automatically determine whether to initiate a VoIP call.
  • the calling terminal 81 is communicatively connected to the VoIP server 85 through the Internet 86
  • the VoIP server 85 is communicatively connected to the called terminal 82 through the Internet 87 .
  • the calling terminal 81 determines that a VoIP call can be initiated to the called terminal, the calling terminal will automatically hang up the cellular call and automatically trigger the VoIP call.
  • the VoIP call initiated by the calling terminal 81 reaches the called terminal 82 through the VoIP server.
  • a VoIP client is installed in the called terminal 82, and the called terminal 82 still needs to be registered on the VoIP server in advance. This will not be repeated here.
  • the difference from the call solution corresponding to FIG. 3A is that the called terminal does not need to pre-enable the transfer of inaccessible calls to the VoIP client.
  • the calling terminal needs to be pre-registered with the VoIP server, and the registration process is similar to the registration process of the called terminal, which is not repeated here.
  • a corresponding VoIP client is installed on the calling terminal, and the VoIP client may exist in the form of an application program.
  • the calling terminal 81 may be connected to the Internet 86 through a cellular network or a Wi-Fi network, and the called terminal may be connected to the Internet 87 through a Wi-Fi network or a cellular network, or the like.
  • the calling terminal 81 When the preset trigger condition is met, the calling terminal 81 further judges whether the Silent Redial trigger condition is met, and if the Silent Redial is allowed to be triggered, hangs up the cellular call and automatically triggers the VoIP call.
  • Silent Redial refers to background or autonomous redialing.
  • the preset trigger condition may include a timeout trigger and/or a network hang-up trigger.
  • the preset trigger condition only includes timeout trigger.
  • Timeout triggering refers to the step of judging whether the Silent Redial trigger condition is met when the time from the calling terminal call to the called terminal ringing exceeds the preset time threshold. Conversely, if the time from the calling terminal call initiation to the called terminal ringing does not exceed the preset time threshold, the step of judging whether the Silent Redial trigger condition is satisfied is not entered.
  • a T-Alerting (Timer of Alerting) timer can be started synchronously.
  • the T-Alerting starts timing when the call is initiated, and the T-Alerting timer ends when a message indicating that the called terminal is ringing or the call is over is received.
  • the time recorded by the timer is greater than or equal to the preset time threshold, it is considered to be a timeout trigger, and it can be further judged whether the Silent Redial trigger condition is met.
  • the preset time threshold is 15s, that is, if the time from the call initiation to the ringing exceeds 15s, the Silent Redial trigger condition is judged.
  • the preset trigger condition only includes the network hang-up trigger.
  • Network hangup triggers can include network error code scenarios and network exception scenarios.
  • the calling terminal 81 may enter the Silent Redial trigger condition judgment process when receiving the network error code or when the network is abnormal. Conversely, if the calling terminal does not receive the network error code, or the network is not abnormal, the process of judging the trigger condition of Silent Redial will not be performed.
  • the abnormal network scenario may include, for example, a situation where the call is disconnected immediately, for example, the calling party initiates a cellular call, but there is no ringback tone.
  • the network error code scenario refers to that when a certain situation occurs in the operator's network, the calling terminal 81 will obtain the network error code returned by the operator's network.
  • the network error code scenario refers to that when a certain situation occurs in the operator's network, the calling terminal 81 will obtain the network error code returned by the operator's network.
  • Table 1 For example and not limitation, several possible network error codes are shown in Table 1.
  • the preset trigger conditions include timeout trigger and network hang-up trigger.
  • the Silent Redial trigger condition judgment process is not performed. Conversely, if the time of the timer is greater than the preset time threshold, and/or a network error code or network abnormality is received, the Silent Redial trigger condition judgment process is performed.
  • the preset time threshold is 15s. Before 15s, if the calling terminal satisfies the network hangup trigger condition, it will perform the Silent Redial trigger condition judgment process; if the network hangup trigger condition is not met, the Silent Redial trigger condition will not be performed. Redial triggers the condition judgment process, and the timer will keep timing. When the time of the timer reaches 15s, the process of judging the trigger condition of Silent Redial is carried out.
  • the calling terminal After the calling terminal is triggered to enter the process of judging the trigger condition of Silent Redial, it can first query the capabilities of the peer terminal to obtain the relevant information of the called terminal, and then determine whether to perform Silent Redial according to the relevant information of the called terminal. The calling terminal can determine whether the called terminal is registered on the VoIP server by querying the capability of the opposite terminal.
  • the calling terminal can obtain the relevant information of the called terminal from the VoIP server.
  • the relevant information of the called terminal may include but is not limited to whether the called terminal has been registered on the VoIP server, the operator network signal status of the called terminal, whether the called terminal has the call forwarding service enabled, and the relationship between the called terminal and the VoIP server. Whether there is a communication link between them, etc.
  • the acquired related information of the called terminal may further include ringing record information of the called terminal and the like.
  • No Service can include scenarios with no operating network signal, weak signal scenarios, or scenarios where call services cannot be provided stably.
  • a weak signal may refer to an operator's network signal below a certain threshold.
  • the successful matching of the called number means that the called number carried in the VoIP call is consistent with the called number stored locally on the VoIP server.
  • Called forwarding is not enabled means that the called terminal does not enable any call forwarding service.
  • VoIP On Service may mean that there is a communication link between the called terminal and the VoIP server, or that the VoIP client on the called terminal is online.
  • the conditions that allow Silent Redial to be triggered can also be:
  • the condition that allows to trigger Silent Redial increases the judgment of whether the called party is ringing. Whether the called terminal is ringing refers to whether the called terminal has received a cellular call initiated by the calling terminal through the operator's network. If the called terminal has received a cellular call initiated by the operator's network, but the user does not actually answer it, it indicates that the user may not want to answer the call. To ensure user experience, Silent Redial is not triggered.
  • the calling terminal may also communicate directly with the called terminal to obtain the relevant information of the called terminal, instead of obtaining the relevant information of the called terminal through the server. After the calling terminal communicates with the called terminal and obtains the relevant information of the called terminal, it determines the trigger condition of Silent Redial according to the relevant information of the called terminal. This process is similar to the above, and will not be repeated here.
  • the calling terminal may directly initiate a VoIP call to the called terminal, or may initiate a VoIP call to the called terminal after confirmation by the user. For example, after the calling terminal determines that it needs to initiate a VoIP call to the called terminal, a prompt window may pop up, and the prompt window may be used to prompt the user whether to initiate a VoIP call. If the calling terminal obtains the confirmation instruction input by the user, Then initiate a VoIP call to the called terminal.
  • the calling terminal after the calling terminal initiates a cellular call to the called terminal, when certain trigger conditions (for example, a timeout trigger and/or a network hang-up trigger) are met, the calling terminal can first query the called terminal. Then, after determining that a VoIP call can be initiated, the current cellular call is automatically hung up, and a VoIP call is automatically initiated to the called terminal.
  • certain trigger conditions for example, a timeout trigger and/or a network hang-up trigger
  • a call origination determination process may be performed first, that is, the calling terminal may first determine whether to initiate a cellular call, and then call the called terminal if certain conditions are met. The terminal initiates a cellular call, and then enters to determine whether the above preset trigger conditions are met.
  • the calling terminal may determine whether to initiate a cellular call to the called terminal according to the cellular network signal conditions on the calling side and/or the cellular network signal conditions on the called side.
  • the calling terminal obtains the signal strength and signal quality of the cellular network signal on the calling side, if the signal strength of the cellular network signal on the calling side is lower than a certain signal strength threshold, or if the signal quality is lower than a certain signal strength
  • the signal quality threshold or, if the signal strength and signal quality are both lower than a certain threshold, the calling terminal can decide not to initiate a cellular call, and then enter to obtain the relevant information of the called terminal, and determine whether or not according to the relevant information of the called terminal.
  • the calling terminal determines to initiate a cellular call and initiates a cellular call to the called terminal.
  • both the calling terminal and the called terminal are connected in communication with the VoIP server, and the called terminal can report the cellular network signal condition of the called side to the VoIP server.
  • the state information of the called terminal may be obtained from the VoIP server, and the state information may include the cellular network signal condition and VoIP state information of the called side.
  • the calling terminal can query the called terminal through the VoIP server to obtain the status information of the called terminal. In this way, the VoIP server does not need to cache the status of the called terminal. information.
  • the calling terminal can decide not to initiate a cellular call, and then according to the relevant information of the called terminal information (eg, VoIP status information) to determine whether to initiate a VoIP call, or to initiate a VoIP call directly.
  • the relevant information of the called terminal information eg, VoIP status information
  • the VoIP status information may include, but is not limited to, whether the called terminal has been registered with the VoIP server, whether the called terminal is in communication connection with the VoIP server, and the like.
  • the calling terminal decides to initiate a cellular call and initiates a cellular call to the called terminal.
  • the calling terminal determines whether to initiate a cellular call according to the cellular network signal of the calling side and the cellular network signal of the called side at the same time. Specifically, if the signal strength and signal quality of the cellular network signal on the calling side are both greater than the corresponding thresholds, and the signal strength and signal quality of the cellular network signal on the called side are both greater than the corresponding thresholds, the calling terminal determines to initiate a cellular call, then Initiate a cellular call to the called terminal.
  • the calling terminal decides not to initiate a cellular call, but determines based on the VoIP status information of the called terminal, etc. Whether to initiate a VoIP call, or directly initiate a VoIP call.
  • the calling terminal when the cellular phone is dropped, can automatically determine whether a VoIP call can be initiated, and if so, automatically initiate a VoIP call to the called terminal. Specifically, the calling terminal and the called terminal have established a cellular call connection. For some reason, the cellular call connection between the calling terminal and the called terminal is disconnected, that is, the cellular phone is dropped. At this time, the calling terminal may first query the related information of the called terminal.
  • the related information of the called terminal may include, for example, whether the called terminal has registered with the VoIP server, whether the called terminal has a communication connection with the VoIP server, and so on.
  • the calling terminal can determine whether a VoIP call can be initiated according to the relevant information of the called terminal, and if so, automatically initiate a VoIP call to the called terminal.
  • the called terminal has been registered with the VoIP server (for example, the calling terminal can find the number consistent with the called number from the VoIP server), and there is a communication link between the called terminal and the VoIP server (for example, The called terminal communicates with the VoIP server through a cellular network or a Wi-Fi network), then it is determined that a VoIP call can be initiated.
  • the cellular network signal strength threshold and the cellular network signal quality threshold mentioned above can be used to characterize the quality of the cellular network signal, and the quality of the cellular network signal can affect whether the calling terminal and the called terminal can be established. Cellular call connection, and whether the cellular call connection and call quality are stable, etc.
  • the calling terminal 81 may have multiple dialing methods, which will be described below with reference to FIGS. 8B to 8D .
  • the calling terminal 81 can automatically switch to a VoIP call when the cellular call is unreachable.
  • the calling terminal 81 receives the dialing operation triggered by the user on the dialing interface 811 , and the calling terminal 81 initiates a cellular call request for the number 123456, and displays the dialing interface, indicating that the user is dialing. At this time, the calling terminal 81 transmits the cellular call request for the number 123456 to the called side network, and the called side network can page the number 123456. When the paging fails, the called side network can call the calling terminal 81. A message is returned to inform the calling terminal 81 that the paging failed. The message may include, for example, the above-mentioned network error code and other information.
  • the calling terminal 81 may display prompt information 812 to prompt the user whether the current cellular call is unreachable and whether to switch to a VoIP call. If the user selects "Yes", the calling terminal 81 initiates a VoIP call for 123456.
  • the calling terminal 81 uses a timer to count the time while initiating a cellular call to 123456.
  • the prompt information 812 can also be displayed.
  • the calling terminal 81 can first query the information such as the VoIP capability of the called terminal, the device status and VoIP status of the called terminal, and based on the information , determine whether a VoIP call can be initiated to the called terminal associated with the number 123456, if yes, display prompt information 812, if not, display prompt information 812, but the "Yes" option becomes unselectable at this time.
  • prompt information may also be displayed, indicating that the peer device does not support VoIP calls or does not meet the conditions for VoIP calls.
  • the process of querying the VoIP capability of the called terminal, the device status and VoIP state of the called terminal, and the process of judging whether VoIP can be initiated according to the information can be found in the corresponding content above, and will not be repeated here.
  • the calling terminal 81 receives the dialing operation triggered by the user on the dialing interface 811, and then the calling terminal 81 displays a prompt message 813 to prompt the user to select a call mode.
  • the calling Terminal 81 initiates a VoIP call to number 123456.
  • the VoIP request for number 123456 is first delivered to the VoIP server.
  • the VoIP server initiates that the device corresponding to number 123456 does not support VoIP calls, or when the VoIP client number 123456 is offline, a message is returned to the calling terminal 81 .
  • the calling terminal 81 displays prompt information 814 to prompt the user that the VoIP call is unavailable and whether to switch to a cellular call. If the user selects "Yes", the calling terminal 81 initiates a cellular call to number 123456.
  • the calling terminal 81 may also determine whether the peer device associated with the number 123456 supports VoIP calls or is online. Specifically, the calling terminal 81 may send a query request to the VoIP server to query the VoIP capability information of the number 123456, and the like. If it is found that the number 123456 is not registered on the VoIP server or the VoIP client of the device associated with the number is not online, the VoIP call option in the prompt message 813 is changed to a non-selectable state.
  • the calling terminal 81 receives the dialing operation triggered by the user on the dialing interface 811, and then the calling terminal 81 displays a prompt message 813 to prompt the user to select a calling mode.
  • the calling Terminal 81 initiates a cellular call to number 123456.
  • the cellular call request will be delivered to the called side network first.
  • the called-side network can page the number 123456, and when the paging fails, the called-side network can return a message to the calling terminal 81 to inform the calling terminal 81 that the paging failed.
  • the message may include, for example, the above-mentioned network error code and other information.
  • the calling terminal 81 may display prompt information 812 to prompt the user whether the current cellular call is unreachable and whether to switch to a VoIP call. If the user selects "Yes", the calling terminal 81 initiates a VoIP call for 123456.
  • the calling terminal 81 when the calling terminal 81 initiates a cellular call to 123456, it is timed by timing, and the prompt information 812 can also be displayed when the above timeout trigger is satisfied. Further, when the calling terminal 81 receives the network error code returned by the network side, or detects that the timeout trigger is satisfied, the calling terminal 81 can first query the information such as the VoIP capability of the called terminal, the device status and VoIP status of the called terminal, and based on the information , determine whether a VoIP call can be initiated to the called terminal associated with the number 123456, if yes, display prompt information 812, if not, display prompt information 812, but the "Yes" option becomes unselectable at this time.
  • prompt information may also be displayed, indicating that the peer device does not support VoIP calls or does not meet the conditions for VoIP calls.
  • the process of first querying the VoIP capability of the called terminal, the device status of the called terminal, and the VoIP state, and the process of judging whether VoIP can be initiated based on the information can be found in the corresponding content above, and will not be repeated here.
  • the calling terminal can first perform a call origination decision process, that is, first determine whether a cellular call can be initiated, and if so, initiate a cellular call to the called terminal.
  • terminal capability query to obtain the VoIP capability information and VoIP status information of the called terminal, and then determine whether to initiate a VoIP call according to the relevant information of the called terminal.
  • the calling terminal can also pop up a call mode selection interface when the user dials up, so that the user can choose whether to use a VoIP call or a cellular call.
  • the calling terminal may also display a call mode selection interface according to the call origination judgment result.
  • the calling terminal pops up a schematic diagram of a call mode selection interface, and the call mode selection interface displays "cellular call” and "VoIP call". "Two options, users can choose one of the calling methods according to their needs.
  • the calling terminal may first perform a call origination decision process, and determine whether a cellular call can be initiated according to the network conditions on the calling side and/or the network conditions on the called side. You cannot initiate a cellular call, and the "cellular call" in the pop-up call mode selection interface will become unselectable, and the specific appearance can be that the "cellular call” turns gray or black. That is, the user cannot select the cellular calling method.
  • the calling terminal can also send a query request to the VoIP server according to the called number input by the user to query the capabilities of the opposite terminal; after obtaining the VoIP status information and mobile phone status information of the called terminal, it can then judge whether VoIP calls can be initiated. If it is not possible to initiate a VoIP call, the "VoIP call" option on the call mode selection interface will also become unselected, which can be displayed as "VoIP call” turns gray or black.
  • the calling terminal 81 when the calling terminal 81 receives the number input by the user and receives the cellular call triggering operation of the user, the calling terminal 81 can initiate a VoIP call to the called number in response to the dialing operation of the user. For example, the user wants to initiate a cellular call to the number 123456, but the calling terminal 81 initiates a VoIP call to the number 123456 after receiving the cellular call triggering operation. At this time, the user may not perceive whether the calling terminal 81 initiates a cellular call or a VoIP call. In this case, the calling terminal 81 may first determine whether a cellular call can be initiated, and the specific determination process can refer to the above related content. If it is determined that the cellular call cannot be initiated, when the user wants to initiate a cellular call, a VoIP call can be initiated to the called number, but the user does not need to know what the calling method is.
  • whether to use a VoIP call can also be determined according to the call history of the called number. For example, the user wants to initiate a cellular call to the number 123456, but the calling terminal finds that the call history records of the number 123456 are all VoIP calls. At this time, the calling terminal responds to the cellular call trigger operation and initiates a VoIP call to the number 123456.
  • Fig. 8A does not need to build a VoIP gateway, nor does the called-side network forward the call request of the calling terminal when the paging fails, but the calling terminal actively determines whether to perform Silent. Redial to automatically hang up the current cellular call, triggering a VoIP call.
  • the dialing interface can be maintained, and corresponding prompt information can be given to remind the user that the cellular call has been switched to the VoIP call. In this way, for the calling user, there is no need to manually hang up the cellular call and manually initiate a VoIP call, and the call operation is more intelligent and simpler.
  • the call network architecture includes MO 91 , MT 92 , IMS network 93 of MO, IMS network 94 of MT, VoIP server 95 , Internet 96 and Internet 97 .
  • IMS network 93 and the IMS network 94 For the related introduction of the IMS network 93 and the IMS network 94, reference may be made to the content corresponding to FIG. 5, and details are not repeated here.
  • MO91 can automatically determine whether to initiate a VoIP call, so as to automatically hang up the cellular call and trigger a VoIP call. In this way, when the cellular call is abnormal, the MO91 can automatically switch to the VoIP call.
  • MO91 in Fig. 9 does not include fixed line and mobile phone supporting CS call. Moreover, the network architecture of FIG. 9 does not include the VoIP gateway of the called side network, nor does the called side network forward the call request to the VoIP gateway when the paging fails.
  • FIG. 10 is another interactive schematic diagram of the calling method provided by the embodiment of the present application.
  • the calling process may include the following steps:
  • Step S1001 a dial application (Dial Application, Dial App) of the calling terminal initiates a cellular call to the called terminal.
  • the calling terminal may first determine whether the conditions for initiating a cellular call are met, and if so, initiate a cellular call, that is, enter step S1001. In a specific application, the calling terminal may determine whether to initiate a cellular call according to the cellular network signal condition on the calling side and/or the cellular signal condition on the called side.
  • the calling terminal can determine not to initiate a cellular call, but to enter the calling terminal
  • the process of determining whether to initiate a VoIP call according to the related information of the called terminal can be obtained, and if the VoIP call can be initiated, the VoIP call is initiated to the called terminal.
  • both the signal strength and signal quality of the calling side cellular network are higher than a certain threshold, it is determined to initiate a VoIP call, and the process goes to step S1001.
  • the calling terminal may also determine whether to initiate a cellular call according to the cellular network signal condition of the called terminal.
  • the calling terminal may acquire the cellular network signal status reported by the called terminal from the VoIP server.
  • the process of determining whether to initiate a cellular call according to the cellular network signal condition of the called side is similar to the process of determining whether to initiate a cellular call according to the cellular network signal of the calling side, and will not be repeated here.
  • the calling terminal may also determine whether to initiate a cellular call according to the cellular network signal conditions on the calling side and the cellular network signal conditions on the called side at the same time.
  • Step S1002 the Dial App of the calling terminal determines whether a preset trigger condition is satisfied.
  • the preset trigger condition includes a timeout trigger and/or a network hang-up trigger.
  • Step S1003 If the preset trigger condition is satisfied, the VoIP client of the calling terminal acquires the related information of the called terminal.
  • the called terminal related information may include state information of the called terminal and state information of the VoIP client in the called party.
  • the status information of the called terminal includes the operator's network signal on the called terminal side, whether the called terminal has activated the call forwarding service, the called number, and whether the called ring is ringing. Whether the called party is ringing refers to whether the called terminal receives a cellular call initiated by the calling party through the operator's network.
  • the calling terminal can directly communicate with the called terminal to obtain relevant information of the called terminal; it can also communicate with the called terminal through a VoIP server to obtain relevant information of the called terminal.
  • Step S1004 the VoIP client of the calling terminal transmits the acquired related information of the called terminal to the Dial App.
  • Step S1005 the Dial App of the calling terminal determines whether to allow triggering of Silent Redial according to the relevant information of the called terminal.
  • Step S1006 if the Silent Redial is allowed to be triggered, the VoIP client of the calling terminal initiates a VoIP call to the called terminal.
  • both the calling terminal and the called terminal include a VoIP client, and the specific expression form of the VoIP client can be arbitrary, for example, the VoIP client is a Changlian call APP.
  • the operator network in FIG. 10 includes a calling side network and a called side network.
  • the calling terminal can initiate a VoIP call request according to the communication number of the called terminal.
  • the VoIP call request is transmitted to the VoIP server through the Internet, and the VoIP server is transmitted to the called terminal through the Internet.
  • the called terminal when the operator's network signal is poor or there is no operator's network signal, it can still receive a call request from the calling terminal, and establish a call connection with the calling terminal to realize intercommunication.
  • the call flow is the same as the normal call flow except that the call waiting time may be longer than the normal call flow.
  • the calling terminal and the called terminal do not need to add friends to each other.
  • the calling terminal can actively determine whether to trigger a VoIP call according to the information of the opposite terminal, without requiring the user of the calling terminal to perform additional operations.
  • the call solution provided by the embodiments of the present application can realize the intercommunication between the calling terminal and the called terminal when the network signal on the called side is poor or the call is unreachable due to other reasons.
  • the call solution provided by the embodiment of the present application can realize the intercommunication between the calling terminal and the called terminal when the call is unreachable based on the existing operator network.
  • the call solution provided by the embodiments of the present application does not require the calling party and the called party to add friends to each other, nor does the calling user manually initiate a VoIP call when the cellular call fails.
  • the called side builds a VoIP gateway and connects the VoIP gateway to the called side network, so that when paging fails, the called side network generates a forwarding message according to the forwarding number, and the forwarding message is routed to the VoIP gateway to The call request of the calling terminal is forwarded to the VoIP gateway.
  • the VoIP gateway then transmits the called number parsed from the forwarding message to the VoIP server, and then the VoIP server queries the corresponding called terminal according to the called number, and initiates a VoIP call; and the second idea is to paging When it fails, the calling terminal judges whether certain conditions are met, and if certain conditions are met, it automatically hangs up the current cellular call to trigger a VoIP call. Both of these two approaches can enable the called terminal to still receive the call initiated by the calling terminal and establish a call connection even when the operator's network signal of the called terminal is poor or there is no operator's network signal.
  • a VoIP gateway and a VoIP server on the called terminal side are built, and the called side network is connected to the VoIP gateway.
  • the called side network fails to paging and the called number has activated the unreachable forwarding service
  • the called side network can forward the call request to the VoIP gateway, and the VoIP gateway and the VoIP server relay the call request to The called terminal realizes the intercommunication between the called terminal and the calling terminal.
  • the calling terminal will automatically determine whether a VoIP call can be initiated, and when certain conditions are met, it will automatically hang up the current cellular call and trigger the VoIP call, enabling the calling terminal to communicate with the called number. It is called terminal intercommunication.
  • a VoIP gateway needs to be deployed and connected to the called side network.
  • the calling terminal is connected to the VoIP server through the Internet
  • the called terminal is also connected to the VoIP server through the Internet.
  • the call network architecture of the third call solution is similar to the call network architecture of the above-mentioned first call solution.
  • the VoIP server can also communicate with the calling terminal and the called terminal respectively through the Internet.
  • FIG. 11 is a schematic diagram of another call scenario provided by an embodiment of the present application.
  • the scenario may include a calling terminal 111 , a called terminal 112 , a calling side network 113 , a called side network 114 , a VoIP server 115 , a VoIP gateway 116 , and the Internet 117 to 119 .
  • the called-side network can generate a forwarding message according to the forwarding number, and carry the forwarding message with the called terminal.
  • the forwarding message of the calling number is routed to the VoIP gateway to forward the call request to the VoIP gateway.
  • the VoIP gateway obtains the called number by parsing the forwarding message, and then sends the called number to the VoIP server.
  • the VoIP server addresses the called terminal device according to the called number, and then initiates a VoIP call to the called terminal device.
  • the network on the called side will not forward the call request to the VoIP gateway, but the calling terminal will actively determine whether to initiate a VoIP call. , if it is determined that a VoIP call can be initiated, the calling terminal initiates a VoIP call to the called terminal through the VoIP server.
  • the process of the third call solution may include:
  • the calling terminal initiates a cellular call to the called terminal, and the cellular call request is transmitted to the called side network through the calling side network.
  • the called side network paging the called terminal according to the cellular call request.
  • the called-side network can first inquire from the forwarding server whether the called number has enabled the call forwarding service. If the unreachable call forwarding service is activated on the called number, the target number of the unreachable call forwarding is obtained, and a call request (or a forwarding message) of the target number is generated, and the call request of the target number carries the source number. The called number.
  • the called-side network will route all call requests of the target number to the VoIP gateway.
  • the VoIP gateway obtains the called number by parsing the call request, and then sends the called number to the VoIP server.
  • the VoIP server searches for the called terminal according to the called number, and initiates a VoIP call to the found called terminal.
  • the operator network may return an indication message to the calling terminal, where the indication information is used to inform the calling terminal that the called number is not enabled for the call forwarding service.
  • the calling terminal can query the peer capability to determine whether the called number is registered on the VoIP server and whether the VoIP client of the called terminal is in a service state. If the called number has been registered on the VoIP server and meets certain conditions, the calling terminal can automatically hang up the current cellular call to trigger a VoIP call.
  • the calling terminal can further judge the signal quality status of the operating network on the called terminal side and whether it has received and ringing a cellular call initiated by the calling terminal. And according to the information to determine whether to initiate a VoIP call.
  • FIG. 12 is another interactive schematic diagram of the calling method provided by the embodiment of the present application.
  • the calling method may include the following steps:
  • Step S1201 the calling terminal sends a call request to the calling side network.
  • the calling terminal may first determine whether to initiate a cellular call, and if it is determined to initiate a cellular call, enter the step S1201. Conversely, if it is determined not to initiate a cellular call, the calling terminal can first obtain relevant information of the called terminal, for example, whether the called terminal has registered with the VoIP server, whether the called terminal has a communication link with the VoIP server, and so on. Then, the calling terminal determines whether to initiate a VoIP call according to the relevant information of the called terminal. If certain conditions are met, the calling terminal initiates a VoIP call to the called terminal.
  • the calling terminal may determine whether to initiate a cellular call to the called terminal according to the calling-side cellular network signal condition and/or the called-side cellular network signal condition.
  • the calling-side cellular network signal condition and/or the called-side cellular network signal condition.
  • Step S1202 When the paging fails, the called side network determines whether the called number has activated the inaccessible call forwarding service. If yes, go to step S1203, if no, go to step S1209.
  • the call forwarding service may also include, but is not limited to, a no-answer call forwarding service, a busy call forwarding service, and an unconditional call forwarding service.
  • Step S1203 the called side network acquires the unreachable forwarding number of the called number, and generates a forwarding message.
  • the forwarding message may be an Invite message generated according to the forwarding number, and the message carries the called number.
  • Step S1204 the called-side network routes the forwarding message to the first VoIP server.
  • Step S1205 the first VoIP server parses the forwarding message to obtain the called number.
  • Step S1206 the first VoIP server sends the called number to the second VoIP server.
  • Step S1207 the second VoIP server searches for the VoIP communication number corresponding to the called number.
  • Step S1208 the second VoIP server initiates a VoIP call to the called terminal according to the VoIP communication number.
  • Step S1209 the calling terminal determines whether a preset trigger condition is satisfied. If yes, go to step S1210.
  • the preset trigger condition can be a timeout trigger and/or a network hang-up trigger; it can also be an indication message returned by the operator's network, that is, the called-side network fails in paging, and the called number cannot be activated.
  • the called-side network may return an indication message to the calling terminal, and the indication message is used to instruct the subsequent steps to be performed, that is, step S1210 is performed.
  • Step S1210 the calling terminal acquires relevant information of the called terminal.
  • Step S1211 the calling terminal determines whether to allow triggering of Silent Redial according to the relevant information of the called terminal. If yes, go to step S1212.
  • Step S1212 the calling terminal initiates a VoIP call to the called terminal.
  • the third call solution can be seen as a combination of the first call solution and the second call solution.
  • the called terminal can still receive the calling terminal's call. Call request to realize the intercommunication between the calling and the called.
  • the calling terminal generally accesses the operator's network through a wireless base station.
  • the calling terminal may also access the operator's network through VoWi-Fi. That is to say, several call solutions provided by the embodiments of the present application are also applicable to VoWi-Fi scenarios.
  • the processing flow of the called-side network, the VoIP gateway, and the VoIP server is similar to the above, and will not be repeated here.
  • the embodiment of the present application also provides a terminal device, and the terminal device may specifically appear as a calling terminal, a called terminal, a VoIP gateway, or a VoIP server.
  • the calling terminal may specifically be a mobile phone terminal such as a mobile phone or a tablet computer, or a fixed line.
  • the called terminal may specifically be a mobile phone terminal such as a mobile phone or a tablet computer.
  • the terminal device may include a memory, a processor, and a computer program stored in the memory and running on the processor, and the processor implements the corresponding method flow when executing the computer program.
  • the terminal device When the terminal device is the first terminal device, it can execute the related method flow on the side of the first terminal device.
  • the terminal device is the second terminal device, it can execute the related method flow on the side of the second terminal device.
  • the terminal device is a VoIP server, it can execute the related method flow on the side of the VoIP server.
  • the electronic device 1300 may include a processor 1310, an external memory interface 1320, an internal memory 1321, a universal serial bus (USB) interface 1330, a charging management module 1340, a power supply Management module 1341, battery 1342, antenna 1, antenna 2, mobile communication module 1350, wireless communication module 1360, audio module 1370, speaker 1370A, receiver 1370B, microphone 1370C, headphone jack 1370D, sensor module 1380, button 1390, motor 1391, Indicator 1392, camera 1393, display screen 1394, and subscriber identification module (SIM) card interface 1395, etc.
  • SIM subscriber identification module
  • the sensor module 1380 may include a pressure sensor 1380A, a gyroscope sensor 1380B, an air pressure sensor 1380C, a magnetic sensor 1380D, an acceleration sensor 1380E, a distance sensor 1380F, a proximity light sensor 1380G, a fingerprint sensor 1380H, a temperature sensor 1380J, a touch sensor 1380K, and ambient light.
  • Sensor 1380L Bone Conduction Sensor 1380M, etc.
  • the structures illustrated in the embodiments of the present application do not constitute a specific limitation on the electronic device 1300 .
  • the electronic device 1300 may include more or less components than shown, or combine some components, or separate some components, or arrange different components.
  • the illustrated components may be implemented in hardware, software, or a combination of software and hardware.
  • the processor 1310 may include one or more processing units, for example, the processor 1310 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, memory, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (NPU) Wait. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • application processor application processor, AP
  • modem processor graphics processor
  • graphics processor graphics processor
  • image signal processor image signal processor
  • ISP image signal processor
  • controller memory
  • video codec digital signal processor
  • DSP digital signal processor
  • NPU neural-network processing unit
  • the controller may be the nerve center and command center of the electronic device 1300 .
  • the controller can generate an operation control signal according to the instruction operation code and timing signal, and complete the control of fetching and executing instructions.
  • a memory may also be provided in the processor 1310 for storing instructions and data.
  • the memory in processor 1310 is cache memory. This memory may hold instructions or data that have just been used or recycled by the processor 1310 . If the processor 1310 needs to use the instruction or data again, it can be called directly from memory. Repeated access is avoided, and the waiting time of the processor 113 is reduced, thereby improving the efficiency of the system.
  • the processor 1310 may include one or more interfaces.
  • the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous transceiver (universal asynchronous transmitter) receiver/transmitter, UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and / or universal serial bus (universal serial bus, USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transceiver
  • MIPI mobile industry processor interface
  • GPIO general-purpose input/output
  • SIM subscriber identity module
  • USB universal serial bus
  • the I2C interface is a bidirectional synchronous serial bus that includes a serial data line (SDA) and a serial clock line (SCL).
  • the processor 1310 may contain multiple sets of I2C buses.
  • the processor 1310 can be respectively coupled to the touch sensor 1380K, the charger, the flash, the camera 1393, etc. through different I2C bus interfaces.
  • the processor 1310 can couple the touch sensor 1380K through the I2C interface, so that the processor 1310 and the touch sensor 1380K communicate with each other through the I2C bus interface, so as to realize the touch function of the electronic device 1300.
  • the I2S interface can be used for audio communication.
  • the processor 1310 may contain multiple sets of I2S buses.
  • the processor 1310 may be coupled with the audio module 1370 through an I2S bus to implement communication between the processor 1310 and the audio module 1370 .
  • the PCM interface can also be used for audio communications, sampling, quantizing and encoding analog signals.
  • the audio module 1370 and the wireless communication module 1360 may be coupled through a PCM bus interface. Both the I2S interface and the PCM interface can be used for audio communication.
  • the UART interface is a universal serial data bus used for asynchronous communication.
  • the bus may be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication.
  • a UART interface is typically used to connect the processor 1310 with the wireless communication module 1360 .
  • the processor 1310 communicates with the Bluetooth module in the wireless communication module 1360 through the UART interface to implement the Bluetooth function.
  • the MIPI interface can be used to connect the processor 1310 with the display screen 1394, the camera 1393 and other peripheral devices.
  • MIPI interfaces include camera serial interface (CSI), display serial interface (DSI), etc.
  • the processor 1310 communicates with the camera 1393 through a CSI interface to implement the photographing function of the electronic device 1300 .
  • the processor 1310 communicates with the display screen 1394 through the DSI interface to implement the display function of the electronic device 1300 .
  • the GPIO interface can be configured by software.
  • the GPIO interface can be configured as a control signal or as a data signal.
  • the GPIO interface may be used to connect the processor 1310 with the camera 1393, the display screen 1394, the wireless communication module 1360, the audio module 1370, the sensor module 1380, and the like.
  • the GPIO interface can also be configured as I2C interface, I2S interface, UART interface, MIPI interface, etc.
  • the USB interface 1330 is an interface that conforms to the USB standard specification, and specifically can be a Mini USB interface, a Micro USB interface, a USB Type C interface, and the like.
  • the USB interface 1330 can be used to connect a charger to charge the electronic device 1300, and can also be used to transmit data between the electronic device 1300 and peripheral devices. It can also be used to connect headphones to play audio through the headphones.
  • the interface can also be used to connect other electronic devices, such as AR devices.
  • the interface connection relationship between the modules illustrated in the embodiments of the present application is only a schematic illustration, and does not constitute a structural limitation of the electronic device 1300 .
  • the electronic device 1300 may also adopt different interface connection manners in the foregoing embodiments, or a combination of multiple interface connection manners.
  • the charging management module 1340 is used to receive charging input from the charger.
  • the charger may be a wireless charger or a wired charger.
  • the charging management module 1340 may receive charging input from the wired charger through the USB interface 1330 .
  • the charging management module 140 may receive wireless charging input through the wireless charging coil of the electronic device 1300 . While the charging management module 1340 charges the battery 1342 , it can also supply power to the electronic device through the power management module 1341 .
  • the power management module 1341 is used to connect the battery 1342 , the charging management module 1340 and the processor 1310 .
  • the power management module 1341 receives input from the battery 1342 and/or the charging management module 1340, and supplies power to the processor 1310, the internal memory 1321, the external memory, the display screen 1394, the camera 1393, and the wireless communication module 1360.
  • the power management module 1341 can also be used to monitor parameters such as battery capacity, battery cycle times, battery health status (leakage, impedance).
  • the power management module 1341 may also be provided in the processor 1310 .
  • the power management module 1341 and the charging management module 1340 may also be provided in the same device.
  • the wireless communication function of the electronic device 1300 may be implemented by the antenna 1, the antenna 2, the mobile communication module 1350, the wireless communication module 1360, the modem processor, the baseband processor, and the like.
  • Antenna 1 and Antenna 2 are used to transmit and receive electromagnetic wave signals.
  • Each antenna in electronic device 1300 may be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.
  • the antenna 1 can be multiplexed as a diversity antenna of the wireless local area network. In other embodiments, the antenna may be used in conjunction with a tuning switch.
  • the mobile communication module 1350 may provide a wireless communication solution including 2G/3G/4G/5G, etc. applied on the electronic device 1300 .
  • the mobile communication module 1350 may include at least one filter, switch, power amplifier, low noise amplifier (LNA), and the like.
  • the mobile communication module 1350 can receive electromagnetic waves from the antenna 1, filter and amplify the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation.
  • the mobile communication module 1350 can also amplify the signal modulated by the modulation and demodulation processor, and then convert it into electromagnetic waves and radiate it out through the antenna 1 .
  • at least part of the functional modules of the mobile communication module 1350 may be provided in the processor 1310 .
  • at least part of the functional modules of the mobile communication module 1350 may be provided in the same device as at least part of the modules of the processor 1310 .
  • the modem processor may include a modulator and a demodulator.
  • the modulator is used to modulate the low frequency baseband signal to be sent into a medium and high frequency signal.
  • the demodulator is used to demodulate the received electromagnetic wave signal into a low frequency baseband signal. Then the demodulator transmits the demodulated low-frequency baseband signal to the baseband processor for processing.
  • the low frequency baseband signal is processed by the baseband processor and passed to the application processor.
  • the application processor outputs sound signals through audio devices (not limited to the speaker 1370A, the receiver 1370B, etc.), or displays images or videos through the display screen 1394 .
  • the modem processor may be a stand-alone device.
  • the modem processor may be independent of the processor 1310, and may be provided in the same device as the mobile communication module 1350 or other functional modules.
  • the wireless communication module 1360 can provide applications on the electronic device 1300 including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellites Wireless communication solutions such as global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), and infrared technology (IR).
  • WLAN wireless local area networks
  • BT Bluetooth
  • GNSS global navigation satellite system
  • FM frequency modulation
  • NFC near field communication
  • IR infrared technology
  • the wireless communication module 1360 may be one or more devices integrating at least one communication processing module.
  • the wireless communication module 1360 receives electromagnetic waves via the antenna 2 , frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 113 .
  • the wireless communication module 1360 can also receive the signal to be sent from the processor 1310 , perform frequency modulation on it, amplify it, and then convert it into electromagnetic waves for radiation through the antenna 2 .
  • the antenna 1 of the electronic device 1300 is coupled with the mobile communication module 1350, and the antenna 2 is coupled with the wireless communication module 1360, so that the electronic device 1300 can communicate with the network and other devices through wireless communication technology.
  • Wireless communication technologies may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband code division Multiple access (wideband code division multiple access, WCDMA), time division code division multiple access (time-division code division multiple access, TD-SCDMA), long term evolution (long term evolution, LTE), BT, GNSS, WLAN, NFC, FM , and/or IR technology, etc.
  • GNSS may include global positioning system (GPS), global navigation satellite system (GLONASS), Beidou navigation satellite system (BDS), quasi-zenith satellite system (quasi-zenith) satellite system, QZSS) and/or satellite based augmentation systems (SBAS).
  • GPS global positioning system
  • GLONASS global navigation satellite system
  • BDS Beidou navigation satellite system
  • QZSS quasi-zenith satellite system
  • SBAS satellite based augmentation systems
  • the electronic device 1300 implements a display function through a GPU, a display screen 1394, an application processor, and the like.
  • the GPU is a microprocessor for image processing, and is connected to the display screen 1394 and the application processor.
  • the GPU is used to perform mathematical and geometric calculations for graphics rendering.
  • Processor 1310 may include one or more GPUs that execute program instructions to generate or change display information.
  • Display screen 1394 is used to display images, videos, and the like.
  • Display screen 1394 includes a display panel.
  • the display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode or an active-matrix organic light-emitting diode (active-matrix organic light).
  • LED diode AMOLED
  • flexible light-emitting diode flexible light-emitting diode (flex light-emitting diode, FLED), Miniled, MicroLed, Micro-oLed, quantum dot light-emitting diode (quantum dot light emitting diodes, QLED) and so on.
  • the electronic device 1300 may include 1 or N display screens 1394, where N is a positive integer greater than 1.
  • the electronic device 1300 can realize the shooting function through the ISP, the camera 1393, the video codec, the GPU, the display screen 1394 and the application processor.
  • the ISP is used to process the data fed back by the camera 1393.
  • the shutter is opened, the light is transmitted to the photosensitive element of the camera through the lens, the light signal is converted into an electrical signal, and the photosensitive element of the camera transmits the electrical signal to the ISP for processing, and converts it into an image visible to the naked eye.
  • ISP can also perform algorithm optimization on image noise, brightness, and skin tone.
  • ISP can also optimize the exposure, color temperature and other parameters of the shooting scene.
  • the ISP may be located in the camera 1393.
  • the camera 1393 is used to capture still images or video.
  • the object is projected through the lens to generate an optical image onto the photosensitive element.
  • the photosensitive element may be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor.
  • CMOS complementary metal-oxide-semiconductor
  • the photosensitive element converts the optical signal into an electrical signal, and then transmits the electrical signal to the ISP to convert it into a digital image signal.
  • the ISP outputs the digital image signal to the DSP for processing.
  • DSP converts digital image signals into standard RGB, YUV and other formats of image signals.
  • the electronic device 1300 may include 1 or N cameras 1393 , where N is a positive integer greater than 1.
  • a digital signal processor is used to process digital signals, in addition to processing digital image signals, it can also process other digital signals. For example, when the electronic device 1300 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy, and the like.
  • Video codecs are used to compress or decompress digital video.
  • the electronic device 1300 may support one or more video codecs. In this way, the electronic device 1300 can play or record videos in various encoding formats, such as: Moving Picture Experts Group (moving picture experts group, MPEG) 1, MPEG2, MPEG3, MPEG4 and so on.
  • MPEG Moving Picture Experts Group
  • MPEG2 Moving picture experts group
  • MPEG3 Moving Picture Experts Group
  • the NPU is a neural-network (NN) computing processor.
  • NN neural-network
  • Applications such as intelligent cognition of the electronic device 1300 can be implemented through the NPU, such as image recognition, face recognition, speech recognition, text understanding, and the like.
  • the external memory interface 1320 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 1300.
  • the external memory card communicates with the processor 1310 through the external memory interface 1320 to realize the data storage function. For example to save files like music, video etc in external memory card.
  • Internal memory 1321 may be used to store computer executable program code, which includes instructions.
  • the processor 1310 executes various functional applications and data processing of the electronic device 1300 by executing the instructions stored in the internal memory 1321 .
  • the internal memory 1321 may include a storage program area and a storage data area.
  • the storage program area can store an operating system, an application program required for at least one function (such as a sound playback function, an image playback function, etc.), and the like.
  • the storage data area may store data (such as audio data, phone book, etc.) created during the use of the electronic device 1300 and the like.
  • the internal memory 1321 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, universal flash storage (UFS), and the like.
  • the electronic device 1300 may implement audio functions through an audio module 1370, a speaker 1370A, a receiver 1370B, a microphone 1370C, an earphone interface 1370D, and an application processor. Such as music playback, recording, etc.
  • the audio module 1370 is used for converting digital audio information into analog audio signal output, and also for converting analog audio input into digital audio signal. Audio module 1370 may also be used to encode and decode audio signals. In some embodiments, the audio module 1370 may be provided in the processor 1310 , or some functional modules of the audio module 1370 may be provided in the processor 1310 .
  • Speaker 1370A also referred to as “speaker” is used to convert audio electrical signals into sound signals.
  • Electronic device 130 can listen to music through speaker 1370A, or listen to hands-free calls.
  • the receiver 1370B also referred to as "earpiece" is used to convert audio electrical signals into sound signals.
  • the voice can be answered by placing the receiver 1370B close to the human ear.
  • Microphone 1370C also called “microphone”, “microphone”, is used to convert sound signals into electrical signals.
  • the user can make a sound by approaching the microphone 1370C through the human mouth, and input the sound signal into the microphone 1370C.
  • the electronic device 1300 may be provided with at least one microphone 1370C.
  • the electronic device 1300 can be provided with two microphones 1370C, which can implement a noise reduction function in addition to collecting sound signals.
  • the electronic device 1300 may also be provided with three, four or more microphones 1370C to collect sound signals, reduce noise, identify sound sources, and implement directional recording functions.
  • the headphone jack 1370D is used to connect wired headphones.
  • the earphone interface 1370D can be a USB interface 1330, or can be a 3.5mm open mobile terminal platform (OMTP) standard interface, a cellular telecommunications industry association of the USA (CTIA) standard interface.
  • OMTP open mobile terminal platform
  • CTIA cellular telecommunications industry association of the USA
  • the pressure sensor 1380A is used to sense pressure signals, and can convert the pressure signals into electrical signals.
  • pressure sensor 1380A may be provided on display screen 1394 .
  • the capacitive pressure sensor may be comprised of at least two parallel plates of conductive material. When a force is applied to the pressure sensor 180A, the capacitance between the electrodes changes.
  • the electronic device 1300 determines the intensity of the pressure according to the change in capacitance. When a touch operation acts on the display screen 1394, the electronic device 1300 detects the intensity of the touch operation according to the pressure sensor 1380A.
  • the electronic device 1300 can also calculate the touched position according to the detection signal of the pressure sensor 1380A.
  • touch operations acting on the same touch position but with different touch operation intensities may correspond to different operation instructions. For example, when a touch operation whose intensity is less than the first pressure threshold acts on the short message application icon, the instruction for viewing the short message is executed. When a touch operation with a touch operation intensity greater than or equal to the first pressure threshold acts on the short message application icon, the instruction to create a new short message is executed.
  • the gyro sensor 1380B may be used to determine the motion attitude of the electronic device 1300 .
  • the angular velocity of electronic device 1300 about three axes ie, x, y, and z axes
  • the gyro sensor 1380B can be used for image stabilization.
  • the gyro sensor 180B detects the shaking angle of the electronic device 1300, calculates the distance that the lens module needs to compensate according to the angle, and allows the lens to counteract the shaking of the electronic device 1300 through reverse motion to achieve anti-shake.
  • the gyro sensor 1380B can also be used for navigation and somatosensory game scenarios.
  • Air pressure sensor 1380C is used to measure air pressure.
  • the electronic device 1300 calculates the altitude through the air pressure value measured by the air pressure sensor 180C to assist in positioning and navigation.
  • Magnetic sensor 1380D includes a Hall sensor.
  • the electronic device 1300 can detect the opening and closing of the flip holster using the magnetic sensor 1380D.
  • the electronic device 1300 can detect the opening and closing of the flip according to the magnetic sensor 1380D. Further, according to the detected opening and closing state of the leather case or the opening and closing state of the flip cover, characteristics such as automatic unlocking of the flip cover are set.
  • the acceleration sensor 1380E can detect the magnitude of the acceleration of the electronic device 1300 in various directions (generally three axes).
  • the magnitude and direction of gravity can be detected when the electronic device 1300 is stationary. It can also be used to identify the posture of electronic devices, and can be used in horizontal and vertical screen switching, pedometers and other applications.
  • the electronic device 1300 can measure the distance through infrared or laser. In some embodiments, when shooting a scene, the electronic device 130 can use the distance sensor 1380F to measure the distance to achieve fast focusing.
  • Proximity light sensor 1380G may include, for example, light emitting diodes (LEDs) and light detectors, such as photodiodes.
  • the light emitting diodes may be infrared light emitting diodes.
  • the electronic device 1300 emits infrared light to the outside through light emitting diodes.
  • Electronic device 1300 uses photodiodes to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it may be determined that there is an object near the electronic device 1300 . When insufficient reflected light is detected, the electronic device 1300 may determine that there is no object near the electronic device 1300 .
  • the electronic device 1300 can use the proximity light sensor 1380G to detect that the user holds the electronic device 1300 close to the ear to talk, so as to automatically turn off the screen to save power.
  • the proximity light sensor 1380G can also be used in holster mode, pocket mode automatically unlocks and locks the screen.
  • the ambient light sensor 1380L is used to sense ambient light brightness.
  • the electronic device 1300 can adaptively adjust the brightness of the display screen 1394 according to the perceived ambient light brightness.
  • the ambient light sensor 1380L can also be used to automatically adjust the white balance when taking pictures.
  • the ambient light sensor 1380L can also cooperate with the proximity light sensor 1380G to detect whether the electronic device 1300 is in the pocket to prevent accidental touch.
  • the fingerprint sensor 1380H is used to collect fingerprints.
  • the electronic device 1300 can use the collected fingerprint characteristics to realize fingerprint unlocking, accessing application locks, taking photos with fingerprints, answering incoming calls with fingerprints, and the like.
  • the temperature sensor 1380J is used to detect the temperature.
  • the electronic device 1300 uses the temperature detected by the temperature sensor 1380J to execute a temperature processing strategy. For example, when the temperature reported by the temperature sensor 1380J exceeds a threshold value, the electronic device 1300 performs performance reduction of the processor located near the temperature sensor 1380J in order to reduce power consumption and implement thermal protection.
  • the electronic device 1300 when the temperature is lower than another threshold, the electronic device 1300 heats the battery 1342 to avoid abnormal shutdown of the electronic device 1300 due to low temperature.
  • the electronic device 1300 boosts the output voltage of the battery 1342 to avoid abnormal shutdown caused by low temperature.
  • Touch sensor 1380K also called “touch panel”.
  • the touch sensor 1380K can be disposed on the display screen 1394, and the touch sensor 1380K and the display screen 1394 form a touch screen, also called a "touch screen”.
  • the touch sensor 1380K is used to detect touch operations on or near it.
  • the touch sensor can pass the detected touch operation to the application processor to determine the type of touch event.
  • Visual output related to touch operations may be provided through display screen 1394 .
  • the touch sensor 1380K may also be disposed on the surface of the electronic device 1300 , which is different from the location where the display screen 1394 is located.
  • the bone conduction sensor 1380M can acquire vibration signals.
  • the bone conduction sensor 1380M can acquire the vibration signal of the vibrating bone mass of the human voice.
  • the bone conduction sensor 1380M can also contact the pulse of the human body and receive the blood pressure beating signal.
  • the bone conduction sensor 1380M can also be disposed in the earphone, combined with the bone conduction earphone.
  • the audio module 1370 can analyze the voice signal based on the vibration signal of the vocal vibration bone block obtained by the bone conduction sensor 1380M, and realize the voice function.
  • the application processor can analyze the heart rate information based on the blood pressure beat signal obtained by the bone conduction sensor 1380M, and realize the function of heart rate detection.
  • the keys 1390 include a power-on key, a volume key, and the like. Keys 1390 may be mechanical keys. It can also be a touch key.
  • the electronic device 1300 may receive key inputs and generate key signal inputs related to user settings and function control of the electronic device 1300 .
  • Motor 1391 can generate vibrating cues.
  • the motor 1391 can be used for incoming call vibration alerts, and can also be used for touch vibration feedback.
  • touch operations acting on different applications can correspond to different vibration feedback effects.
  • the motor 1391 can also correspond to different vibration feedback effects for touch operations on different areas of the display screen 1394 .
  • Different application scenarios for example: time reminder, receiving information, alarm clock, games, etc.
  • the touch vibration feedback effect can also support customization.
  • the indicator 1392 can be an indicator light, which can be used to indicate the charging status, the change of power, and can also be used to indicate messages, missed calls, notifications, and the like.
  • the SIM card interface 1395 is used to connect a SIM card.
  • the SIM card can be inserted into the SIM card interface 1395 or pulled out from the SIM card interface 1395 to achieve contact and separation with the electronic device 1300 .
  • the electronic device 1300 may support 1 or N SIM card interfaces, where N is a positive integer greater than 1.
  • the SIM card interface 1395 can support Nano SIM card, Micro SIM card, SIM card and so on. Multiple cards can be inserted into the same SIM card interface 1395 at the same time. Multiple cards can be of the same type or different.
  • the SIM card interface 1395 can also be compatible with different types of SIM cards.
  • the SIM card interface 1395 is also compatible with external memory cards.
  • the electronic device 1300 interacts with the network through the SIM card to implement functions such as call and data communication.
  • the electronic device 1300 employs an eSIM, ie: an embedded SIM card.
  • the eSIM card can be embedded in the electronic device 1300 and cannot be separated from the electronic device 1300 .
  • the software system of the electronic device 1300 may adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture.
  • the embodiments of the present invention take the Android system with a layered architecture as an example to illustrate the software structure of the electronic device 1300 as an example.
  • FIG. 14 is a block diagram of a software structure of an electronic device 1300 according to an embodiment of the present invention.
  • the layered architecture divides the software into several layers, and each layer has a clear role and division of labor. Layers communicate with each other through software interfaces.
  • the Android system is divided into four layers, which are, from top to bottom, an application layer, an application framework layer, an Android runtime (Android runtime) and a system library, and a kernel layer.
  • the application layer can include a series of application packages.
  • the application package can include applications such as camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, dial-up APP, and smooth call.
  • the application framework layer provides an application programming interface (application programming interface, API) and a programming framework for applications in the application layer.
  • the application framework layer includes some predefined functions.
  • the application framework layer may include a window manager, a content provider, a view system, a telephony manager, a resource manager, a notification manager, and the like.
  • a window manager is used to manage window programs.
  • the window manager can get the size of the display screen, determine whether there is a status bar, lock the screen, take screenshots, etc.
  • Content providers are used to store and retrieve data and make these data accessible to applications.
  • Data can include videos, images, audio, calls made and received, browsing history and bookmarks, phone book, etc.
  • the view system includes visual controls, such as controls for displaying text, controls for displaying pictures, and so on. View systems can be used to build applications.
  • a display interface can consist of one or more views.
  • the display interface including the short message notification icon may include a view for displaying text and a view for displaying pictures.
  • the phone manager is used to provide the communication function of the electronic device 1300 .
  • the management of call status including connecting, hanging up, etc.).
  • the resource manager provides various resources for the application, such as localization strings, icons, pictures, layout files, video files, etc.
  • the notification manager enables applications to display notification information in the status bar, which can be used to convey notification-type messages, and can disappear automatically after a brief pause without user interaction. For example, the notification manager is used to notify download completion, message reminders, etc.
  • the notification manager can also display notifications in the status bar at the top of the system in the form of graphs or scroll bar text, such as notifications of applications running in the background, and notifications on the screen in the form of dialog windows. For example, text information is prompted in the status bar, a prompt sound is issued, the electronic device vibrates, and the indicator light flashes.
  • Android Runtime includes core libraries and a virtual machine. Android runtime is responsible for scheduling and management of the Android system.
  • the core library consists of two parts: one is the function functions that the java language needs to call, and the other is the core library of Android.
  • the application layer and the application framework layer run in virtual machines.
  • the virtual machine executes the java files of the application layer and the application framework layer as binary files.
  • the virtual machine is used to perform functions such as object lifecycle management, stack management, thread management, safety and exception management, and garbage collection.
  • a system library can include multiple functional modules. For example: surface manager (surface manager), media library (Media Libraries), 3D graphics processing library (eg: OpenGL ES), 2D graphics engine (eg: SGL), etc.
  • surface manager surface manager
  • media library Media Libraries
  • 3D graphics processing library eg: OpenGL ES
  • 2D graphics engine eg: SGL
  • the Surface Manager is used to manage the display subsystem and provides a fusion of 2D and 3D layers for multiple applications.
  • the media library supports playback and recording of a variety of commonly used audio and video formats, as well as still image files.
  • the media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.
  • the 3D graphics processing library is used to implement 3D graphics drawing, image rendering, compositing, and layer processing.
  • 2D graphics engine is a drawing engine for 2D drawing.
  • the kernel layer is the layer between hardware and software.
  • the kernel layer contains at least display drivers, camera drivers, audio drivers, and sensor drivers.
  • the workflow of the software and hardware of the electronic device 1300 is exemplarily described below with reference to a call scenario.
  • the dialing APP of the calling terminal initiates a cellular call
  • the dialing APP sends corresponding data to the mobile communication module 1050
  • the mobile communication module 1350 generates an Invite message through the modulator
  • the Invite message is converted into electromagnetic waves through the antenna 1 and radiated out.
  • the Invite message is transmitted to the operator network through the wireless base station, and the operator network then transmits the Invite message to the called terminal.
  • the called terminal receives the electromagnetic wave through the antenna 1, and demodulates the electromagnetic wave through the demodulator to obtain the corresponding call data.
  • the telephone manager of the called terminal notifies the dial-up APP to connect the call.
  • Embodiments of the present application further provide a computer-readable storage medium, where the computer-readable storage medium stores a computer program (also referred to as an instruction or code), and when the computer program is run, implements the steps in the foregoing method embodiments.
  • a computer program also referred to as an instruction or code
  • An embodiment of the present application provides a computer program product, where the computer program product includes a computer program (also referred to as an instruction or code), and when the computer program runs on an electronic device, enables the electronic device to implement the steps in the above-mentioned method embodiments .
  • a computer program also referred to as an instruction or code
  • Embodiments of the present application further provide a chip system, where the chip system includes a processor, the processor is coupled to a memory, and the processor executes a computer program stored in the memory to implement the steps in the above method embodiments.
  • the chip system may be a single chip or a chip module composed of multiple chips.
  • the chip system may further include a memory, and the memory is connected to the processor through a circuit or a wire.
  • the chip further includes a communication interface.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请实施例公开了一种通话方法、系统以及相关装置,在满足一定条件时(例如,被叫寻呼失败)通过网络设备将针对目标号码的第一呼叫请求,前转至VoIP服务器,该第一呼叫请求为主叫终端针对目标号码发起的呼叫请求,该目标号码已开通呼叫转移服务;VoIP服务器再解析来自网络设备的前转消息,得到被叫号码,并根据被叫号码查找与其关联的被叫终端后,向被叫终端发起VoIP呼叫,使得被叫在无服务状态下(例如,无运营商网络信号或处于飞行模式等),仍然能接收到主叫的呼叫请求。

Description

通话方法、系统和相关装置
本申请要求于2020年07月31日提交国家知识产权局、申请号为202010762039.2、申请名称为“通话方法、系统和相关装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,尤其涉及一种通话方法、系统及相关装置。
背景技术
随着通信技术的不断发展,运营商网络的覆盖面也越来越广。
然而,还是会存在运营商网络信号较差,或者完全没有信号的区域。例如,地下室、地下通道、楼栋密集的低层和楼栋高层等区域。当被叫终端(例如,手机)处于运营商网络信号较差或者没有信号的区域时,可能导致被叫终端无法接收到主叫终端的呼叫请求,从而导致主叫终端无法和被叫终端间建立通话连接。
此外,双卡单通的场景也可能会导致主叫终端和被叫终端无法建立通话连接。例如,被叫终端(例如,手机)支持双卡,双卡公用一套射频资源,无法做到同发。如果其中一张卡正在通话,另一张卡会由于无射频资源而无法接收到主叫终端的呼叫请求,进而导致主叫终端和被叫终端无法建立通话连接。另外,也会存在其它原因导致被叫终端无法收到主叫终端的呼叫请求,例如,被叫终端处于飞行模式。
发明内容
本申请实施例提供一种通话方法、系统及相关装置,以解决由于运营商网络信号问题或者其它原因(例如,双卡单通、飞行模式等),导致被叫终端无法接收到主叫终端的呼叫请求的问题。
第一方面,本申请实施例提供一种通话系统,该系统包括第一终端设备、网络设备、VoIP服务器和第二终端设备,第二终端设备安装有作为VoIP客户端的第一应用程序。
其中,第一终端设备用于在检测到第一操作后,响应于第一操作,向网络设备发送第一呼叫请求,第一呼叫请求为针对目标号码发起的呼叫请求;网络设备用于在接收到第一呼叫请求后,根据第一呼叫请求,向VoIP服务器发送第一消息,第一消息携带有目标号码,且目标号码已开通呼叫转移服务;VoIP服务器用于在接收到第一消息后,根据第一消息,向与目标号码关联的第二终端设备发送第二呼叫请求;第二终端设备用于接收第二呼叫请求。第二呼叫请求为VoIP呼叫请求。
本申请实施例中,网络设备根据已开通呼叫转移服务的目标号码的呼叫请求,向VoIP服务器发送携带有目标号码的第一消息,即网络设备将第一呼叫请求前转至VoIP服务器,VoIP服务器根据第一消息中的目标号码,向目标号码关联的第二终端设备发起VoIP呼叫,使得被叫在无服务状态下(例如,无运营商网络信号或处于飞行模式等),仍然能接收到主叫的呼叫请求。
示例性地,目标号码开通的呼叫转移服务包括不可及呼叫转移服务,目标号码为 第二终端设备的SIM卡号码。第一终端设备针对目标号码发起蜂窝呼叫请求(即第一呼叫请求)。蜂窝呼叫请求传递至网络设备之后,网络设备对目标号码进行寻呼,此时,第二终端设备由于飞行模式或者无运营商网络信号等原因,SIM卡处于无服务状态,导致网络设备寻呼失败。寻呼失败时,网络设备生成携带有目标号码的第一消息,将第一消息发送给VoIP服务器。VoIP服务器再通过解析第一消息,得到目标号码,并通过目标号码查找到与其关联的第二终端设备后,向第二终端设备发起VoIP呼叫。这样,第二终端设备在SIM卡无服务状态下仍然可以接收到第一终端发起的呼叫。
其中,网络设备可以是指运营商网络设备,第一消息可以是指前转消息,例如为Invite消息。
在第一方面的一些可能的实现方式中,呼叫转移服务包括不可及呼叫转移服务,此时,网络设备具体用于根据第一呼叫请求,对目标号码进行寻呼;当寻呼失败,且目标号码预先设置的不可及呼叫转移号码为预设号码,则根据预设号码和第一呼叫请求,生成第一消息;向VoIP服务器发送第一消息。
在第一方面的一些可能的实现方式中,目标号码开通的呼叫转移服务也可以包括无条件呼叫转移服务、遇忙呼叫转移服务和无应答呼叫转移服务中的至少一种。此时,网络设备在接收到针对目标号码的呼叫请求时,并判定满足呼叫转移条件时,则向VoIP服务器发送携带目标号码的第一消息。
在第一方面的一些可能的实现方式中,该VoIP服务器包括第一VoIP服务器和第二VoIP服务器。
其中,第一VoIP服务器用于接收来自网络设备的第一消息,解析第一消息,得到目标号码,向第二VoIP服务器发送目标号码;第二VoIP服务器用于接收来自第一VoIP服务器的目标号码;查找与目标号码关联的VoIP通信信息,根据VoIP通信信息,向第二终端设备发送第二呼叫请求。
在该实现方式中,第一VoIP服务器可以为VoIP网关。在另一些实现方式中,第一VoIP服务器和第二VoIP服务器也可以集成在同一个服务器上。
在第一方面的一些可能的实现方式中,VoIP通信信息包括以下至少一项:第二终端设备的物理地址,第二终端设备的移动设备识别码(Mobile Equipment Identifier,MEID),第二终端设备的国际移动设备识别码((International Mobile Equipment Identity,IMEI)。这些信息可以作为第二终端设备的设备唯一标识信息。此时,VoIP服务器可以通过这些设备唯一标识信息向第二终端设备发起VoIP呼叫。
当然,在其它一些实现方式中,VoIP通信信息还可以表现为其它形式,例如,VoIP通信信息可以包括VoIP号码。
第二方面,本申请实施例提供一种通话系统,该系统包括第一终端设备和第二终端设备,第二终端设备安装有作为VoIP客户端的第一应用程序。
其中,第一终端设备用于检测第一操作后,响应于第一操作,向网络设备发送第一呼叫请求,第一呼叫请求为针对目标号码发起的呼叫请求;
第二终端设备用于接收来自VoIP服务器的第二呼叫请求,第二呼叫请求为VoIP服务器根据来自网络设备的第一消息,向与目标号码关联的第二终端设备发送的VoIP呼叫请求,第一消息为网络设备根据第一呼叫请求,向VoIP服务器发送的消息,第一 消息携带有目标号码,目标号码已开通呼叫转移服务。
可以理解的是,第一操作可以是指用于触发针对目标号码的呼叫的用户操作,该操作可以包括一个动作,也可以包括多个动作。例如,该第一操作为用户的拨号操作。
目标号码开通的呼叫转移服务包括以下至少一项:不可及呼叫转移、无条件呼叫转移、遇忙呼叫转移和无应答呼叫转移。
在第二方面的一些可能的实现方式中,第二终端设备在接收第二呼叫请求之后,还用于:通过第一应用程序响应于第二呼叫请求,显示第一界面,第一界面包括以下至少一项:第一终端设备的号码、第一按钮和第二按钮;其中,第一按钮用于接听呼叫,第二按钮用于拒接呼叫。例如,该第一界面为来电界面。
在第二方面的一些可能的实现方式中,第二终端设备还用于:当检测到针对第一按钮的第二操作后,响应于第二操作,通过第一应用程序与第一终端设备建立通话连接。例如,第二终端设备显示来电界面,当第二终端设备接收到用户的接听操作(即第二操作),则与第一终端设备建立通话连接。
在第二方面的一些可能的实现方式中,第一终端设备在检测到第一操作后,还用于:响应于第一操作,显示第二界面,第二界面包括以下至少一项:目标号码和第三按钮;其中,第三按钮用于挂断呼叫。此时,第一终端设备在拨打电话的同时,还显示拨号界面(即第二界面)。
在第二方面的一些可能的实现方式中,第一终端设备安装有作为VoIP客户端的第二应用程序,第一终端设备还用于当确定符合目标条件,挂断第一呼叫请求对应的呼叫,通过第二应用程序向VoIP服务器发送第三呼叫请求,第三呼叫请求为针对目标号码的VoIP呼叫请求;
第二终端设备还用于接收来自VoIP服务器的第三呼叫请求。
在该实现方式中,在满足目标条件时,第一终端设备可以自动挂断当前的蜂窝呼叫,并自动向目标号码发起VoIP呼叫,用户体验体验较高。
在第二方面的一些可能的实现方式中,第一终端设备在确定符合目标条件之后,还用于:在第二界面上显示第一提示信息,第一提示信息用于提示是否切换至VoIP通话;检测到第三操作,第三操作用于指示第一终端设备切换至VoIP通话;响应于第三操作,进入挂断第一呼叫请求对应的呼叫,通过第二应用程序向VoIP服务器发送第三呼叫请求的步骤。
在该实现方式中,第二界面可以为拨号界面,当第一终端设备确定符合目标条件后,可以在拨号界面上提示用户是否切换VoIP通话。第一终端设备接收用户的确认操作(即第三操作),则认为用户确认切换至VoIP通话,则针对目标号码发起VoIP呼叫。
在第二方面的一些可能的实现方式中,第一终端设备在挂断第一呼叫请求对应的呼叫,通过第二应用程序向VoIP服务器发送第三呼叫请求之后,还用于:在第二界面显示第二提示信息,第二提示信息用于提示已切换至VoIP通话。在该实现方式中,在切换到VoIP通话之后,还可以在拨号界面上提示用户已切换到VoIP通话,提高用户体验。
在第二方面的一些可能的实现方式中,第一终端设备具体用于:确定是否符合第 一预设条件;当符合第一预设条件,则获取目标号码关联的相关信息;根据相关信息,确定是否符合第二预设条件;当符合第二预设条件,则确定符合目标条件;当不符合第一预设条件和/或不符合第二预设条件,则确定不符合目标条件。
在第二方面的一些可能的实现方式中,第一终端设备具体用于:当接收到网络设备返回的第二消息,确定符合第一预设条件,第二消息用于描述目标号码寻呼失败;或者,当定时器检测到的时间超出预设时间阈值,确定符合第一预设条件,定时器用于检测呼叫发起到振铃的时间;当未接收到网络设备返回的第二消息和/或定时器检测到的时间未超出预设时间阈值,确定不符合第一预设条件。
其中,第二消息可以是指包括网络设备返回的网络错误码等,根据网络错误码,第一终端设备可以得知目标号码寻呼失败。定时器可以是指T-Alerting定时器。
在第二方面的一些可能的实现方式中,第一终端设备具体用于:通过第二应用程序,向VoIP服务器发送查询请求,查询请求携带有目标号码;接收来自VoIP服务器的目标号码关联的相关信息。
在第二方面的一些可能的实现方式中,相关信息包括第一信息、第二信息、第三信息和第四信息,第一信息用于描述VoIP服务器上是否存储有目标号码,第二信息用于描述第一应用程序是否处于在线状态,第三信息用于描述第二终端的运营商网络信号情况,第四信息用于描述目标号码是否开通呼叫转移服务;
第一终端设备具体用于:当VoIP服务器上存储有目标号码,第一应用程序处于在线状态,第二终端的运营商网络信号为无服务状态,且目标号码未开通呼叫转移服务,确定符合第二预设条件。
在第二方面的一些可能的实现方式中,在检测到第一操作之后,第一终端设备还用于:显示第三界面,第三界面包括用于提示用户选择通话方式的第三提示信息,以及蜂窝通话选项和VoIP通话选项;当检测到针对蜂窝通话选项的操作,进入响应于第一操作,向网络设备发送第一呼叫请求的步骤;当检测到针对VoIP通话选项的操作,通过第二应用程序向VoIP服务器发送第四呼叫请求,第四呼叫请求用于指示VoIP服务器向与目标号码关联的第二终端设备发起VoIP呼叫,第四呼叫请求为针对目标号码的VoIP呼叫请求。
在该实现方式中,第一终端设备可以在用户触发针对目标号码的蜂窝呼叫之前,提示用户选择通话方式。并且,进一步地,第一终端设备还可以先进行起呼判决流程,确定是否可以向目标号码发起蜂窝呼叫。另外,第一终端设备还可以查询目标号码关联的第二终端设备是否支持VoIP通话等信息,确定是否可以向目标号码发起VoIP呼叫。最后,根据这些判断结果,给出通话方式选择提示,以提示用户选择通话方式。
在第二方面的一些可能的实现方式中,第二终端设备满足以下至少一项:目标号码与第一应用程序的账号绑定,目标号码为第二终端设备的SIM卡号码,第二终端设备的SIM卡处于无服务状态。
第二终端设备与目标号码关联。具体地,目标号码可以是第二终端设备的SIM卡号码;或者目标号码可以与第一应用程序的账号绑定,此时,目标号码可以不是第二终端设备的SIM卡号码。
第二终端设备的SIM卡处于无服务状态的原因可能是:无运营商网络信号,运营 商网络信号较差,处于飞行模式,双卡单通场景等。
第三方面,本申请实施例提供一种通话方法,应用于VoIP服务器,该方法可以包括:
接收来自网络设备的第一消息,第一消息携带有目标号码,第一消息为网络设备在接收到来自第一终端设备的第一呼叫请求后,根据第一呼叫请求,向VoIP服务器发送的消息,目标号码已开通呼叫转移服务,第一呼叫请求为第一终端设备针对目标号码发起的呼叫请求;根据第一消息,向与目标号码关联的第二终端设备发送第二呼叫请求。
在第三方面的一些可能的实现方式中,上述根据第一消息,向与目标号码关联的第二终端设备发送第二呼叫请求的过程可以包括:解析第一消息,得到目标号码;根据目标号码,查找与目标号码关联的VoIP通信信息;根据VoIP通信信息,向第二终端设备发送第二呼叫请求。
在第三方面的一些可能的实现方式中,VoIP通信信息包括以下至少一项:第二终端设备的物理地址,第二终端设备的移动设备识别码,第二终端设备的国际移动设备识别码。
在第三方面的一些可能的实现方式中,该方法还包括:接收来自第一终端设备的第一注册请求,第一注册请求包括第一终端设备的号码、第二应用程序的账号和第一终端设备的设备标识信息,第二应用程序为第二终端设备上作为VoIP客户端的应用程序;
将第二应用程序的账号、第一终端设备的设备标识信息与第一终端设备的号码关联;
和/或,接收来自第二终端设备的第二注册请求,第二注册请求包括目标号码、第一应用程序的账号和第二终端设备的设备标识信息,第一应用程序为第二终端设备上作为VoIP客户端的应用程序;将第一应用程序的账号、第二终端设备的设备标识信息与目标号码关联。
其中,设备标识信息可以是设备的物理地址、IMEI和MEID等信息。
第四方面,本申请实施例提供一种通话方法,应用于第一终端设备,第一终端设备安装有作为VoIP客户端的第二应用程序,该方法包括:
检测到第一操作;响应于第一操作,向网络设备发送第一呼叫请求,第一呼叫请求为针对目标号码发起的呼叫请求;当确定符合目标条件,挂断第一呼叫请求对应的呼叫(例如,可以挂断针对目标号码的蜂窝呼叫),通过第二应用程序向VoIP服务器发送第三呼叫请求,第三呼叫请求为针对目标号码的VoIP呼叫请求,第三呼叫请求用于指示VoIP服务器向与目标号码关联的第二终端设备发起VoIP呼叫。
本申请实施例中,第一终端设备在确定符合目标条件时,例如,被叫寻呼失败时,自动挂断当前的蜂窝呼叫,并在确定出目标号码关联的第二终端设备支持VoIP通话时,自动针对目标号码发起VoIP呼叫,使得被叫即使处于飞行模式或者无运营商网络信号等情况下,仍然能接收到第一终端设备的呼叫请求。另外,还根据目标条件来自动切换通话方式,提高了用户体验。
在第四方面的一些可能的实现方式中,在检测到第一操作之后,该方法还包括: 响应于第一操作,显示第二界面,第二界面包括:目标号码和第三按钮;其中,第三按钮用于挂断呼叫。
在第四方面的一些可能的实现方式中,在确定符合目标条件之后,该方法还可以包括:在第二界面上显示第一提示信息,第一提示信息用于提示是否切换至VoIP通话;检测到第三操作,第三操作用于指示第一终端设备切换至VoIP通话;响应于第三操作,进入挂断第一呼叫请求对应的呼叫,通过第二应用程序向VoIP服务器发送针对目标号码的第三VoIP呼叫请求的步骤。
在第四方面的一些可能的实现方式中,在挂断第一呼叫请求对应的呼叫,通过第二应用程序向VoIP服务器发送针对目标号码的第三呼叫请求之后,该方法还包括:在第二界面显示第二提示信息,第二提示信息用于提示已切换至VoIP通话。
在第四方面的一些可能的实现方式中,确定是否符合目标条件的过程可以包括:确定是否符合第一预设条件;当符合第一预设条件,则获取目标号码关联的相关信息;根据相关信息,确定是否符合第二预设条件;当符合第二预设条件,则确定符合目标条件;当不符合第一预设条件和/或不符合第二预设条件,则确定不符合目标条件。
在第四方面的一些可能的实现方式中,确定是否符合第一预设条件的过程可以包括:
当接收到网络设备返回的第二消息,确定符合第一预设条件,第二消息用于描述目标号码寻呼失败;或者,当定时器检测到的时间超出预设时间阈值,确定符合第一预设条件,定时器用于检测呼叫发起到振铃的时间;当未接收到网络设备返回的第二消息和/或定时器检测到的时间未超出预设时间阈值,确定不符合第一预设条件。
在第四方面的一些可能的实现方式中,获取目标号码关联的相关信息的过程可以包括:通过第二应用程序,向VoIP服务器发送查询请求,查询请求携带有目标号码;接收来自VoIP服务器的目标号码关联的相关信息。
在第四方面的一些可能的实现方式中,该相关信息可以包括第一信息、第二信息、第三信息和第四信息,第一信息用于描述VoIP服务器上是否存储有目标号码,第二信息用于描述第一应用程序是否处于在线状态,第三信息用于描述第二终端的运营商网络信号情况,第四信息用于描述目标号码是否开通呼叫转移服务;
此时,根据相关信息,确定是否符合第二预设条件的过程可以包括:当VoIP服务器上存储有目标号码,第一应用程序处于在线状态,第二终端的运营商网络信号为无服务状态,且目标号码未开通呼叫转移服务,确定符合第二预设条件;其中,第二终端设备上安装有作为VoIP客户端的第一应用程序。
在第四方面的一些可能的实现方式中,在检测到第一操作之后,该方法还包括:显示第三界面,第三界面包括用于提示用户选择通话方式的第三提示信息,以及蜂窝通话选项和VoIP通话选项;当检测到针对蜂窝通话选项的操作,进入响应于第一操作,向网络设备发送第一呼叫请求的步骤;当检测到针对VoIP通话选项的操作,通过第二应用程序向VoIP服务器发送第四呼叫请求,第四呼叫请求为针对目标号码的VoIP呼叫请求,第四呼叫请求用于指示VoIP服务器向与目标号码关联的第二终端设备发起VoIP呼叫。
第五方面,本申请实施例提供一种通话系统,包括第一终端设备、VoIP服务器和 第二终端设备,第二终端设备安装有作为VoIP客户端的第一应用程序,第一终端设备安装有作为VoIP客户端的第二应用程序。
其中,第一终端设备用于检测到第一操作后,响应于第一操作,向网络设备发送第一呼叫请求,第一呼叫请求为针对目标号码发起的呼叫请求;当确定符合目标条件,则挂断第一呼叫请求对应的呼叫,通过第二应用程序向VoIP服务器发送第三呼叫请求,第三呼叫请求为针对目标号码的VoIP呼叫请求;VoIP服务器用于接收第三呼叫请求,向与目标号码关联的第二终端设备发送第三呼叫请求;第二终端设备用于通过第一应用程序接收第三呼叫请求。
在第五方面的一些可能的实现方式中,第一终端设备还用于:响应于第一操作,显示第二界面,第二界面包括:目标号码和第三按钮;其中,第三按钮用于挂断呼叫。
在第五方面的一些可能的实现方式中,第一终端设备还用于:当确定符合目标条件,在第二界面显示第一提示信息,第一提示信息用于提示是否切换至VoIP通话;检测到第三操作,第三操作用于指示第一终端设备切换至VoIP通话;响应于第三操作,进入挂断第一呼叫请求对应的呼叫,通过第二应用程序向VoIP服务器发送针对目标号码的第三VoIP呼叫请求的步骤。
在第五方面的一些可能的实现方式中,第一终端设备还用于:在第二界面显示第二提示信息,第二提示信息用于提示已切换至VoIP通话。
在第五方面的一些可能的实现方式中,第一终端设备具体用于:确定是否符合第一预设条件;当符合第一预设条件,则获取目标号码关联的相关信息;根据相关信息,确定是否符合第二预设条件;当符合第二预设条件,则确定符合目标条件;当不符合第一预设条件和/或不符合第二预设条件,则确定不符合目标条件。
在第五方面的一些可能的实现方式中,第一终端设备具体用于:当接收到网络设备返回的第二消息,确定符合第一预设条件,第二消息用于描述目标号码寻呼失败;或者,当定时器检测到的时间超出预设时间阈值,确定符合第一预设条件,定时器用于检测呼叫发起到振铃的时间;当未接收到网络设备返回的第二消息和/或定时器检测到的时间未超出预设时间阈值,确定不符合第一预设条件。
在第五方面的一些可能的实现方式中,第一终端设备具体用于:通过第二应用程序,向VoIP服务器发送查询请求,查询请求携带有目标号码;通过第二应用程序,接收来自VoIP服务器的目标号码对应的相关信息。
在第五方面的一些可能的实现方式中,该相关信息包括第一信息、第二信息、第三信息和第四信息,第一信息用于描述VoIP服务器上是否存储有目标号码,第二信息用于描述第一应用程序是否处于在线状态,第三信息用于描述第二终端的运营商网络信号情况,第四信息用于描述目标号码是否开通呼叫转移服务。
此时,第一终端设备具体用于:当VoIP服务器上存储有目标号码,第一应用程序处于在线状态,第二终端的运营商网络信号为无服务状态,且目标号码未开通呼叫转移服务,确定符合第二预设条件。
在第五方面的一些可能的实现方式中,第二终端设备还用于:通过第一应用程序,响应于第三呼叫请求,显示第一界面,第一界面包括以下至少一项:第一终端设备的号码、第一按钮和第二按钮;其中,第一按钮用于接听呼叫,第二按钮用于拒接呼叫。
在第五方面的一些可能的实现方式中,第二终端设备还用于:检测到针对第一按钮的第二操作;响应于第二操作,通过第一应用程序与第一终端设备建立VoIP通话连接。
在第五方面的一些可能的实现方式中,VoIP服务器还用于:接收来自第一终端设备的第一注册请求,第一注册请求包括第一终端设备的号码、第二应用程序的账号和第一终端设备的设备标识信息;将第二应用程序的账号、第一终端设备的设备标识信息与第一终端设备的号码关联;接收来自第二终端设备的第二注册请求,第二注册请求包括目标号码、第一应用程序的账号和第二终端设备的设备标识信息;将第一应用程序的账号、第二终端设备的设备标识信息与目标号码关联。
在第五方面的一些可能的实现方式中,第一终端设备还用于:显示第三界面,第三界面包括用于提示用户选择通话方式的第三提示信息,以及蜂窝通话选项和VoIP通话选项;当检测到针对蜂窝通话选项的操作,进入响应于第一操作,向网络设备发送第一呼叫请求的步骤;当检测到针对VoIP通话选项的操作,通过第二应用程序向VoIP服务器发送第四呼叫请求,第四呼叫请求为针对目标号码的VoIP呼叫请求,第四呼叫请求用于指示VoIP服务器向与目标号码关联的第二终端设备发起VoIP呼叫。
第六方面,本申请实施例提供一种通话装置,应用于VoIP服务器,该装置可以包括:
接收模块,用于接收来自网络设备的第一消息,第一消息携带有目标号码,第一消息为网络设备在接收到来自第一终端设备的第一呼叫请求后,根据第一呼叫请求,向VoIP服务器发送的消息,目标号码已开通呼叫转移服务,第一呼叫请求为第一终端设备针对目标号码发起的呼叫请求;
VoIP呼叫模块,用于根据第一消息,向与目标号码关联的第二终端设备发送第二呼叫请求。
在第六方面的一些可能的实现方式中,上述VoIP呼叫模块具体用于:解析第一消息,得到目标号码;根据目标号码,查找与目标号码关联的VoIP通信信息;根据VoIP通信信息,向第二终端设备发送第二呼叫请求。
在第六方面的一些可能的实现方式中,VoIP通信信息包括以下至少一项:第二终端设备的物理地址,第二终端设备的移动设备识别码,第二终端设备的国际移动设备识别码。
在第六方面的一些可能的实现方式中,该装置还包括:注册模块,用于:接收来自第一终端设备的第一注册请求,第一注册请求包括第一终端设备的号码、第二应用程序的账号和第一终端设备的设备标识信息,第二应用程序为第二终端设备上作为VoIP客户端的应用程序;
将第二应用程序的账号、第一终端设备的设备标识信息与第一终端设备的号码关联;
和/或,接收来自第二终端设备的第二注册请求,第二注册请求包括目标号码、第一应用程序的账号和第二终端设备的设备标识信息,第一应用程序为第二终端设备上作为VoIP客户端的应用程序;将第一应用程序的账号、第二终端设备的设备标识信息与目标号码关联。
其中,设备标识信息可以是设备的物理地址、IMEI和MEID等信息。
上述通话装置具有实现上述第三方面的通话方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
第七方面,本申请实施例提供一种通话装置,应用于第一终端设备,第一终端设备安装有作为VoIP客户端的第二应用程序,该装置包括:
第一检测模块,用于检测到第一操作;
第一发送模块,用于响应于第一操作,向网络设备发送第一呼叫请求,第一呼叫请求为针对目标号码发起的呼叫请求;
切换模块,用于当确定符合目标条件,挂断第一呼叫请求对应的呼叫(例如,可以挂断针对目标号码的蜂窝呼叫),通过第二应用程序向VoIP服务器发送第三呼叫请求,第三呼叫请求为针对目标号码的VoIP呼叫请求,第三呼叫请求用于指示VoIP服务器向与目标号码关联的第二终端设备发起VoIP呼叫。
在第七方面的一些可能的实现方式中,该装置还包括:第一显示模块,用于响应于第一操作,显示第二界面,第二界面包括:目标号码和第三按钮;其中,第三按钮用于挂断呼叫。
在第七方面的一些可能的实现方式中,该装置还可以包括:
第一提示模块,用于在第二界面上显示第一提示信息,第一提示信息用于提示是否切换至VoIP通话;
第二检测模块,用于检测到第三操作,第三操作用于指示第一终端设备切换至VoIP通话;响应于第三操作,进入挂断第一呼叫请求对应的呼叫,通过第二应用程序向VoIP服务器发送针对目标号码的第三VoIP呼叫请求的步骤。
在第七方面的一些可能的实现方式中,该装置还包括:第二提示模块,用于在第二界面显示第二提示信息,第二提示信息用于提示已切换至VoIP通话。
在第七方面的一些可能的实现方式中,切换模块具体用于:确定是否符合第一预设条件;当符合第一预设条件,则获取目标号码关联的相关信息;根据相关信息,确定是否符合第二预设条件;当符合第二预设条件,则确定符合目标条件;当不符合第一预设条件和/或不符合第二预设条件,则确定不符合目标条件。
在第七方面的一些可能的实现方式中,切换模块具体用于:当接收到网络设备返回的第二消息,确定符合第一预设条件,第二消息用于描述目标号码寻呼失败;或者,当定时器检测到的时间超出预设时间阈值,确定符合第一预设条件,定时器用于检测呼叫发起到振铃的时间;当未接收到网络设备返回的第二消息和/或定时器检测到的时间未超出预设时间阈值,确定不符合第一预设条件。
在第七方面的一些可能的实现方式中,切换模块具体用于:通过第二应用程序,向VoIP服务器发送查询请求,查询请求携带有目标号码;接收来自VoIP服务器的目标号码关联的相关信息。
在第七方面的一些可能的实现方式中,该相关信息可以包括第一信息、第二信息、第三信息和第四信息,第一信息用于描述VoIP服务器上是否存储有目标号码,第二信息用于描述第一应用程序是否处于在线状态,第三信息用于描述第二终端的运营商网 络信号情况,第四信息用于描述目标号码是否开通呼叫转移服务;
此时,切换模块具体用于:当VoIP服务器上存储有目标号码,第一应用程序处于在线状态,第二终端的运营商网络信号为无服务状态,且目标号码未开通呼叫转移服务,确定符合第二预设条件;其中,第二终端设备上安装有作为VoIP客户端的第一应用程序。
在第七方面的一些可能的实现方式中,该装置还包括:第二显示模块,用于显示第三界面,第三界面包括用于提示用户选择通话方式的第三提示信息,以及蜂窝通话选项和VoIP通话选项;当检测到针对蜂窝通话选项的操作,进入响应于第一操作,向网络设备发送第一呼叫请求的步骤;当检测到针对VoIP通话选项的操作,通过第二应用程序向VoIP服务器发送第四呼叫请求,第四呼叫请求为针对目标号码的VoIP呼叫请求,第四呼叫请求用于指示VoIP服务器向与目标号码关联的第二终端设备发起VoIP呼叫。
上述通话装置具有实现上述第四方面的通话方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。
第八方面,本申请实施例提供一种终端设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如上述第三方面中任一项的方法。
第九方面,本申请实施例提供一种终端设备,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如上述第四方面中任一项的方法。
第十方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现如上述第三方面或者第四方面中任一项的方法。
第十一方面,本申请实施例提供一种芯片系统,芯片系统包括处理器,处理器与存储器耦合,处理器执行存储器中存储的计算机程序,以实现如上述第三方面或者第四方面中任一项的方法。芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。
第十二方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行上述第三方面或者第四方面中任一项所述的方法。
可以理解的是,上述第二方面至第十二方面的有益效果可以参见上述第一方面中的相关描述,且各个方面的有益效果可以相互参见,在此不再赘述。
附图说明
图1为现有通话网络架构示意框图;
图2为本申请实施例提供的通话网络架构示意图;
图3A为本申请实施例提供的通话场景示意图;
图3B为本申请实施例提供的飞行模式下的来电接听界面示意图;
图4A为本申请实施例提供的呼叫转移设置界面示意图;
图4B为本申请实施例提供的畅连通话号码设置示意图;
图5为本申请实施例提供的另一种通话网络架构示意图;
图6为本申请实施例提供的通话方法的一种交互示意图;
图7为本申请实施例提供的通话方法的另一种交互示意图;
图8A为本申请实施例提供的又一种通话场景示意图;
图8B~图8D为本申请实施例提供的通话界面示意图;
图9为本申请实施例提供的又一种通话网络架构示意图;
图10为本申请实施例提供的通话方法的又一种交互示意图;
图11为本申请实施例提供的又一种通话场景示意图;
图12为本申请实施例提供的通话方法的又一交互示意图;
图13为本申请实施例提供的电子设备1300的结构示意图;
图14为本申请实施例提供的电子设备1300的软件结构示意图。
具体实施方式
在介绍本申请实施例之前,首先对现有的通话网络架构进行说明。如图1所示,现有的通话网络架构包括主叫终端11、主叫侧网络13、被叫侧网络14和被叫终端12。
其中,上述主叫侧网络13是指主叫终端一侧的运营商网络或者主叫终端当前所在区域的运营商网络;上述被叫侧网络14是指被叫终端一侧的运营商网络或者被叫终端当前所在区域的运营商网络。
通常情况下,主叫终端11发起的呼叫请求会先传递至主叫侧网络13,再由主叫侧网络13传递至被叫侧网络14,最后由被叫侧网络14将呼叫请求传递至被叫终端12。
但是,如果被叫终端12所在区域的运营商网络信号不好(例如,低于预定的信号强度),或者完全没有运营商网络信号,亦或者是被叫终端12由于双卡单通场景导致被叫终端无可用的射频资源等原因,被叫侧网络14无法将呼叫请求送达至被叫终端12,导致呼叫失败。
针对上述问题,存在几种可能的解决方案:
1、小秘书服务
该服务在被叫终端接收不到主叫终端的呼叫请求时,可以通过短信的方式提醒被叫终端的用户有电话呼入。
然而,这种方式并不能实现主叫终端和被叫终端的互通。而且,被叫终端仍然需要等到有运营商网络信号时才能收到短信提醒。
2、VoWiFi(Voice over Wi-Fi)
VoWiFi是指通话终端通过Wi-Fi接入到运营商网络的ePDG(Evolved Packet Data Gateway)网元,以接入到运营商网络。ePDG网元是非可信Wi-Fi网络接入方式下的必备网元。
这种情况下,被叫终端通过VoWi-Fi接入到运营商网络,这样,在运营商网络信号不好,被叫终端仍然可以通过VoWi-Fi收到主叫终端的呼叫请求。但是,目前很多地方都没有部署VoWi-Fi。
3、基于OTT(Over The Top)的通话
OTT业务包括即时消息和基于IP的语音传输(Voice over Internet Protocl,VoIP)业务。
这种情况下,基于第三方即时通讯工具,主叫终端可以通过互联网主动向被叫终 端发起OTT通话,这样主叫终端和被叫终端之间也能实现互通。但是,主叫终端和被叫终端必须同时登陆OTT软件,并且需要互加好友,对于没有互加好友的无法发起OTT呼叫。作为示例而非限定,第三方即时通讯工具为微信时,当用户A无法打通用户B的蜂窝电话,用户A可以手动向用户B发起微信电话或微信视频。
可以看出,上述方案都存在一些问题,例如,没有实现主叫和被叫之间的互通、在寻呼失败时需要用户手动发起OTT通话等。
针对上述方案存在的一些问题,本申请实施例提供了几种通话解决方案,可以在被叫终端一侧的运营商网络信号不好,或者被叫终端一侧完全没有运营商网络信号,亦或者是被叫终端由于双卡单通场景导致被叫号码无可用的射频资源,或者,被叫终端处于飞行模式等情况下,仍然能够将主叫终端的呼叫请求传递到被叫终端,实现主叫终端和被叫终端间的通话连接。下面对本申请实施例提供的几种通话解决方案进行详细说明。
第一种通话解决方案
请参见图2,图2示出了本申请实施例提供的一种通话解决方案(下称“第一种通话解决方案”)的通话网络架构图。该通话网络架构可以包括主叫终端21、被叫终端22、主叫侧网络23(即主叫终端一侧的运营商网络)、被叫侧网络24(即被叫终端一侧的运营商网络)、VoIP网关25和VoIP服务器26。
通常情况下,主叫终端21发起的呼叫请求会依次通过主叫侧网络23、被叫侧网络24传递至被叫终端22,被叫终端22在接收到该呼叫请求之后,可以与该主叫终端建立通话连接。
在某些特殊场景下,例如,被叫侧网络24信号较差或者无信号,或者被叫终端22处于双卡单通的场景时,或者其它场景,例如,被叫终端处于飞行模式,或者被叫终端没有安装SIM卡等,被叫侧网络24无法将主叫终端21的呼叫请求传递至被叫终端22。本申请实施例为解决该技术问题,通过被叫侧网络24将呼叫请求前转至VoIP网关25,再由VoIP网关25和VoIP服务器26将呼叫请求传递至被叫终端22,以便于被叫终端22即使在被叫侧网络24信号较差或者无信号时,仍然能接收到主叫终端21的呼叫请求。
具体地,在被叫侧网络24寻呼失败时,可以根据预先约定的前转号码,生成前转消息,并将前转消息路由至VoIP网关25。VoIP网关25解析该前转消息获得被叫号码后,将该被叫号码发送至VoIP服务器26。VoIP服务器26根据被叫号码查找到被叫终端22之后,向被叫终端22发起VoIP呼叫。
可以看出,本申请实施例提供的通话网络架构(图2)与现有的通话网络架构(图1)相比,增加了VoIP网关25和VoIP服务器26。其中,VoIP网关25与被叫侧网络24连接,VoIP服务器26分别与VoIP网关25和被叫终端22连接。
需要说明的是,现有的通话网络架构中,运营商网络和VoIP网络之间是相互独立的,即两者并没有通信链路连接。因此,当被叫侧网络寻呼失败时,是无法将呼叫请求发送至VoIP服务器的,这样,就无法通过VoIP服务器将呼叫请求中继至被叫终端。
而本申请实施例通过部署VoIP网关和VoIP服务器,并将VoIP网关与被叫侧网络连接,VoIP服务器与VoIP网关和被叫终端连接,以将运营商网络连接至VoIP网络, 使得运营商网络和VoIP网络不再相互独立。基于此,在被叫侧网络寻呼失败时,被叫侧网络可以将呼叫请求通过呼叫转移业务前转至VoIP网关,VoIP网关再将被叫号码发送至VoIP服务器,VoIP服务器再向被叫终端发起VoIP呼叫,从而实现在寻呼失败时将呼叫请求中继至被叫终端。
需要说明的是,在本申请实施例提供的通话网络架构下,被叫终端可以预先开启不可及呼叫转移业务。这样,被叫侧网络在寻呼失败时,可以将呼叫请求前转至VoIP网关。另外,被叫终端还可以预先在VoIP服务器上进行注册,这样,当VoIP服务器接收到VoIP网关发送的被叫号码时,VoIP服务器可以根据被叫号码查找到对应的被叫终端,并向对应的被叫终端发起VoIP呼叫。
还需要说明的是,图1中的VoIP网关和VoIP服务器可以分别外现为两个服务器,也可以集成在一个服务器上,即可以将VoIP网关和VoIP服务器集成到一个服务器上,由一个服务器去实现VoIP网关和VoIP服务器的功能。
相较而言,单独设置VoIP网关,VoIP网关和VoIP服务器不集成在一个服务器上,可以使得适配、维护变更等工作更加灵活。从上文可以看出,在第一种通话解决方案中,本申请实施例通过搭建被叫侧的VoIP网关和VoIP服务器,并将被叫侧网络与VoIP网关连接,使得被叫侧网络在寻呼失败时,可以将呼叫请求前转至VoIP网关,由VoIP网关和VoIP服务器将呼叫请求中继至被叫终端,实现被叫终端和主叫终端的互通。
在该通话解决方案中,对于主叫终端来说是无感的,即主叫终端一侧的呼叫流程和正常情况下的呼叫流程是一样的,主叫用户可能不会感知到被叫终端呼叫不可达的情况,也不用手动挂断蜂窝呼叫并手动发起另一种通话。另外,主叫终端和被叫终端也不用互相加好友,只需要知道被叫号码即可。正常情况是指被叫终端一侧的运营商网络较好,能接收到运营商网络传递的呼叫请求。
而对于被叫终端来说,在被叫侧网络信号不好或者无运营商网络信号时,仍然能收到呼叫请求,与主叫终端建立通话连接,实现互通。
基于上述第一种通话解决方案,下面结合图3A对该通话解决方案下的通话场景进行示例性说明。
如图3A所示,该场景包括主叫终端31、被叫终端32、主叫侧网络33、被叫侧网络34和云端35,云端35包括互通网关351和转呼服务352。在该场景下,互通网关351可以相当于图2中的VoIP网关,而转呼服务352可以作为一种硬件装置和/或软件模块集成在VoIP服务器上。
主叫终端31和被叫终端32均有两个用户识别(Subscriber Identity Module,SIM)卡,且这两个SIM卡均支持长期演进语音承载(Voice over Long-Term Evolution,VoLTE)高清通话。其中,主叫终端31的SIM卡1的号码为654321,而被叫终端的SIM卡1的号码为123456。主叫终端31的SIM卡1和SIM卡2的信号满格,即主叫终端21一侧的运营商网络信号较好。而被叫终端32的SIM卡1和SIM卡2均处于无服务状态,即被叫终端一侧的运营商网络信号较差。但是被叫终端一侧的Wi-Fi信号较好,且被叫终端31已经连接上了Wi-Fi网络。被叫终端32的运营商网络信号情况具体如 图3A321所示,Wi-Fi网络信号具体如图3A的322所示。
图3A的主叫终端31显示的是拨号界面,而被叫终端32显示的是等待接听界面。由图3A可知,被叫终端32在无运营商网络信号,已连接上Wi-Fi网络的情况下,即使被叫侧网络34寻呼失败,被叫终端32仍然能收到主叫终端31发起的呼叫。
换句话说,图3A,被叫终端32中的SIM卡信号显示区域321表明了SIM卡1和SIM卡2均无运营商网络信号,即图3A示出了被叫侧网络覆盖不佳的场景下,被叫侧网络34根据主叫终端31的呼叫请求和前转号码生成前转消息,并将该前转消息路由至互通网关351,再由互通网关351和转呼服务352根据该前转消息将主叫终端的呼叫请求送达至被叫终端32。
需要指出的是,主叫侧网络33和被叫侧网络34均为运营商网络。主叫侧网络33可以是IP多媒体子系统(IP Multimedia Subsystem,IMS)网络,可以是公共交换电话网络(Public Switched Telephone Network,PSTN),也可以是电路交换(Circuit Switched,CS)网络。当然,主叫侧网络33也可以包括IMS网络、PSTN和CS网络。
相对应地,主叫终端31可以是手机,此时,主叫终端31可以通过IMS网络与被叫终端进行通话,或者通过CS网络与被叫终端进行通话;也可以是固话,此时,主叫终端31可以通过PSTN与被叫终端进行通话。图3A中仅示例性示出了主叫终端31为手机。当然,除了手机之外,主叫终端31还可以为支持运营商通话的其它类型的移动终端,例如,可打电话的可穿戴式设备和平板电脑等。
而被叫侧网络34一般是IMS网络,被叫终端32一般为手机或者除手机之外的其它具有通话功能的终端设备。被叫终端32可以通过Wi-Fi与VoIP服务器通信连接。除此之外,在双卡场景,且一张卡有信号,另一张卡无信号的情况下,被叫终端也可以通过有信号的一张SIM卡与VoIP服务器通信连接。这种情况下,两张SIM卡不同属于一个运营商。例如,被叫终端32的SIM卡1和SIM卡2的运营商分别为中国移动和中国联通,在某种情况下,SIM卡1有信号,SIM卡2无信号。由于SIM卡2的运营商网络信号问题,针对SIM卡2的呼叫请求无法送达至被叫终端32。此时,被叫终端32可以通过SIM卡1的蜂窝数据与VoIP服务器通信连接,即被叫终端32可以通过SIM卡1的蜂窝数据接收VoIP服务器发起的VoIP呼叫。这样,即使SIM卡2无信号,仍然可以通过SIM卡1的蜂窝数据,接收到呼叫请求。
需要指出的是,在双卡单通的场景下,基于图2的网络架构,被叫终端32仍然能接收到主叫终端的呼叫请求。例如,被叫终端32的SIM卡2正在通话,导致SIM卡1无可用射频资源导致无运营商网络信号。此时,主叫终端31向被叫终端的SIM卡1发起呼叫时,基于图2的网络架构,被叫终端32可以通过Wi-Fi网络接收到VoIP服务器发起的VoIP呼叫。在这种情况下,SIM卡1和SIM卡2可以是同一个运营商,也可以不是同一个运营商。
值得指出的是,被叫终端可以是双卡,也可以是单卡。当被叫终端只有一个SIM卡时,被叫终端可以通过Wi-Fi网络等通信方式与VoIP服务器通信连接。
另外,其它一些实施例中,被叫终端32可以处于飞行模式下,或者被叫终端没安装有SIM卡。此时,被叫终端32仍然可以接收到主叫终端31的呼叫。参见图3B,示出了被叫终端32处于飞行模式下,接收主叫终端31的来电接听界面示意图,此时, 被终端32的状态栏显示有飞行模式图标323以及Wi-Fi图标324,表明被叫终端32当前处于飞行模式下,且连接有Wi-Fi。这种情况下,被叫侧网络34在发现寻呼失败时,可以将呼叫请求前转给互通网关351,通过互通网关351和转换服务352等,将主叫终端31的呼叫请求中继或者传递至被叫终端32,使得被叫终端32处于飞行模式下仍然可以接收到主叫终端31的来电。
举例来说,被叫终端32的用户在飞机上,由于飞行条件限制,需要把被叫终端32调整至飞行模式。但是,该用户需要等一个很重要的电话。此时,为了避免漏接电话,该用户可以依据图4A所示的过程,设置用户不可及前转至畅连通话。并且,操作被叫终端32接入飞机的Wi-Fi网络。这样,该用户则可以在飞行过程中,接收到主叫终端32发起的呼叫,不漏接电话。
还有,在又一些实施例中,被叫终端32也可以是没有安装SIM卡的手机,此时,被叫终端32只需安装有VoIP客户端(例如,畅连通话),并且将VoIP客户端与某个手机号码绑定,且开启不可及前转至VoIP客户端。这样,即使被叫终端32没有安装SIM卡,也能接收到针对所绑定的手机号码的呼叫。
VoIP服务器可以是指被叫终端32上实现VoIP通话的应用程序的服务端。VoIP服务器本地存储有:被叫号码,被叫号码对应的被叫终端的设备信息,以及被叫号码对应的应用程序账号信息等信息。一般情况下,VoIP服务器上存储的被叫号码、设备信息等信息是加密存储或者哈希存储的。基于此,VoIP服务器在接收到VoIP网关发送的被叫号码之后,可以查找到被叫号码对应的被叫终端设备,并向该被叫终端设备发起VoIP呼叫。
需要说明的是,被叫用户需要预先开启不可及前转业务,这样,被叫侧网络在寻呼失败时,会自动将主叫终端的呼叫请求前转至VoIP网关。
具体来说,预先将VoIP网关连接至被叫侧网络,并开通用户不可及呼叫转移至特定号码。当寻呼失败时,被叫侧网络可以生成该特定号码的前转消息(例如,Invite消息),该前转消息携带有被叫号码。然后,被叫侧网络将前转消息路由至VoIP网关,以实现将主叫终端的呼叫请求前转至VoIP网关。另外,被叫号码或被叫终端还可以预先在VoIP服务器上注册,以将被叫号码和VoIP客户端的应用账号、被叫终端设备信息等存储至VoIP服务器。这样,VoIP服务器即可根据被叫号码查找到对应的被叫终端。
作为示例而非限定,参见图4A示出呼叫转移设置界面示意图,如图4A所示,被叫终端以手机41为例,用户可以点击手机41设置界面上卡1对应的“呼叫转移”,进入到呼叫转移设置界面,并点击“用户不可及呼叫转移”。然后,手机41弹出交互窗口,用户可以在该窗口的对应位置输入“畅连通话”,再点击“开启”,即可开启不可及前转至畅连通话。畅连通话是手机41上的应用程序,其可以作为VoIP客户端,该应用程序的服务器作为VoIP服务器。可以理解的是,除了可以在通话设置里面设置不可及前转至VoIP客户端之外,VoIP客户端也可以提供对应的设置界面,即可以在VoIP客户端设置不可及前转至VoIP客户端。
当然,VoIP客户端的外现形式可以是任意的,例如,该VoIP客户端外现为一个应用程序,也可以外现为网页客户端(即Web客户端)。
需要说明的是,在被叫终端一侧,被叫终端的用户可以不用知道具体前转至哪个号码,只需要在被叫终端上设置不可及前转至VoIP客户端。当然,也可以告知用户不可及呼叫转移的目标号码,这样,用户在开通用户不可及呼叫转移业务时,可以直接输入不可及呼叫转移对应的目标号码。
具体应用中,用户将SIM卡1设置为用户不可及呼叫转移至VoIP客户端之后,被叫终端可以按照预先设定的前转号码(或称不可及呼叫转移业务对应的目标号码),告知运营商具体前转至哪个号码。这样,被叫侧网络在呼叫失败时,会自动按照被叫终端开启的不可及呼叫转移业务(或称不可及前转业务),通过预先约定的前转号码将主叫终端的呼叫请求前转至VoIP网关。
实际应用中,具体前转至哪个号码可以根据需要进行设定。作为示例而非限定,预先搭建一条专用线路,用于连接VoIP网关和被叫侧网络。并预先设置用户不可及呼叫转移至6061XXX,即被叫终端的SIM卡开启不可及前转至VoIP客户端时,默认开通的不可及呼叫转移业务为:不可及呼叫转移至6061XXX。这样,被叫侧网络在被叫不可及时,会生成目标号码为6061XXX的前转消息,该前转消息携带有被叫号码。所有目标号码为6061XXX的前转消息均通过预先搭建的专用线路从被叫侧网络传输至VoIP网关,以实现被叫不可及时前转至VoIP网关。
具体应用中,被叫终端可以将被叫终端的手机号码和VoIP客户端进行绑定,以将被叫终端注册到VoIP服务器。
作为示例而非限定,图3A中的被叫终端32的VoIP客户端为畅连通话,此时,用户可以将畅连通话的绑定手机号码设置为123456。这样,畅连通话的服务器上则存储有被叫终端的手机号码。除了绑定手机号码之外,还可以将被叫终端的设备信息与畅连通话的应用账号进行绑定。该被叫终端的设备信息可以包括设备唯一标识信息。这样,如果用户同时在多个设备上登录畅连通话时,VoIP服务器可以同时向多个设备发起VoIP呼叫。
被叫终端开通不可及前转业务和注册到VoIP服务器之后,主叫终端31可以向被叫终端32发起呼叫。在寻呼失败时,被叫侧网络34按照预先约定的前转号码,将呼叫请求转移至对应的前转号码,以将主叫终端的呼叫请求传输至云端的互通网关351,互通网关351再将呼叫请求携带的被叫号码发送至转呼服务352。转呼服务352可以查找到被叫号码对应的被叫终端32,并对所查找到的被叫终端32发起VoIP呼叫。
其中,用户不可及或者寻呼失败包括但不限于以下几种可能:被叫终端没有运营商网络信号,被叫侧网络信号较弱,被叫终端双卡中的一张卡正在通话中。
举例来说,参见图4B,手机42上安装了畅连通话应用程序,作为VoIP客户端。在畅连通话应用程序的号码设置界面中,用户勾选与畅连通话绑定的手机号码为+86188******88,这样,他人可以通过呼叫+86188******88,向手机42的畅连通话发起呼叫,另外,当手机42通过畅连通话给别人打电话时,来电界面上显示的也是+86188******88。用户勾选了+86188******88之后,手机42的账号与畅连手机号界面中,所显示的畅连手机号则为+86188******88。用户操作手机42,将畅连通话与手机号码绑定之后,手机42可以将信息上传至畅连通话的服务器43,该服务器43作为VoIP服务器。服务器43接收到手机42上传的信息之后,可以将该信息进行存储,并 将畅连通话应用程序的账号、畅连手机号码等信息进行关联存储。具体地,服务器43上存储有431所示的信息,该信息可以包括但不限于账号、畅连手机号、设备ID、设备名称、IMEI、MEID等信息,这些信息是关联存储的,即通过其中任意一个信息可以查找到其它信息。设备ID、设备名称、IMEI和MEID等均为手机42的设备信息,这些设备信息可以作为手机42的唯一标识信息。
具体应用中,设备ID、设备名称、IMEI和MEID等设备唯一标识信息可以作为VoIP通信信息,即通过手机号码找到设备唯一标识信息,再向设备唯一标识信息对应的设备发起VoIP呼叫。当然,还可以给手机42设置一个唯一的VoIP通信号码或者通信ID,将该VoIP通信号码或通信ID,与431中的信息进行关联存储。这样,后续可以通过手机号码等信息查找到VoIP通信号码或者通信ID等信息。
服务器43上存储有手机42的相关信息,便于后续服务器43查找到手机42,然后向手机42发起VoIP呼叫。
由上可见,在本申请实施例中,被叫侧网络寻呼失败时,被叫侧网络可以先确定被叫号码是否开通不可及呼叫转移服务。如果被叫号码开通了不可及呼叫转移服务,被叫侧网络可以生成前转消息,该前转消息携带有被叫号码,并将前转消息路由至VoIP网关。VoIP网关对所接收到的前转消息进行解析,获得被叫号码,并将被叫号码发送至VoIP服务器。当然,在其它一些实施例中,被叫侧网络在接收到主叫侧网络发送的呼叫请求之后,可以先确定被叫号码开通了哪些业务,例如,是否开通无条件前转业务、是否开通不可及前转业务等。然后,被叫侧网络可以根据呼叫请求进行寻呼。
VoIP服务器上存储有被叫号码和VoIP号码之间的对应关系,通过该对应关系,可以查找到被叫号码对应的VoIP号码。然后,VoIP服务器根据查找到的VoIP号码,通过VoIP服务器和被叫终端之间的通信链路(例如,Wi-Fi、蜂窝数据),向被叫终端发起VoIP呼叫。这样,即使被叫侧网络信号不好,或者完全没有运营商网络信号,被叫终端仍然能收到主叫终端的呼叫请求,并能与主叫终端建立通话连接,实现主叫和被叫的互通。
例如,基于图4B,主叫终端针对手机号+86188******88发起蜂窝呼叫,蜂窝呼叫会先传递至被叫侧网络,被叫侧网络对+86188******88进行寻呼,寻呼失败时,被叫侧网络则生成携带有+86188******88的消息,将该消息发送给VoIP网关,VoIP网关再解析该消息,得到手机号码+86188******88。VoIP网关将手机号码+86188******88发送给服务器43,服务器43收到手机号码+86188******88之后,先查找本地是否存储有手机号码+86188******88,找到手机号码+86188******88之后,服务器43可以查找到+86188******88关联的账号、设备ID、IMEI和VoIP号码等信息,向手机42发起VoIP呼叫。
需要说明的是,上述图2和图3A不仅可以应用于用户不可及呼叫转移场景,即被叫侧网络在寻呼失败时,将主叫终端的呼叫请求前转至VoIP网关,通过VoIP网关和VoIP服务器将主叫终端的呼叫请求桥接或中继至被叫终端;还可以应用于无条件呼叫转移场景、遇忙呼叫转移场景和无应答呼叫转移场景。
下面对上述几种具体场景分别进行下说明:
1、无条件呼叫转移场景
具体应用中,被叫侧网络在确定出该被叫号码开通了无条件呼叫转移业务之后,会获取到无条件呼叫转移的目标号码;然后,被叫侧网络根据该目标号码生成前转消息,将该前转消息路由至VoIP网关,该前转消息携带有被叫号码;最后,VoIP网关解析该前转消息,获得被叫号码后,将被叫号码发送至VoIP服务器,由VoIP服务器根据被叫号码发起VoIP呼叫。
作为示例而非限定,为了减少国际漫游费用,用户可以开启无条件呼叫转移至畅连通话。这样,向该被叫终端发起的呼叫请求均被被叫侧网络前转VoIP网关,VoIP网关再将解析得到的被叫号码发送至畅连通话的服务器。畅连通话的服务器查找到该被叫号码对应的被叫终端后,向该被叫终端发起VoIP呼叫,实现无条件呼叫转移业务。
需要说明的是,无条件呼叫转移业务的开通过程和上文的不可及呼叫转移业务的开通过程类似,具体可以参见上文相应内容,在此不再赘述。
还需要说明的是,用户可以设置无条件呼叫转移至被叫终端的VoIP客户端,也可以设置无条件呼叫转移至另一个终端设备的VoIP客户端。例如,VoIP客户端为畅连通话,被叫终端为手机。此时,用户的手机和平板电脑上均安装有畅连通话。用户可以设置将手机的来电无条件呼叫转移至平板电脑上的畅连通话上。
2、遇忙呼叫转移场景
遇忙呼叫转移的情况可以包括但不限于:被叫振铃时用户手动挂断,被叫号码正在通话中,以及被叫终端处于国际漫游的情况。
在该场景下,被叫侧网络在确定被叫终端满足遇忙前转条件时(例如,被叫终端的用户手动挂断主叫终端的呼叫请求),被叫侧网络可以根据遇忙呼叫转移的目标号码,生成前转消息后,将携带有被叫号码的前转消息路由至VoIP网关。VoIP网关解析前转消息获得被叫号码之后,将被叫号码发送至VoIP服务器。VoIP服务器根据被叫号码向VoIP客户端发起VoIP呼叫,实现遇忙呼叫转移业务。
需要说明的是,遇忙呼叫转移业务的开通过程和上文的不可及呼叫转移业务的开通过程类似,具体可以参见上文相应内容,在此不再赘述。还需要说明的是,用户可以设置遇忙呼叫转移至被叫终端的VoIP客户端,也可以设置遇忙呼叫转移至另一个终端设备的VoIP客户端。
3、无应答呼叫转移场景
无应答呼叫转移可以是指在被叫终端无应答时将呼叫请求转移至特定号码。在本申请实施例中,可以设置无应答时呼叫转移至VoIP客户端。
用户设置无应答呼叫转移至VoIP客户端之后,被叫侧网络在确定被叫终端无应答时,可以根据无应答呼叫转移的目标号码,生成前转消息后,将携带有被叫号码的前转消息路由至VoIP网关。VoIP网关解析前转消息获得被叫号码之后,将被叫号码发送至VoIP服务器。VoIP服务器根据被叫号码向VoIP客户端发起VoIP呼叫,实现无应答呼叫转移。
需要说明的是,无应答转移业务的开通过程和上文的不可及呼叫转移业务的开通过程类似,具体可以参见上文相应内容,在此不再赘述。
还需要说明的是,用户可以设置无应答呼叫转移至被叫终端的VoIP客户端,也可 以设置无应答呼叫转移至另一个终端设备的VoIP客户端。
总之,本申请实施例的被叫侧网络在满足前转条件时,可以将主叫终端的呼叫请求前转至VoIP网关。而前转条件可以是用户不可及,即寻呼失败;也可以是遇忙、无条件和无应答。
其中,无条件呼叫转移:一经设置,所有呼叫你的电话均转移到你预先指定的电话上,你的手机不再振铃,只能从预先指定的电话上接听。
遇忙呼叫转移:一经设置,当你在使用的手机通话时,如果其他人对你进行呼叫,来电将会自动转移烈你预先指定的电话或手机上。
无应答呼叫转移:一经设置,存你的手机振铃而无人接听的时候,所有呼叫你的电话均转移到你预先指定号码的电话或手机上。
不可及呼叫转移:一经设置,在你的手机关机或无信号等情况时,所有呼叫你的电话均转往你预先指定号码的电话或手机上。
还需要指出的是,本申请实施例的应用场景可以适用于语音通话场景和/或视频通话场景。上文和下文主要以语音通话场景为例进行介绍,视频通话场景可参考语音通话场景的对应描述,在此不再赘述。
为了更好地介绍上述第一种通话解决方案,下面将结合图5对上述第一种通话解决方案对应的通话网络架构进行详细说明。
在介绍图5之前,先对图5中涉及的术语或相关名词进行说明。
eNodeB(Evolved Node B)是长期演进(Long Term Evolution,LTE)网络中的无线基站,也是LTE无线接入网的网元。
服务/PDN网关(Serving/PDN GateWay,S/P-GW)是LTE网络中的一个网元。
会话边界控制器(Session Border Controller,SBC)是IMS网络中的一个网元。
边界控制器功能(Border Controller Function,BCF)是IMS网络中的一个网元,用于实现边界控制功能或者SBC信令处理。
多媒体资源功能(Multimedia Resource Function,MRF)。
多媒体资源功能控制器(Multimedia Resource Function Controller,MRFC)。
多媒体资源功能处理器(Multimedia Resource Function Processor,MRFP)。
查询呼叫会话控制功能(interrogating-call session control function,I-CSCF)。
服务呼叫会话控制功能(serving-call session control function,S-CSCF)。
出口网关控制功能(breakout gateway control function,BGCF),一种IMS域的网络实体,该实体通过对被叫号码进行分析,实现IMS域和CS域的互通。
互通边界控制功能(interconnection border control function,I-BCF)是控制平面。
高级电话服务器(advanced telephony server,ATS),ATS是SIP应用服务器。
IP媒体网关(IP multimedia media gateway,IM-MGW),用于实现IMS域和CS域互通的边缘接入,以及必要的Codec编解码变换功能。
媒体网关控制功能(media gateway control function,MGCF),用于IMS域和CS域进行通信的网关。
POP可以用于NAT穿透,传输媒体数据。
如图5所示,主叫(Mobile Origination Call,MO)51包括手机和固话,被叫(Mobile Termination Call,MT)52为手机。当MO51为固话时,MO51通过PSTN接入到MT的IMS网络56;当手机只支持CS网络时,MO51则通过CS网络53接入到MT的IMS网络56。主叫侧网络包括CS网络53、PSTN 54和IMS网络55,CS网络53包括移动交换中心(Mobile Switching Center,MSC)。被叫侧网络包括IMS网络56。
IMS网络55包括以下网元:eNodeB、S/P-GW、SBC、I/S-CSCF/BGCF/MRFC/I-BCF和MRFP。MT的IMS网络56包括以下网元:eNodeB、S/P-GW、SBC、ATS、MGCF/IM-MGW、I/S-CSCF/BGCF/MRFC/I-BCF和MRFP。
MO51和MT52的运营商网络信号均较好的情况下,MO51和MT52之间的信令交互流程可以包括:MO51向MT52发起呼叫,MO51的呼叫请求通过IMS网络55、CS网络53或者PSTN54传递至MT52一侧的IMS网络56中的多媒体资源控制网元561。多媒体资源控制网元561再将MO51的呼叫请求传递至MT52,以建立MO51和MT52之间的通话连接。建立通话连接之后,MO51和MT52之间可以基于该通话网络架构传递语音数据和/或视频数据。
然而,在MT52的运营商网络信号不佳即被叫侧网络信号不佳,或者MT52无运营商网络信号等情况下,MT52的多媒体资源控制网元561无法通过IMS网络56中SBC564、S/P-GW和eNodeB,将MO51的呼叫请求传递至MT52,使得MT52收不到MO51的呼叫。
针对这个问题,搭建了MT52一侧的实时网络(Real-time Network,RTN)58。RTN58通过互联网57与IMS网络56的SBC563通信连接,RTN58可以等同于VoIP网关。RTN58还可以通过互联网59与VoIP服务器510通信连接,VoIP服务器通过互联网511和Wi-Fi512与MT52连接。当然,在其它一些实施例中,MT52还可以通过蜂窝网络和互联网511与VoIP服务器510通信连接。
在MT52的IMS网络56中的多媒体资源控制网元561发现寻呼失败时,从ATS 562上查询被叫号码是否开通有前转业务,如果被叫号码开通了用户不可及前转业务,且设置了用户不可及时前转6061XXX,多媒体资源控制网元561通过SBC563将呼叫请求前转至RTN58中的I-SBC581,具体地,生成6061XXX的Invite消息,并将该Invite消息路由至I-SBC581,该Invite消息携带有被叫号码。I-SBC581接收到6061XXX的Invite消息之后,根据前转信令,将6061XXX的Invite消息传输至BCF582。BCF582通过解析该Invite消息得到被叫号码,并将解析得到的被叫号码通过互联网59发送至VoIP服务器510。VoIP服务器510接收到被叫号码之后,查找该被叫号码对应的被叫设备信息,该被叫设备信息包括VoIP号码(或称VoIP通信号码)和设备唯一标识等。然后,VoIP服务器510再通过互联网511和Wi-Fi512向MT52发起VoIP呼叫。
需要指出的是,RTN58和VoIP服务器510之间也可以不用跨互联网,即RTN58和VoIP服务器510之间的通信连接方式不限于互联网。RTN58可以等同于上文提及的VoIP网关,用于接收IMS网络56发送的前转消息,并从前转消息中解析得到被叫号码后,将被叫号码传输至VoIP服务器510。
在其它一些实施例中,RTN58和VoIP服务器510也可以集成为一个服务器。另外,IMS网络56中的SBC563和SBC564所实现的功能也可以集成在一个SBC中。
可以看出,通过在被叫终端一侧搭建VoIP网关和VoIP服务器,使得被叫不可及时,被叫侧网络将主叫终端的呼叫请求前转至RTN58,RTN58再将主叫终端的呼叫请求中继到VoIP服务器,最后由VoIP服务器向被叫发起VoIP呼叫。对于被叫侧来说,即使运营商网络覆盖不佳,仍然能接收到主叫终端的呼叫请求,建立通话连接。而对于主叫侧用户来说一般是无感的,即主叫侧用户一般感知不到被叫侧的运营商网络状况,例如,主叫侧用户不会收到“所拨打的用户不在服务区”等提示信息。
基于上述的通话网络架构以及通话场景,下面对本申请的通话流程进行详细说明。请参见图6,图6示出了本申请实施例提供的通话方法的一种交互示意图,该方法可以包括以下步骤:
步骤S601、主叫终端发送第一呼叫请求至主叫侧网络,以向被叫终端发起呼叫。
需要说明的是,主叫终端可以是移动终端或者固话,移动终端可以通过IMS网络或者CS网络与被叫终端进行通话。而固话可以通过PSTN向被叫终端发起呼叫。
上述第一呼叫请求是主叫终端根据被叫号码生成的Invite消息,该Invite消息包括被叫号码。
步骤S602、主叫侧网络将该第一呼叫请求发送至被叫侧网络。
步骤S603、被叫侧网络根据第一呼叫请求对被叫终端进行寻呼。
步骤S604、寻呼失败时,被叫侧网络确定被叫是否开通不可及呼叫转移业务。
步骤S605、如果被叫已开通不可及呼叫转移业务,被叫侧网络获取到不可及呼叫转移业务对应的目标号码。
步骤S606、被叫侧网络根据该第一呼叫请求和目标号码,生成前转消息,该前转消息携带有被叫号码。
需要指出的是,该前转消息是被叫侧网络根据目标号码生成的Invite消息,该Invite消息携带有被叫号码。
具体应用中,前转消息携带被叫号码的方式可以包括但不限于以下两种方式:
第一种方式
设置携带方式为:前转专线号码+被叫号码。例如,目标号码为6061XXX,被叫号码为123456,Invite消息中携带被叫号码的方式为6061XXX123456。
这种方式下,第一VoIP服务器在接收到前转消息时,可以直接解析到被叫号码。例如,将6061XXX123456后六位作为被叫号码。
第二种方式
设置携带方式为:前转专线号码。此时,前转消息中只带有目标号码,没有被叫号码。而是利用现有的会话初始协议(Session Initiation Protocol,SIP)信令,在前转消息中带有History-Info,History-Info中携带有被叫号码。这样,后续可以从History-Info中提取出被叫号码。
作为示例而非限定,History-Info具体为:
<sip:+861340000XXXX@ge.chinamobile.com?Reason=SIP%%3Bcause%%3D486>;
index=1,<tel:1340010XXXX>;index=1.1
通过解析History-Info,可以提取到被叫号码。
步骤S607、被叫侧网络将前转消息发送至第一VoIP服务器。
步骤S608、第一VoIP服务器解析前转消息,获得被叫号码。
需要指出的是,第一VoIP服务器可以与上文的VoIP网关或者RTN等同。
步骤S609、第一VoIP服务器将被叫号码发送至第二VoIP服务器。
步骤S610、第二VoIP服务器查找该被叫号码对应的被叫信息。
步骤S611、第二VoIP服务器根据被叫信息向被叫终端发起VoIP呼叫,以建立主叫终端和被叫终端的通话连接。
需要说明的是,上述被叫信息可以包括但不限于VoIP通信号码和设备唯一标识等。其中,一个被叫号码可以对应一个或多个设备唯一标识。具体来说,如果被叫用户同时在多个设备上登录VoIP客户端,VoIP服务器可以同时向多个设备发起VoIP呼叫。例如,VoIP客户端为畅连通话,被叫用户拥有手机1、手机2和平板电脑三个电子设备,且这三个电子设备均安装有畅连通话,所绑定的手机号码均为123456。其中,手机1的设备唯一标识为111XX,手机2的设备唯一标识为222XXX,平板电脑的设备唯一标识为333XXX。第二VoIP服务器上存储有被叫信息包括:123456对应有三个通信号码,这三个通信号码分别与手机1的设备唯一标识、手机2的设备唯一标识和平板电脑的设备唯一标识一一对应。此时,第二VoIP服务器根据被叫号码123456查找到三个通信号码后,同时向这三个通信号码发起VoIP呼叫,这样,手机1、手机2和平板电脑均收到呼叫。
在其它一些实施例中,VoIP服务器也可以只向主设备发起VoIP呼叫,再由主设备向其它设备发起呼叫,以实现向多个设备发起VoIP呼叫。具体应用中,主设备可以与其它设备通信连接,该通信方式可以是近场通信方式,例如,蓝牙、Wi-Fi点对点和Wi-Fi STA等。在Wi-Fi点对点的通信方式下,主设备和其它设备可以在同一个局域网内;也可以不在一个局域网内,此时,主设备和其它设备之间仍然可以建立Wi-Fi点对点连接,即主设备和其它设备之间可以穿过网络防火墙实现点对点连接;也可以是通过服务器相互连接,即主设备可以通过服务器与其它设备进行数据交互。例如,主设备为手机,其它设备为平板电脑和智慧大屏,手机、平板电脑和智慧大屏同连在一个Wi-Fi路由器上。当手机收到VoIP服务器发起的VoIP呼叫时,手机可以通过Wi-Fi路由器向平板电脑和智慧大屏发起呼叫。这样,手机、平板电脑和智慧大屏均可以收到呼叫。需要指出的是,VoIP服务器可以根据与VoIP客户端账号绑定的手机号码,向对应的终端设备发起VoIP呼叫。而在其它一些实施例中,如果被叫终端当前插的SIM卡不是原本绑定的号码,VoIP服务器也可以根据当前插的SIM卡的号码发起VoIP呼叫。例如,被叫终端原本绑定的手机号码为123456,但被叫终端当前插的SIM卡的号码是234567。被叫终端可以在登录VoIP客户端时,读取当前插的SIM卡的号码,并将所读取的号码上传至VoIP服务器,这样,VoIP服务器也可以得知被叫终端当前插的SIM卡的号码。基于此,VoIP服务器也可以根据被叫终端当前插的SIM卡的号码发起VoIP呼叫。
另外,被叫终端和第二VoIP服务器之间维持有一条保活的通信链路,该通信链路可以是但不限于Wi-Fi通信链路或者蜂窝网络。
为了更好地介绍通话流程,下面将结合具体示例进行说明。
某天晚上,马克来到家里地下室的书房工作,并将自己的手机放在书房的书桌上。 地下室的运营商网络信号较差,但Wi-Fi网络信号较好。
马克的手机号码为123456,且马克的手机上安装有畅连通话。马克已经设置了用户不可及时前转至畅连通话,并且已经将畅连通话与手机号码123456绑定。也就是说,畅连通话的服务器上存储有手机号码123456和通信号码8082XXX之间的对应关系,8082XXX是马克手机上的畅连通话的VoIP通信号码。另外,马克的手机已经打开了Wi-Fi,并已连接上家里的Wi-Fi网络。
汤姆给马克打电话,此时,马克的手机为被叫终端,汤姆的手机为主叫终端。主叫终端和被叫终端的交互过程可以参见图7示出的通话方法的另一种交互示意图。如图7所示,该过程可以包括以下步骤:
步骤S701、主叫终端向主叫侧网络发送包括被叫号码123456的Invite消息。
步骤S702、主叫侧网络将该Invite消息发送至被叫侧网络。
步骤S703、被叫侧网络寻呼失败时,将主叫终端的呼叫请求前转至第一VoIP服务器。
具体应用中,被叫侧网络可以根据前转号码生成前转消息,并将该前转消息路由至第一VoIP服务器。该前转消息为Invite消息,包括前转目标号码6061XXX,并携带有被叫号码123456。
步骤S704、第一VoIP服务器解析前转消息得到被叫号码123456,并将被叫号码123456发送至第二VoIP服务器。
步骤S705、第二VoIP服务器查找到被叫号码123456对应的通信号码8082XXX。
步骤S706、第二VoIP服务器向8082XXX发起VoIP呼叫,以建立通话连接。
通过图7的流程,被叫终端即使处于地下室等运营商网络信号不佳的区域时,仍然能收到主叫终端发起的呼叫。
马克的手机收到VoIP呼叫后会进行振铃,马克摘机之后,被叫终端向第二VoIP服务器返回用于指示被叫已接听的消息,第二VoIP服务器再将该消息传递至第一VoIP服务器。第一VoIP服务器根据该消息启动计费,并向被叫侧网络返回Invite 200OK,被叫侧网络再向主叫终端发送Invite 200OK,主叫终端和被叫终端之间成功建立通话连接。
可以看出,本申请实施例在被叫侧搭建VoIP网关和VoIP服务器,并将VoIP网关和被叫侧运营商网络连接。这样,在被叫侧网络寻呼失败时,被叫侧网络可以根据呼叫转移对应的目标号码,生成前转消息,并将该前转消息路由至VoIP网关,VoIP网关再将从前转消息中解析的被叫号码发送至VoIP服务器,由VoIP服务器查询到被叫号码对应的被叫终端,并向被叫终端发起VoIP呼叫,建立通话连接。以实现在被叫终端运营商网络信号不好时,仍然能收到主叫终端的呼叫请求,并建立通话连接。
相较于小秘书服务,本申请实施例提供的通话解决方案可以在被叫侧网络信号不佳或者其它原因导致呼叫不可达时,实现主叫终端和被叫终端的互通。
相较于VoWi-Fi,本申请实施例提供的通话解决方案基于现有运营商网络即可实现在呼叫不可达时,实现主叫终端和被叫终端的互通。
相较于OTT通话,本申请实施例提供的通话解决方案主叫和被叫不用互加好友,也不用主叫用户在蜂窝呼叫失败时,手动发起VoIP呼叫。
需要说明的是,该通话解决方案对于主叫侧是无感的,即主叫终端并不会感知到被叫终端运营商网络信号不好。且主叫终端的通话方式没有任何限制,即主叫终端可以进行CS通话、PSTN通话和VoLTE通话等。
而对于被叫终端来说,其只需要开通不可及呼叫转移至VoIP客户端,并将被叫号码和被叫终端的设备信息等注册到VoIP服务器上,此外,还需要被叫终端和VoIP服务器之间可以相互通信。并不需要被叫用户在发现运营网络信号不好时,通过手动操作被叫终端,以告知VoIP服务器被叫终端的运营网络信号不好。被叫终端也不用时刻向VoIP服务器上报自身状态和自身所处位置。相较而言,本实施例提供的通话解决方案的用户体验更好,且用户操作更简便。
第二种通话解决方案
需要说明的是,上文介绍的第一种通话解决方案需要预先搭建被叫侧的VoIP网关和VoIP服务器,以在寻呼失败时,通过被叫侧网络将主叫终端的呼叫请求前转到VoIP网关,通过VoIP网关和VoIP服务器将呼叫传递给被叫。
而在本申请的另一些实施例中,在寻呼失败时,主叫终端也可以主动向被叫终端发起VoIP通话,以实现在被叫终端运营网络信号不佳或者无运营网络信号时,被叫终端仍然能收到主叫终端的呼叫请求,与主叫终端建立通话连接。
也就是说,区别于上述第一种通话解决方案,本申请实施例还可以提供另一种通话解决方案(下称“第二种通话解决方案”)。在第二种通话解决方案中,基于现有的通话网络架构,在被叫侧网络寻呼失败时,主叫终端自动判断是否可以发起VoIP呼叫,并在满足一定条件时,自动挂断当前蜂窝呼叫,触发VoIP呼叫,实现主叫终端和被叫终端的互通。也就是说,在寻呼失败时,第二种通话解决方案可以不用通过被叫侧网络将主叫终端的呼叫请求前转至VoIP网关,而是通过主叫终端自动发起VoIP呼叫。
第二种通话解决方案可以不用改变现有的网络架构,而是基于现有的网络架构。具体来说,第二种通话解决方案的通话网络架构可以包括主叫终端、被叫终端、主叫侧网络和被叫侧网络,以及VoIP服务器。主叫终端可以通过互联网与VoIP服务器通信连接,被叫终端也可以通过互联网与VoIP服务器通信连接。而主叫终端、被叫终端、主叫侧网络和被叫侧网络之间的连接关系可以如图1所示的通话网络架构。基于该通话网络架构,在寻呼失败时,主叫终端可以自动判断是否可以发起VoIP呼叫,如果可以,则通过VoIP服务器向被叫终端发起VoIP呼叫。
基于上述第二种通话解决方案,下面结合图8A对第二种通话解决方案下的通话场景进行示例性说明。如图8A所示,包括主叫终端81、被叫终端82、主叫侧网络83、被叫侧网络84、VoIP服务器85、互联网86和互联网87。其中,主叫终端81、被叫终端82、主叫侧网络83和被叫侧网络84的连接关系与图1的通话网络架构相同。
需要说明的是,图8A与图3A类似,与图3A类似的内容可以参见上文图3A的内容,在不再赘述。被叫终端82的运营商网络信号较差,Wi-Fi网络信号较好。一般情况下,被叫终端82可以通过信号强弱来判断网络信号好坏。具体来说,如果被叫终端所在区域的运营商网络信号强度低于一定阈值时,被叫终端可以判定运营商网络信号较差。同理,如果被叫终端所在区域的Wi-Fi信号强度高于一定阈值时,被叫终端 可以判定Wi-Fi网络信号较好。
需要说明的是,服务器可以通过与被叫终端进行数据交互,监测运营商网络信号的好坏。具体应用中,被叫终端可以通过蜂窝网络与服务器进行数据交互,服务器可以监测数据交互过程中的时延、丢包和抖动等信息,根据时延、丢包和抖动等信息来确定被叫终端一侧的运营商网络信号好坏。
被叫侧网络84在寻呼失败时,并不会像图3A一样将主叫终端的呼叫请求前转至VoIP网关,而是由主叫终端81来自动判断是否发起VoIP呼叫。
主叫终端81通过互联网86与VoIP服务器85通信连接,VoIP服务器85通过互联网87与被叫终端82通信连接。主叫终端81判定可以向被叫终端发起VoIP呼叫时,主叫终端会自动挂断蜂窝通话,自动触发VoIP通话。主叫终端81发起的VoIP呼叫通过VoIP服务器到达被叫终端82。
与图3A对应的通话解决方案类似,被叫终端82中安装有VoIP客户端,被叫终端82仍然需要预先注册到VoIP服务器上,具体注册过程可以参见上文图3A对应实施例的内容,在此不再赘述。
与图3A对应的通话解决方案不同的是,被叫终端不用预先开启不可及呼叫转移至VoIP客户端。另外,主叫终端需要预先注册到VoIP服务器上,注册过程与被叫终端的注册过程类似,在此不再赘述。主叫终端上安装有对应的VoIP客户端,该VoIP客户端可以以应用程序的形式存在。
主叫终端81可以通过蜂窝网络或者Wi-Fi网络等连接至互联网86,被叫终端可以通过Wi-Fi网络或者蜂窝网络等连接至互联网87。
主叫终端81在满足预先设定的触发条件时,进一步判断是否满足Silent Redial触发条件,如果允许触发Silent Redial,则挂断蜂窝通话,自动触发VoIP呼叫。Silent Redial是指后台或者自主地重拨。
该预先设定的触发条件可以包括超时触发和/或网络挂断触发。
该预先设定的触发条件只包括超时触发。
超时触发是指从主叫终端呼叫发起到被叫终端振铃的时间超出预设时间阈值时,则进入判断是否满足Silent Redial触发条件的步骤。反之,如果从主叫终端呼叫发起到被叫终端振铃的时间没有超出预设时间阈值,则不进入判断是否满足Silent Redial触发条件的步骤。
具体应用中,主叫终端81在发起呼叫时,可以同步开启T-Alerting(Timerof Alerting)定时器。该T-Alerting在呼叫发起时开始计时,在收到用于指示被叫终端振铃或者通话结束的消息时,T-Alerting定时器终止。如果该定时器记录的时间大于或等于预设时间阈值,则认为是超时触发,可以进一步判断是否满足Silent Redial触发条件。作为示例而非限定,该预设时间阈值为15s,即从呼叫发起到振铃的时间如果超过15s,则进行Silent Redial触发条件判断。
该预先设定的触发条件只包括网络挂断触发。
网络挂断触发可以包括网络错误码场景和网络异常场景。主叫终端81可以在接收到网络错误码,或者在网络异常时,进入Silent Redial触发条件判断过程。反之,主叫终端如果没有收到网络错误码,或者网络没有异常,则不进行Silent Redial触发条 件判断过程。
网络异常场景可以例如包括一拨就断的情况,例如,主叫发起蜂窝呼叫,但没有回铃音的情况。
网络错误码场景是指在运营商网络出现一定情况时,主叫终端81会获取到运营商网络返回的网络错误码。作为示例而非限定,表1中示出了几种可能的网络错误码。
表1
Figure PCTCN2021108234-appb-000001
Figure PCTCN2021108234-appb-000002
可以理解的是,上述表1中网络错误码仅仅是一种示例,具体应用中,网络错误码的类型和数量并不限于此。
该预先设定的触发条件包括超时触发和网络挂断触发。
此时,如果定时器的时间小于预设时间阈值,且没有收到网络错误码或者网络没有异常,则不进行Silent Redial触发条件判断过程。反之,如果定时器的时间大于预设时间阈值,和/或,收到网络错误码或者网络异常,则进行Silent Redial触发条件判断过程。
当然,如果定时器的时间大于预设时间阈值,可以不判断是否满足网络挂断触发条件,可以直接进行Silent Redial触发条件判断过程。
作为示例而非限定,预设时间阈值为15s,在15s之前,主叫终端如果满足网络挂断触发条件,则进行Silent Redial触发条件判断过程;如果不满足网络挂断触发条件,则不进行Silent Redial触发条件判断过程,并且定时器也会一直计时。当计时器的时间达到15s后,则进行Silent Redial触发条件判断过程。
主叫终端触发进入Silent Redial触发条件判断过程后,可以先进行对端能力查询,以获取到被叫终端相关信息,然后再根据被叫终端相关信息确定是否进行Silent Redial。主叫终端通过对端能力查询,可以确定被叫终端是否注册在VoIP服务器上。
具体应用中,主叫终端可以从VoIP服务器上获取到被叫终端的相关信息。被叫终端的相关信息可以包括但不限于被叫终端是否已注册在VoIP服务器上,被叫终端的运营商网络信号情况,被叫终端是否开启有呼叫转移业务,以及被叫终端和VoIP服务器之间是否存在一条通信链路等。
在其它一些实施例中,所获取的被叫终端相关信息还可以包括被叫终端的振铃记录信息等。
例如,如果满足以下条件:被叫终端没有运营商网络信号或者运营商网络信号较差,且被叫未开启呼叫转移业务,被叫号码匹配成功,并且被叫终端的VoIP客户端处于有服务状态,则判定满足Silent Redial触发条件。即允许触发Silent Redial的条件为:(Phone==No Service&&被叫号码匹配成功&&被叫前转未开启)&&(VoIP==On Service)。No Service可以包括无运营网络信号场景、弱信号场景或者无法稳定提供通话服务的场景。弱信号可以是指运营商网络信号低于一定的阈值。
其中,被叫号码匹配成功是指VoIP呼叫携带的被叫号码和VoIP服务器本地存储的被叫号码相一致。被叫前转未开启是指被叫终端没有开启任何的呼叫转移业务。VoIP On Service可以是指被叫终端和VoIP服务端之间存在一条通信链路,或者说被叫终端上的VoIP客户端处于在线状态。
又例如,允许触发Silent Redial的条件还可以为:
(Phone==No Service&&被叫号码匹配成功&&被叫前转未开启&&被叫未振铃)&&(VoIP==On Service)。
在该触发条件中,允许触发Silent Redial的条件增加了被叫是否振铃的判断。被叫终端是否振铃是指被叫终端是否有收到主叫终端通过运营商网络发起的蜂窝呼叫。 如果被叫终端已经接收到运营商网络发起的蜂窝呼叫,但实际上用户没有接听,表明用户可能不想接听该通话,为了保证用户体验,不触发Silent Redial。
在其它一些实施例中,主叫终端也可以直接与被叫终端通信,获取到被叫终端相关信息,而不用通过服务器来获取被叫终端相关信息。主叫终端与被叫终端通信,获得被叫终端的相关信息之后,则根据被叫终端相关信息进行Silent Redial触发条件判断,该过程与上文的类似,在此不再赘述。
需要说明的是,主叫终端确定需要向被叫终端发起VoIP呼叫之后,可以直接向被叫终端发起VoIP呼叫,也可以由用户确认后再向被叫终端发起VoIP呼叫。例如,主叫终端在确定出需要向被叫终端发起VoIP呼叫后,可以弹出一个提示窗口,该提示窗口可以用于提示用户是否发起VoIP呼叫,如果主叫终端获取到用户输入的确认指令后,则向被叫终端发起VoIP呼叫。
在上文提及的第二种通话解决方案中,主叫终端向被叫终端发起蜂窝呼叫后,在满足一定的触发条件时(例如,超时触发和/网络挂断触发),可以先查询被叫终端的相关信息,然后在确定可以发起VoIP呼叫后,自动挂断当前蜂窝呼叫,并自动向被叫终端发起VoIP呼叫。
而在其它一些实施例中,在主叫终端向被叫终端发起蜂窝呼叫之前,可以先进行起呼判断流程,即主叫终端可以先判断是否发起蜂窝呼叫,在满足一定条件下再向被叫终端发起蜂窝呼叫,再进入判断是否满足上述预先设定的触发条件。
具体应用中,主叫终端可以根据主叫侧蜂窝网络信号情况和/或被叫侧蜂窝网络信号情况,判断是否向被叫终端发起蜂窝呼叫。
在一种实现方式中,主叫终端获取主叫侧蜂窝网络信号的信号强度和信号质量,如果主叫侧蜂窝网络信号的信号强度低于某个信号强度阈值,或者,信号质量低于某个信号质量阈值,亦或者,信号强度和信号质量均低于某个阈值,主叫终端则可以判定不发起蜂窝呼叫,然后进入到获取被叫终端的相关信息,根据被叫终端的相关信息确定是否发起VoIP呼叫的流程,或者也可以直接发起VoIP呼叫。
而如果主叫侧蜂窝网络信号的信号强度高于某个信号强度阈值和信号质量高于某个信号质量阈值,主叫终端则判定发起蜂窝呼叫,向被叫终端发起蜂窝呼叫。
在另一种实现方式中,主叫终端和被叫终端均与VoIP服务器通信连接,被叫终端可以将被叫侧蜂窝网络信号情况上报至VoIP服务器。此时,主叫终端向被叫终端发起VoIP呼叫之前,可以从VoIP服务器上获取到被叫终端的状态信息,该状态信息可以包括被叫侧的蜂窝网络信号情况和VoIP状态信息。或者,主叫终端和被叫终端通过VoIP服务器连接后,主叫终端可以通过VoIP服务器向被叫终端进行查询,获取到被叫终端的状态信息,这样,VoIP服务器可以不用缓存被叫终端的状态信息。如果被叫终端的蜂窝网络的信号强度低于某个信号强度阈值,和/或信号质量低于某个信号质量阈值,主叫终端则可以判定不发起蜂窝呼叫,然后再根据被叫终端的相关信息(例如,VoIP状态信息),确定是否发起VoIP呼叫,或者也可以直接发起VoIP呼叫。
其中,VoIP状态信息可以包括但不限于被叫终端是否已注册到VoIP服务器、被叫终端是否与VoIP服务器通信连接等。
而如果被叫侧蜂窝网络信号的信号强度高于某个信号强度阈值和信号质量高于某 个信号质量阈值,主叫终端则判定发起蜂窝呼叫,向被叫终端发起蜂窝呼叫。
在又一种实现方式中,主叫终端同时根据主叫侧蜂窝网络信号和被叫侧蜂窝网络信号,来判断是否发起蜂窝呼叫。具体地,如果主叫侧蜂窝网络信号的信号强度和信号质量均大于对应的阈值,以及被叫侧蜂窝网络信号的信号强度和信号质量均大于对应的阈值,主叫终端判断发起蜂窝呼叫,则向被叫终端发起蜂窝呼叫。反之,如果存在以下至少一项:主叫侧蜂窝网络信号的信号质量低于某个信号质量阈值、主叫侧蜂窝网络信号的信号强度低于某个信号强度阈值、被叫侧蜂窝网络信号的信号质量低于某个信号质量阈值、被叫侧蜂窝网络信号的信号强度低于某个信号强度阈值,主叫终端则判定不发起蜂窝呼叫,而是根据被叫终端的VoIP状态信息等,确定是否发起VoIP呼叫,也可以直接发起VoIP呼叫。
在其它一些实施例中,在蜂窝电话掉话时,主叫终端可以自动确定是否可以发起VoIP呼叫,如果可以,则自动向被叫终端发起VoIP呼叫。具体来说,主叫终端和被叫终端已经建立蜂窝通话连接了,由于某种原因,主叫终端和被叫终端之间的蜂窝通话连接断开了,即蜂窝电话掉话了。此时,主叫终端可以先查询被叫终端的相关信息,该被叫终端的相关信息可以诸如包括被叫终端是否已注册到VoIP服务器,被叫终端和VoIP服务器是否存在通信连接等等。然后,主叫终端可以根据被叫终端的相关信息确定是否可以发起VoIP呼叫,如果可以,则自动向被叫终端发起VoIP呼叫。其中,如果被叫终端已注册到VoIP服务器上(例如,主叫终端可以从VoIP服务器上查找到与被叫号码一致的号码),以及被叫终端和VoIP服务器之间存在通信链路(例如,被叫终端通过蜂窝网络或者Wi-Fi网络和VoIP服务器通信),则判定可以发起VoIP呼叫。
其中,上文提及的蜂窝网络信号强度阈值和蜂窝网络信号质量阈值可以用于表征蜂窝网络信号的好坏,蜂窝网络信号的好坏可以影响到主叫终端和被叫终端之间是否可以建立蜂窝通话连接,以及蜂窝通话连接和通话质量是否稳定等。
在该方案中,主叫终端81可能会存在多种拨号方式,下面将结合图8B~图8D进行介绍。
如图8A所示,主叫终端81在蜂窝呼叫不可达时,可以自动切换至VoIP呼叫。
如图8B所示,主叫终端81在拨号界面811接收到用户触发的拨号操作,主叫终端81则针对号码123456发起蜂窝呼叫请求,并显示拨号界面,提示用户正在拨号中。此时,主叫终端81将针对号码123456的蜂窝呼叫请求传递至被叫侧网络,被叫侧网络可以对号码123456进行寻呼,当寻呼失败时,被叫侧网络可以给主叫终端81返回一个消息,以告知主叫终端81寻呼失败。该消息可以例如包括上文中的网络错误码等信息。主叫终端81在接收到该消息之后,可以显示提示信息812,以提示用户当前蜂窝呼叫不可达,是否切换至VoIP呼叫。如果用户选择“是”,主叫终端81则针对123456发起VoIP呼叫。
当然,在其它一些实施例中,主叫终端81在向123456发起蜂窝呼叫的同时,通过定时器进行计时,当满足上文的超时触发时,也可以显示提示信息812。
进一步地,主叫终端81在接收到网络侧返回网络错误码,或者检测到满足超时触发时,可以先查询被叫终端的VoIP能力、被叫终端的设备状态和VoIP状态等信息,根据这些信息,确定是否可以向号码123456关联的被叫终端发起VoIP呼叫,如果可 以,则显示提示信息812,如果不可以,也可以显示提示信息812,但此时“是”选项变为不可选状态。或者,在判断出被叫终端不满足VoIP呼叫的条件时,也可以显示提示信息,提示对端设备不支持VoIP呼叫或者不满足VoIP呼叫条件。查询被叫终端的VoIP能力、被叫终端的设备状态和VoIP状态等信息的过程,以及根据这些信息判断是否可以发起VoIP的过程可以参见上文相应内容,在此不再赘述。
如图8C所示,主叫终端81在拨号界面811接收到用户触发的拨号操作,接着,主叫终端81则显示提示信息813,以提示用户选择通话方式,当用户选择VoIP呼叫时,主叫终端81针对号码123456发起VoIP呼叫。针对号码123456的VoIP请求先传递至VoIP服务器,VoIP服务器发起号码123456对应的设备不支持VoIP通话时,或者号码123456的VoIP客户端不在线时,则向主叫终端81返回一个消息。主叫终端81在接收到该消息后,显示提示信息814,以提示用户VoIP呼叫不通,是否切换到蜂窝呼叫。如果用户选择“是”,主叫终端81则针对号码123456发起蜂窝呼叫。
当然,在其它一些实施例中,主叫终端81在显示提示信息813之前,还可以先判断号码123456关联的对端设备是否支持VoIP呼叫,或者是否在线。具体地,主叫终端81可以向VoIP服务器发送一个查询请求,查询号码123456的VoIP能力信息等。如果查询到号码123456没有注册到VoIP服务器上或者与该号码关联的设备的VoIP客户端不在线,则将提示信息813中的VoIP呼叫选项变为不可选状态。
如图8D所示,主叫终端81在拨号界面811接收到用户触发的拨号操作,接着,主叫终端81则显示提示信息813,以提示用户选择通话方式,当用户选择蜂窝呼叫时,主叫终端81针对号码123456发起蜂窝呼叫。蜂窝呼叫请求会先传递至被叫侧网络。被叫侧网络可以对号码123456进行寻呼,当寻呼失败时,被叫侧网络可以给主叫终端81返回一个消息,以告知主叫终端81寻呼失败。该消息可以例如包括上文中的网络错误码等信息。主叫终端81在接收到该消息之后,可以显示提示信息812,以提示用户当前蜂窝呼叫不可达,是否切换至VoIP呼叫。如果用户选择“是”,主叫终端81则针对123456发起VoIP呼叫。
当然,在其它一些实施例中,主叫终端81在向123456发起蜂窝呼叫的同时,通过定时进行计时,当满足上文的超时触发时,也可以显示提示信息812。进一步地,主叫终端81在接收到网络侧返回网络错误码,或者检测到满足超时触发时,可以先查询被叫终端的VoIP能力、被叫终端的设备状态和VoIP状态等信息,根据这些信息,确定是否可以向号码123456关联的被叫终端发起VoIP呼叫,如果可以,则显示提示信息812,如果不可以,也可以显示提示信息812,但此时“是”选项变为不可选状态。或者,在判断出被叫终端不满足VoIP呼叫的条件时,也可以显示提示信息,提示对端设备不支持VoIP呼叫或者不满足VoIP呼叫条件。先查询被叫终端的VoIP能力、被叫终端的设备状态和VoIP状态等信息的过程,以及根据这些信息判断是否可以发起VoIP的过程可以参见上文相应内容,在此不再赘述。
由上可见,主叫终端在发起蜂窝呼叫之前,可以先进行起呼判决流程,即先判断是否可以发起蜂窝呼叫,如果可以,则向被叫终端发起蜂窝呼叫,如果不可以,则可以进入对端能力查询,以获取到被叫终端的VoIP能力信息、VoIP状态信息等,然后再根据被叫终端的相关信息,确定是否发起VoIP呼叫。进一步地,主叫终端还可以在 用户进行拨号操作时,弹出通话方式选择界面,以供用户选择是用VoIP通话,还是用蜂窝通话。另外,主叫终端还可以根据起呼判决结果,来显示通话方式选择界面。
示例性的,参见图图8C和图8D,用户向主叫终端输入所要拨打的手机号码之后,主叫终端弹出通话方式选择界面示意图,该通话方式选择界面显示有“蜂窝呼叫”和“VoIP呼叫”两个选项,用户可以根据需要选择其中一种通话方式。
进一步地,主叫终端在获取到用户输入的手机号码之后,主叫终端可以先进行起呼判决流程,根据主叫侧网络情况和/或被叫侧网络情况,确定是否可以发起蜂窝呼叫,如果不可以发起蜂窝呼叫,弹出通话方式选择界面中“蜂窝呼叫”就会变成不可选状态,具体可以外现为“蜂窝呼叫”变为灰色或者黑色。即用户不可以选择蜂窝呼叫方式。
当然,主叫终端还可以根据用户输入的被叫号码,向VoIP服务器发送查询请求,以进行对端能力查询;获取到被叫终端的VoIP状态信息和手机状态信息之后,再根据这些信息判断是否可以发起VoIP呼叫。如果不可以发起VoIP呼叫,通话方式选择界面上的“VoIP呼叫”选项也会变成不选状态,具体可以外现为“VoIP呼叫”变为灰色或者黑色。
在另一些实施例中,主叫终端81在接收到用户输入的号码,并接收到用户的蜂窝呼叫触发操作,主叫终端81可以响应于用户的拨号操作,针对被叫号码发起VoIP呼叫。例如,用户想要向号码123456发起蜂窝呼叫,但是主叫终端81在接收到蜂窝呼叫触发操作之后,向号码123456发起的是VoIP呼叫。此时,用户可能不会感知主叫终端81发起的是蜂窝呼叫还是VoIP呼叫。在该情况下,主叫终端81可以先判断是否可以发起蜂窝呼叫,具体判断过程可以参见上文相关内容。如果确定不可以发起蜂窝呼叫,则可以在用户想要发起蜂窝呼叫时,向被叫号码发起VoIP呼叫,但用户不用感知通话方式是什么。
当然,还可以根据被叫号码的通话历史记录,来确定是否使用VoIP呼叫。比如,用户想要向号码123456发起蜂窝呼叫,但是主叫终端查询到号码123456的通话历史记录均是VoIP通话,此时,主叫终端则响应于蜂窝呼叫触发操作,向号码123456发起VoIP呼叫。
可以看出,相较于图3A,图8A不用搭建VoIP网关,在寻呼失败时也不用被叫侧网络将主叫终端的呼叫请求前转出来,而是由主叫终端主动判断是否进行Silent Redial,以自动挂断当前蜂窝通话,触发VoIP通话。
需要说明的是,主叫终端81在挂断蜂窝通话,触发VoIP通话时,拨号界面可以一直保持,并可以给出对应的提示信息,以提示用户已从蜂窝通话切换至VoIP通话。这样,对于主叫用户来说,不需要手动挂断蜂窝通话,再手动发起VoIP通话,通话操作更加智能,更加简便。
为了更好的理解上述第二种通话解决方案,下面将结合图9对上述第二种通话解决方案对应的通话网络架构进行详细说明。
如图9所示,该通话网络架构包括MO91、MT92、MO的IMS网络93、MT的IMS网络94、VoIP服务器95、互联网96和互联网97。关于IMS网络93和IMS网络94的相关介绍可以参见图5对应的内容,在此不再赘述。
MO91向MT92发起的呼叫请求,通过IMS网络93和IMS网络94传递不到MT92时,MO91可以自动判断是否发起VoIP通话,以自动挂断蜂窝呼叫,触发VoIP呼叫。这样,在蜂窝呼叫异常时,MO91可以自动切换至VoIP通话。
相较于图5,图9中的MO91不包括固话和支持CS通话的手机。且图9的网络架构不包括被叫侧网络的VoIP网关,也不用被叫侧网络在寻呼失败时将呼叫请求前转至VoIP网关。
基于上述第二种通话解决方案的通话网络架构以及通话场景,下面对第二种通话解决方案的通话流程进行详细说明。请参见图10,图10是本申请实施例提供的通话方法的又一种交互示意图,该通话过程可以包括以下步骤:
步骤S1001、主叫终端的拨号应用程序(Dial Application,Dial App)向被叫终端发起蜂窝呼叫。
需要说明的是,在其它一些实施例中,步骤S1001之前,主叫终端还可以先判断是否满足发起蜂窝呼叫的条件,如果满足,则发起蜂窝呼叫,即进入步骤S1001。具体应用中,主叫终端可以根据主叫侧蜂窝网络信号情况和/或被叫侧蜂窝信号情况,确定是否发起蜂窝呼叫。一般情况下,如果主叫侧蜂窝网络的信号强度低于某个信号强度阈值,和/或信号质量低于某个信号阈值,主叫终端则可以确定不发起蜂窝呼叫,而是进入主叫终端可以获取被叫终端相关信息,根据被叫终端相关信息确定是否发起VoIP呼叫的流程,如果可以发起VoIP呼叫,则向被叫终端发起VoIP呼叫。而如果主叫侧蜂窝网络信号强度和信号质量均高于某个阈值,则判定发起VoIP呼叫,进入步骤S1001。
当然,主叫终端也可以根据被叫终端的蜂窝网络信号情况来确定是否发起蜂窝呼叫。具体应用中,主叫终端可以从VoIP服务器上获取到被叫终端上报的蜂窝网络信号情况。根据被叫侧蜂窝网络信号情况确定是否发起蜂窝呼叫的过程与根据主叫侧蜂窝网络信号确定是否发起蜂窝呼叫的过程类似,在此不再赘述。
另外,主叫终端也可以同时根据主叫侧蜂窝网络信号情况和被叫侧蜂窝网络信号情况,来确定是否发起蜂窝呼叫。步骤S1002、主叫终端的Dial App判断是否满足预设触发条件。该预设触发条件包括超时触发和/或网络挂断触发。
步骤S1003、如果满足预设触发条件,主叫终端的VoIP客户端获取被叫终端相关信息。
该被叫终端相关信息可以包括被叫终端的状态信息和被叫中的VoIP客户端的状态信息。被叫终端的状态信息包括被叫终端一侧的运营商网络信号、被叫终端是否开通呼叫转移业务、被叫号码和被叫是否振铃等。被叫是否振铃是指被叫终端是否收到主叫通过运营商网络发起的蜂窝呼叫。
具体应用中,主叫终端可以直接与被叫终端通信,以获取到被叫终端相关信息;也可以通过VoIP服务器与被叫终端通信,以获取到被叫终端相关信息。
步骤S1004、主叫终端的VoIP客户端将获取到的被叫终端相关信息传输至Dial App。
步骤S1005、主叫终端的Dial App根据被叫终端相关信息,确定是否允许触发Silent Redial。
步骤S1006、如果允许触发Silent Redial,主叫终端的VoIP客户端则向被叫终端发起VoIP呼叫。
可以理解的是,主叫终端和被叫终端上均包括VoIP客户端,该VoIP客户端的具体表现形式可以是任意的,例如,该VoIP客户端为畅连通话APP。图10中的运营商网络包括主叫侧网络和被叫侧网络。
主叫终端可以根据被叫终端的通信号码,发起VoIP呼叫请求。该VoIP呼叫请求通过互联网传递至VoIP服务器,VoIP服务器再通过互联网传递至被叫终端。
由上可见,在上述第二种通话解决方案中,对于主叫终端的用户来说,仍然是无感的,且均是主叫终端主动执行的,无需用户操作。
而对于被叫终端来说,在运营商网络信号不好或者无运营商网络信号时,仍然能收到主叫终端的呼叫请求,并与主叫终端建立通话连接,实现互通。除了呼叫等待时间可能比正常呼叫流程更长之外,其它与正常情况下的呼叫流程是一致的。另外,主叫终端和被叫终端也不用互相加好友。另外,在该通话解决方案中,主叫终端可以根据对端信息,主动确定是否触发VoIP呼叫,不用主叫终端的用户进行额外的操作。
相较于小秘书服务,本申请实施例提供的通话解决方案可以在被叫侧网络信号不佳或者其它原因导致呼叫不可达时,实现主叫终端和被叫终端的互通。
相较于VoWi-Fi,本申请实施例提供的通话解决方案基于现有运营商网络即可实现在呼叫不可达时,实现主叫终端和被叫终端的互通。
相较于OTT通话,本申请实施例提供的通话解决方案主叫和被叫不用互加好友,也不用主叫用户在蜂窝呼叫失败时,手动发起VoIP呼叫。
需要指出的是,第二种通话解决方案与上述第一种通话解决方案的相同之处,可以参见上文相应内容。
由上可见,针对由于被叫侧运营商网络信号不佳或者无运营商网络信号等原因,导致被叫终端收不到呼叫的问题,上文分别提出了两种思路,第一种思路是在被叫侧搭建VoIP网关,并将VoIP网关连接至被叫侧网络,以在寻呼失败时,被叫侧网络根据前转号码生成前转消息,并该前转消息路由至VoIP网关,以将主叫终端的呼叫请求前转至VoIP网关。VoIP网关再将该从前转消息中解析得到的被叫号码传输至VoIP服务器,再由VoIP服务器根据被叫号码查询到相应的被叫终端,并发起VoIP呼叫;而第二种思路是在寻呼失败时,主叫终端判断是否满足一定的条件,如果满足一定的条件,则自动挂断当前的蜂窝通话,触发VoIP通话。这两种思路均可以在被叫终端运营商网络信号不佳或者无运营商网络信号等情况下,让被叫终端仍然能收到主叫终端发起的呼叫,建立通话连接。
需要说明的是,除了这两种通话解决方案,还可以将上述两种通话解决方案进行相应组合,以得到不同的通话解决方案。
第三种通话解决方案
例如,在本申请实施例提供的又一种通话解决方案中(下称“第三种通话解决方案”),通过搭建被叫终端一侧的VoIP网关和VoIP服务器,并将被叫侧网络连接至VoIP网关。此时,被叫侧网络寻呼失败,且被叫号码开通了不可及前转业务时,被叫侧网络可以将呼叫请求前转至VoIP网关,由VoIP网关和VoIP服务器将呼叫请求中 继至被叫终端,实现被叫终端和主叫终端的互通。而如果被叫号码没有开通不可及前转业务,则由主叫终端自动判断是否可以发起VoIP呼叫,并在满足一定条件时,自动挂断当前蜂窝呼叫,触发VoIP呼叫,实现主叫终端和被叫终端的互通。
在该通话解决方案中,需要部署VoIP网关,并将VoIP网关连接至被叫侧网络。另外,主叫终端通过互联网与VoIP服务器连接,被叫终端也通过互联网与VoIP服务器连接。
需要指出的是,第三种通话解决方案的通话网络架构与上述第一种通话解决方案的通话网络架构类似。在第一种通话解决方案的通话网络架构的基础上,VoIP服务器还可以互联网分别与主叫终端和被叫终端通信连接。
基于上述第三种通话解决方案,下面结合图11对该通话解决方案下的通话场景进行示例性说明。
请参见图11,图11是本申请实施例提供的又一种通话场景示意图。如图11所示,该场景可以包括主叫终端111、被叫终端112、主叫侧网络113、被叫侧网络114、VoIP服务器115、VoIP网关116和互联网117~119。
基于此,在寻呼失败时,如果被叫终端已经注册到VoIP服务器,且开启了不可及前转至VoIP客户端,被叫侧网络可以根据前转号码生成前转消息,并将携带有被叫号码的前转消息路由至VoIP网关,以将呼叫请求前转至VoIP网关。VoIP网关通过解析前转消息获得被叫号码,再将被叫号码发送至VoIP服务器。VoIP服务器根据被叫号码对被叫终端设备进行寻址,再向被叫终端设备发起VoIP呼叫。
如果被叫终端没有开启不可及前转VoIP客户端,但已经注册到VoIP服务器,此时,被叫侧网络不将呼叫请求前转至VoIP网关,而是由主叫终端主动判断是否发起VoIP通话,如果判定可以发起VoIP通话,主叫终端则通过VoIP服务器向被叫终端发起VoIP呼叫。
作为示例而非限定,第三种通话解决方案的过程可以包括:
主叫终端向被叫终端发起蜂窝呼叫,蜂窝呼叫请求通过主叫侧网络传递至被叫侧网络。被叫侧网络根据该蜂窝呼叫请求对被叫终端进行寻呼。寻呼失败时,被叫侧网络可以先从前转服务器上查询该被叫号码是否开通呼叫转移业务。如果该被叫号码开通了不可及呼叫转移业务时,则获取到不可及呼叫转移的目标号码,并生成该目标号码的呼叫请求(或称前转消息),该目标号码的呼叫请求携带有源被叫号码。如果目标号码是预先设定的号码(例如,6061XXX),被叫侧网络会将目标号码的呼叫请求均路由至VoIP网关。VoIP网关通过解析该呼叫请求获得被叫号码,再将该被叫号码发送至VoIP服务器。VoIP服务器根据被叫号码查找被叫终端,并向查找到的被叫终端发起VoIP呼叫。
而如果被叫侧网络确定被叫号码没有开通呼叫转移业务,运营商网络可以给主叫终端返回一个指示信息,该指示信息用于告知主叫终端被叫号码没有开通呼叫转移业务。主叫终端则可以进行对端能力查询,以确定被叫号码是否注册至VoIP服务器上,以及被叫终端的VoIP客户端是否处于有服务状态。如果被叫号码已注册在VoIP服务器上,且能满足一定条件,主叫终端则可以自动挂断当前蜂窝呼叫,触发VoIP呼叫。
进一步地,主叫终端还可以进一步判断被叫终端一侧的运营网络信号质量状况和 是否已接收到主叫发起的蜂窝呼叫并振铃等相关信息。并根据这些信息确定是否发起VoIP呼叫。
基于上述第三种通话解决方案的通话网络架构以及通话场景,下面对本申请实施例的通话流程进行详细说明。请参见图12,图12是本申请实施例提供的通话方法的又一交互示意图,该通话方法可以包括以下步骤:
步骤S1201、主叫终端向主叫侧网络发送呼叫请求。
需要说明的是,在其它一些实施例中,在步骤S1201之前,即主叫终端向被叫终端发起蜂窝呼叫之前,主叫终端可以先确定是否发起蜂窝呼叫,如果确定发起蜂窝呼叫,则进入步骤S1201。反之,如果确定不发起蜂窝呼叫,主叫终端可以先获取被叫终端的相关信息,例如,被叫终端是否已注册到VoIP服务器,被叫终端和VoIP服务器是否有通信链路等。然后,主叫终端再根据被叫终端的相关信息,确定是否发起VoIP呼叫。如果满足一定条件,主叫终端则向被叫终端发起VoIP呼叫。
主叫终端可以根据主叫侧蜂窝网络信号情况和/或被叫侧蜂窝网络信号情况,确定是否向被叫终端发起蜂窝呼叫。具体过程可以参见上文第二种通话解决方案的对应内容,在此不再赘述。
步骤S1202、在寻呼失败时,被叫侧网络确定被叫号码是否开通有不可及呼叫转移业务。若是,进入步骤S1203,若否,步骤S1209。
需要指出的是,呼叫转移业务还可以包括但不限于无应答呼叫转移业务、遇忙呼叫转移业务和无条件前转呼叫转移业务。
步骤S1203、被叫侧网络获取被叫号码的不可及前转号码,并生成前转消息。
该前转消息可以是根据前转号码生成的Invite消息,该消息携带有被叫号码。
步骤S1204、被叫侧网络将该前转消息路由至第一VoIP服务器。
步骤S1205、第一VoIP服务器解析该前转消息,得到被叫号码。
步骤S1206、第一VoIP服务器将被叫号码发送至第二VoIP服务器。
步骤S1207、第二VoIP服务器查找该被叫号码对应的VoIP通信号码。
步骤S1208、第二VoIP服务器根据该VoIP通信号码向被叫终端发起VoIP呼叫。
步骤S1209、主叫终端确定是否满足预设触发条件。若是,则进入步骤S1210。
此时,该预设触发条件可以是超时触发和/网络挂断触发;还可以是接收到运营商网络返回的一个指示消息,即被叫侧网络在寻呼失败,且被叫号码没有开通不可及前转呼叫转移业务时,被叫侧网络可以给主叫终端返回一个指示消息,该指示消息用于指示进行后续步骤,即进行步骤S1210。
步骤S1210、主叫终端获取被叫终端相关信息。
步骤S1211、主叫终端根据被叫终端相关信息,确定是否允许触发Silent Redial。若是,进入步骤S1212。
步骤S1212、主叫终端向被叫终端发起VoIP呼叫。
需要说明的是,该通话解决方案与上文提及的两种思路的通话解决方案的相同之处,可以相互参见。
需要指出的是,第三种通话解决方案可以看作是第一种通话解决方案和第二种通话解决方案的组合。
在这种情况下,对于一些没有开通不可及前转业务,但已经注册到VoIP服务器的被叫号码来说,在被叫侧网络呼叫不可达时,被叫终端仍然可以接收到主叫终端的呼叫请求,实现主叫和被叫的互通。
第三种通话解决方案与上文的第一种通话解决方案、第二种通话解决方案的相同或相似之处,可以参见上文相应内容,在此不再赘述。
还需要指出的是,上文仅仅列举了三种通话解决方案,并不意味着本申请实施例只有这三种通话解决方案。基于这三种解决方案,进行相应地组合可以得到一些新的通话解决方案。换句话说,上文分别示出了三种可能的通话解决方案,但实际应用中,基于这三种通话解决方案进行组合,或者步骤的增加、删减或者替换所得到的方案也应用落入到本申请实施例的保护范围。
还需要指出的是,在上文提及的几种通话解决方案中,主叫终端一般都是通过无线基站接入到运营商网络中。而在其它一些实施例中,主叫终端也可以通过VoWi-Fi接入到运营商网络中。也就是说,本申请实施例提供的几种通话解决方案也适用于VoWi-Fi场景。在VoWi-Fi场景下,被叫侧网络、VoIP网关和VoIP服务器的处理流程与上文的类似,在此不再赘述。
本申请实施例还提供了一种终端设备,该终端设备可以具体外现为主叫终端、被叫终端、VoIP网关或VoIP服务器。主叫终端可以具体为手机或平板电脑等移动通话终端,也可以为固话。被叫终端可以具体为手机或平板电脑等移动通话终端。
该种终端设备可以包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现对应的方法流程。
当终端设备为第一终端设备时,其可以执行第一终端设备一侧的相关方法流程。当终端设备为第二终端设备时,其可以执行第二终端设备一侧的相关方法流程。当终端设备为VoIP服务器时,其可以执行VoIP服务器一侧的相关方法流程。
作为示例而非限定,如图13所示,电子设备1300可以包括处理器1310,外部存储器接口1320,内部存储器1321,通用串行总线(universal serial bus,USB)接口1330,充电管理模块1340,电源管理模块1341,电池1342,天线1,天线2,移动通信模块1350,无线通信模块1360,音频模块1370,扬声器1370A,受话器1370B,麦克风1370C,耳机接口1370D,传感器模块1380,按键1390,马达1391,指示器1392,摄像头1393,显示屏1394,以及用户标识模块(subscriber identification module,SIM)卡接口1395等。其中传感器模块1380可以包括压力传感器1380A,陀螺仪传感器1380B,气压传感器1380C,磁传感器1380D,加速度传感器1380E,距离传感器1380F,接近光传感器1380G,指纹传感器1380H,温度传感器1380J,触摸传感器1380K,环境光传感器1380L,骨传导传感器1380M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备1300的具体限定。在本申请另一些实施例中,电子设备1300可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器1310可以包括一个或多个处理单元,例如:处理器1310可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing  unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备1300的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器1310中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器1310中的存储器为高速缓冲存储器。该存储器可以保存处理器1310刚用过或循环使用的指令或数据。如果处理器1310需要再次使用该指令或数据,可从存储器中直接调用。避免了重复存取,减少了处理器113的等待时间,因而提高了系统的效率。
在一些实施例中,处理器1310可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器1310可以包含多组I2C总线。处理器1310可以通过不同的I2C总线接口分别耦合触摸传感器1380K,充电器,闪光灯,摄像头1393等。例如:处理器1310可以通过I2C接口耦合触摸传感器1380K,使处理器1310与触摸传感器1380K通过I2C总线接口通信,实现电子设备1300的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器1310可以包含多组I2S总线。处理器1310可以通过I2S总线与音频模块1370耦合,实现处理器1310与音频模块1370之间的通信。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块1370与无线通信模块1360可以通过PCM总线接口耦合。I2S接口和PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器1310与无线通信模块1360。例如:处理器1310通过UART接口与无线通信模块1360中的蓝牙模块通信,实现蓝牙功能。
MIPI接口可以被用于连接处理器1310与显示屏1394,摄像头1393等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(display serial interface,DSI)等。在一些实施例中,处理器1310和摄像头1393通过CSI接口通信,实现电子设备1300的拍摄功能。处理器1310和显示屏1394通过DSI接口通信,实现电子设备1300的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为 数据信号。在一些实施例中,GPIO接口可以用于连接处理器1310与摄像头1393,显示屏1394,无线通信模块1360,音频模块1370,传感器模块1380等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口1330是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口1330可以用于连接充电器为电子设备1300充电,也可以用于电子设备1300与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备1300的结构限定。在本申请另一些实施例中,电子设备1300也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块1340用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块1340可以通过USB接口1330接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备1300的无线充电线圈接收无线充电输入。充电管理模块1340为电池1342充电的同时,还可以通过电源管理模块1341为电子设备供电。
电源管理模块1341用于连接电池1342,充电管理模块1340与处理器1310。电源管理模块1341接收电池1342和/或充电管理模块1340的输入,为处理器1310,内部存储器1321,外部存储器,显示屏1394,摄像头1393,和无线通信模块1360等供电。电源管理模块1341还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块1341也可以设置于处理器1310中。在另一些实施例中,电源管理模块1341和充电管理模块1340也可以设置于同一个器件中。
电子设备1300的无线通信功能可以通过天线1,天线2,移动通信模块1350,无线通信模块1360,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备1300中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块1350可以提供应用在电子设备1300上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块1350可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块1350可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块1350还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块1350的至少部分功能模块可以被设置于处理器1310中。在一些实施例中,移动通信模块1350的至少部分功能模块可以与处理器1310的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处 理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器1370A,受话器1370B等)输出声音信号,或通过显示屏1394显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器1310,与移动通信模块1350或其他功能模块设置在同一个器件中。
无线通信模块1360可以提供应用在电子设备1300上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块1360可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块1360经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器113。无线通信模块1360还可以从处理器1310接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备1300的天线1和移动通信模块1350耦合,天线2和无线通信模块1360耦合,使得电子设备1300可以通过无线通信技术与网络以及其他设备通信。无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备1300通过GPU,显示屏1394,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏1394和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器1310可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏1394用于显示图像,视频等。显示屏1394包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emitting diode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,AMOLED),柔性发光二极管(flex light-emitting diode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot light emitting diodes,QLED)等。在一些实施例中,电子设备1300可以包括1个或N个显示屏1394,N为大于1的正整数。
电子设备1300可以通过ISP,摄像头1393,视频编解码器,GPU,显示屏1394以及应用处理器等实现拍摄功能。
ISP用于处理摄像头1393反馈的数据。例如,拍照时,打开快门,光线通过镜头 被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头1393中。
摄像头1393用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备1300可以包括1个或N个摄像头1393,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备1300在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备1300可以支持一种或多种视频编解码器。这样,电子设备1300可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备1300的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口1320可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备1300的存储能力。外部存储卡通过外部存储器接口1320与处理器1310通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器1321可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器1310通过运行存储在内部存储器1321的指令,从而执行电子设备1300的各种功能应用以及数据处理。内部存储器1321可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备1300使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器1321可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
电子设备1300可以通过音频模块1370,扬声器1370A,受话器1370B,麦克风1370C,耳机接口1370D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块1370用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块1370还可以用于对音频信号编码和解码。在一些实施例中,音频模块1370可以设置于处理器1310中,或将音频模块1370的部分功能模块设置于处理器1310中。
扬声器1370A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备130可以通过扬声器1370A收听音乐,或收听免提通话。
受话器1370B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备130接听电话或语音信息时,可以通过将受话器1370B靠近人耳接听语音。
麦克风1370C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风1370C发声,将声音信号输入到麦克风1370C。电子设备1300可以设置至少一个麦克风1370C。在另一些实施例中,电子设备1300可以设置两个麦克风1370C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备1300还可以设置三个,四个或更多麦克风1370C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口1370D用于连接有线耳机。耳机接口1370D可以是USB接口1330,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器1380A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器1380A可以设置于显示屏1394。压力传感器1380A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备1300根据电容的变化确定压力的强度。当有触摸操作作用于显示屏1394,电子设备1300根据压力传感器1380A检测触摸操作强度。电子设备1300也可以根据压力传感器1380A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器1380B可以用于确定电子设备1300的运动姿态。在一些实施例中,可以通过陀螺仪传感器1380B确定电子设备1300围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器1380B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备1300抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备1300的抖动,实现防抖。陀螺仪传感器1380B还可以用于导航,体感游戏场景。
气压传感器1380C用于测量气压。在一些实施例中,电子设备1300通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器1380D包括霍尔传感器。电子设备1300可以利用磁传感器1380D检测翻盖皮套的开合。在一些实施例中,当电子设备1300是翻盖机时,电子设备1300可以根据磁传感器1380D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器1380E可检测电子设备1300在各个方向上(一般为三轴)加速度的大小。当电子设备1300静止时可检测出重力的大小及方向。还可以用于识别电子设备 姿态,应用于横竖屏切换,计步器等应用。
距离传感器1380F,用于测量距离。电子设备1300可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备130可以利用距离传感器1380F测距以实现快速对焦。
接近光传感器1380G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备1300通过发光二极管向外发射红外光。电子设备1300使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备1300附近有物体。当检测到不充分的反射光时,电子设备1300可以确定电子设备1300附近没有物体。电子设备1300可以利用接近光传感器1380G检测用户手持电子设备1300贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器1380G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器1380L用于感知环境光亮度。电子设备1300可以根据感知的环境光亮度自适应调节显示屏1394亮度。环境光传感器1380L也可用于拍照时自动调节白平衡。环境光传感器1380L还可以与接近光传感器1380G配合,检测电子设备1300是否在口袋里,以防误触。
指纹传感器1380H用于采集指纹。电子设备1300可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器1380J用于检测温度。在一些实施例中,电子设备1300利用温度传感器1380J检测的温度,执行温度处理策略。例如,当温度传感器1380J上报的温度超过阈值,电子设备1300执行降低位于温度传感器1380J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备1300对电池1342加热,以避免低温导致电子设备1300异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备1300对电池1342的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器1380K,也称“触控面板”。触摸传感器1380K可以设置于显示屏1394,由触摸传感器1380K与显示屏1394组成触摸屏,也称“触控屏”。触摸传感器1380K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏1394提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器1380K也可以设置于电子设备1300的表面,与显示屏1394所处的位置不同。
骨传导传感器1380M可以获取振动信号。在一些实施例中,骨传导传感器1380M可以获取人体声部振动骨块的振动信号。骨传导传感器1380M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器1380M也可以设置于耳机中,结合成骨传导耳机。音频模块1370可以基于骨传导传感器1380M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于骨传导传感器1380M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键1390包括开机键,音量键等。按键1390可以是机械按键。也可以是触摸式按键。电子设备1300可以接收按键输入,产生与电子设备1300的用户设置以及功能控制有关的键信号输入。
马达1391可以产生振动提示。马达1391可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏1394不同区域的触摸操作,马达1391也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器1392可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口1395用于连接SIM卡。SIM卡可以通过插入SIM卡接口1395,或从SIM卡接口1395拔出,实现和电子设备1300的接触和分离。电子设备1300可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口1395可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口1395可以同时插入多张卡。多张卡的类型可以相同,也可以不同。SIM卡接口1395也可以兼容不同类型的SIM卡。SIM卡接口1395也可以兼容外部存储卡。电子设备1300通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备1300采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备1300中,不能和电子设备1300分离。
电子设备1300的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android系统为例,示例性说明电子设备1300的软件结构。
图14是本发明实施例的电子设备1300的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图14所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,拨号APP,畅连通话等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图14所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备1300的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文 件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
下面结合通话场景,示例性说明电子设备1300软件以及硬件的工作流程。
主叫终端的拨号App发起蜂窝呼叫时,拨号APP将相应的数据发生至移动通信模块1050,移动通信模块1350通过调制器生成Invite消息,将该Invite消息通过天线1转为电磁波辐射出去。Invite消息通过无线基站传递至运营商网络,运营商网络再将该Invite消息传递至被叫终端。被叫终端通过天线1接收电磁波,通过解调器对电磁波进行解调,得到对应的通话数据,被叫终端的电话管理器通知拨号APP,接通电话。
本申请实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序(也可以称为指令或代码),计算机程序被运行时,实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,计算机程序产品包括计算机程序(也可称为指令或代码),当计算机程序在电子设备上运行时,使得电子设备实现上述各个方法实施例中的步骤。
本申请实施例还提供一种芯片系统,芯片系统包括处理器,处理器与存储器耦合,处理器执行存储器中存储的计算机程序,以实现如上述各个方法实施例中的步骤。
可选地,所述芯片系统可以为单个芯片,或者多个芯片组成的芯片模组。可选地, 所述芯片系统还可以包括存储器,存储器与处理器通过电路或电线连接。可选地,所述芯片还包括通信接口。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
此外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。
最后应说明的是:以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (45)

  1. 一种通话系统,其特征在于,包括第一终端设备、网络设备、VoIP服务器和第二终端设备,所述第二终端设备安装有作为VoIP客户端的第一应用程序;
    所述第一终端设备用于在检测到第一操作后,响应于所述第一操作,向所述网络设备发送第一呼叫请求,所述第一呼叫请求为针对目标号码发起的呼叫请求;
    所述网络设备用于在接收到所述第一呼叫请求后,根据所述第一呼叫请求,向所述VoIP服务器发送第一消息,所述第一消息携带有所述目标号码,且所述目标号码已开通呼叫转移服务;
    所述VoIP服务器用于在接收到所述第一消息后,根据所述第一消息,向与所述目标号码关联的所述第二终端设备发送第二呼叫请求;
    所述第二终端设备用于接收所述第二呼叫请求。
  2. 根据权利要求1所述的系统,其特征在于,所述呼叫转移服务包括不可及呼叫转移服务,所述网络设备具体用于:
    根据所述第一呼叫请求,对所述目标号码进行寻呼;
    当寻呼失败,且所述目标号码预先设置的不可及呼叫转移号码为预设号码,则根据所述预设号码和所述第一呼叫请求,生成所述第一消息;
    向所述VoIP服务器发送所述第一消息。
  3. 根据权利要求1所述的系统,其特征在于,所述VoIP服务器包括第一VoIP服务器和第二VoIP服务器;
    所述第一VoIP服务器用于接收来自所述网络设备的所述第一消息,解析所述第一消息,得到所述目标号码,向所述第二VoIP服务器发送所述目标号码;
    所述第二VoIP服务器用于接收来自所述第一VoIP服务器的所述目标号码;查找与所述目标号码关联的VoIP通信信息,根据所述VoIP通信信息,向所述第二终端设备发送所述第二呼叫请求。
  4. 根据权利要求3所述的系统,其特征在于,所述VoIP通信信息包括以下至少一项:所述第二终端设备的物理地址,所述第二终端设备的移动设备识别码,所述第二终端设备的国际移动设备识别码。
  5. 一种通话系统,其特征在于,包括第一终端设备和第二终端设备,所述第二终端设备安装有作为VoIP客户端的第一应用程序;
    所述第一终端设备用于检测第一操作后,响应于所述第一操作,向网络设备发送第一呼叫请求,所述第一呼叫请求为针对目标号码发起的呼叫请求;
    所述第二终端设备用于接收来自VoIP服务器的第二呼叫请求,所述第二呼叫请求为所述VoIP服务器根据来自网络设备的第一消息,向与所述目标号码关联的所述第二终端设备发送的VoIP呼叫请求,所述第一消息为所述网络设备根据所述第一呼叫请求,向所述VoIP服务器发送的消息,所述第一消息携带有所述目标号码,所述目标号码已开通呼叫转移服务。
  6. 根据权利要求5所述的系统,其特征在于,所述第二终端设备在接收所述第二呼叫请求之后,还用于:
    通过所述第一应用程序响应于所述第二呼叫请求,显示第一界面,所述第一界面 包括以下至少一项:所述第一终端设备的号码、第一按钮和第二按钮;其中,所述第一按钮用于接听呼叫,所述第二按钮用于拒接呼叫。
  7. 根据权利要求6所述的系统,其特征在于,所述第二终端设备还用于:
    当检测到针对所述第一按钮的第二操作后,响应于所述第二操作,通过所述第一应用程序与所述第一终端设备建立通话连接。
  8. 根据权利要求5所述的系统,其特征在于,所述第一终端设备在检测到第一操作后,还用于:
    响应于所述第一操作,显示第二界面,所述第二界面包括以下至少一项:所述目标号码和第三按钮;其中,所述第三按钮用于挂断呼叫。
  9. 根据权利要求5至8任一项所述的系统,其特征在于,所述第一终端设备安装有作为VoIP客户端的第二应用程序,所述第一终端设备还用于:
    当确定符合目标条件,挂断所述第一呼叫请求对应的呼叫,通过第二应用程序向所述VoIP服务器发送第三呼叫请求,所述第三呼叫请求为针对所述目标号码的VoIP呼叫请求;
    所述第二终端设备还用于:
    接收来自所述VoIP服务器的所述第三呼叫请求。
  10. 根据权利要求9所述的系统,其特征在于,所述第一终端设备在确定符合目标条件之后,还用于:
    在第二界面上显示第一提示信息,所述第一提示信息用于提示是否切换至VoIP通话;
    检测到第三操作,所述第三操作用于指示所述第一终端设备切换至VoIP通话;
    响应于所述第三操作,进入挂断所述第一呼叫请求对应的呼叫,通过所述第二应用程序向VoIP服务器发送第三呼叫请求的步骤。
  11. 根据权利要求10所述的系统,其特征在于,所述第一终端设备在挂断所述第一呼叫请求对应的呼叫,通过所述第二应用程序向VoIP服务器发送第三呼叫请求之后,还用于:
    在所述第二界面显示第二提示信息,所述第二提示信息用于提示已切换至VoIP通话。
  12. 根据权利要求5至11任一项所述的系统,其特征在于,所述第一终端设备具体用于:
    确定是否符合第一预设条件;
    当符合所述第一预设条件,则获取所述目标号码关联的相关信息;
    根据所述相关信息,确定是否符合第二预设条件;
    当符合第二预设条件,则确定符合所述目标条件;
    当不符合所述第一预设条件和/或不符合所述第二预设条件,则确定不符合所述目标条件。
  13. 根据权利要求12所述的系统,其特征在于,所述第一终端设备具体用于:
    当接收到所述网络设备返回的第二消息,确定符合所述第一预设条件,所述第二消息用于描述目标号码寻呼失败;或者,当定时器检测到的时间超出预设时间阈值, 确定符合所述第一预设条件,所述定时器用于检测呼叫发起到振铃的时间;
    当未接收到所述网络设备返回的所述第二消息和/或所述定时器检测到的时间未超出所述预设时间阈值,确定不符合所述第一预设条件。
  14. 根据权利要求12所述的系统,其特征在于,所述第一终端设备具体用于:
    通过第二应用程序,向VoIP服务器发送查询请求,所述查询请求携带有所述目标号码;接收来自所述VoIP服务器的所述目标号码关联的相关信息。
  15. 根据权利要求12所述的系统,其特征在于,所述相关信息包括第一信息、第二信息、第三信息和第四信息,所述第一信息用于描述所述VoIP服务器上是否存储有所述目标号码,所述第二信息用于描述所述第一应用程序是否处于在线状态,所述第三信息用于描述所述第二终端的运营商网络信号情况,所述第四信息用于描述所述目标号码是否开通呼叫转移服务;
    所述第一终端设备具体用于:
    当所述VoIP服务器上存储有所述目标号码,所述第一应用程序处于在线状态,所述第二终端的运营商网络信号为无服务状态,且所述目标号码未开通呼叫转移服务,确定符合所述第二预设条件。
  16. 根据权利要求5至15任一项所述的系统,其特征在于,在检测到第一操作之后,所述第一终端设备还用于:
    显示第三界面,所述第三界面包括用于提示用户选择通话方式的第三提示信息,以及蜂窝通话选项和VoIP通话选项;
    当检测到针对所述蜂窝通话选项的操作,进入所述响应于所述第一操作,向网络设备发送第一呼叫请求的步骤;
    当检测到针对所述VoIP通话选项的操作,通过第二应用程序向所述VoIP服务器发送第四呼叫请求,所述第四呼叫请求用于指示所述VoIP服务器向与所述目标号码关联的第二终端设备发起VoIP呼叫,所述第四呼叫请求为针对所述目标号码的VoIP呼叫请求。
  17. 根据权利要求5至16任一项所述的系统,其特征在于,所述第二终端设备满足以下至少一项:所述目标号码与所述第一应用程序的账号绑定,所述目标号码为所述第二终端设备的SIM卡号码,所述第二终端设备的SIM卡处于无服务状态。
  18. 一种通话方法,应用于VoIP服务器,其特征在于,包括:
    接收来自网络设备的第一消息,所述第一消息携带有目标号码,所述第一消息为所述网络设备在接收到来自第一终端设备的第一呼叫请求后,根据所述第一呼叫请求,向所述VoIP服务器发送的消息,所述目标号码已开通呼叫转移服务,所述第一呼叫请求为所述第一终端设备针对所述目标号码发起的呼叫请求;
    根据所述第一消息,向与所述目标号码关联的第二终端设备发送第二呼叫请求。
  19. 根据权利要求18所述的方法,其特征在于,根据所述第一消息,向与所述目标号码关联的第二终端设备发送第二呼叫请求,包括:
    解析所述第一消息,得到所述目标号码;
    根据所述目标号码,查找与所述目标号码关联的VoIP通信信息;
    根据所述VoIP通信信息,向所述第二终端设备发送所述第二呼叫请求。
  20. 根据权利要求19所述的方法,其特征在于,所述VoIP通信信息包括以下至少一项:所述第二终端设备的物理地址,所述第二终端设备的移动设备识别码,所述第二终端设备的国际移动设备识别码。
  21. 根据权利要求18所述的方法,其特征在于,所述方法还包括:
    接收来自所述第一终端设备的第一注册请求,所述第一注册请求包括所述第一终端设备的号码、第二应用程序的账号和所述第一终端设备的设备标识信息,所述第二应用程序为所述第二终端设备上作为VoIP客户端的应用程序;
    将所述第二应用程序的账号、所述第一终端设备的设备标识信息与所述第一终端设备的号码关联;
    和/或,
    接收来自所述第二终端设备的第二注册请求,所述第二注册请求包括所述目标号码、第一应用程序的账号和所述第二终端设备的设备标识信息,所述第一应用程序为所述第二终端设备上作为VoIP客户端的应用程序;
    将所述第一应用程序的账号、所述第二终端设备的设备标识信息与所述目标号码关联。
  22. 一种通话方法,其特征在于,应用于第一终端设备,所述第一终端设备安装有作为VoIP客户端的第二应用程序,所述方法包括:
    检测到第一操作;
    响应于所述第一操作,向网络设备发送第一呼叫请求,所述第一呼叫请求为针对目标号码发起的呼叫请求;
    当确定符合目标条件,挂断所述第一呼叫请求对应的呼叫,通过所述第二应用程序向VoIP服务器发送第三呼叫请求,所述第三呼叫请求为针对所述目标号码的VoIP呼叫请求,所述第三呼叫请求用于指示所述VoIP服务器向与所述目标号码关联的第二终端设备发起VoIP呼叫。
  23. 根据权利要求22所述的方法,其特征在于,在检测到第一操作之后,所述方法还包括:
    响应于所述第一操作,显示第二界面,所述第二界面包括:所述目标号码和第三按钮;其中,所述第三按钮用于挂断呼叫。
  24. 根据权利要求23所述的方法,其特征在于,在确定符合目标条件之后,所述方法还包括:
    在所述第二界面上显示第一提示信息,所述第一提示信息用于提示是否切换至VoIP通话;
    检测到第三操作,所述第三操作用于指示所述第一终端设备切换至VoIP通话;
    响应于所述第三操作,进入挂断所述第一呼叫请求对应的呼叫,通过所述第二应用程序向VoIP服务器发送针对所述目标号码的第三VoIP呼叫请求的步骤。
  25. 根据权利要求23或24所述的方法,其特征在于,在挂断所述第一呼叫请求对应的呼叫,通过所述第二应用程序向VoIP服务器发送针对所述目标号码的第三呼叫请求之后,所述方法还包括:
    在所述第二界面显示第二提示信息,所述第二提示信息用于提示已切换至VoIP 通话。
  26. 根据权利要求22至25任一项所述的方法,其特征在于,确定是否符合所述目标条件,包括:
    确定是否符合第一预设条件;
    当符合所述第一预设条件,则获取所述目标号码关联的相关信息;
    根据所述相关信息,确定是否符合第二预设条件;
    当符合第二预设条件,则确定符合所述目标条件;
    当不符合所述第一预设条件和/或不符合所述第二预设条件,则确定不符合所述目标条件。
  27. 根据权利要求26所述的方法,其特征在于,确定是否符合第一预设条件,包括:
    当接收到所述网络设备返回的第二消息,确定符合所述第一预设条件,所述第二消息用于描述目标号码寻呼失败;或者,当定时器检测到的时间超出预设时间阈值,确定符合所述第一预设条件,所述定时器用于检测呼叫发起到振铃的时间;
    当未接收到所述网络设备返回的所述第二消息和/或所述定时器检测到的时间未超出所述预设时间阈值,确定不符合所述第一预设条件。
  28. 根据权利要求26所述的方法,其特征在于,获取所述目标号码关联的相关信息,包括:
    通过所述第二应用程序,向VoIP服务器发送查询请求,所述查询请求携带有所述目标号码;
    接收来自所述VoIP服务器的所述目标号码关联的相关信息。
  29. 根据权利要求26所述的方法,其特征在于,所述相关信息包括第一信息、第二信息、第三信息和第四信息,所述第一信息用于描述所述VoIP服务器上是否存储有所述目标号码,所述第二信息用于描述第一应用程序是否处于在线状态,所述第三信息用于描述所述第二终端的运营商网络信号情况,所述第四信息用于描述所述目标号码是否开通呼叫转移服务;
    根据所述相关信息,确定是否符合第二预设条件,包括:
    当所述VoIP服务器上存储有所述目标号码,第一应用程序处于在线状态,所述第二终端的运营商网络信号为无服务状态,且所述目标号码未开通呼叫转移服务,确定符合所述第二预设条件;
    其中,所述第二终端设备上安装有作为VoIP客户端的第一应用程序。
  30. 根据权利要求22至29任一项所述的方法,其特征在于,在检测到第一操作之后,所述方法还包括:
    显示第三界面,所述第三界面包括用于提示用户选择通话方式的第三提示信息,以及蜂窝通话选项和VoIP通话选项;
    当检测到针对所述蜂窝通话选项的操作,进入所述响应于所述第一操作,向网络设备发送第一呼叫请求的步骤;
    当检测到针对所述VoIP通话选项的操作,通过所述第二应用程序向所述VoIP服务器发送第四呼叫请求,所述第四呼叫请求为针对所述目标号码的VoIP呼叫请求,所 述第四呼叫请求用于指示所述VoIP服务器向与所述目标号码关联的第二终端设备发起VoIP呼叫。
  31. 一种通话系统,其特征在于,包括第一终端设备、VoIP服务器和第二终端设备,所述第二终端设备安装有作为VoIP客户端的第一应用程序,所述第一终端设备安装有作为VoIP客户端的第二应用程序;
    所述第一终端设备用于检测到第一操作后,响应于所述第一操作,向网络设备发送第一呼叫请求,所述第一呼叫请求为针对目标号码发起的呼叫请求;当确定符合目标条件,则挂断所述第一呼叫请求对应的呼叫,通过所述第二应用程序向所述VoIP服务器发送第三呼叫请求,所述第三呼叫请求为针对所述目标号码的VoIP呼叫请求;
    所述VoIP服务器用于接收所述第三呼叫请求,向与所述目标号码关联的所述第二终端设备发送所述第三呼叫请求;
    所述第二终端设备用于通过所述第一应用程序接收所述第三呼叫请求。
  32. 根据权利要求31所述的系统,其特征在于,所述第一终端设备还用于:
    响应于所述第一操作,显示第二界面,所述第二界面包括:所述目标号码和第三按钮;其中,所述第三按钮用于挂断呼叫。
  33. 根据权利要求32所述的系统,其特征在于,所述第一终端设备还用于:
    当确定符合目标条件,在所述第二界面显示第一提示信息,所述第一提示信息用于提示是否切换至VoIP通话;
    检测到第三操作,所述第三操作用于指示所述第一终端设备切换至VoIP通话;
    响应于所述第三操作,进入挂断所述第一呼叫请求对应的呼叫,通过所述第二应用程序向VoIP服务器发送针对所述目标号码的第三VoIP呼叫请求的步骤。
  34. 根据权利要求32或33所述的系统,其特征在于,所述第一终端设备还用于:
    在所述第二界面显示第二提示信息,所述第二提示信息用于提示已切换至VoIP通话。
  35. 根据权利要求31至34任一项所述的系统,其特征在于,所述第一终端设备具体用于:
    确定是否符合第一预设条件;
    当符合所述第一预设条件,则获取所述目标号码关联的相关信息;
    根据所述相关信息,确定是否符合第二预设条件;
    当符合第二预设条件,则确定符合所述目标条件;
    当不符合所述第一预设条件和/或不符合所述第二预设条件,则确定不符合所述目标条件。
  36. 根据权利要求35所述的系统,其特征在于,所述第一终端设备具体用于:
    当接收到所述网络设备返回的第二消息,确定符合所述第一预设条件,所述第二消息用于描述目标号码寻呼失败;或者,当定时器检测到的时间超出预设时间阈值,确定符合所述第一预设条件,所述定时器用于检测呼叫发起到振铃的时间;
    当未接收到所述网络设备返回的所述第二消息和/或所述定时器检测到的时间未超出所述预设时间阈值,确定不符合所述第一预设条件。
  37. 根据权利要求35所述的系统,其特征在于,所述第一终端设备具体用于:
    通过所述第二应用程序,向VoIP服务器发送查询请求,所述查询请求携带有所述目标号码;
    通过所述第二应用程序,接收来自所述VoIP服务器的所述目标号码对应的相关信息。
  38. 根据权利要求35所述的系统,其特征在于,所述相关信息包括第一信息、第二信息、第三信息和第四信息,所述第一信息用于描述所述VoIP服务器上是否存储有所述目标号码,所述第二信息用于描述所述第一应用程序是否处于在线状态,所述第三信息用于描述所述第二终端的运营商网络信号情况,所述第四信息用于描述所述目标号码是否开通呼叫转移服务;
    所述第一终端设备具体用于:当所述VoIP服务器上存储有所述目标号码,所述第一应用程序处于在线状态,所述第二终端的运营商网络信号为无服务状态,且所述目标号码未开通呼叫转移服务,确定符合所述第二预设条件。
  39. 根据权利要求31至38任一项所述的系统,其特征在于,所述第二终端设备还用于:
    通过所述第一应用程序,响应于所述第三呼叫请求,显示第一界面,所述第一界面包括以下至少一项:所述第一终端设备的号码、第一按钮和第二按钮;其中,所述第一按钮用于接听呼叫,所述第二按钮用于拒接呼叫。
  40. 根据权利要求39所述的系统,其特征在于,所述第二终端设备还用于:
    检测到针对所述第一按钮的第二操作;
    响应于所述第二操作,通过所述第一应用程序与所述第一终端设备建立VoIP通话连接。
  41. 根据权利要求31所述的系统,其特征在于,所述VoIP服务器还用于:
    接收来自所述第一终端设备的第一注册请求,所述第一注册请求包括所述第一终端设备的号码、第二应用程序的账号和所述第一终端设备的设备标识信息;
    将所述第二应用程序的账号、所述第一终端设备的设备标识信息与所述第一终端设备的号码关联;
    接收来自所述第二终端设备的第二注册请求,所述第二注册请求包括所述目标号码、第一应用程序的账号和所述第二终端设备的设备标识信息;
    将所述第一应用程序的账号、所述第二终端设备的设备标识信息与所述目标号码关联。
  42. 根据权利要求31所述的系统,其特征在于,所述第一终端设备还用于:
    显示第三界面,所述第三界面包括用于提示用户选择通话方式的第三提示信息,以及蜂窝通话选项和VoIP通话选项;
    当检测到针对所述蜂窝通话选项的操作,进入所述响应于所述第一操作,向网络设备发送第一呼叫请求的步骤;
    当检测到针对所述VoIP通话选项的操作,通过所述第二应用程序向所述VoIP服务器发送第四呼叫请求,所述第四呼叫请求为针对所述目标号码的VoIP呼叫请求,所述第四呼叫请求用于指示所述VoIP服务器向与所述目标号码关联的第二终端设备发起VoIP呼叫。
  43. 一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求18至21任一项所述的方法。
  44. 一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求22至30任一项所述的方法。
  45. 一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求18至21或者22至30任一项所述的方法。
PCT/CN2021/108234 2020-07-31 2021-07-23 通话方法、系统和相关装置 WO2022022427A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/015,373 US20230319189A1 (en) 2020-07-31 2021-07-23 Call method and system, and related apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010762039.2 2020-07-31
CN202010762039.2A CN114095885B (zh) 2020-07-31 2020-07-31 通话方法、系统和相关装置

Publications (1)

Publication Number Publication Date
WO2022022427A1 true WO2022022427A1 (zh) 2022-02-03

Family

ID=80037594

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/108234 WO2022022427A1 (zh) 2020-07-31 2021-07-23 通话方法、系统和相关装置

Country Status (3)

Country Link
US (1) US20230319189A1 (zh)
CN (1) CN114095885B (zh)
WO (1) WO2022022427A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117135562B (zh) * 2023-02-27 2024-06-04 荣耀终端有限公司 参数设置方法、终端设备及可读存储介质
CN117135618B (zh) * 2023-03-21 2024-05-31 荣耀终端有限公司 设置本机号码功能的方法、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105119937A (zh) * 2015-09-14 2015-12-02 深圳市优友互联有限公司 用户终端的通话方法与装置
WO2016168217A1 (en) * 2015-04-17 2016-10-20 Microsoft Technology Licensing, Llc Managing communication events
WO2017028567A1 (zh) * 2015-08-20 2017-02-23 中兴通讯股份有限公司 网络电话连接处理方法及装置
CN107708078A (zh) * 2017-09-13 2018-02-16 捷开通讯(深圳)有限公司 移动终端及其呼叫转移方法、存储装置
CN107864460A (zh) * 2017-11-16 2018-03-30 北京小米移动软件有限公司 呼叫转移方法、装置和设备

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8989813B2 (en) * 2005-04-06 2015-03-24 Qwest Communications International Inc. Handset registration in a dual-mode environment
CN101404704B (zh) * 2008-11-19 2011-03-30 杭州华三通信技术有限公司 同网段VoIP终端之间的呼叫方法和VoIP终端
US20100195641A1 (en) * 2009-02-04 2010-08-05 Grasstell Networks Llc Seamless multi-mode voice
CN102377887B (zh) * 2010-08-12 2015-08-12 中兴通讯股份有限公司 一种实现网络电话呼叫建立的方法及系统
CN102355538B (zh) * 2011-08-08 2014-03-05 迈普通信技术股份有限公司 用于voip系统的号码接管方法及一种voip系统
CN103166914B (zh) * 2011-12-09 2017-02-08 中兴通讯股份有限公司 多媒体呼叫的实现方法及系统
CN104506523B (zh) * 2014-12-22 2018-05-04 迈普通信技术股份有限公司 一种智能终端VoIP的呼叫转接方法
US10104235B2 (en) * 2015-04-16 2018-10-16 Algoblu Holdings Limited Forwarding roaming call to VoIP system
CN106921627A (zh) * 2015-12-25 2017-07-04 阿尔格布鲁控股有限公司 提供到外部电话网络的呼叫转发的VoIP

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016168217A1 (en) * 2015-04-17 2016-10-20 Microsoft Technology Licensing, Llc Managing communication events
WO2017028567A1 (zh) * 2015-08-20 2017-02-23 中兴通讯股份有限公司 网络电话连接处理方法及装置
CN105119937A (zh) * 2015-09-14 2015-12-02 深圳市优友互联有限公司 用户终端的通话方法与装置
CN107708078A (zh) * 2017-09-13 2018-02-16 捷开通讯(深圳)有限公司 移动终端及其呼叫转移方法、存储装置
CN107864460A (zh) * 2017-11-16 2018-03-30 北京小米移动软件有限公司 呼叫转移方法、装置和设备

Also Published As

Publication number Publication date
US20230319189A1 (en) 2023-10-05
CN114095885A (zh) 2022-02-25
CN114095885B (zh) 2023-06-02

Similar Documents

Publication Publication Date Title
CN111602379B (zh) 语音通话方法、电子设备及系统
US12004072B2 (en) Network search method and terminal device
EP4096188A1 (en) Distributed service scheduling method and related apparatus
US20230422154A1 (en) Method for using cellular communication function, and related apparatus and system
EP3944595A1 (en) Method and system for adding smart home device to contacts
US11785128B2 (en) Caller identification display method based on application, and terminal device
EP4187891A1 (en) Method and system for replying to message, and electronic device
WO2022022427A1 (zh) 通话方法、系统和相关装置
US11949805B2 (en) Call method and apparatus
CN112543447A (zh) 基于通讯录的设备发现方法、音视频通信方法及电子设备
EP4106238A1 (en) Wireless communication system and method
CN111372329B (zh) 一种连接建立方法及终端设备
US11792631B2 (en) Emergency call method and user terminal
EP4293997A1 (en) Display method, electronic device, and system
WO2022152167A1 (zh) 一种网络选择方法及设备
US20230199886A1 (en) System and method for providing wireless network access, and electronic device
CN116708674B (zh) 通信方法及电子设备
EP4287014A1 (en) Display method, electronic device, and system
CN116170782A (zh) 一种投屏方法、相关装置及系统
CN116709225A (zh) 通话方法、电子设备、网络设备及系统
CN114697438A (zh) 一种利用智能设备进行通话的方法及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21850518

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21850518

Country of ref document: EP

Kind code of ref document: A1