WO2016119233A1 - 一种终端设备呼叫冲突的处理方法和终端设备 - Google Patents

一种终端设备呼叫冲突的处理方法和终端设备 Download PDF

Info

Publication number
WO2016119233A1
WO2016119233A1 PCT/CN2015/071982 CN2015071982W WO2016119233A1 WO 2016119233 A1 WO2016119233 A1 WO 2016119233A1 CN 2015071982 W CN2015071982 W CN 2015071982W WO 2016119233 A1 WO2016119233 A1 WO 2016119233A1
Authority
WO
WIPO (PCT)
Prior art keywords
terminal device
state
message
call
wireless support
Prior art date
Application number
PCT/CN2015/071982
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 PCT/CN2015/071982 priority Critical patent/WO2016119233A1/zh
Priority to US15/547,294 priority patent/US10015314B2/en
Priority to CN201580002266.2A priority patent/CN106031294B/zh
Publication of WO2016119233A1 publication Critical patent/WO2016119233A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42025Calling or Called party identification service
    • H04M3/42034Calling party identification service
    • H04M3/42059Making use of the calling party identifier
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/436Arrangements for screening incoming calls, i.e. evaluating the characteristics of a call before deciding whether to answer it
    • 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
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2201/00Electronic components, circuits, software, systems or apparatus used in telephone systems
    • H04M2201/22Synchronisation circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2207/00Type of exchange or network, i.e. telephonic medium, in which the telephonic communication takes place
    • H04M2207/18Type of exchange or network, i.e. telephonic medium, in which the telephonic communication takes place wireless networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/428Arrangements for placing incoming calls on hold
    • H04M3/4283Call holding circuits

Definitions

  • the present invention relates to the field of wireless communication technologies, and in particular, to a method and a terminal device for processing a terminal device call conflict.
  • the hardware architecture of smartphones mostly adopts a dual processor architecture, in which the application processor runs an operating system and is responsible for the control of the entire operating system, including audio and video processing, document processing, data processing and other mobile phone additional application functions; baseband
  • the processor is responsible for the processing of the communication protocol and implements the basic communication functions of the mobile phone.
  • the dual-processor architecture can enrich and extend the functionality of the phone, but it also makes the internal processing of the phone more complicated.
  • the outgoing information needs to pass through the application processor, then reaches the baseband processor and completes the power-off operation.
  • the incoming call information needs to pass through the baseband processor before reaching the application processor to prompt the user to call. Incoming. If the user's outgoing call is being processed by the application processor and the incoming call has reached the baseband processor, a conflict will occur, causing the mobile phone to handle confusion and vice versa.
  • the embodiment of the present invention provides a method and a terminal device for processing a call conflict of a terminal device, which provides a stable and reliable processing mechanism for a mobile phone, especially a dual-card smart phone, especially when the call is received and received.
  • a terminal device which provides a stable and reliable processing mechanism for a mobile phone, especially a dual-card smart phone, especially when the call is received and received.
  • an embodiment of the present invention provides a method for processing a terminal device call conflict, where the terminal device includes a baseband processor, a wireless support device, and an application processor, and the method includes:
  • the baseband processor of the first terminal device receives an incoming call request message sent by the network from the second terminal device; the incoming call request message carries information of the first account of the first terminal device;
  • the baseband processor sends an incoming call indication message to the wireless support device of the first terminal device according to the incoming call request message; the incoming call indication message includes information of the first account;
  • the wireless support device acquires a state of the first terminal device
  • the wireless support device updates the state of the first terminal device to an incoming call state according to the incoming call indication message, and occupies a mutual exclusion lock;
  • the wireless support device sends a status change success message to the baseband processor
  • the baseband processor sends the incoming request message to the application processor of the first terminal device according to the status change success message;
  • the application processor prompts the user for the incoming call information according to the incoming call request message.
  • the wireless support device updates the state of the first terminal device to an incoming call state according to the incoming call indication message, the method further includes:
  • the wireless support device generates a first check code, where the first check code includes information of the first account and information of the second terminal device.
  • the method further includes:
  • the application processor When the application processor receives a hang up instruction for ending a call connection between the first terminal device and the second terminal device, the application processor sends a call end message to the wireless support device;
  • the message includes information of the first account and information of the second terminal device; or
  • the baseband processor When the baseband processor receives a hang up command sent by the network to end a call connection between the first terminal device and the second terminal device, the baseband processor sends a call end message to the wireless support device;
  • the wireless support device generates an incoming call state release message according to the call end message, and releases the mutual exclusion lock;
  • the first terminal device resets the state of the first terminal device to an idle state according to the incoming call state release message and the first check code.
  • the application processor receives the When the user inputs an outgoing call instruction, the method further includes:
  • the application processor sends an outgoing call request message to the wireless support device according to the outgoing call instruction; the wireless support device acquires a state of the first terminal device;
  • the wireless support device When the state of the first terminal device is an incoming call state, the wireless support device sends a reject callout response message to the application processor.
  • the method further includes:
  • the wireless support device acquires configuration information of a pre-stored incoming call outgoing priority
  • the wireless support device selects to update the state of the first terminal device to an incoming call state or to update to an outgoing state according to the configuration information.
  • the method when the state of the first terminal device is an incoming call state or an outgoing state, the method further includes:
  • the wireless support device sends a reject status change message to the baseband processor
  • the baseband processor sends a response message rejecting the incoming call of the second terminal device to the network according to the reject status change message.
  • an embodiment of the present invention provides a method for processing a call conflict of a terminal device, where the terminal device includes a baseband processor, a wireless support device, and an application processor, where the method includes:
  • the application processor of the first terminal device receives an outgoing call instruction input by the user
  • the application processor sends an outgoing call request message to the wireless support device of the first terminal device according to the outgoing call instruction; the outgoing call request message carries information of the first account of the first terminal device and the second terminal device information;
  • the wireless support device acquires a state of the first terminal device
  • the wireless support device updates the state of the first terminal device to an outgoing state according to the outgoing call request message, and occupies a mutual exclusion lock
  • the wireless support device sends a status change success message to the application processor
  • the application processor sends the call request message to the baseband processor of the first terminal device according to the status change success message;
  • the baseband processor sends a call request to the second terminal device to the network according to the outgoing call request message.
  • the method when the wireless support device updates the state of the first terminal device to the power-off state according to the outgoing call request message, the method further includes:
  • the wireless support device generates a second check code, where the second check code includes information of the first account and information of the second user equipment.
  • the method further includes:
  • the application processor When the application processor receives a hang up instruction for ending a call connection between the first terminal device and the second terminal device, the application processor sends a call end message to the wireless support device;
  • the message includes information of the first account and information of the second terminal device; or
  • the baseband processor When the baseband processor receives a hang up command sent by the network to end a call connection between the first terminal device and the second terminal device, the baseband processor sends a call end message to the wireless support device;
  • the wireless support device generates a power-off state release message according to the call end message, and releases the mutual exclusion lock;
  • the first terminal device resets the state of the first terminal device to an idle state according to the de-energized state release message and the second check code.
  • the baseband processor receives The method further includes: the baseband processor sending an incoming call indication message to the wireless support device according to the incoming call request message, when the network sends an incoming call request message from the third terminal device;
  • the wireless support device acquires a state of the first terminal device
  • the wireless support device When the state of the first terminal device is an outgoing state, the wireless support device sends a reject incoming call response message to the application processor;
  • the application processor sends the reject incoming response information to the network through the baseband processor.
  • the wireless support device updates the state of the first terminal device to an outgoing state according to the outgoing call request message, After occupying the mutex, the baseband processor receives the network from the When the incoming call request message is sent by the third terminal device, the method further includes:
  • the baseband processor sends an incoming call indication message to the wireless support device according to the incoming call request message; wherein the incoming call indication message carries information of a first account of the first terminal device;
  • the wireless support device processes the incoming call indication message, and when the information of the first account is identified, the incoming call indication message is sent to the application processor;
  • the application processor generates prompt information according to the incoming call request message, to prompt the user to receive an incoming call from the third terminal device;
  • the wireless support device updates the state of the first terminal device to an outgoing call suspension state according to the outgoing call suspension message, and suspends a call between the first terminal device and the second terminal device ;
  • the baseband processor receives and sends the call information of the third terminal device to the application processor.
  • the wireless support device updates the state of the first terminal device to an outgoing call according to the outgoing call suspension instruction After the state, the method further includes:
  • the wireless support device updates the state of the first terminal device to an outgoing state according to the outgoing call recovery message; and suspends a call between the first terminal device and the third terminal device.
  • the method further includes:
  • the application processor When the application processor receives a hang up instruction for ending a call with the second terminal device, the application processor sends a first call end message to the wireless support device; the first call end message And including information about the first account and information of the second terminal device;
  • the wireless support device updates the state of the first terminal device to an incoming call state, occupies a mutual exclusion lock, and generates a third check code; the third check code includes information of the first account and the Information of the third terminal device.
  • the method further includes:
  • the application processor When the application processor receives the hang up instruction for ending the call with the third terminal device, the application processor sends a second call end message to the wireless support device; the second call end message And including information about the first account and information of the third terminal device;
  • the wireless support device sends an outgoing call suspension state release message to the first terminal device according to the second call end message, and changes the state of the first terminal device from the power-off suspension state to the outgoing call. status.
  • the method further includes:
  • the wireless support device sends a reject status change message to the application processor
  • the application processor rejects an outgoing call request message to the second terminal device according to the reject status change message.
  • an embodiment of the present invention provides a first terminal device, including: a baseband processor, an application processor, and a wireless support device;
  • the baseband processor is configured to receive an incoming call request message sent by the network from the second terminal device, where the incoming call request message carries information about the first account of the first terminal device;
  • the baseband processor is further configured to: send an incoming call indication message to the wireless support device according to the incoming call request message; the incoming call indication message includes information of the first account;
  • the wireless support device is configured to acquire a state of the first terminal device
  • the wireless support device is further configured to: update the state of the first terminal device to an incoming call state according to the incoming call request message, and occupy a mutual exclusion lock;
  • the wireless support device is further configured to send a status change success message to the baseband processor;
  • the baseband processor is further configured to send the incoming call request message to the application processor according to the status change success message;
  • the application processor is configured to prompt the user for incoming call information according to the incoming call request message.
  • the wireless support device when the wireless support device updates the state of the first terminal device to an incoming call state according to the incoming call request message, the wireless support device is further configured to:
  • the first check code includes information of the first account and information of the second terminal device.
  • the application processor is further configured to send a call end message to the wireless support device, where the call end message includes information of the first account and information of the second terminal device;
  • the wireless support device is further configured to: generate an incoming call state release message according to the call end message, and release the mutual exclusion lock, to combine the first check code to set the state of the first terminal device Reset to idle state.
  • the application processor when the state of the first terminal device is an incoming call state, the application processor receives an outgoing call instruction input by the user,
  • the application processor is further configured to send an outgoing call request message to the wireless support device according to the outgoing call instruction;
  • the wireless support device is further configured to acquire a state of the first terminal device
  • the wireless support device is further configured to send the rejecting callout response information to the application processor.
  • the baseband processor when the baseband processor sends an incoming call indication to the wireless support device of the first terminal device according to the incoming call request message
  • the application processor is further configured to send the outgoing call request message to the wireless support device
  • the wireless support device is further configured to: acquire configuration information of a pre-stored incoming call outgoing priority; and, according to the configuration information, update the status of the first terminal device to an incoming call state or update to an outgoing state.
  • the wireless support device is further configured to send a reject status change message to the baseband processor
  • the baseband processor is further configured to send, according to the reject status change message, response information that rejects the incoming call of the second terminal device to the network.
  • an embodiment of the present invention provides a first terminal device, including: a baseband processor, an application processor, and a wireless support device;
  • the application processor is configured to receive an outgoing call instruction input by a user
  • the application processor is further configured to send an outgoing call request message to the wireless support device according to the outgoing call instruction;
  • the outgoing call request message carries information of a first account of the first terminal device and information of a second terminal device ;
  • the wireless support device is configured to acquire a state of the first terminal device
  • the wireless support device is further configured to: update the state of the first terminal device to an outgoing state according to the outgoing call request message, and occupy a mutual exclusion lock;
  • the wireless support device is further configured to send a status change success message to the application processor;
  • the application processor is further configured to send the call request message to the baseband processor according to the status change success message;
  • the baseband processor is configured to send, to the network, the second end according to the outgoing call request message The call request of the end device.
  • the wireless support device when the wireless support device updates the state of the first terminal device to an outgoing state according to the outgoing call request message, the wireless support device is further configured to:
  • the second check code includes information of the first account and information of the second user equipment.
  • the application processor is further configured to send a call end message to the wireless support device, where the call end message includes information of the first account and information of the second terminal device;
  • the wireless support device is further configured to: generate an outgoing state release message according to the call end message, and release the mutual exclusion lock, to combine the second check code to connect the first terminal device The state is reset to the idle state.
  • the baseband processor receives When an incoming call request message from the third terminal device is sent to the network,
  • the baseband processor is further configured to send the incoming call request message to the wireless support device by sending an incoming call indication message;
  • the wireless support device is further configured to acquire a state of the first terminal device
  • the wireless support device When the state of the first terminal device is an outgoing state, the wireless support device sends a reject incoming call response message to the application processor;
  • the application processor is further configured to send the reject incoming response information to the network by using the baseband processor.
  • the wireless support device is configured to update a state of the first terminal device to an outgoing state according to the outgoing call request message, After occupying the mutex, when the baseband processor receives an incoming call request message from the third terminal device sent by the network,
  • the baseband processor is further configured to send an incoming call indication message to the wireless support device according to the incoming call request message, where the incoming call indication message carries information of a first account of the first terminal device;
  • the wireless support device is further configured to: process the incoming call indication message, and send the incoming call indication message to the application processor when the information of the first account is identified;
  • the application processor is further configured to generate prompt information according to the incoming call request message, to prompt the user to receive an incoming call incoming call from the third terminal device;
  • the wireless support device is further configured to: update the state of the first terminal device to an unpowered suspension state according to the outgoing call suspension instruction, and between the first terminal device and the second terminal device Call hangs;
  • the baseband processor receives and sends the call information of the third terminal device to the application processor.
  • the wireless support device updates the state of the first terminal device to an outgoing call according to the outgoing call suspension instruction. After the state,
  • the application processor When the application processor receives an outgoing call recovery instruction input by a user, the application processor is further configured to send an outgoing call recovery message to the wireless support device;
  • the wireless support device is further configured to: update the state of the first terminal device to an outgoing state according to the call release recovery instruction, and hang the call between the first terminal device and the third terminal device Start.
  • the application processor is further configured to send a first call end message to the wireless support device;
  • the first call end message includes information of the first account and information of the second terminal device;
  • the wireless support device is further configured to: generate a power-off state release message according to the first call end message, and release the mutual exclusion lock, to combine the second check code, to use the first terminal device State reset to idle state;
  • the wireless support device is further configured to: update the state of the first terminal device to an incoming call state, occupy a mutual exclusion lock, and generate a third check code; the third check code includes the first account Information and information of the third terminal device.
  • the application processor is further configured to send a second call end message to the wireless support device, where the second call end message includes information of the first account and information of the third terminal device;
  • the wireless support device is further configured to generate an outgoing call suspension state release message according to the second call end message, and change a state of the first terminal device from the power-off suspension state to an outgoing call state.
  • the wireless support device is further configured to send a reject status change message to the application processor;
  • the application processor is further configured to reject an outgoing call request message to the second terminal device according to the reject status change message.
  • the method for processing a call conflict of a terminal device records that the current state of the terminal device is an incoming call, an outgoing call, or an idle state by using a state machine, and when idle, according to the incoming call information or the outgoing call information to the state machine
  • the occupation determines whether the terminal device handles incoming calls or outgoing calls, and protects the state after the state machine is occupied by an incoming or outgoing call through a mutex lock, thereby providing a stable state.
  • a reliable and reliable processing mechanism especially in the case of simultaneous arrival of incoming calls, enables incoming calls or outgoing calls to proceed smoothly, improving the user experience.
  • FIG. 1 is a flowchart of a method for processing a terminal device call conflict according to Embodiment 1 of the present invention
  • FIG. 2 is a flowchart of another method for processing a terminal device call conflict according to Embodiment 2 of the present invention.
  • FIG. 3 is a schematic structural diagram of a terminal device according to Embodiment 3 of the present invention.
  • FIG. 4 is a schematic structural diagram of a terminal device according to Embodiment 4 of the present invention.
  • FIG. 5 is a schematic structural diagram of a terminal device according to Embodiment 5 of the present invention.
  • the first terminal device includes a baseband processor, a wireless support device, and an application processor
  • the wireless support device includes a state machine.
  • the baseband processor is equivalent to a protocol processor, responsible for data processing and storage.
  • the main components are digital signal processor (DSP), microcontroller (MCU), memory (SRAM, Flash) and other units.
  • the main function is baseband encoding/translation. Code, voice coding and voice coding.
  • the application processor is a multimedia application processing module of the terminal device, and its function is to run an operating system and various applications.
  • the wireless support device is a communication bridge between the application processor and the baseband processor.
  • the state machine can record whether the account of the first terminal device is in an incoming, outgoing or idle state.
  • the method comprises the following steps:
  • Step 100 The baseband processor of the first terminal device receives an incoming call request message sent by the network from the second terminal device, where the incoming call request message carries information about the first account of the first terminal device.
  • the first terminal device may be a smart phone with an application processor and a baseband processor, for example, a smart phone with a dual card single-pass function, wherein the dual card corresponds to the first account and the second account of the user respectively.
  • the first account and the second account may be two Subscriber Identity Module (SIM) cards, respectively.
  • SIM Subscriber Identity Module
  • the second terminal device may be a mobile phone or a landline having a call function.
  • the call to the first user device is initiated by inputting information of the first account (which may also be the second account) on the second user device. Incoming request message.
  • This incoming request message is first sent to the network and then forwarded by the network to the baseband processor of the first terminal device for reception.
  • Step 110 The baseband processor sends an incoming call indication message to the wireless support device of the first terminal device according to the incoming call request message.
  • the baseband processor when receiving the incoming call request message from the second user equipment, the baseband processor generates an incoming call indication message and sends the call indication message to the wireless support device in the first terminal device.
  • the incoming call indication message includes information of the first account.
  • the wireless support device refers to a Radio Interface Layer (RIL).
  • RIL Radio Interface Layer
  • RIL works under the Point to Point Protocol (PPP), Transmission Control Protocol/Internet Protocol (TCP/IP), and is responsible for reliable data transmission and AT (Attention) commands. The transmission of a modem command language) and the resolution of the response.
  • PPP Point to Point Protocol
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • Attention Attention commands
  • the transmission of a modem command language and the resolution of the response.
  • RIL also supports short message service, voice call and other functions.
  • the RIL can provide wireless communication-related services for applications running in the application processor, including call control, short messages, and general wireless packet services (General Packet Radio). Service, GPRS) and other functions.
  • the RIL can be abstractly regarded as a logical device, and only need to communicate with the RIL to obtain the required service.
  • Step 120 The wireless support device acquires a state of the first terminal device.
  • the wireless support device includes a state machine, so the state machine can be used to record whether the first account or the second account of the first terminal device is in an incoming, outgoing, or idle state.
  • the state machine records the state of the terminal device according to different trigger conditions, and the processor performs different processing according to different states of the state machine.
  • the wireless support device When the wireless support device receives the incoming call request message, it first detects the state of the first terminal device, and determines whether the first account and the second account are already in an incoming or outgoing state.
  • step 130 is performed; if the first account and the second account of the first terminal device are in an idle state, perform the following steps. 140.
  • Step 130 When the state of the first terminal device is an incoming call state or an outgoing state, the wireless support device sends a reject state change message to the baseband processor, where the baseband processor sends a reject to the network according to the reject state change message.
  • the response information of the incoming call of the second terminal device is not limited to the state of the first terminal device.
  • the state machine can separately record the incoming call or the outgoing state, for example, the outgoing status of the first account can be recorded as sub0/MO call, which will be The call status of an account is recorded as sub0/MT call, the outgoing status of the second account is recorded as sub1/MO call, and the incoming call status of the second account is recorded as sub1/MT call.
  • Step 140 When the state of the first terminal device is an idle state, the wireless support device updates the state of the first terminal device to an incoming call state according to the incoming call indication message, and occupies a mutual exclusion lock;
  • the RIL updates the state of the first terminal device to an incoming call state according to the incoming call request message to the first account.
  • a mutex is used to prevent other incoming or outgoing calls from occurring in the current incoming or outgoing state. Resources (not including call waiting).
  • the RIL when the RIL updates the state of the state machine, for example, to the incoming call state, the RIL also generates a first check code, and sends the first check code to the state machine; wherein, the first check code includes: The information of one account and the information of the second terminal device.
  • Step 150 The wireless support device sends a status change success message to the baseband processor.
  • the RIL after updating the state of the first terminal device, the RIL sends a status change success message to the baseband processor.
  • Step 160 The baseband processor sends the incoming call request message to the application processor of the first terminal device according to the status change success message, where the application processor sends the user request message to the user according to the incoming call request message. Prompt call information.
  • the baseband processor after receiving the status change success message, sends an incoming call request message from the second terminal device to the application processor.
  • the application processor After receiving the incoming call request message, the application processor prompts the user for incoming call information from the second terminal device.
  • the voice path between the first terminal device and the second terminal device is established through the network.
  • the method further includes:
  • Step 170 When the application processor receives a hang up instruction for ending a call with the second terminal device, sending a call end message to the wireless support device;
  • the hang up command received by the application processor may be an instruction to reject the call input by the user of the first terminal device of the called party, or may be an hang up call input by the user at any time after the call is established.
  • the instruction may also be a hang up instruction forwarded by the baseband processor, and the hang up instruction of the baseband processor may be instruction information of the hang up call received by the second terminal device sent by the network by the user.
  • Step 180 The wireless support device generates an incoming call state release message according to the call end message, and releases the mutual exclusion lock.
  • the RIL when receiving the call end message, the RIL generates an incoming call status release message to release the incoming call status recorded and locked by the state machine.
  • Step 190 The first terminal device resets the state to an idle state according to the incoming call state release message and the first check code.
  • the state machine is reset according to the incoming call state release message of the RIL and the first check code.
  • the state recorded by the state machine is first updated to the state of ending the call, waiting for the memory occupied by the call connection to be released, and the state of the first terminal device is reset, and then the state of the state machine is recorded. Update to idle state and set the first check code to invalid. For example, the first check code may be reset to 0.
  • the wireless support device updates the state of the first terminal device to the incoming call state according to the incoming call indication message, and after occupying the mutual exclusion lock (in this case, the incoming call indication message has not been sent to the application processor, Or the establishment of the voice path is not completed yet, and the application processor receives the call instruction input by the user of the first terminal device, then:
  • the application processor sends an outgoing call request message to the RIL according to the outgoing call instruction
  • the RIL detects the state of the first terminal device according to the outgoing call request message
  • the RIL When the RIL detects that the first terminal device is already in an incoming call state, it sends a reject callout response message to the application processor.
  • the application processor also releases the memory occupied by the outgoing request message and related parameters.
  • the application processor when the baseband processor sends the incoming call indication message to the wireless support device of the first terminal device, the application processor also sends an outgoing call request message to the wireless support device, where:
  • the wireless support device acquires pre-stored configuration information of the incoming call outgoing priority; the configuration information is used to specify a rule for selecting the incoming or outgoing priority processing when the incoming call or the outgoing call arrives at the RIL at the same time;
  • the wireless support device selects to update the state of the first terminal device to an incoming call state or to update to an outgoing state according to the configuration information.
  • the method for processing the call conflict of the present invention is described by taking the scenario in which the first terminal device receives the incoming call request message of the second terminal device as an example.
  • the first terminal device When the first terminal device receives the incoming call request message, it first confirms whether the current state of the first terminal device recorded by the internal state machine is in an idle state; when in the idle state, the first terminal according to the incoming call request message The status of the device is updated to the incoming call state, and the incoming call state is protected by the mutex lock; if the current state of the first terminal device is not the idle state, the incoming call request is rejected.
  • the embodiment of the invention provides a stable and reliable method for processing call conflicts, which can effectively ensure that a process in an incoming call or an outgoing call can be smoothly performed in the event of a conflict between incoming and outgoing calls, thereby improving the user experience.
  • the method for processing call conflict provided by the present invention will be described in detail below by taking FIG. 2 as an example.
  • This embodiment is mainly described by using the first terminal device as the calling and outgoing call scenario as an example.
  • the method includes the following steps:
  • Step 200 The application processor of the first terminal device receives an outgoing call instruction input by the user.
  • the user when the first terminal device performs the outgoing call, the user first receives an outgoing call instruction input by the user.
  • the call-out command is received by the input device of the first terminal device and transmitted to the application processor.
  • the input device may include a touch screen, a keyboard, a microphone, and the like of the first terminal device.
  • Step 210 The application processor sends an outgoing call request message to the wireless support device of the first terminal device according to the outgoing call instruction.
  • the application processor when receiving the outgoing call instruction, the application processor generates an outgoing call request message according to the outgoing call instruction and sends the call request to the wireless support device in the first terminal device.
  • the outgoing call request message carries the information of the first account of the first terminal device and the information of the second terminal device.
  • the wireless support device refers to the RIL.
  • Step 220 The wireless support device acquires a state of the first terminal device.
  • the wireless support device includes a state machine, and the state machine is used to record whether the first account or the second account of the first terminal device is in an incoming, outgoing, or idle state.
  • the state machine is used to record whether the first account or the second account of the first terminal device is in an incoming, outgoing, or idle state.
  • the wireless support device When the wireless support device receives the outgoing call request message, it first confirms the status of the first terminal device, thereby determining whether the first account and the second account are already in the state of the incoming call.
  • step 230 is performed; if the first account or the second account of the first terminal device is in the idle state, the following step 240 is performed.
  • Step 230 When the state of the first terminal device is an incoming call state, the wireless support device sends a reject status change message to the application processor, where the application processor rejects the outgoing call request message to the second terminal device according to the reject status change message. And prompt the user to call information.
  • Step 240 When detecting that the first terminal device is in an idle state, the wireless support device updates the state of the first terminal device to an outgoing state according to the outgoing call request message, and occupies a mutual exclusion lock;
  • the RIL updates the state of the first terminal device according to an outgoing call request message to the second terminal device by using the first account, and updates to an outgoing state.
  • the mutex when the state machine records the first terminal device in the incoming or outgoing state, the mutex is used to prevent other incoming or outgoing calls from occupying the communication resources in the current incoming or outgoing state. happensing. The process of calling in when call waiting is allowed in the outgoing state will be described separately.
  • the RIL when the RIL updates the state machine, for example, when the first terminal device is in the power-off state, the RIL also generates a second check code; wherein, the second check code includes: the information of the first account and the second Information about the terminal device.
  • Step 250 The wireless support device sends a status change success message to the application processor.
  • the RIL after updating the state of the first terminal device, the RIL sends a status change success message to the application processor.
  • Step 260 The application processor sends the call request message to the baseband processor of the first terminal device according to the status change success message, where the baseband processor sends the message to the network according to the call request message. A call request of the second terminal device.
  • the application processor after receiving the status change success message, sends the call request message to the baseband processor, and sends the voice message to the network through the baseband processor to establish a voice path between the first terminal device and the second terminal device through the network. .
  • the method further includes:
  • Step 270 When the application processor receives the hang up instruction for ending the call with the second terminal device, the application processor sends a call end message to the wireless support device.
  • the hang up command received by the application processor may be an instruction to reject the call input by the user of the first terminal device of the called party, or may be an hang up call input by the user at any time after the call is established.
  • the instruction may also be a hang up instruction forwarded by the baseband processor, and the hang up instruction of the baseband processor may be received from the second terminal device sent by the network to receive the instruction information of the hang up call input by the user.
  • Step 280 The wireless support device generates a power-off state release message according to the call end message, and releases the mutual exclusion lock.
  • the RIL when receiving the call end message, the RIL generates an incoming call status release message to release the outgoing state recorded and locked by the state machine.
  • Step 290 The first terminal device resets the state of the first terminal device to an idle state according to the de-energized state release message and the second check code.
  • the state machine is reset according to the de-energized state release message of the RIL and the second check code.
  • the state recorded by the state machine is first updated to the state of ending the call, waiting for the memory occupied by the call connection to be released, and the state of the first terminal device is reset, and then the state of the state machine is recorded. Update to idle state and set the second check code to invalid. For example, the second check code may be reset to 0.
  • the wireless support device updates the state of the first terminal device to the power-off state according to the call-out request message, and after the mutexes are occupied, the baseband processor receives the call from the third terminal device sent by the network.
  • the request message is received.
  • the processing plan for the incoming call is determined according to whether the application processor of the first terminal device has the configuration information of the call waiting.
  • the configuration information of the call waiting is preset by the user and stored in the first terminal device, and the configuration information can be acquired by the application processor.
  • the specific processing scheme can include at least the following three types:
  • the application processor does not store the setup information of the call waiting, and the processing method is as follows:
  • the baseband processor receives an incoming call request message sent by the network from the third terminal device, and sends an incoming call indication message to the wireless support device; the wireless support device detects the state of the first terminal device according to the incoming call indication message; when the wireless support device detects When the first terminal device is in the power-off state, Sending the reject incoming response information to the application processor; the application processor sends the rejected incoming call response information to the network through the baseband processor, thereby transmitting to the third terminal device.
  • the application processor stores the setting information of the call waiting, and the incoming request message is the first account used for the outgoing call, and the processing method is as follows:
  • the baseband processor generates an incoming call indication message according to the incoming call request message, and sends the incoming call indication message to the wireless support device; wherein the incoming call indication message carries the information of the first account of the first terminal device; the wireless support device processes the incoming call indication message, and when the identification is When the information of the first account with the same command is invoked, the caller indication message is sent to the wireless support device; when the wireless support device detects that the first terminal device is in the power-off state, the caller indication message is sent to the application processor; The device generates a prompt message according to the incoming call indication message, to prompt the user to have an incoming call incoming call from the third terminal device; when the application processor receives the outgoing call pending command input by the user, the call release pending command is sent to the wireless support device; The supporting device updates the state of the first terminal device to the power-off state according to the call-out suspension command, and suspends the call between the first terminal device and the second terminal device temporarily; when the first terminal device is powered-
  • the application processor receives the call-out recovery command input by the user, the generated call-out recovery command message is sent to the wireless support device; and the wireless support device sends the first terminal device according to the call-out recovery command message.
  • the status is re-updated to the outgoing state; and the call between the first terminal device and the third terminal device is temporarily suspended.
  • the application processor When the application processor receives the hang up instruction for ending the call with the second terminal device, sending a call end message to the wireless support device; the wireless support device generates a power-off state release message according to the call end message, and releases the mutual exclusion Locking; thereby resetting the state of the first terminal device to an idle state according to the power-off state release message and the second check code.
  • the wireless support device updates the state of the first terminal device to the incoming call state, occupies the mutex lock, and generates a third check code; the third check code includes the first Information of an account and information of a third terminal device.
  • the application processor receives the hang up instruction for ending the call with the third terminal device, and generates a call end message to be sent to the wireless support device.
  • the wireless support device re-updates the first terminal device from the power-off state to the power-off state according to the call end message, thereby continuing to communicate the voice path between the first terminal device and the second terminal device.
  • the application processor stores the setup information of the call waiting, but the incoming request message is not for the first account used for the outgoing call, but for the second account, and the processing method is as follows:
  • the baseband processor sends an incoming call indication message to the wireless support device according to the received incoming call request message; wherein the incoming call indication message carries information of the second account of the first terminal device; the wireless support device processes the incoming call indication message when the identification is not possible When the information of the first account having the same call command is issued, or when the information indicating that the electric command message carries a different account than the call request message is received, the second account call request is rejected.
  • the baseband processor also releases the memory occupied by the incoming request and associated parameters.
  • a method for processing a call conflict according to the present invention is described by taking a scenario in which a first terminal device actively calls a second terminal device.
  • the first terminal device When the first terminal device receives the outgoing call request message input by the user, first confirm whether the first terminal device recorded by the internal state machine is currently idle; when idle, the state of the first terminal device according to the outgoing call request message The device is updated to the power-off state, and the power-off state is protected by the mutex; if the current state of the first terminal device is not the idle state, the call-out request is rejected. If the incoming call is received again when the first terminal device is in the power-off state, the process of calling the incoming call is performed according to whether the call waiting is set.
  • the incoming call is directly rejected; if the call waiting and the incoming call request message account information is set and the outgoing call is being made If the account information matches, then Switching between incoming and outgoing calls may be performed to implement voice communication with the incoming terminal device or voice communication with the outgoing terminal device when the first terminal device is in a different state.
  • the embodiment of the invention provides a stable and reliable call conflict processing mechanism, which can improve the user experience.
  • the embodiment of the present invention further provides a terminal device for implementing the method described in Embodiment 1 above.
  • the terminal device in this embodiment may be specifically a smart phone, in particular, a smart phone with a dual card single pass function. That is to say, the terminal device in this embodiment includes two account accounts that can perform a call, which are a first account and a second account respectively.
  • the terminal device of the present invention is referred to as a first terminal device.
  • the first terminal device includes: a baseband processor 31, and an application processor 32 wireless support module 33.
  • the baseband processor 31 is an important component of the mobile phone, and is equivalent to a protocol processor, which is responsible for data processing and storage.
  • the main components are digital signal processor (DSP), microcontroller (MCU), memory (SRAM, Flash) and other units.
  • the main functions are baseband encoding/decoding, voice coding and speech coding.
  • the baseband processor 31 can be embodied as a highly complex system chip (SoC) that can support not only several communication standards, but also multimedia functions and multimedia displays. Image sensor and audio device related interface.
  • SoC highly complex system chip
  • the baseband processor and the radio frequency and other peripheral chips serve as a module to become a GSM/GPRS modem, providing an AT command interface.
  • MAP Multimedia Application Processor
  • the wireless support device 33 refers to the RIL.
  • RIL works under PPP and TCP/IP protocols and is responsible for reliable data transmission, AT command transmission, and response parsing. Of course, in addition to support for the network, RIL also supports short message service, voice call and other functions.
  • the wireless support device 33 is a communication bridge between the baseband processor 31 and the application processor 32.
  • a state machine (not shown) is disposed in the wireless support device 33, and is a module for software virtualization, for recording the call state of the terminal device. For example, the state machine may record the power-off state of the first account in the terminal device as a sub0/MO call, record the incoming call state of the first account as a sub0/MT call, and record the outgoing state of the second account as sub1. /MO call, record the incoming call status of the second account as sub1/MT call.
  • the state machine records the state of the terminal device according to different trigger conditions, and the application processor 32 and the baseband processor 31 perform different processes according to different states of the state
  • the baseband processor 31 is configured to receive an incoming call request message sent by the network from the second terminal device, where the incoming call request message carries information about the first account of the first terminal device;
  • the baseband processor 31 is further configured to send an incoming call indication message to the wireless support device 33 of the terminal device according to the incoming call request message; the incoming call indication message includes information of the first account.
  • the wireless support device 33 is configured to acquire a state of the first terminal device
  • the wireless support device 33 is further configured to update the state of the first terminal device to an incoming call state according to the incoming call request message, and occupy a mutual exclusion lock. ;
  • the wireless support device 33 is further configured to send a status change success message to the baseband processor 31;
  • the baseband processor 31 is further configured to send the incoming call request message to the application processor 32 according to the status change success message;
  • the application processor 32 is configured to prompt the user for incoming call information according to the incoming call request message.
  • the wireless support device 33 updates the status of the first terminal device to the incoming call state according to the incoming call request message, the wireless support device 33 is further configured to:
  • the first check code includes information of the first account and information of the second terminal device.
  • the application processor 32 is further configured to send a call end message to the wireless support device 33;
  • the call end message includes information of the first account and information of the second terminal device;
  • the wireless support device 33 is further configured to: generate an incoming call status release message according to the call end message, and release the mutual exclusion lock; and combine the first check code to connect the first terminal device The state is reset to the idle state.
  • the application processor 32 receives the call instruction input by the user, then
  • the application processor 32 is further configured to send an outgoing call request message to the wireless support device 33 according to the outgoing call instruction;
  • the wireless support device 33 is further configured to acquire a state of the first terminal device
  • the wireless support device 33 When the wireless support device 33 detects that the first terminal device is in an incoming call state, the wireless support device 33 is further configured to send the reject call response information to the application processor 32.
  • the incoming call and the outgoing call arrive at the wireless support device 33 at the same time, that is, when the baseband processor 31 transmits the incoming call indication message to the wireless support device 33, the application process
  • the device 32 is further configured to send the outgoing call request message to the wireless support device 33;
  • the wireless support device 33 is further configured to: acquire pre-stored configuration information of an incoming call outgoing priority; and, according to the configuration information, update the status of the first terminal device to an incoming call state or update to an outgoing state. .
  • the wireless support device 33 is further configured to send a reject status change message to the baseband processor 31;
  • the baseband processor 31 is further configured to send, according to the reject status change message, response information that rejects the incoming call of the second terminal device to the network.
  • the terminal device When receiving the incoming call request message, the terminal device provided by the embodiment first confirms whether the current state of the first terminal device recorded by the internal state machine is in an idle state; when in the idle state, according to the incoming call request message The state of the first terminal device is updated to the incoming call state, and the incoming call state is protected by the mutual exclusion lock; if the current state of the first terminal device is not the idle state, the incoming call request message is rejected.
  • the embodiment of the invention provides a stable and reliable terminal device, which can effectively ensure that a process in an incoming call or an outgoing call can be smoothly performed in the event of a conflict between incoming and outgoing calls, thereby improving the user experience.
  • the embodiment of the present invention further provides a physical architecture of a terminal device, which may include other components in addition to the baseband processor, the application processor, and the wireless support device described above. Specifically, it can be as shown in FIG. 4.
  • the terminal device of the present invention is specifically described by taking a mobile phone as an example.
  • the illustrated mobile phone 400 is merely an example of a mobile terminal, and the mobile phone 400 may have more or fewer components than those shown in the figures, two or more components may be combined, or Has a different component configuration.
  • the various components shown in the figures can be implemented in hardware, software, or a combination of hardware and software, including one or more signal processing and/or application specific integrated circuits.
  • the mobile phone 400 includes a radio frequency (RF) circuit 410, a memory 420, an input unit 430, a display unit 440, a sensor 450, an audio circuit 460, a wireless fidelity (WiFi) module 470, and a processor. 480, and power supply 490 and other components.
  • RF radio frequency
  • the structure of the handset shown in FIG. 4 does not constitute a limitation to the handset, and may include more or less components than those illustrated, or some components may be combined, or different components may be arranged.
  • the components of the mobile phone 400 will be specifically described below with reference to FIG. 4:
  • the RF circuit 410 can be used for transmitting and receiving information or during a call, and receiving and transmitting the signal. Specifically, after receiving the downlink information of the base station, the processor 480 processes the data. In addition, the uplink data is designed to be sent to the base station.
  • RF circuit 410 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a Low Noise Amplifier (LNA), a duplexer, and the like.
  • LNA Low Noise Amplifier
  • RF circuitry 410 can also communicate with the network and other devices via wireless communication.
  • the wireless communication may use any communication standard or protocol, including but not limited to Global System of Mobile communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (Code). Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), E-mail, Short Messaging Service (SMS), etc.
  • GSM Global System of Mobile communication
  • GPRS
  • the memory 420 can be used to store software programs and modules, and the processor 480 executes various functional applications and data processing of the mobile phone 400 by running software programs and modules stored in the memory 420.
  • the memory 420 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application required for at least one function (such as a sound playing function, an image playing function, etc.), and the like; the storage data area may be stored. Data (such as audio data, phone book, etc.) created according to the use of the mobile phone 400.
  • memory 420 can include high speed random access memory, and can also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid state storage device.
  • the input unit 430 can be configured to receive input numeric or character information and to generate key signal inputs related to user settings and function control of the handset 400.
  • the input unit 430 may include a touch panel 431 and other input devices 432.
  • the touch panel 431 also referred to as a touch screen, can collect touch operations on or near the user (such as a user using a finger, a stylus, or the like on the touch panel 431 or near the touch panel 431. Operation), and drive the corresponding connecting device according to a preset program.
  • the touch panel 431 may include two parts: a touch detection device and a touch controller.
  • the touch detection device detects the touch orientation of the user and detects the touch
  • the signal brought by the operation transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into contact coordinates, sends it to the processor 480, and can receive the signal from the processor 480. Command and execute it.
  • the touch panel 431 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves.
  • the input unit 430 may also include other input devices 432.
  • other input devices 432 may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control buttons, switch buttons, etc.), trackballs, mice, joysticks, and the like.
  • the display unit 440 can be used to display information input by the user or information provided to the user and various menus of the mobile phone 400.
  • the display unit 440 can include a display panel 441.
  • the display panel 441 can be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.
  • the touch panel 431 can cover the display panel 441. When the touch panel 431 detects a touch operation on or near the touch panel 431, it transmits to the processor 480 to determine the type of the touch event, and then the processor 480 according to the touch event. The type provides a corresponding visual output on display panel 441.
  • the touch panel 431 and the display panel 441 are used as two independent components to implement the input and input functions of the mobile phone 400, in some embodiments, the touch panel 431 may be integrated with the display panel 441. The input and output functions of the mobile phone 400 are implemented.
  • the handset 400 can also include at least one type of sensor 450, such as a light sensor, motion sensor, and other sensors.
  • the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor may adjust the brightness of the display panel 441 according to the brightness of the ambient light, and the proximity sensor may close the display panel 441 when the mobile phone 400 moves to the ear. / or backlight.
  • the accelerometer sensor can detect the magnitude of acceleration in all directions (usually three axes). When it is stationary, it can detect the magnitude and direction of gravity. It can be used to identify the gesture of the mobile phone (such as horizontal and vertical screen switching, related Game, magnetometer attitude calibration), vibration recognition related functions (such as pedometer, tapping), etc.
  • the mobile phone 400 can also be configured with gyroscopes, barometers, hygrometers, thermometers, infrared sensors and other sensors, here Let me repeat.
  • Audio circuitry 460, speaker 461, microphone 462 can provide an audio interface between the user and handset 400.
  • the audio circuit 460 can transmit the converted electrical data of the received audio data to the speaker 461 for conversion to the sound signal output by the speaker 461; on the other hand, the microphone 462 converts the collected sound signal into an electrical signal, and the audio circuit 460 After receiving, it is converted to audio data, and then the audio data is output to the RF circuit 408 for transmission to, for example, another mobile phone, or the audio data is output to the memory 420 for further processing.
  • WiFi is a short-range wireless transmission technology
  • the mobile phone 400 can help users to send and receive emails, browse web pages, and access streaming media through the WiFi module 470, which provides wireless broadband Internet access for users.
  • FIG. 4 shows the WiFi module 470, it can be understood that it does not belong to the essential configuration of the mobile phone 400, and may be omitted as needed within the scope of not changing the essence of the invention.
  • the processor 480 is the control center of the handset 400, which connects various portions of the entire handset using various interfaces and lines, by running or executing software programs and/or modules stored in the memory 420, and recalling data stored in the memory 420, The various functions and processing data of the mobile phone 400 are performed to perform overall monitoring of the mobile phone.
  • the processor 480 integrates an application processor 481 that primarily processes an operating system, a user interface, an application, etc., and a baseband processor 482 that primarily processes wireless communications. It can be understood that the above-mentioned baseband processor 482 may not be integrated into the processor 480, but may be separately set as the two independent processors from the application processor 481.
  • the communication between the baseband processor 482 and the application processor 481 is implemented by a wireless support device 483 (RIL), which includes a software virtualized state machine for recording the state of the call in which the handset 400 is located.
  • RIL wireless support device 483
  • the handset 400 also includes a power source 490 (such as a battery) that supplies power to the various components.
  • a power source 490 such as a battery
  • the power source can be logically coupled to the processor 480 via a power management system to manage functions such as charging, discharging, and power consumption through the power management system.
  • the mobile phone 400 may further include a camera, a Bluetooth module, and the like, and details are not described herein.
  • the embodiment of the present invention further provides a terminal device, which is used to implement the foregoing Embodiment 2 Said method.
  • the terminal device in this embodiment may be specifically a smart phone, in particular, a smart phone with a dual card single pass function.
  • the apparatus includes a baseband processor 51, an application processor 52, and a wireless support device 53.
  • the baseband processor 51 is an important component of the mobile phone, and is equivalent to a protocol processor, which is responsible for data processing and storage.
  • the main components are digital signal processor (DSP), microcontroller (MCU), memory (SRAM, Flash) and other units.
  • the main functions are baseband encoding/decoding, voice coding and speech coding.
  • the baseband processor 51 can be embodied as a highly complex system chip (SoC) that can support not only several communication standards, but also multimedia functions and multimedia displays. Image sensor and audio device related interface.
  • SoC highly complex system chip
  • the baseband processor and the radio frequency and other peripheral chips serve as a module to become a GSM/GPRS modem, providing an AT command interface.
  • MAP Multimedia Application Processor
  • the wireless support device 53 refers to the RIL.
  • RIL works under PPP and TCP/IP protocols and is responsible for reliable data transmission, AT command transmission, and response parsing. Of course, in addition to support for the network, RIL also supports short message service, voice call and other functions.
  • a state machine (not shown) is disposed in the wireless support device 53 and is a module for software virtualization, which is used to record the call state of the terminal device. For example, the state machine can set the terminal device.
  • the power-off status of an account is recorded as sub0/MO call
  • the incoming call status of the first account is recorded as sub0/MT call
  • the outgoing status of the second account is recorded as sub1/MO call
  • the incoming call status of the second account is recorded. For sub1/MT call.
  • the application processor 52 is configured to receive an outgoing call instruction input by a user
  • the application processor 52 is further configured to send an outgoing call request message to the wireless support device 53 according to the outgoing call instruction; the outgoing call request message carries information of the first account of the first terminal device and the second terminal device Information;
  • the wireless support device 53 is configured to acquire a state of the first terminal device
  • the wireless support device 53 is further configured to update the state of the first terminal device to an outgoing state according to the outgoing call request message, and occupy a mutual exclusion lock. ;
  • the wireless support device 53 is further configured to send a status change success message to the application processor 52.
  • the application processor 52 is further configured to send the call request message to the baseband processor 51 according to the status change success message;
  • the baseband processor 51 is configured to send a call request to the second terminal device to the network according to the outgoing call request message.
  • the wireless support device 53 When the wireless support device 53 updates the state of the first terminal device to the power-off state according to the call request message, the wireless support device 53 is further configured to: generate a second check code;
  • the check code includes information of the first account and information of the second user equipment.
  • the application processor 52 is further configured to send a call end message to the wireless support device, where the call end message includes information of the first account and information of the second terminal device;
  • the wireless support device 53 is further configured to: generate, according to the call end message, a de-energization state release message, and release the mutual exclusion lock, to combine the second check code, to use the first terminal device The state is reset to the idle state.
  • the processing plan for the incoming call may be determined according to whether the application processor 52 of the terminal device has the configuration information of the incoming call.
  • the configuration information of the call waiting is preset by the user and stored in the terminal device, and the application processor 52 of the terminal device can acquire the configuration information.
  • the baseband processor 51 is further configured to send an incoming call indication message to the wireless support device 53 according to the incoming call request message, where the incoming call indication message carries information of a first account of the terminal device;
  • the wireless support device 53 is further configured to determine a state of the first terminal device
  • the wireless support device 53 is further configured to send the reject incoming call response information to the application processor 52;
  • the application processor 52 is further configured to send the reject incoming response information to the network by using the baseband processor 51.
  • Solution 2 The application processor 52 stores the setting information of the call waiting, and the incoming request message is the first account used for the outgoing call:
  • the baseband processor 51 is further configured to send an incoming call indication message to the wireless support device 53 according to the incoming call request message, where the incoming call indication message carries information of a first account of the terminal device;
  • the wireless support device is further configured to process the incoming call indication message, and when the information of the first account is identified, send the incoming call indication message to the application processor 52;
  • the application processor 52 is further configured to generate prompt information according to the incoming call indication message, to prompt the user to receive an incoming call incoming call from the third terminal device;
  • the wireless support device 53 is further configured to update the state of the first terminal device to an unpowered suspension state according to the outgoing call suspension message, and the first terminal device and the second terminal device The call between the two hangs;
  • the baseband processor 51 receives and sends the call information of the third terminal device to the application processor 52.
  • the first support is performed by the wireless support device 53 according to the outgoing call suspension message After the status of the end device is updated to the power-off state,
  • the application processor 52 When the application processor 52 receives the call recovery instruction input by the user, the application processor 52 is further configured to send an outgoing call recovery message to the wireless support device 53;
  • the wireless support device 53 is further configured to: update the state of the first terminal device to an outgoing state according to the outgoing call recovery message, and call the first terminal device and the third terminal device Hang up.
  • the application processor 52 is further configured to send a first call end message to the wireless support device 53; the first call end message includes information of the first account and information of the second terminal device;
  • the wireless support device 53 is further configured to generate a power-off state release message according to the hang-up command, and release the mutexes, and combine the second check code to connect the first terminal device State reset to idle state;
  • the wireless support device 53 is further configured to: update the state of the first terminal device to an incoming call state, occupy a mutex lock, and generate a third check code;
  • the check code includes information of the first account and information of the third terminal device.
  • the application processor 52 receives the hang up instruction for ending the call with the third terminal device.
  • the application processor 52 is further configured to send a second call end message to the wireless support device 53; the second call end message includes information of the first account and information of the third terminal device.
  • the wireless support device 53 generates a power-off suspension state release message according to the second call end message, and changes the state of the first terminal device from the power-off suspension state to the power-off state.
  • the application processor 52 stores the setup information of the call waiting, but the incoming request message is not for the first account used for the outgoing call, but for the second account, then:
  • the baseband processor 51 sends an incoming call alert message to the wireless support device 53; wherein the incoming call alert message carries information of the second account; the wireless support device 53 processes the incoming call alert message when it is not recognized that it has the same command as the outgoing call command When the information of the first account is used, or when the information indicating that the electric alert message carries a different account than the outgoing call request message, the incoming call request is rejected.
  • the baseband processor 51 also releases the memory occupied by the incoming request and associated parameters.
  • the terminal device in this embodiment may also be implemented by using the entity shown in FIG. 4 above, and details are not described herein again.
  • the terminal device When receiving the call request message input by the user, the terminal device provided by the embodiment first confirms whether the first terminal device recorded by the internal state machine is currently idle; when idle, the terminal device of the first terminal device The status is updated to the de-energized state, and the de-energized state of the first terminal device is protected by the mutex lock; if the current state of the first terminal device is not the idle state, the outgoing call request message is rejected. If the incoming call is received again when the first terminal device is in the power-off state, the process of calling the incoming call is performed according to whether the call waiting is set.
  • the incoming call is directly rejected; if the incoming call is set and the account corresponding to the incoming call request is the account that is being called out, then Switching between the incoming call and the outgoing call enables voice communication with the incoming terminal device or voice communication with the outgoing terminal device when the first terminal device is in different states.
  • the embodiment of the invention provides a stable and reliable call conflict processing mechanism, which can improve the user experience.
  • the processing method and the terminal device provided by the present invention are not limited to being applied in a dual-card single-pass mobile phone, and A slight change is applied to a single-card single-pass mobile phone, or a dual-card dual-pass mobile phone.
  • the application scenarios provided by the embodiments are not intended to limit the scope of the present invention.
  • the steps of a method or algorithm described in connection with the embodiments disclosed herein can be implemented in hardware, a software module executed by a processor, or a combination of both.
  • the software module can be placed in random access memory (RAM), memory, read only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or technical field. Any other form of storage medium known.
  • RAM random access memory
  • ROM read only memory
  • electrically programmable ROM electrically erasable programmable ROM
  • registers hard disk, removable disk, CD-ROM, or technical field. Any other form of storage medium known.

Abstract

本发明涉及一种终端设备呼叫冲突的处理方法和终端设备,所述方法包括:第一终端设备的基带处理器接收网络发送的来自第二终端设备的呼入请求消息;呼入请求消息携带第一终端设备的第一账号的信息;基带处理器根据所述呼入请求消息向所述第一终端设备的无线支持装置发送来电指示消息;无线支持装置获取第一终端设备的状态;当为空闲状态时,无线支持装置根据来电指示消息将第一终端设备的状态更新为来电状态,并占据互斥锁;无线支持装置向基带处理器发送状态更改成功消息;基带处理器根据状态更改成功消息,将呼入请求消息发送给第一终端设备的应用处理器,用以应用处理器根据呼入请求消息向用户提示来电信息。

Description

一种终端设备呼叫冲突的处理方法和终端设备 技术领域
本发明涉及无线通信技术领域,尤其涉及一种终端设备呼叫冲突的处理方法和终端设备。
背景技术
目前,智能手机的硬件体系结构大多采用的是双处理器架构,其中,应用处理器运行操作系统,负责整个操作系统的控制,包括音视频处理、文档处理、数据处理等手机附加应用功能;基带处理器负责通信协议的处理,实现手机的基本通信功能。采用双处理器的架构,能够丰富、扩展手机的功能,却也使得手机内部的处理更加复杂。
用户在使用手机通话中,存在这样的场景:用户在进行去电的同时,恰好接收到来电。在传统单卡单通的手机中,不会存在冲突。这是因为,对于单卡手机,在这样的场景下,进行来电或去电是依靠抢占协议栈的先后顺序来确定的。如果去电优先占据协议栈,会根据手机是否设置来电等待处理来电信息;如果来电优先占据协议栈,则去电失败。
但是在双处理器架构的智能手机中,去电信息需要先经过应用处理器,然后到达基带处理器并完成去电操作,来电信息需要先经过基带处理器,然后到达应用处理器才能提示用户来电呼入。如果用户的去电正在应用处理器进行处理,同时来电已经到达基带处理器,就会发生冲突,导致手机处理混乱,反之亦然。
对于双卡单通手机,对于不同卡(不同账号)的来电和去电的冲突,目前尚无任何机制。因为每个账号对应各自独立的一个协议栈,一旦发生来电 和去电同时到达的情况,来电和去电会分别更新各自所属的协议栈,此时会造成去电停留在电话呼叫界面,但是无法拨打出去,而呼叫该手机的主叫方听到对方有响铃,但是被叫方没有任何来电显示,也就是说,来电和去电都无法进行下去。因此,对于双卡单通手机的来电去电冲突,尚缺乏一种有效的保护机制。
发明内容
有鉴于此,本发明实施例提供一种终端设备呼叫冲突的处理方法和终端设备,对于手机,特别是双卡智能手机提供了一种稳定、可靠的处理机制,尤其是在来电去电同时到达的情况下能够有效的解决来、去电冲突,使得来电或者去电能够顺利进行,提高用户体验。
第一方面,本发明实施例提供了一种终端设备呼叫冲突的处理方法,所述终端设备包括基带处理器、无线支持装置和应用处理器所述方法包括:
第一终端设备的基带处理器接收网络发送的来自第二终端设备的呼入请求消息;所述呼入请求消息携带所述第一终端设备的第一账号的信息;
所述基带处理器根据所述呼入请求消息向所述第一终端设备的无线支持装置发送来电指示消息;所述来电指示消息包括所述第一账号的信息;
所述无线支持装置获取所述第一终端设备的状态;
当所述第一终端设备的状态为空闲状态时,所述无线支持装置根据所述来电指示消息将所述第一终端设备的状态更新为来电状态,并占据互斥锁;
所述无线支持装置向所述基带处理器发送状态更改成功消息;
所述基带处理器根据所述状态更改成功消息,将所述呼入请求消息发送给第一终端设备的应用处理器;
所述应用处理器根据所述呼入请求消息向用户提示来电信息。
在第一种可能的实现方式中,当所述无线支持装置根据所述来电指示消息将所述第一终端设备的状态更新为来电状态时,所述方法还包括:
所述无线支持装置生成第一校验码;所述第一校验码包括所述第一账号的信息和所述第二终端设备的信息。
结合第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述方法还包括:
当所述应用处理器接收到用于结束第一终端设备与第二终端设备之间通话连接的挂断指令时,所述应用处理器向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;或者
当所述基带处理器接收网络发送的用于结束第一终端设备与第二终端设备之间通话连接的挂断指令时,所述基带处理器向所述无线支持装置发送通话结束消息;
所述无线支持装置根据所述通话结束消息生成来电状态释放消息,并解除所述互斥锁;
所述第一终端设备根据所述来电状态释放消息和所述第一校验码,将所述第一终端设备的状态复位为空闲状态。
在第三种可能的实现方式中,在所述无线支持装置根据所述来电指示消息将所述第一终端设备的状态更新为来电状态,并占据互斥锁之后,所述应用处理器接收到用户输入的呼出指令时,所述方法还包括:
所述应用处理器根据所述呼出指令向所述无线支持装置发送呼出请求消息;所述无线支持装置获取所述第一终端设备的状态;
当所述第一终端设备的状态为来电状态时,所述无线支持装置向所述应用处理器发送拒绝呼出响应信息。
结合第一方面的第三种可能的实现方式,在第四种可能的实现方式中,当所述基带处理器根据所述呼入请求消息向所述第一终端设备的无线支持装置发送来电指示消息的同时,所述应用处理器将所述呼出请求消息发送给所述无线支持装置,所述方法还包括:
所述无线支持装置获取预先存储的呼入呼出优先级的配置信息;
所述无线支持装置根据所述配置信息选择将所述第一终端设备的状态更新为来电状态或者更新为去电状态。
在第五种可能的实现方式中,当所述第一终端设备的状态为来电状态或者去电状态时,所述方法还包括:
所述无线支持装置向基带处理器发送拒绝状态更改消息;
所述基带处理器根据所述拒绝状态更改消息向网络发送拒绝第二终端设备呼入的响应信息。
第二方面,本发明实施例提供了一种终端设备呼叫冲突的处理方法,所述终端设备包括基带处理器、无线支持装置和应用处理器,所述方法包括:
第一终端设备的应用处理器接收用户输入的呼出指令;
所述应用处理器根据所述呼出指令向所述第一终端设备的无线支持装置发送呼出请求消息;所述呼出请求消息携带所述第一终端设备的第一账号的信息和第二终端设备的信息;
所述无线支持装置获取所述第一终端设备的状态;
当所述第一终端设备的状态为空闲状态时,所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁;
所述无线支持装置向所述应用处理器发送状态更改成功消息;
所述应用处理器根据所述状态更改成功消息,将所述呼出请求消息发送给第一终端设备的基带处理器;
所述基带处理器根据所述呼出请求消息向网络发送对所述第二终端设备的呼叫请求。
在第一种可能的实现方式中,当所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态时,所述方法还包括:
所述无线支持装置生成第二校验码;所述第二校验码包括所述第一账号的信息和所述第二用户设备的信息。
结合第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述方法还包括:
当所述应用处理器接收到用于结束第一终端设备与第二终端设备之间通话连接的挂断指令时,所述应用处理器向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;或者
当所述基带处理器接收网络发送的用于结束第一终端设备与第二终端设备之间通话连接的挂断指令时,所述基带处理器向所述无线支持装置发送通话结束消息;
所述无线支持装置根据所述通话结束消息生成去电状态释放消息,并解除所述互斥锁;
所述第一终端设备根据所述去电状态释放消息和所述第二校验码,将所述第一终端设备的状态复位为空闲状态。
在第三种可能的实现方式中,在所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,所述基带处理器接收到网络发送的来自第三终端设备的呼入请求消息时,所述方法还包括:所述基带处理器根据所述呼入请求消息向所述无线支持装置发送来电指示消息;
所述无线支持装置获取所述第一终端设备的状态;
当所述第一终端设备的状态为去电状态时,所述无线支持装置向所述应用处理器发送拒绝呼入响应信息;
所述应用处理器将所述拒绝呼入响应信息通过所述基带处理器发送给网络。
结合第二方面的第一种可能的实现方式,在第四种可能的实现方式中,在所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,所述基带处理器接收到网络发送的来自第 三终端设备的呼入请求消息时,所述方法还包括:
所述基带处理器根据所述呼入请求消息向所述无线支持装置发送来电指示消息;其中所述来电指示消息携带所述第一终端设备的第一账号的信息;
所述无线支持装置对所述来电指示消息进行处理,当识别出所述第一账号的信息时,将所述来电指示消息发送给所述应用处理器;
所述应用处理器根据所述呼入请求消息生成提示信息,用以提示所述用户接收到来自所述第三终端设备的来电呼入;
当所述应用处理器接收用户输入的呼出挂起指令时,向所述无线支持装置发送呼出挂起消息;
所述无线支持装置根据所述呼出挂起消息将所述第一终端设备的状态更新为去电挂起状态,并将所述第一终端设备与所述第二终端设备之间的呼叫挂起;
当所述第一终端设备为所述去电挂起状态时,所述基带处理器接收并向所述应用处理器发送所述第三终端设备的来电信息。
结合第二方面的第四种可能的实现方式,在第五种可能的实现方式中,在所述无线支持装置根据所述呼出挂起指令将所述第一终端设备的状态更新为去电挂起状态之后,所述方法还包括:
当所述应用处理器接收用户输入的呼出恢复指令时,向所述无线支持装置发送呼出恢复消息;
所述无线支持装置根据所述呼出恢复消息将所述第一终端设备的状态更新为去电状态;并将所述第一终端设备与所述第三终端设备之间的呼叫挂起。
结合第二方面的第四种、第五种可能的实现方式,在第六种可能的实现方式中,所述方法还包括:
当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,所述应用处理器向所述无线支持装置发送第一通话结束消息;所述第一通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
所述无线支持装置根据所述第一通话结束消息向所述第一终端设备发送去电状态释放消息,并解除所述互斥锁;
所述第一终端设备根据所述去电状态释放消息和所述第二校验码,将所述第一终端设备的状态复位为空闲状态;
所述无线支持装置将所述第一终端设备的状态更新为来电状态,占据互斥锁,并生成第三校验码;所述第三校验码包括所述第一账号的信息和所述第三终端设备的信息。
结合第二方面的第四种、第五种可能的实现方式,在第七种可能的实现方式中,所述方法还包括:
当所述应用处理器接收到用于结束与第三终端设备之间通话的挂断指令时,所述应用处理器向所述无线支持装置发送第二通话结束消息;所述第二通话结束消息包括所述第一账号的信息和所述第三终端设备的信息;
所述无线支持装置根据所述第二通话结束消息向所述第一终端设备发送去电挂起状态释放消息,将所述第一终端设备的状态由所述去电挂起状态更改为去电状态。
在第八种可能的实现方式中,当所述第一终端设备的状态为来电或去电状态时,所述方法还包括:
所述无线支持装置向所述应用处理器发送拒绝状态更改消息;
所述应用处理器根据所述拒绝状态更改消息拒绝对所述第二终端设备的呼出请求消息。
第三方面,本发明实施例提供了一种第一终端设备,包括:基带处理器、应用处理器和无线支持装置;
所述基带处理器用于,接收网络发送的来自第二终端设备的呼入请求消息;所述呼入请求消息携带所述第一终端设备的第一账号的信息;
所述基带处理器还用于,根据所述呼入请求消息向所述无线支持装置发送来电指示消息;所述来电指示消息包括所述第一账号的信息;
所述无线支持装置用于,获取所述第一终端设备的状态;
当所述第一终端设备的状态为空闲状态时,所述无线支持装置还用于,根据所述呼入请求消息将所述第一终端设备的状态更新为来电状态,并占据互斥锁;
所述无线支持装置还用于,向所述基带处理器发送状态更改成功消息;
所述基带处理器还用于,根据所述状态更改成功消息,将所述呼入请求消息发送给所述应用处理器;
所述应用处理器用于,根据所述呼入请求消息向用户提示来电信息。
在第一种可能的实现方式中,当所述无线支持装置根据所述呼入请求消息将所述第一终端设备的状态更新为来电状态时,所述无线支持装置还用于:
生成第一校验码;所述第一校验码包括所述第一账号的信息和所述第二终端设备的信息。
结合第三方面的第一种可能的实现方式,在第二种可能的实现方式中,当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,
所述应用处理器还用于,向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
所述无线支持装置还用于,根据所述通话结束消息生成来电状态释放消息,并解除所述互斥锁,,用以结合所述第一校验码,将所述第一终端设备的状态复位为空闲状态。
在第三种可能的实现方式中,当所述第一终端设备的状态为来电状态时,所述应用处理器接收到用户输入的呼出指令,
所述应用处理器还用于,根据所述呼出指令向所述无线支持装置发送呼出请求消息;
所述无线支持装置还用于,获取所述第一终端设备的状态;
当所述第一终端设备的状态为来电状态时,所述无线支持装置还用于,向所述应用处理器发送拒绝呼出响应信息。
结合第三方面的第三种可能的实现方式,在第四种可能的实现方式中,当所述基带处理器根据所述呼入请求消息向所述第一终端设备的无线支持装置发送来电指示消息的同时,所述应用处理器还用于,将所述呼出请求消息发送给所述无线支持装置;
所述无线支持装置还用于,获取预先存储的呼入呼出优先级的配置信息;并根据所述配置信息选择,将所述第一终端设备的状态更新为来电状态或者更新为去电状态。
在第五种可能的实现方式中,当所述第一终端设备的状态为来电状态或者去电状态时,
所述无线支持装置还用于,向基带处理器发送拒绝状态更改消息;
所述基带处理器还用于,根据所述拒绝状态更改消息向网络发送拒绝第二终端设备呼入的响应信息。
第四方面,本发明实施例提供了一种第一终端设备,包括:基带处理器、应用处理器和无线支持装置;
所述应用处理器用于,接收用户输入的呼出指令;
所述应用处理器还用于,根据所述呼出指令向所述无线支持装置发送呼出请求消息;所述呼出请求消息携带所述第一终端设备的第一账号的信息和第二终端设备的信息;
所述无线支持装置用于,获取所述第一终端设备的状态;
当所述第一终端设备的状态为空闲状态时,所述无线支持装置还用于,根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁;
所述无线支持装置还用于,向所述应用处理器发送状态更改成功消息;
所述应用处理器还用于,根据所述状态更改成功消息,将所述呼出请求消息发送给所述基带处理器;
所述基带处理器用于,根据所述呼出请求消息向网络发送对所述第二终 端设备的呼叫请求。
在第一种可能的实现方式中,当所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态时,所述无线支持装置还用于:
生成第二校验码;所述第二校验码包括所述第一账号的信息和所述第二用户设备的信息。
结合第四方面的第一种可能的实现方式,在第二种可能的实现方式中,当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,
所述应用处理器还用于,向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
所述无线支持装置还用于,根据所述通话结束消息生成去电状态释放消息,并解除所述互斥锁,,用以结合所述第二校验码,将所述第一终端设备的状态复位为空闲状态。
在第三种可能的实现方式中,在所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,所述基带处理器接收到网络发送的来自第三终端设备的呼入请求消息时,
所述基带处理器还用于,将所述呼入请求消息向所述无线支持装置发送来电指示消息;
所述无线支持装置还用于,获取所述第一终端设备的状态;
当所述第一终端设备的状态为去电状态时,所述无线支持装置向所述应用处理器发送拒绝呼入响应信息;
所述应用处理器还用于,将所述拒绝呼入响应信息通过所述基带处理器发送给网络。
结合第四方面的第一种可能的实现方式,在第四种可能的实现方式中,在所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,当所述基带处理器接收到网络发送的来自第三终端设备的呼入请求消息时,
所述基带处理器还用于,根据所述呼入请求消息向所述无线支持装置发送来电指示消息;其中所述来电指示消息携带所述第一终端设备的第一账号的信息;
所述无线支持装置还用于,对所述来电指示消息进行处理,当识别出所述第一账号的信息时,将所述来电指示消息发送给所述应用处理器;
所述应用处理器还用于,根据所述呼入请求消息生成提示信息,用以提示所述用户接收到来自所述第三终端设备的来电呼入;
当所述应用处理器接收用户输入的呼出挂起指令时,向所述无线支持装置发送呼出挂起消息;
所述无线支持装置还用于,根据所述呼出挂起指令将所述第一终端设备的状态更新为去电挂起状态,并将所述第一终端设备与所述第二终端设备之间的呼叫挂起;
当所述第一终端设备为所述去电挂起状态时,所述基带处理器接收并向所述应用处理器发送所述第三终端设备的来电信息。
结合第四方面的第四种可能的实现方式,在第五种可能的实现方式中,在所述无线支持装置根据所述呼出挂起指令将所述第一终端设备的状态更新为去电挂起状态之后,
当所述应用处理器接收用户输入的呼出恢复指令时,所述应用处理器还用于,向所述无线支持装置发送呼出恢复消息;
所述无线支持装置还用于,根据所述呼出恢复指令将所述第一终端设备的状态更新为去电状态,并将所述第一终端设备与所述第三终端设备之间的呼叫挂起。
结合第四方面的第四种、第五种可能的实现方式,在第六种可能的实现方式中,当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,
所述应用处理器还用于,向所述无线支持装置发送第一通话结束消息; 所述第一通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
所述无线支持装置还用于,根据所述第一通话结束消息生成去电状态释放消息,并解除所述互斥锁,用以结合所述第二校验码,将所述第一终端设备的状态复位为空闲状态;
所述无线支持装置还用于,将所述第一终端设备的状态更新为来电状态,占据互斥锁,并生成第三校验码;所述第三校验码包括所述第一账号的信息和所述第三终端设备的信息。
结合第四方面的第四种、第五种可能的实现方式,在第七种可能的实现方式中,当所述应用处理器接收到用于结束与第三终端设备之间通话的挂断指令时,
所述应用处理器还用于,向所述无线支持装置发送第二通话结束消息;所述第二通话结束消息包括所述第一账号的信息和所述第三终端设备的信息;
所述无线支持装置还用于,根据所述第二通话结束消息生成去电挂起状态释放消息,将所述第一终端设备的状态由所述去电挂起状态更改为去电状态。
在第八种可能的实现方式中,当所述第一终端设备的状态为来电或去电状态时,
所述无线支持装置还用于,向所述应用处理器发送拒绝状态更改消息;
所述应用处理器还用于,根据所述拒绝状态更改消息拒绝对所述第二终端设备的呼出请求消息。
本发明实施例提供的终端设备呼叫冲突的处理方法,通过状态机来记录终端设备当前所处的状态为来电、去电或空闲,当处于空闲时,根据来电信息或去电对信息对状态机的占据来决定终端设备是处理来电或是去电,并通过互斥锁对状态机被来电或去电占据后的状态进行保护,从而提供了一种稳 定、可靠的处理机制,尤其是在来电去电同时到达的情况下使得来电或者去电能够顺利进行,提高用户体验。
附图说明
图1为发明实施例1提供的一种终端设备呼叫冲突的处理方法流程图;
图2为发明实施例2提供的另一种终端设备呼叫冲突的处理方法流程图;
图3为本发明实施例3提供的终端设备的结构示意图;
图4为本发明实施例4提供的一种终端设备的实体结构示意图;
图5为本发明实施例5提供的终端设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面以图1为例详细说明本发明提供的终端设备呼叫冲突的处理方法。本实施例主要以第一终端设备接收呼入的场景为例进行说明,第一终端设备包括基带处理器、无线支持装置和应用处理器,所述无线支持装置包括有状态机。基带处理器相当于一个协议处理器,负责数据处理与储存,主要组件为数字信号处理器(DSP)、微控制器(MCU)、内存(SRAM、Flash)等单元,主要功能为基带编码/译码、声音编码及语音编码等。应用处理器为终端设备的多媒体应用处理模块,其功能为运行操作系统和各种应用程序。无线支持装置为应用处理器和基带处理器之间的通信桥梁。通过状态机可以记录第一终端设备的账号是否处于来电、去电或者空闲状态。
该方法包括如下步骤:
步骤100,第一终端设备的基带处理器接收网络发送的来自第二终端设备的呼入请求消息;所述呼入请求消息携带所述第一终端设备的第一账号的信息;
具体的,第一终端设备可以是具有应用处理器和基带处理器的智能手机,例如具有双卡单通功能的智能手机,其中,双卡分别对应用户的第一账号和第二账号。第一账号和第二账号可以分别是两个客户识别模块(Subscriber Identity Module,SIM)卡。第二终端设备可以是具有通话功能的手机或座机等。
当第二终端设备的用户需要与第一终端设备的用户进行通话时,通过在第二用户设备上输入第一账号(当然也可以是第二账号)的信息,发起对第一用户设备的呼入请求消息。
这个呼入请求消息会首先发送至网络,然后再由网络转送到第一终端设备的基带处理器进行接收。
步骤110,所述基带处理器根据所述呼入请求消息向所述第一终端设备的无线支持装置发送来电指示消息;
具体的,基带处理器接收到来自第二用户设备的呼入请求消息时,生成来电指示消息并发送给第一终端设备内的无线支持装置。所述来电指示消息包括所述第一账号的信息。在本发明中,无线支持装置是指无线接口层(Radio Interface Layer,RIL)。
RIL工作在点对点协议(Point to Point Protocol,PPP)、传输控制协议/因特网互联协议(Transmission Control Protocol/Internet Protocol,TCP/IP协议)之下,负责数据的可靠传输、AT(Attention)命令(一种调制解调器命令语言)的发送以及响应的解析。当然,除了对网络的支持,RIL也支持短消息服务、语音通话等功能。
换句话说,RIL能够为应用处理器中运行的应用程序提供无线通信相关的服务,包括呼叫控制、短消息、通用无线分组业务(General Packet Radio  Service,GPRS)等功能。而且对于上层应用程序来说,可以抽象地把RIL看作逻辑设备,只需要和RIL通信就能够获得所需要的服务。
步骤120,所述无线支持装置获取所述第一终端设备的状态;
具体的,无线支持装置包括状态机,因此可以通过状态机来记录第一终端设备的第一账号或第二账号是否处于来电、去电或者空闲状态。状态机根据不同的触发条件记录终端设备的状态,处理器则根据状态机的不同状态执行不同的处理。
当无线支持装置接收到呼入请求消息的时候,会先对第一终端设备的状态进行检测,确定第一账号、第二账号是否已经处于来电或者去电的状态。
如果第一终端设备的第一账号或者第二账号已经处于来电或者去电的状态,则执行步骤130;如果第一终端设备的第一账号和第二账号都处于空闲状态,则执行下述步骤140。
步骤130,当所述第一终端设备的的状态为来电状态或者去电状态时,无线支持装置向基带处理器发送拒绝状态更改消息,用于基带处理器根据拒绝状态更改消息向网络发送拒绝第二终端设备呼入的响应信息。
具体的,在实际应用中,对于第一账号和第二账号,状态机对来电或者去电状态可以分别进行记录,例如,可以将第一账号的去电状态记录为sub0/MO call,将第一账号的来电状态记录为sub0/MT call,将第二账号的去电状态记录为sub1/MO call,将第二账号的来电状态记录为sub1/MT call。
步骤140,当所述第一终端设备的的状态为空闲状态时,所述无线支持装置根据所述来电指示消息将所述第一终端设备的的状态更新为来电状态,并占据互斥锁;
具体的,在确定状态机为空闲状态时,RIL根据对第一账号的呼入请求消息,对第一终端设备的的状态更新为来电状态。
本发明中,第一终端设备的在来电状态或去电状态的时候,采用互斥锁来来防止在当前的来电状态或去电状态下再发生其他呼入或者呼出占用通信 资源(此处不包括允许来电等待)的情况。
因此,在RIL对状态机的状态进行更新,例如更新为来电状态时,RIL还生成第一校验码,并将第一校验码发送给状态机;其中,第一校验码包括:第一账号的信息和第二终端设备的信息。
步骤150,所述无线支持装置向所述基带处理器发送状态更改成功消息;
具体的,在对第一终端设备的的状态进行更新后,RIL向基带处理器发送状态更改成功消息。
步骤160,所述基带处理器根据所述状态更改成功消息,将所述呼入请求消息发送给第一终端设备的应用处理器,用以所述应用处理器根据所述呼入请求消息向用户提示来电信息。
具体的,基带处理器接收到状态更改成功消息后,将来自第二终端设备的呼入请求消息发送给应用处理器。
应用处理器在接收到呼入请求消息之后,向用户提示有来自第二终端设备的来电信息。
如果用户根据提示选择接听来电,则通过网络建立第一终端设备和第二终端设备之间的语音通路。
如果用户根据提示拒绝接听来电,或者在建立语音通路后,第一终端设备或第二终端设备任意一方的用户挂断通话时,所述方法还包括:
步骤170,当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,向所述无线支持装置发送通话结束消息;
具体的,应用处理器接收到的挂断指令可以是作为被叫方的第一终端设备的用户输入的拒绝接听的指令,也可以是该用户在通话建立之后的任意时间输入的挂断通话的指令;还可以是来自基带处理器转发的挂断指令,而基带处理器的挂断指令可以是由网络发送的第二终端设备接收到其用户输入的挂断通话的指令信息。
无论从哪里接收到挂断指令,都会根据该指令生成通话结束消息发送到 RIL。
步骤180,所述无线支持装置根据所述通话结束消息生成来电状态释放消息,并解除所述互斥锁;
具体的,RIL在接收到通话结束消息时,生成来电状态释放消息用以释放被状态机记录和锁定的来电状态。
步骤190,所述第一终端设备根据所述来电状态释放消息和所述第一校验码,将状态复位为空闲状态;
具体的,根据RIL的来电状态释放消息,以及第一校验码,将状态机进行复位。
在复位的过程中,首先会将状态机记录的状态更新为结束通话的状态,等待该通话连接占用的内存释放完毕,第一终端设备内相关参数都复位完成后,再将状态机记录的状态更新为空闲状态,并将第一校验码设置为无效。比如,具体可以是将第一校验码复位为0。
在上述过程中,还可能包括其他一些情况:
例如,在上述步骤140在所述无线支持装置根据来电指示消息将所述第一终端设备的状态更新为来电状态,并占据互斥锁之后(此时来电指示消息还未发送到应用处理器,或者还未完成语音通路的建立),应用处理器接收到第一终端设备的用户输入的呼出指令,则:
应用处理器根据呼出指令向RIL发送呼出请求消息;
RIL根据呼出请求消息对第一终端设备的状态进行检测;
当RIL检测到第一终端设备已经处于来电状态时,向应用处理器发送拒绝呼出响应信息。
此外,应用处理器还会释放该呼出请求消息占用的内存以及相关参数。
又如,在步骤110基带处理器将所述来电指示消息发送给所述第一终端设备的无线支持装置的同时,应用处理器也将呼出请求消息发送给无线支持装置,则:
无线支持装置获取预先存储的呼入呼出优先级的配置信息;该配置信息用于规定当呼入、呼出同时到达RIL时,选择呼入或呼出优先处理的规则;
无线支持装置根据配置信息选择将第一终端设备的状态更新为来电状态或者更新为去电状态。
本发明实施例一,以第一终端设备接收到第二终端设备的呼入请求消息场景为例,对本发明呼叫冲突的处理方法进行了说明。
当第一终端设备接收到呼入请求消息时,首先确认其内部的状态机记录的第一终端设备当前所处状态是否为空闲状态;当处于空闲状态时,根据呼入请求消息将第一终端设备的状态更新为来电状态,并通过互斥锁对该来电状态进行保护;如果第一终端设备当前的状态不是空闲状态,则拒绝该呼入请求。本发明实施例提供了一种稳定、可靠的呼叫冲突的处理方法,能够在来、去电发生冲突的情况下有效的保证来电或者去电中的一个进程能够顺利进行,提高用户体验。
下面以图2为例详细说明本发明提供的呼叫冲突的处理方法。本实施例主要以第一终端设备作为主叫呼出的场景为例进行说明,该方法包括如下步骤:
步骤200,第一终端设备的应用处理器接收用户输入的呼出指令;
具体的,在第一终端设备进行呼出时,首先要接到用户输入的呼出指令。该呼出指令通过第一终端设备的输入设备接收下来,并传送至应用处理器。
其中,输入设备可以包括第一终端设备的触摸屏、键盘、麦克风等等。
步骤210,所述应用处理器根据所述呼出指令向所述第一终端设备的无线支持装置发送呼出请求消息;
具体的,应用处理器在接收到呼出指令时,根据呼出指令生成呼出请求消息发送到第一终端设备内的无线支持装置。其中呼出请求消息携带所述第一终端设备的第一账号的信息和第二终端设备的信息。
与上述实施例相同,无线支持装置是指RIL。
步骤220,所述无线支持装置获取所述第一终端设备的状态;
具体的,无线支持装置包括状态机,通过状态机来记录第一终端设备的第一账号或第二账号是否处于来电、去电或者空闲状态。需要说明的是,在第一终端设备已经处于发起去电的状态或者已经处于去电的状态时,用户是无法通过第一终端设备再发出其他去电请求的,也就是说,当第一终端设备接收用户输入的呼出指令的时候,在正常情况下,状态机所记录的第一终端设备的状态是不可能处于去电状态的,因此通常情况无需对第一终端设备是否处于去电状态进行讨论。但是并不能排除状态机发生异常的情况,会存在第一终端设备处于去电状态的可能性。接下来,我们主要对来电和空闲状态进行讨论。
当无线支持装置接收到呼出请求消息的时候,会先确认第一终端设备的状态,从而确定第一账号、第二账号是否已经处于来电的状态。
如果第一终端设备的第一账号或第二账号已经处于来电状态,则执行步骤230;如果第一终端设备的第一账号或者第二账号都处于空闲状态,则执行下述步骤240。
步骤230,当所述第一终端设备的状态为来电状态时,无线支持装置向应用处理器发送拒绝状态更改消息,用于应用处理器根据拒绝状态更改消息拒绝对第二终端设备的呼出请求消息,并且提示用户来电信息。
具体的,提示用户来电信息及来电处理的过程,均依照上述实施例中来电场景的描述,此处不再赘述。
步骤240,当检测所述第一终端设备为空闲状态时,所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁;
具体的,在确定第一终端设备为空闲状态时,RIL根据通过第一账号向第二终端设备的呼出请求消息,对第一终端设备的状态进行更新,更新为去电状态。
本发明中,通过状态机记录第一终端设备在来电状态或去电状态的时候,采用互斥锁来来防止在当前的来电状态或去电状态下再发生其他呼入或者呼出占用通信资源的情况。对于去电状态下允许呼叫等待时呼入的处理,后续会有单独说明。
因此,在RIL对状态机进行更新,例如更新为第一终端设备处于去电状态时,RIL还会生成第二校验码;其中,第二校验码包括:第一账号的信息和第二终端设备的信息。
步骤250,无线支持装置向所述应用处理器发送状态更改成功消息;
具体的,在对第一终端设备的状态进行更新后,RIL向应用处理器发送状态更改成功消息。
步骤260,应用处理器根据所述状态更改成功消息,将所述呼出请求消息发送给第一终端设备的基带处理器,用以所述基带处理器根据所述呼出请求消息向网络发送对所述第二终端设备的呼叫请求。
具体的,应用处理器接收到状态更改成功消息后,将呼出请求消息发送给基带处理器,并通过基带处理器发送到网络,通过网络建立第一终端设备和第二终端设备之间的语音通路。
如果第二终端设备的用户拒绝呼入请求消息,或者在建立语音通路后,第一终端设备或第二终端设备任意一方的用户挂断通话时,所述方法还包括:
步骤270,当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,应用处理器向所述无线支持装置发送通话结束消息;
具体的,应用处理器接收到的挂断指令可以是作为被叫方的第一终端设备的用户输入的拒绝接听的指令,也可以是该用户在通话建立之后的任意时间输入的挂断通话的指令;还可以是基带处理器转发的挂断指令,基带处理器的挂断指令可以来自由网络发送的第二终端设备接收到其用户输入的挂断通话的指令信息。
无论从哪里接收到挂断指令,都会根据该指令生成通话结束消息,发送 到RIL。
步骤280,所述无线支持装置根据所述通话结束消息生成去电状态释放消息,并解除所述互斥锁;
具体的,RIL在接收到通话结束消息时,生成来电状态释放消息用以释放被状态机记录和锁定的去电状态。
步骤290,所述第一终端设备根据所述去电状态释放消息和所述第二校验码,将所述第一终端设备的状态复位为空闲状态;
具体的,根据RIL的去电状态释放消息,以及第二校验码,将状态机进行复位。
在复位的过程中,首先会将状态机记录的状态更新为结束通话的状态,等待该通话连接占用的内存释放完毕,第一终端设备内相关参数都复位完成后,再将状态机记录的状态更新为空闲状态,并将第二校验码设置为无效。比如,具体可以是将第二校验码复位为0。
在上述过程中,还可能包括其他一些情况:
例如,在步骤240,无线支持装置根据所述呼出请求消息将第一终端设备的状态更新为去电状态,并占据互斥锁之后,基带处理器接收到网络发送的来自第三终端设备的呼入请求消息,此时要根据第一终端设备的应用处理器是否有来电等待的配置信息而确定对于来电的处理方案。其中,来电等待的配置信息预先由用户设置,并存储在第一终端设备中,通过应用处理器能够获取该配置信息。
具体的处理方案至少可以包括以下三种:
在第一种方案中,应用处理器中没有存储来电等待的设置信息,则处理方法如下:
基带处理器接收网络发送的来自第三终端设备的呼入请求消息,向无线支持装置发送来电指示消息;无线支持装置根据来电指示消息对第一终端设备的状态进行检测;当无线支持装置检测到第一终端设备处于去电状态时, 向应用处理器发送拒绝呼入响应信息;应用处理器将所述拒绝呼入响应信息通过基带处理器发送给网络,从而发送给第三终端设备。
在第二种方案中,应用处理器中存储有来电等待的设置信息,且呼入请求消息是对呼出所用的第一账号的,则处理方法如下:
基带处理器根据呼入请求消息生成来电指示消息发送给无线支持装置;其中来电指示消息携带有第一终端设备的第一账号的信息;无线支持装置对来电指示消息进行处理,当识别出具有与所述呼出指令相同的第一账号的信息时,将来电指示消息发送给无线支持装置;无线支持装置检测到第一终端设备处于去电状态时,将来电指示消息发送给应用处理器;应用处理器根据来电指示消息生成提示信息,用以提示用户有来自第三终端设备的来电呼入;当应用处理器接收用户输入的呼出挂起指令时,将呼出挂起指令发送给无线支持装置;无线支持装置根据呼出挂起指令将第一终端设备的状态更新为去电挂起状态,并将第一终端设备与第二终端设备之间的呼叫暂时挂起;当第一终端设备为去电挂起状态时,应用处理器接收基带处理器收到的网络发送的第三终端设备的来电信息,同时接收并发送所述用户输入的向所述第三终端设备发送的信息。
进一步的,在去电挂起状态下,当应用处理器接收用户输入的呼出恢复指令时,生成呼出恢复指令消息发送给所述无线支持装置;无线支持装置根据呼出恢复指令消息将第一终端设备的状态重新更新为去电状态;并将第一终端设备与第三终端设备之间的呼叫暂时挂起。
当应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,向无线支持装置发送通话结束消息;无线支持装置根据通话结束消息生成去电状态释放消息,并解除互斥锁;从而根据去电状态释放消息和第二校验码,将第一终端设备的状态复位为空闲状态。
因为此时来电还未结束,因此,无线支持装置随后就将第一终端设备的状态更新为来电状态,占据互斥锁,并生成第三校验码;第三校验码包括第 一账号的信息和第三终端设备的信息。随后来电呼入的处理过程在上述实施例中已经进行了详细描述,此处不再赘述。
另外,还可能存在先断开第一终端设备与第三终端设备之间的语音通路的情况。
此时,应用处理器接收到用于结束与第三终端设备之间通话的挂断指令,生成通话结束消息发送给无线支持装置。无线支持装置根据通话结束消息将第一终端设备由去电挂起状态重新更新为去电状态,从而继续连通第一终端设备与第二终端设备之间的语音通路。
在第三种方案中,应用处理器中存储有来电等待的设置信息,但呼入请求消息不是对呼出所用的第一账号的,而是对第二账号的,则处理方法如下:
基带处理器根据接收到的呼入请求消息向无线支持装置发送来电指示消息;其中来电指示消息携带有第一终端设备的第二账号的信息;无线支持装置对来电指示消息进行处理,当无法识别出具有与所述呼出指令相同的第一账号的信息时,或者识别出来电指示消息中携带有与呼出请求消息不同的账号的信息时,拒绝对第二账号呼入请求。基带处理器还会释放该呼入请求占用的内存以及相关参数。
本发明实施例二,以通过第一终端设备主动对第二终端设备进行呼叫的场景为例,对本发明呼叫冲突的处理方法进行了说明。
当第一终端设备接收用户输入的呼出请求消息时,首先确认其内部的状态机记录的第一终端设备当前所处是否为空闲;当处于空闲时,根据呼出请求消息将第一终端设备的状态更新为去电状态,并通过互斥锁对该去电状态进行保护;如果第一终端设备当前的状态不是空闲状态,则拒绝该呼出请求。如果在第一终端设备处于去电状态下再接到呼入,则根据是否设置来电等待来进行对呼入的处理。如果没有设置来电等待,或者呼入请求消息携带的账号信息与正在进行呼出的账号的信息不匹配,则直接拒绝呼入;如果设置了来电等待且呼入请求消息的账号信息与正在进行呼出的账号的信息匹配,则 可以在呼入和呼出间进行切换,在第一终端设备处于不同状态下实现与呼入的终端设备之间的语音通信或者与呼出的终端设备之间的语音通信。本发明实施例提供了一种稳定、可靠的呼叫冲突的处理机制,能够提高用户体验。
相应的,本发明实施例还提供了一种终端设备,用以实现上述实施例1所述的方法。
本实施例的终端设备可以具体为智能手机,特别是具有双卡单通功能的智能手机。也就是说,本实施例中的终端设备,包括有两个可以进行通话的账号,分别为第一账号和第二账号。为区别本发明的终端设备与其他与本发明终端设备进行通信的其他终端设备,将本发明的终端设备称为第一终端设备。如图3所示,该第一终端设备包括:基带处理器31、应用处理器32无线支持模块33。
基带处理器31是手机的一个重要部件,相当于一个协议处理器,负责数据处理与储存,主要组件为数字信号处理器(DSP)、微控制器(MCU)、内存(SRAM、Flash)等单元,主要功能为基带编码/译码、声音编码及语音编码等。在一种高集成度的基带处理器31中,基带处理器31可以具体为一种高度复杂系统芯片(SoC),不仅能够支持几种通信标准,而且还能提供多媒体功能以及用于多媒体显示器、图像传感器和音频设备相关的接口。在手机等终端设备中,基带处理器与射频和其它外围芯片作为一个模块,成为GSM/GPRS modem,提供AT命令接口。
应用处理器32的全名叫多媒体应用处理器(Multimedia Application Processor,MAP),其功能为运行操作系统和各种应用程序。
无线支持装置33是指RIL。RIL工作在PPP、TCP/IP协议之下,负责数据的可靠传输、AT命令的发送以及响应的解析。当然,除了对网络的支持,RIL也支持短消息服务、语音通话等功能。无线支持装置33为基带处理器31和应用处理器32之间的通信桥梁。无线支持装置33内设置有状态机(图中未示出),是软件虚拟化的一个模块,用于记录所述终端设备所处的通话状态, 例如,状态机可以将所述终端设备中第一账号的去电状态记录为sub0/MO call,将第一账号的来电状态记录为sub0/MT call,将第二账号的去电状态记录为sub1/MO call,将第二账号的来电状态记录为sub1/MT call。状态机根据不同的触发条件记录终端设备的状态,应用处理器32和基带处理器31则根据状态机的不同状态执行不同的处理。
所述基带处理器31用于,接收网络发送的来自第二终端设备的呼入请求消息;所述呼入请求消息携带所述第一终端设备的第一账号的信息;
所述基带处理器31还用于,根据所述呼入请求消息向所述终端设备的无线支持装置33发送来电指示消息;所述来电指示消息包括所述第一账号的信息。
所述无线支持装置33用于,获取所述第一终端设备的状态;
当所述第一终端设备的状态为空闲状态时,所述无线支持装置33还用于,根据所述呼入请求消息将所述第一终端设备的状态更新为来电状态,并占据互斥锁;
所述无线支持装置33还用于,向所述基带处理器31发送状态更改成功消息;
所述基带处理器31还用于,根据所述状态更改成功消息,将所述呼入请求消息发送给所述应用处理器32;
所述应用处理器32用于,根据所述呼入请求消息向用户提示来电信息。
当所述无线支持装置33根据所述呼入请求消息将第一终端设备的状态更新为来电状态时,所述无线支持装置33还用于:
生成第一校验码;所述第一校验码包括所述第一账号的信息和所述第二终端设备的信息。
当所述应用处理器32接收用于结束与第二终端设备之间通话的挂断指令时,
所述应用处理器32还用于,向所述无线支持装置33发送通话结束消息; 所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
所述无线支持装置33还用于,根据所述通话结束消息生成来电状态释放消息,并解除所述互斥锁;,用以结合所述第一校验码,将所述第一终端设备的状态复位为空闲状态。
在所述状态复位为空闲状态之后,还需将,将所述第一校验码设置为无效。
此外,当所述第一终端设备已经更改为来电状态之后,所述应用处理器32接收到用户输入的呼出指令,则
所述应用处理器32还用于,根据所述呼出指令向所述无线支持装置33发送呼出请求消息;
所述无线支持装置33还用于,获取所述第一终端设备的状态;
当所述无线支持装置33检测到所述第一终端设备处于来电状态时,所述无线支持装置33还用于,向所述应用处理器32发送拒绝呼出响应信息。
另外,还有一种特殊情况是,来电和去电同时到达无线支持装置33,也就是当所述基带处理器31将所述来电指示消息发送给所述无线支持装置33的同时,所述应用处理器32还用于,将所述呼出请求消息发送给所述无线支持装置33;
所述无线支持装置33还用于,获取预先存储的呼入呼出优先级的配置信息;并根据所述配置信息选择,将所述第一终端设备的状态更新为来电状态或者更新为去电状态。
前述对检测确定第一终端设备为空闲状态的情况进行了描述,当所述无线支持装置33根据所述来电指示消息检测到所述第一终端设备为来电状态或者去电状态时,
所述无线支持装置33还用于,向基带处理器31发送拒绝状态更改消息;
所述基带处理器31还用于,根据所述拒绝状态更改消息向网络发送拒绝第二终端设备呼入的响应信息。
上述该装置包括的基带处理器31、应用处理器32和无线支持装置33在接收第二终端设备呼入的场景下的具体工作过程已经在前述相应的方法实施例中进行了详细描述,此处不再赘述。
本实施例提供的终端设备,在接收到呼入请求消息时,首先确认其内部的状态机记录的第一终端设备当前所处状态是否为空闲状态;当处于空闲状态时,根据呼入请求消息将第一终端设备的状态更新为来电状态,并通过互斥锁对该来电状态进行保护;如果第一终端设备当前的状态不是空闲状态,则拒绝该呼入请求消息。本发明实施例提供了一种稳定、可靠的终端设备,能够在来、去电发生冲突的情况下有效的保证来电或者去电中的一个进程能够顺利进行,提高用户体验。
本发明实施例还提供了一种终端设备的一种实体架构,除了包括上述所述的基带处理器、应用处理器、无线支持装置之外,还可以包括其他部件。具体可以如图4所示。
如图4本实施例以一个手机为例对本发明的终端设备进行具体说明。
应该理解的是,图示手机400仅仅是移动终端的一个范例,并且手机400可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
图4示出的是与本发明实施例相关的手机400的实体结构的框图。参考图4,手机400包括、射频(Radio Frequency,RF)电路410、存储器420、输入单元430、显示单元440、传感器450、音频电路460、无线保真(wireless fidelity,WiFi)模块470、处理器480、以及电源490等部件。本领域技术人员可以理解,图4中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图4对手机400的各个构成部件进行具体的介绍:
RF电路410可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器480处理;另外,将设计上行的数据发送给基站。通常,RF电路410包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路410还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器420可用于存储软件程序以及模块,处理器480通过运行存储在存储器420的软件程序以及模块,从而执行手机400的各种功能应用以及数据处理。存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图象播放功能等)等;存储数据区可存储根据手机400的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元430可用于接收输入的数字或字符信息,以及产生与手机400的用户设置以及功能控制有关的键信号输入。具体地,输入单元430可包括触控面板431以及其他输入设备432。触控面板431,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板431上或在触控面板431附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板431可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸 操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器480,并能接收处理器480发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板431。除了触控面板431,输入单元430还可以包括其他输入设备432。具体地,其他输入设备432可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元440可用于显示由用户输入的信息或提供给用户的信息以及手机400的各种菜单。显示单元440可包括显示面板441,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板441。进一步的,触控面板431可覆盖显示面板441,当触控面板431检测到在其上或附近的触摸操作后,传送给处理器480以确定触摸事件的类型,随后处理器480根据触摸事件的类型在显示面板441上提供相应的视觉输出。虽然在图4中,触控面板431与显示面板441是作为两个独立的部件来实现手机400的输入和输入功能,但是在某些实施例中,可以将触控面板431与显示面板441集成而实现手机400的输入和输出功能。
手机400还可包括至少一种传感器450,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板441的亮度,接近传感器可在手机400移动到耳边时,关闭显示面板441和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机400还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路460、扬声器461,麦克风462可提供用户与手机400之间的音频接口。音频电路460可将接收到的音频数据转换后的电信号,传输到扬声器461,由扬声器461转换为声音信号输出;另一方面,麦克风462将收集的声音信号转换为电信号,由音频电路460接收后转换为音频数据,再将音频数据输出至RF电路408以发送给比如另一手机,或者将音频数据输出至存储器420以便进一步处理。
WiFi属于短距离无线传输技术,手机400通过WiFi模块470可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图4示出了WiFi模块470,但是可以理解的是,其并不属于手机400的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器480是手机400的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器420内的软件程序和/或模块,以及调用存储在存储器420内的数据,执行手机400的各种功能和处理数据,从而对手机进行整体监控。处理器480集成有应用处理器481和基带处理器482,其中,应用处理器481主要处理操作系统、用户界面和应用程序等,基带处理器482主要处理无线通信。可以理解的是,上述基带处理器482也可以不集成到处理器480中,而是与应用处理器481作为两个独立的处理器分立设置。基带处理器482和应用处理器481之间的通信通过无线支持装置483(RIL)来实现,无线支持装置483包括一个软件虚拟化的状态机,用于记录手机400所处的通话状态。
手机400还包括给各个部件供电的电源490(比如电池),优选的,电源可以通过电源管理系统与处理器480逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗等功能。
尽管未示出,手机400还可以包括摄像头、蓝牙模块等,在此不再赘述。
相应的,本发明实施例还提供了一种终端设备,用以实现上述实施例2 所述的方法。
本实施例的终端设备可以具体为智能手机,特别是具有双卡单通功能的智能手机。如图5所示,该装置包括:基带处理器51、应用处理器52和无线支持装置53。
基带处理器51是手机的一个重要部件,相当于一个协议处理器,负责数据处理与储存,主要组件为数字信号处理器(DSP)、微控制器(MCU)、内存(SRAM、Flash)等单元,主要功能为基带编码/译码、声音编码及语音编码等。在一种高集成度的基带处理器51中,基带处理器51可以具体为一种高度复杂系统芯片(SoC),不仅能够支持几种通信标准,而且还能提供多媒体功能以及用于多媒体显示器、图像传感器和音频设备相关的接口。在手机等终端设备中,基带处理器与射频和其它外围芯片作为一个模块,成为GSM/GPRS modem,提供AT命令接口。
应用处理器52的全名叫多媒体应用处理器(Multimedia Application Processor,MAP),其功能为运行操作系统和各种应用程序。
无线支持装置53是指RIL。RIL工作在PPP、TCP/IP协议之下,负责数据的可靠传输、AT命令的发送以及响应的解析。当然,除了对网络的支持,RIL也支持短消息服务、语音通话等功能。无线支持装置53内设置有状态机(图中未示出),是软件虚拟化的一个模块,用于记录所述终端设备所处的通话状态,例如,状态机可以将所述终端设备中第一账号的去电状态记录为sub0/MO call,将第一账号的来电状态记录为sub0/MT call,将第二账号的去电状态记录为sub1/MO call,将第二账号的来电状态记录为sub1/MT call。
所述应用处理器52用于,接收用户输入的呼出指令;
所述应用处理器52还用于,根据所述呼出指令向所述无线支持装置53发送呼出请求消息;所述呼出请求消息携带所述第一终端设备的第一账号的信息和第二终端设备的信息;
所述无线支持装置53用于,获取所述第一终端设备的状态;
当所述第一终端设备的状态为空闲状态时,所述无线支持装置53还用于,根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁;
所述无线支持装置53还用于,向所述应用处理器52发送状态更改成功消息;
所述应用处理器52还用于,根据所述状态更改成功消息,将所述呼出请求消息发送给所述基带处理器51;
所述基带处理器51用于,根据所述呼出请求消息向网络发送对所述第二终端设备的呼叫请求。
当所述无线支持装置53根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态时,所述无线支持装置53还用于:生成第二校验码;所述第二校验码包括所述第一账号的信息和所述第二用户设备的信息。
当所述应用处理器52接收到用于结束与第二终端设备之间通话的挂断指令时,
所述应用处理器52还用于,向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
所述无线支持装置53还用于,根据所述通话结束消息生成去电状态释放消息,并解除所述互斥锁,,用以结合所述第二校验码,将所述第一终端设备的状态复位为空闲状态。
在复位为空闲状态之后,还需将,将所述第二校验码设置为无效。
在所述无线支持装置53根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,当所述基带处理器51接收到网络发送的来自第三终端设备的呼入请求消息时,可以根据所述终端设备的应用处理器52是否有来电等待的配置信息而确定对于来电的处理方案。其中,来电等待的配置信息预先由用户设置,并存储在终端设备中,通过该终端设备的应用处理器52能够获取该配置信息。
方案一:当终端设备中没有存储来电等待的设置信息时:
所述基带处理器51还用于,根据所述呼入请求消息向所述无线支持装置53发送来电指示消息;其中所述来电指示消息携带所述终端设备的第一账号的信息;
所述无线支持装置53还用于,确定第一终端设备的状态;
当所述第一终端设备处于去电状态时,所述无线支持装置53还用于,向所述应用处理器52发送拒绝呼入响应信息;
所述应用处理器52还用于,将所述拒绝呼入响应信息通过所述基带处理器51发送给网络。
方案二:应用处理器52中存储有来电等待的设置信息,且呼入请求消息是对呼出所用的第一账号时:
所述基带处理器51还用于,根据所述呼入请求消息向所述无线支持装置53发送来电指示消息;其中所述来电指示消息携带所述终端设备的第一账号的信息;
所述无线支持装置还用于,对所述来电指示消息进行处理,当识别出所述第一账号的信息时,将所述来电指示消息发送给所述应用处理器52;
所述应用处理器52还用于,根据所述来电指示消息生成提示信息,用以提示所述用户接收到来自所述第三终端设备的来电呼入;
当所述应用处理器52接收用户输入的呼出挂起指令时,向所述无线支持装置53发送呼出挂起消息;
所述无线支持装置53还用于,根据所述呼出挂起消息将所述第一终端设备的状态更新为去电挂起状态,并将所述第一终端设备与所述第二终端设备之间的呼叫挂起;
当所述第一终端设备为所述去电挂起状态时,所述基带处理器51接收并向所述应用处理器52发送所述第三终端设备的来电信息。
进一步的,在所述无线支持装置53根据所述呼出挂起消息将所述第一终 端设备的状态更新为去电挂起状态之后,
当所述应用处理器52接收用户输入的呼出恢复指令时,所述应用处理器52还用于,向所述无线支持装置53发送呼出恢复消息;
所述无线支持装置53还用于,根据所述呼出恢复消息将所述第一终端设备的状态更新为去电状态,并将所述第一终端设备与所述第三终端设备之间的呼叫挂起。
当所述应用处理器52接收到用于结束与第二终端设备之间通话的挂断指令时,
所述应用处理器52还用于,向所述无线支持装置53发送第一通话结束消息;所述第一通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
所述无线支持装置53还用于,根据所述挂断指令生成去电状态释放消息,并解除所述互斥锁,,用以结合所述第二校验码,将所述第一终端设备的状态复位为空闲状态;
因为此时来电还未结束,因此,所述无线支持装置53还用于,将所述第一终端设备的状态更新为来电状态,占据互斥锁,生成第三校验码;所述第三校验码包括所述第一账号的信息和所述第三终端设备的信息。随后来电呼入的处理过程在上述实施例中已经进行了详细描述,此处不再赘述。
另外,还可能存在先断开终端设备与第三终端设备之间的语音通路的情况。
此时,应用处理器52接收到用于结束与第三终端设备之间通话的挂断指令。所述应用处理器52还用于,向所述无线支持装置53发送第二通话结束消息;所述第二通话结束消息包括所述第一账号的信息和所述第三终端设备的信息.
无线支持装置53根据所述第二通话结束消息生成去电挂起状态释放消息,将所述第一终端设备的状态由所述去电挂起状态更改为去电状态。
在第三种方案中,应用处理器52中存储有来电等待的设置信息,但呼入请求消息不是对呼出所用的第一账号的,而是对第二账号的,则:
基带处理器51将来电提示消息发送给无线支持装置53;其中来电提示消息携带有第二账号的信息;无线支持装置53对来电提示消息进行处理,当无法识别出具有与所述呼出指令相同的第一账号的信息时,或者识别出来电提示消息中携带有与呼出请求消息不同的账号的信息时,拒绝该呼入请求。基带处理器51还会释放该呼入请求占用的内存以及相关参数。
上述终端设备包括的基带处理器51、应用处理器52和无线支持装置53在该第一终端设备主动发起呼出的场景下的具体工作过程已经在前述相应的方法实施例中进行了详细描述,此处不再赘述。
本实施例的终端设备,也可通过上述图4所示的实体来实现,此处不再赘述。
本实施例提供的终端设备,在接收到用户输入的呼出请求消息时,首先确认其内部的状态机记录的第一终端设备当前所处是否为空闲;当处于空闲时,将第一终端设备的状态更新为去电状态,并通过互斥锁对第一终端设备的去电状态进行保护;如果第一终端设备当前的状态不是空闲状态,则拒绝该呼出请求消息。如果在第一终端设备处于去电状态下再接到呼入,则根据是否设置来电等待来进行对呼入的处理。如果没有设置来电等待,或者呼入请求所对应的账号不是正在进行呼出的账号,则直接拒绝呼入;如果设置了来电等待且呼入请求所对应的账号是正在进行呼出的账号,则可以在呼入和呼出间进行切换,在第一终端设备处于不同状态下实现与呼入的终端设备之间的语音通信或者与呼出的终端设备之间的语音通信。本发明实施例提供了一种稳定、可靠的呼叫冲突的处理机制,能够提高用户体验。
虽然本发明主要以双卡单通手机中发生呼叫冲突的各种场景为例进行了说明,但本发明所提供的处理方法和终端设备,并不仅限于应用在双卡单通手机中,还可以稍作变换应用于单卡单通手机,或者双卡双通手机等。上述 实施例所提供的应用场景,并不意于限制本发明的保护范围。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件来实现,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。具体地,所述运算和控制部分都可以通络逻辑硬件实现,其可以是使用集成电路工艺制造出来的逻辑集成电路,本实施例对此不作限定。
结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。以上所述的具体实施方式,对本发明实施例的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明实施例的保护范围,凡在本发明实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (30)

  1. 一种终端设备呼叫冲突的处理方法,其特征在于,所述终端设备包括基带处理器、无线支持装置和应用处理器,所述方法包括:
    第一终端设备的基带处理器接收网络发送的来自第二终端设备的呼入请求消息;所述呼入请求消息携带所述第一终端设备的第一账号的信息;
    所述基带处理器根据所述呼入请求消息向所述第一终端设备的无线支持装置发送来电指示消息;所述来电指示消息包括所述第一账号的信息;
    所述无线支持装置获取所述第一终端设备的状态;
    当所述第一终端设备的状态为空闲状态时,所述无线支持装置根据所述来电指示消息将所述第一终端设备的状态更新为来电状态,并占据互斥锁;
    所述无线支持装置向所述基带处理器发送状态更改成功消息;
    所述基带处理器根据所述状态更改成功消息,将所述呼入请求消息发送给第一终端设备的应用处理器;
    所述应用处理器根据所述呼入请求消息向用户提示来电信息。
  2. 根据权利要求1所述的方法,其特征在于,当所述无线支持装置根据所述来电指示消息将所述第一终端设备的状态更新为来电状态时,所述方法还包括:
    所述无线支持装置生成第一校验码;所述第一校验码包括所述第一账号的信息和所述第二终端设备的信息。
  3. 根据权利要求2所述的方法,其特征在于,所述方法还包括:
    当所述应用处理器接收到用于结束第一终端设备与第二终端设备之间通话连接的挂断指令时,所述应用处理器向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;或者
    当所述基带处理器接收网络发送的用于结束第一终端设备与第二终端设备之间通话连接的挂断指令时,所述基带处理器向所述无线支持装置发送通 话结束消息;
    所述无线支持装置根据所述通话结束消息生成来电状态释放消息,并解除所述互斥锁;
    所述第一终端设备根据所述来电状态释放消息和所述第一校验码,将所述第一终端设备的状态复位为空闲状态。
  4. 根据权利要求1所述的方法,其特征在于,在所述无线支持装置根据所述来电指示消息将所述第一终端设备的状态更新为来电状态,并占据互斥锁之后,所述应用处理器接收到用户输入的呼出指令时,所述方法还包括:
    所述应用处理器根据所述呼出指令向所述无线支持装置发送呼出请求消息;
    所述无线支持装置获取所述第一终端设备的状态;
    当所述第一终端设备的状态为来电状态时,所述无线支持装置向所述应用处理器发送拒绝呼出响应信息。
  5. 根据权利要求4所述的方法,其特征在于,当所述基带处理器根据所述呼入请求消息向所述第一终端设备的无线支持装置发送来电指示消息的同时,所述应用处理器将所述呼出请求消息发送给所述无线支持装置,所述方法还包括:
    所述无线支持装置获取预先存储的呼入呼出优先级的配置信息;
    所述无线支持装置根据所述配置信息选择将所述第一终端设备的状态更新为来电状态或者更新为去电状态。
  6. 根据权利要求1所述的方法,其特征在于,当所述第一终端设备的状态为来电状态或者去电状态时,所述方法还包括:
    所述无线支持装置向基带处理器发送拒绝状态更改消息;
    所述基带处理器根据所述拒绝状态更改消息向网络发送拒绝第二终端设备呼入的响应信息。
  7. 一种终端设备呼叫冲突的处理方法,其特征在于,所述终端设备包括 基带处理器、无线支持装置和应用处理器,所述方法包括:
    第一终端设备的应用处理器接收用户输入的呼出指令;
    所述应用处理器根据所述呼出指令向所述第一终端设备的无线支持装置发送呼出请求消息;所述呼出请求消息携带所述第一终端设备的第一账号的信息和第二终端设备的信息;
    所述无线支持装置获取所述第一终端设备的状态;
    当所述第一终端设备的状态为空闲状态时,所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁;
    所述无线支持装置向所述应用处理器发送状态更改成功消息;
    所述应用处理器根据所述状态更改成功消息,将所述呼出请求消息发送给第一终端设备的基带处理器;
    所述基带处理器根据所述呼出请求消息向网络发送对所述第二终端设备的呼叫请求。
  8. 根据权利要求7所述的方法,其特征在于,当所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态时,所述方法还包括:
    所述无线支持装置生成第二校验码;所述第二校验码包括所述第一账号的信息和所述第二用户设备的信息。
  9. 根据权利要求8所述的方法,其特征在于,所述方法还包括:
    当所述应用处理器接收到用于结束第一终端设备与第二终端设备之间通话连接的挂断指令时,所述应用处理器向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;或者
    当所述基带处理器接收网络发送的用于结束第一终端设备与第二终端设备之间通话连接的挂断指令时,所述基带处理器向所述无线支持装置发送通话结束消息;
    所述无线支持装置根据所述通话结束消息生成去电状态释放消息,并解除所述互斥锁;
    所述第一终端设备根据所述去电状态释放消息和所述第二校验码,将所述第一终端设备的状态复位为空闲状态。
  10. 根据权利要求7所述的方法,其特征在于,在所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,所述基带处理器接收到网络发送的来自第三终端设备的呼入请求消息时,所述方法还包括:
    所述基带处理器根据所述呼入请求消息向所述无线支持装置发送来电指示消息;
    所述无线支持装置获取所述第一终端设备的状态;
    当所述第一终端设备的状态为去电状态时,所述无线支持装置向所述应用处理器发送拒绝呼入响应信息;
    所述应用处理器将所述拒绝呼入响应信息通过所述基带处理器发送给网络。
  11. 根据权利要求8所述的方法,其特征在于,在所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,所述基带处理器接收到网络发送的来自第三终端设备的呼入请求消息时,所述方法还包括:
    所述基带处理器根据所述呼入请求消息向所述无线支持装置发送来电指示消息;其中所述来电指示消息携带所述第一终端设备的第一账号的信息;
    所述无线支持装置对所述来电指示消息进行处理,当识别出所述第一账号的信息时,将所述来电指示消息发送给所述应用处理器;
    所述应用处理器根据所述来电指示消息生成提示信息,用以提示所述用户接收到来自所述第三终端设备的来电呼入;
    当所述应用处理器接收用户输入的呼出挂起指令时,向所述无线支持装 置发送呼出挂起消息;
    所述无线支持装置根据所述呼出挂起消息将所述第一终端设备的状态更新为去电挂起状态,并将所述第一终端设备与所述第二终端设备之间的呼叫挂起;
    当所述第一终端设备的状态为所述去电挂起状态时,所述基带处理器接收并向所述应用处理器发送所述第三终端设备的来电信息。
  12. 根据权利要求11所述的方法,其特征在于,在所述无线支持装置根据所述呼出挂起消息将所述第一终端设备的状态更新为去电挂起状态之后,所述方法还包括:
    当所述应用处理器接收用户输入的呼出恢复指令时,向所述无线支持装置发送呼出恢复消息;
    所述无线支持装置根据所述呼出恢复消息将所述第一终端设备的状态更新为去电状态;并将所述第一终端设备与所述第三终端设备之间的呼叫挂起。
  13. 根据权利要求11或12所述的方法,其特征在于,所述方法还包括:
    当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,所述应用处理器向所述无线支持装置发送第一通话结束消息;所述第一通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
    所述无线支持装置根据所述第一通话结束消息生成去电状态释放消息,并解除所述互斥锁;
    所述第一终端设备根据所述去电状态释放消息和所述第二校验码,将所述第一终端设备的状态复位为空闲状态;
    所述无线支持装置将所述第一终端设备的状态更新为来电状态,占据互斥锁,生成第三校验码;所述第三校验码包括所述第一账号的信息和所述第三终端设备的信息。
  14. 根据权利要求11或12所述的方法,其特征在于,所述方法还包括:
    当所述应用处理器接收到用于结束与第三终端设备之间通话的挂断指令 时,所述应用处理器向所述无线支持装置发送第二通话结束消息;所述第二通话结束消息包括所述第一账号的信息和所述第三终端设备的信息;
    所述无线支持装置根据所述第二通话结束消息生成去电挂起状态释放消息,将所述第一终端设备的状态由所述去电挂起状态更改为去电状态。
  15. 根据权利要求7所述的方法,其特征在于,当所述第一终端设备的状态为来电或去电状态时,所述方法还包括:
    所述无线支持装置向所述应用处理器发送拒绝状态更改消息;
    所述应用处理器根据所述拒绝状态更改消息拒绝对所述第二终端设备的呼出请求消息。
  16. 一种第一终端设备,其特征在于,所述第一终端设备包括:基带处理器、应用处理器和无线支持装置;
    所述基带处理器用于,接收网络发送的来自第二终端设备的呼入请求消息;所述呼入请求消息携带所述第一终端设备的第一账号的信息;
    所述基带处理器还用于,根据所述呼入请求消息向所述无线支持装置发送来电指示消息;所述来电指示消息包括所述第一账号的信息;
    所述无线支持装置用于,获取所述第一终端设备的状态;
    当所述第一终端设备的状态为空闲状态时,所述无线支持装置还用于,根据所述呼入请求消息将所述第一终端设备的状态更新为来电状态,并占据互斥锁;
    所述无线支持装置还用于,向所述基带处理器发送状态更改成功消息;
    所述基带处理器还用于,根据所述状态更改成功消息,将所述呼入请求消息发送给所述应用处理器;
    所述应用处理器用于,根据所述呼入请求消息向用户提示来电信息。
  17. 根据权利要求16所述的第一终端设备,其特征在于,当所述无线支持装置根据所述呼入请求消息将所述第一终端设备的状态更新为来电状态时,所述无线支持装置还用于:
    生成第一校验码;所述第一校验码包括所述第一账号的信息和所述第二终端设备的信息。
  18. 根据权利要求17所述的第一终端设备,其特征在于,当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,
    所述应用处理器还用于,向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
    所述无线支持装置还用于,根据所述通话结束消息生成来电状态释放消息,并解除所述互斥锁,用以结合所述第一校验码,将所述第一终端设备的状态复位为空闲状态。
  19. 根据权利要求16所述的第一终端设备,其特征在于,当所述第一终端设备的状态为来电状态时,所述应用处理器接收到用户输入的呼出指令,
    所述应用处理器还用于,根据所述呼出指令向所述无线支持装置发送呼出请求消息;
    所述无线支持装置还用于,获取所述第一终端设备的状态;
    当所述第一终端设备的状态为来电状态时,所述无线支持装置还用于,向所述应用处理器发送拒绝呼出响应信息。
  20. 根据权利要求19所述的第一终端设备,其特征在于,当所述基带处理器根据所述呼入请求消息向所述第一终端设备的无线支持装置发送来电指示消息的同时,所述应用处理器还用于,将所述呼出请求消息发送给所述无线支持装置;
    所述无线支持装置还用于,获取预先存储的呼入呼出优先级的配置信息;并根据所述配置信息选择,将所述第一终端设备的状态更新为来电状态或者更新为去电状态。
  21. 根据权利要求16所述的第一终端设备,其特征在于,当所述第一终端设备的状态为来电状态或者去电状态时,
    所述无线支持装置还用于,向基带处理器发送拒绝状态更改消息;
    所述基带处理器还用于,根据所述拒绝状态更改消息向网络发送拒绝第二终端设备呼入的响应信息。
  22. 一种第一终端设备,其特征在于,所述第一终端设备包括:基带处理器、应用处理器和无线支持装置;
    所述应用处理器用于,接收用户输入的呼出指令;
    所述应用处理器还用于,根据所述呼出指令向所述无线支持装置发送呼出请求消息;所述呼出请求消息携带所述第一终端设备的第一账号的信息和第二终端设备的信息;
    所述无线支持装置用于,获取所述第一终端设备的状态;
    当所述第一终端设备的状态为空闲状态时,所述无线支持装置还用于,根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁;
    所述无线支持装置还用于,向所述应用处理器发送状态更改成功消息;
    所述应用处理器还用于,根据所述状态更改成功消息,将所述呼出请求消息发送给所述基带处理器;
    所述基带处理器用于,根据所述呼出请求消息向网络发送对所述第二终端设备的呼叫请求。
  23. 根据权利要求22所述的第一终端设备,其特征在于,当所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态时,所述无线支持装置还用于:
    生成第二校验码;所述第二校验码包括所述第一账号的信息和所述第二用户设备的信息。
  24. 根据权利要求23所述的第一终端设备,其特征在于,当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,
    所述应用处理器还用于,向所述无线支持装置发送通话结束消息;所述通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
    所述无线支持装置还用于,根据所述通话结束消息生成去电状态释放消息,并解除所述互斥锁,用以结合所述第二校验码,将所述第一终端设备的状态复位为空闲状态。
  25. 根据权利要求22所述的第一终端设备,其特征在于,在所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,所述基带处理器接收到网络发送的来自第三终端设备的呼入请求消息时,
    所述基带处理器还用于,将所述呼入请求消息向所述无线支持装置发送来电指示消息;
    所述无线支持装置还用于,获取所述第一终端设备的状态;
    当所述第一终端设备的状态为去电状态时,所述无线支持装置向所述应用处理器发送拒绝呼入响应信息;
    所述应用处理器还用于,将所述拒绝呼入响应信息通过所述基带处理器发送给网络。
  26. 根据权利要求23所述的第一终端设备,其特征在于,在所述无线支持装置根据所述呼出请求消息将所述第一终端设备的状态更新为去电状态,并占据互斥锁之后,当所述基带处理器接收到网络发送的来自第三终端设备的呼入请求消息时,
    所述基带处理器还用于,根据所述呼入请求消息向所述无线支持装置发送来电指示消息;其中所述来电指示消息携带所述第一终端设备的第一账号的信息;
    所述无线支持装置还用于,对所述来电指示消息进行处理,当识别出所述第一账号的信息时,将所述来电指示消息发送给所述应用处理器;
    所述应用处理器还用于,根据所述来电指示消息生成提示信息,用以提示所述用户接收到来自所述第三终端设备的来电呼入;
    当所述应用处理器接收用户输入的呼出挂起指令时,向所述无线支持装 置发送呼出挂起消息;
    所述无线支持装置还用于,根据所述呼出挂起消息将所述第一终端设备的状态更新为去电挂起状态,并将所述第一终端设备与所述第二终端设备之间的呼叫挂起;
    当所述第一终端设备的状态为所述去电挂起状态时,所述基带处理器接收并向所述应用处理器发送所述第三终端设备的来电信息。
  27. 根据权利要求26所述的第一终端设备,其特征在于,在所述无线支持装置根据所述呼出挂起消息将所述第一终端设备的状态更新为去电挂起状态之后,
    当所述应用处理器接收用户输入的呼出恢复指令时,所述应用处理器还用于,向所述无线支持装置发送呼出恢复消息;
    所述无线支持装置还用于,根据所述呼出恢复消息将所述第一终端设备的状态更新为去电状态,并将所述第一终端设备与所述第三终端设备之间的呼叫挂起。
  28. 根据权利要求26或27所述的第一终端设备,其特征在于,当所述应用处理器接收到用于结束与第二终端设备之间通话的挂断指令时,
    所述应用处理器还用于,向所述无线支持装置发送第一通话结束消息;所述第一通话结束消息包括所述第一账号的信息和所述第二终端设备的信息;
    所述无线支持装置还用于,根据所述第一通话结束消息生成去电状态释放消息,并解除所述互斥锁,用以结合所述第二校验码,将所述第一终端设备的状态
    复位为空闲状态;
    所述无线支持装置还用于,将所述第一终端设备的状态更新为来电状态,占据互斥锁,生成第三校验码;所述第三校验码包括所述第一账号的信息和所述第三终端设备的信息。
  29. 根据权利要求26或27所述的第一终端设备,其特征在于,当所述应用处理器接收到用于结束与第三终端设备之间通话的挂断指令时,
    所述应用处理器还用于,向所述无线支持装置发送第二通话结束消息;所述第二通话结束消息包括所述第一账号的信息和所述第三终端设备的信息;
    所述无线支持装置还用于,根据所述第二通话结束消息生成去电挂起状态释放消息,将所述第一终端设备的状态由所述去电挂起状态更改为去电状态。
  30. 根据权利要求22所述的第一终端设备,其特征在于,当所述第一终端设备的状态为来电或去电状态时,
    所述无线支持装置还用于,向所述应用处理器发送拒绝状态更改消息;
    所述应用处理器还用于,根据所述拒绝状态更改消息拒绝对所述第二终端设备的呼出请求消息。
PCT/CN2015/071982 2015-01-30 2015-01-30 一种终端设备呼叫冲突的处理方法和终端设备 WO2016119233A1 (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/CN2015/071982 WO2016119233A1 (zh) 2015-01-30 2015-01-30 一种终端设备呼叫冲突的处理方法和终端设备
US15/547,294 US10015314B2 (en) 2015-01-30 2015-01-30 Call collision processing method for terminal device, and terminal device
CN201580002266.2A CN106031294B (zh) 2015-01-30 2015-01-30 一种终端设备呼叫冲突的处理方法和终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/071982 WO2016119233A1 (zh) 2015-01-30 2015-01-30 一种终端设备呼叫冲突的处理方法和终端设备

Publications (1)

Publication Number Publication Date
WO2016119233A1 true WO2016119233A1 (zh) 2016-08-04

Family

ID=56542227

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/071982 WO2016119233A1 (zh) 2015-01-30 2015-01-30 一种终端设备呼叫冲突的处理方法和终端设备

Country Status (3)

Country Link
US (1) US10015314B2 (zh)
CN (1) CN106031294B (zh)
WO (1) WO2016119233A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110324913A (zh) * 2019-07-04 2019-10-11 中国联合网络通信集团有限公司 5g网络通信方法、终端、装置、网络设备及功能实体

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10375761B2 (en) * 2017-09-21 2019-08-06 Charter Communications Operating, Llc Split wireless networks and management of same to provide data and voice services
CN110839115B (zh) * 2019-11-15 2021-09-10 上海闻泰信息技术有限公司 终端呼叫的处理方法、装置、设备及存储介质
US11233899B2 (en) * 2019-12-18 2022-01-25 Avaya Inc. Automatic joining of simultaneous outgoing and incoming calls that have the same far-end caller ID

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1147326A (zh) * 1994-04-27 1997-04-09 诺基亚电信公司 处理呼叫冲突的方法
CN102893691A (zh) * 2012-08-03 2013-01-23 华为技术有限公司 一种处理呼叫冲突的方法、系统和业务控制设备
CN102917326A (zh) * 2012-10-15 2013-02-06 华为终端有限公司 双卡双通终端的通信方法、装置及双卡双通终端
US20140286308A1 (en) * 2013-03-21 2014-09-25 Samsung Electronics Co., Ltd. Method and apparatus for supporting multimedia service in electronic device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130150013A1 (en) * 2011-12-12 2013-06-13 Broadcom Corporation Intelligent Resource Control in Multiple SIM User Equipment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1147326A (zh) * 1994-04-27 1997-04-09 诺基亚电信公司 处理呼叫冲突的方法
CN102893691A (zh) * 2012-08-03 2013-01-23 华为技术有限公司 一种处理呼叫冲突的方法、系统和业务控制设备
CN102917326A (zh) * 2012-10-15 2013-02-06 华为终端有限公司 双卡双通终端的通信方法、装置及双卡双通终端
US20140286308A1 (en) * 2013-03-21 2014-09-25 Samsung Electronics Co., Ltd. Method and apparatus for supporting multimedia service in electronic device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110324913A (zh) * 2019-07-04 2019-10-11 中国联合网络通信集团有限公司 5g网络通信方法、终端、装置、网络设备及功能实体
CN110324913B (zh) * 2019-07-04 2021-11-09 中国联合网络通信集团有限公司 5g网络通信方法、终端、装置、网络设备及功能实体

Also Published As

Publication number Publication date
CN106031294B (zh) 2019-06-11
US10015314B2 (en) 2018-07-03
CN106031294A (zh) 2016-10-12
US20180013888A1 (en) 2018-01-11

Similar Documents

Publication Publication Date Title
CN108965306B (zh) 一种通话处理方法及移动终端
US11224027B2 (en) Cell registration method and device
CN109450949B (zh) 多应用解除号码绑定的方法、移动终端、可读存储介质
US10728718B2 (en) Incoming call processing method, user equipment, and storage medium
CN109819489B (zh) 一种终端主叫方法及终端
WO2019011324A1 (zh) 确定移动终端接入方式的方法、存储介质及移动终端
CN110062372A (zh) 一种sim卡控制方法及终端设备
CN110096375B (zh) 一种应用程序共享数据方法、装置及计算机可读存储介质
WO2015024372A1 (zh) 发起通信的方法、装置及移动终端
WO2016119233A1 (zh) 一种终端设备呼叫冲突的处理方法和终端设备
CN108322602B (zh) 一种处理应用无响应的方法、终端和计算机可读存储介质
CN104917905B (zh) 陌生来电的处理方法、终端及服务器
WO2019034104A1 (zh) 终端自动释放后台进程占用资源的方法、存储介质及终端
WO2017000495A1 (zh) 一种添加联系人的方法及设备
WO2015024393A1 (zh) 发送短信的方法、装置及终端
CN112689191B (zh) 一种投屏控制方法、终端及计算机可读存储介质
CN110209434B (zh) 一种内存管理方法、装置及计算机可读存储介质
CN109743469B (zh) 一种基于volte的通信方法及移动终端
CN110891262A (zh) 一种蓝牙配对的方法、系统和终端设备
CN114158025B (zh) 设备回连方法和相关装置
CN109660470A (zh) 一种数据流量管控方法、终端及计算机可读存储介质
CN111565388B (zh) 一种网络注册方法及电子设备
CN106210325B (zh) 一种设置社交应用来电铃声的方法、装置及终端
CN110572518B (zh) 息屏管控方法、移动终端及计算机可读存储介质
CN107318155B (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: 15879441

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15547294

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 15879441

Country of ref document: EP

Kind code of ref document: A1