拥有ofono和bluez就足够了。
但是,bluez / ofono和Pulseaudio的最新版本不支持HSP和HFP配置文件。 Pulseaudio发行说明说bluez5.x仅支持A2DP。 如果您使用的是bluez4.x,ofono和Pulseaudio 4.x / 5.x,您可能仍然可以正常使用。
ofono将把iPhone 5s当作调制解调器。 一旦通过蓝牙或其他GUI配对并连接了iPhone,您就可以运行以下onono测试,以查看ofono是否正确选择了它。 尝试在终端上使用ofonod -n -d运行ononod来监视调试日志,并可能也以冗长的方式运行pulseaudio( pulseaudio -k && pulseaudio -v )
bash$ cd */ofono-1.x/test
该目录包含示例dbus脚本,用于测试ofono功能。
bash$ ./list-modems
[ /hfp/org/bluez/hci0/dev_94_94_26_88_XX_XX ]
Type = hfp
Interfaces = org.ofono.Siri org.ofono.VoiceCallManager org.ofono.CallVolume org.ofono.Handsfree org.ofono.NetworkRegistration
Features = net
Serial = 94:94:26:88:XX:XX
Online = 1
Powered = 1
Lockdown = 0
Emergency = 0
Name = XXXXXX’s iPhone
[ org.ofono.Siri ]
EyesFreeMode = disabled
Enabled = 1
[ org.ofono.VoiceCallManager ]
EmergencyNumbers = 08 000 999 110 112 911 118 119
[ org.ofono.CallVolume ]
Muted = 0
SpeakerVolume = 50
MicrophoneVolume = 50
[ org.ofono.Handsfree ]
VoiceRecognition = 0
InbandRinging = 1
Features = three-way-calling echo-canceling-and-noise-reduction voice-recognition release-all-held release-specified-active-call private-chat create-multiparty
BatteryChargeLevel = 4
SubscriberNumbers = +XXXXXXXXXXXX
EchoCancelingNoiseReduction = 1
[ org.ofono.NetworkRegistration ]
Status = registered
Name = XXX XXXXXX
Mode = auto-only
Strength = 60
如果您看到与上述类似的输出,请启用调制解调器并尝试使用以下命令进行拨号,并观察ofono调试日志(如果已创建或拒绝了SCO套接字)。 并且,当然,请查看音频是否路由到Ubuntu。
bash$ ./enable-modem
bash$ ./dial-number +XXXXXXXXXXXX
...
同样,尝试调用iPhone并观察ofono,pulseaudio日志。 bash $ ./answer-calls
看起来pulseaudio的人们正在尝试使其与bluez5.x和ofono一起使用,但是似乎还没有公开可用的补丁。