4

I have two bluetooth devices (MFi) connected to the iPhone.Both of these devices support HFP. If Call is accepted from one device(does not have hardware like microphone and speaker),after that I would like to route the call to other device(headset).Is there any API to accomplish this from app or any other way to achieve the same.

I found the following relevant link

how to route iPhone audio to the bluetooth headset

Is there any way to simulate the accept button of the headset from the app or transfer the call session from one HFP device to other HFP device ?

Community
  • 1
  • 1
Ram
  • 1,872
  • 5
  • 31
  • 54

2 Answers2

4

You cannot do this programmatically as phone calls are completely under the control of the system. You can access some information using the Core Telephony API but all of it is read only. Changing the settings on the Audio Session of the application will not affect anything on the call.

Alternatively, iOS 7 provides you a handy interface to do the handover manually. In the screenshots below I have a car kit and a head set connected to the phone during call. Clicking any of the items immediately transfers the audio.

In call audio source changeIn call audio source change

allprog
  • 16,540
  • 9
  • 56
  • 97
0

If HFP is implemented then call can be accepted or rejected from bluetooth devices.There is no API in iOS to do this.I think this is the implementation in Pebble Smart watch.We can also view the call details in different HFP devices at the same time (carkit,smart watch,head set).

Ram
  • 1,872
  • 5
  • 31
  • 54
  • I updated my answer. Have you checked out the audio source menu already? The Pebble Watch has a broken implementation of the HF role. If you accept the call on it, then the iPhone will try to send the audio to it even if it does not implement that functionality. (It connects over classic bluetooth.) – allprog Sep 30 '13 at 20:53