# 执行蓝牙 HFP 客户端功能

可以使用 `bluetoothctl` 菜单和 `ofono/test` 工具执行 HFP 客户端功能。

## 前提条件

开始之前，请[设置您的设备](https://docs.qualcomm.com/doc/80-70022-13SC/topic/bluez-hfp.html#section-rmp-dgv-mcc-navyanka-08-25-24-1227-32-765)，并且[配置 DUT 以实现 HFP 客户端功能](https://docs.qualcomm.com/doc/80-70022-13SC/topic/bluez-hfp.html#section-nlh-q3v-mcc-navyanka-08-25-24-1246-29-767)。

## 连接远程设备

要连接远程设备，请从 `bluetoothctl` 菜单运行以下命令：

connect <bt_address>
    Copy to clipboard

**参数**

`<bt_address>` 是远程设备的蓝牙地址。

**示例**

要使用 `<bt_address>` `F8:7D:76:9D:9B:6B` 连接到已配对的远程设备，请运行以下命令：

connect F8:7D:76:9D:9B:6B
    Copy to clipboard

**示例输出**

[bluetooth]# connect F8:7D:76:9D:9B:6B
    Attempting to connect to F8:7D:76:9D:9B:6B
    (CHG) Device F8:7D:76:9D:9B:6B Connected: yes
    [NEW] Endpoint /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/sep3
    [NEW] Endpoint /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/sep4
    [NEW] Endpoint /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/sep5
    [NEW] Endpoint /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/sep6
    (NEW) Endpoint /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/sep1
    (NEW) Endpoint /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/sep2
    [NEW] Transport /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/sep1/fd0
    Connection successful
    [NEW] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 [default]
    [NEW] Item /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0/Filesystem /Filesystem
    [NEW) Item /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0/NowPlaying /NowPlaying
    [CHG) Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Type: Audio
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Subtype: None
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Status: stopped
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Browsable: yes
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Searchable: yes
    [CHG) Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Playlist: /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0/NowPlaying
    (CHG) Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Name: Music
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Repeat: off
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Shuffle: off
    [NEW] Folder /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0
    [CHG] Device F8:7D:76:9D:9B:6B ServicesResolved: yes
    (CHG) Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Duration: 0x00000000 (0)
    (CHG) Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Genre:
    [CHG] Player /org/blwez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Title:
    [CHG] Player /org/blwez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Item: /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player@/NowPlaying/item18446749073709551615
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 TrackNumber: 0x00000000 (0)
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Artist:
    (CHG) Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 NumberOfTracks: 0x00000000 (0)
    [CHG) Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Album:
    [NEW] Item /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0/NowPlaying/item18446744073709551615 <unknown>
    [CHG] Player /org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/player0 Position: 0x00000000 (0)
    [MyDeviceA]#
    Copy to clipboard

## 拨打电话号码

要拨打电话号码，请从 `ofono/test` 菜单运行以下命令：

./dial-number <phone_number>
    Copy to clipboard

**参数**

`<phone_number>` 是您打算拨打的电话号码。

**示例输出**

sh-5.1# ./dial-number 7123456789
    Using modem /hfp/org/bluez/hci0/dev_F8_7D_76_9D_9B_6B
    /hfp/org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/voicecall01
    sh-5.1#
    Copy to clipboard

## 接听来电

要接听来电，请从 `ofono/test` 菜单运行以下命令：

./answer-calls
    Copy to clipboard

**示例输出**

sh-5.1# ./answer-calls
    [ /hfp/org/bluez/hci0/dev_F8_7D_76_9D_9B_6B ]
    [ /hfp/org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/voicecall01 ] incoming
    sh-5.1# |
    Copy to clipboard

Note

如果您正在通话，则可以听到回声。这是在软件中存在并具有 BlueZ 协议栈的已知行为。

## 列出当前通话

要列出当前通话，请从 `ofono/test` 菜单运行以下命令：

./list-calls
    Copy to clipboard

**示例输出**

sh-5.1# ./list-calls
    [ /hfp/org/bluez/hci0/dev_F8_7D_76_9D_9B_6B ]
    [ /hfp/org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/voicecall01 ]
          State = incoming
          LineIdentification = +917123456789
          Name =
          Multiparty = 0
          RemoteHeld = 0
          RemoteMultiparty = 0
          Emergency = 0
    Copy to clipboard

## 拒绝或挂断电话

要拒绝或断开呼叫，请从 `ofono/test` 菜单运行以下命令：

./hangup-call <call_path>
    Copy to clipboard

**参数**

`<call_path>` 是当前呼叫的呼叫路径。

**示例**

要挂断路径 `/hfp/org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/voicecall01` 的呼叫，请运行以下命令：

./hangup-call /hfp/org/bluez/hci0/dev_F8_7D_76_9D_9B_6B/voicecall01
    Copy to clipboard

## 断开远程设备的连接

要断开远程设备的连接，请从 `bluetoothctl` 菜单运行以下命令：

disconnect <bt_address>
    Copy to clipboard

**参数**

`<bt_address>` 是远程设备的蓝牙地址。

**示例**

要断开与 `<bt_address>` `F8:7D:76:9D:9B:6B` 配对的远程设备，请运行以下命令：

disconnect F8:7D:76:9D:9B:6B
    Copy to clipboard

**示例输出**

[MyDeviceA]# disconnect
    Attempting to disconnect from F8:7D:76:9D:9B:6B
    [CHG] Device F8:7D:76:9D:9B:6B ServicesResolved: no
    Successful disconnected
    [CHG] Device F8:7D:76:9D:9B:6B Connected: no
    [bluetooth]#
    Copy to clipboard

Last Published: Nov 03, 2025

[Previous Topic
验证 HFP 功能](https://docs.qualcomm.com/bundle/publicresource/80-70022-13SC/topics/bluez-hfp.md) [Next Topic
执行蓝牙 HFP 音频网关功能](https://docs.qualcomm.com/bundle/publicresource/80-70022-13SC/topics/bluez-perform-bluetooth-hfp-ag-functions.md)