ZHCACZ4 August   2023 CC2564C

 

  1.   1
  2.   摘要
  3.   商标
  4. 1演示应用程序
  5. 2运行蓝牙代码
  6. 3使用 HFP 演示应用程序进行服务器设置
  7. 4演示应用程序上的客户端设置
  8. 5示例:带商用耳机的音频网关
  9. 6应用程序命令
    1. 6.1  通用访问配置文件命令
    2. 6.2  帮助 (DisplayHelp)
    3. 6.3  查询
    4. 6.4  配对
    5. 6.5  结束配对
    6. 6.6  PIN 码响应
    7. 6.7  通行密钥响应
    8. 6.8  用户确认响应
    9. 6.9  设置可发现性模式
    10. 6.10 设置可连接性模式
    11. 6.11 设置可配对性模式
    12. 6.12 更改简易配对参数
    13. 6.13 获取本地地址
    14. 6.14 设置本地名称
    15. 6.15 获取本地名称
    16. 6.16 设置设备类别
    17. 6.17 获取设备类别
    18. 6.18 获取远程名称
  10. 7免提配置文件命令
    1. 7.1  服务发现
    2. 7.2  打开音频网关客户端
    3. 7.3  管理音频
    4. 7.4  更新控制指示器
    5. 7.5  呼叫等待
    6. 7.6  设置语音识别激活
    7. 7.7  设置扬声器增益
    8. 7.8  设置麦克风增益
    9. 7.9  禁用远程声音增强
    10. 7.10 发送来电显示通知
    11. 7.11 设置振铃指示
    12. 7.12 振铃指示
    13. 7.13 发送来电状态
    14. 7.14 关闭 AG 客户端
    15. 7.15 发送运营商信息
    16. 7.16 发送用户号码
    17. 7.17 发送呼叫列表
  11. 8参考文献
  12. 9修订历史记录

示例:带商用耳机的音频网关

下面的示例演示了如何设置客户端以连接到商用耳机。

  1. 执行前面“运行蓝牙代码”一节中提到的步骤来初始化应用程序。
    OpenStack().Bluetooth Stack ID: 1WBS support enabled.Device Chipset: Unknown (greater 4.1)BTPS Version : 4.2.1.0Project Type : 6FW Version : 12.12App Name : HFPDemo_AGApp Version : 0.3LOCAL BD_ADDR: 0x88C255D1D645GAP_Set_Connectability_Mode(cmConnectable).GAP_Set_Discoverability_Mode(dmGeneralDiscoverable, 0).GAP_Set_Pairability_Mode(pmPairableMode).GAP_Register_Remote_Authentication() Success. Command Options: Inquiry, DisplayInquiryList, Pair,  EndPairing, PINCodeResponse, PassKeyResponse,  UserConfirmationResponse,  SetDiscoverabilityMode, SetConnectabilityMode, SetPairabilityMode,  ChangeSimplePairingParameters,  GetLocalAddress, SetLocalName, GetLocalName,  SetClassOfDevice, GetClassOfDevice,  GetRemoteName, ManageAudio,  OpenAudioGatewayClient, CloseAgClient,  ServiceDiscovery, UpdateControlIndicators,  CallWaiting, SendCallerIdNotification,  SetRingIndication, RingIndication,  SetVoiceRecognitionActivation,  SetSpeakerGain, SetMicroPhoneGain,  DisableRemoteSoundEnhancement,  SendOperatorInfo, SendIncomingCallState,  SendSubNumber, SendCallList,  Help
  2. 对 HFP 服务器发出 Inquiry 命令。
    HFP AG>InquiryReturn Value is 0 GAP_Perform_Inquiry() SUCCESS.HFP AG>GAP Inquiry Entry Result: 0x244B03F712D3.HFP AG>GAP Inquiry Entry Result: 0x3402862CCAE9.HFP AG>GAP Inquiry Entry Result: 0x340286605044.HFP AG>GAP Inquiry Entry Result: 0x484520902A4E.HFP AG>GAP Inquiry Entry Result: 0x08DF1F99F8D0.HFP AG>GAP Inquiry Entry Result: 0x002500F84FAB.HFP AG>GAP_Inquiry_Result: 6 Found.GAP Inquiry Result: 1, 0x244B03F712D3.GAP Inquiry Result: 2, 0x3402862CCAE9.GAP Inquiry Result: 3, 0x340286605044.GAP Inquiry Result: 4, 0x484520902A4E.GAP Inquiry Result: 5, 0x08DF1F99F8D0.GAP Inquiry Result: 6, 0x002500F84FAB.
  3. 通过发出 ServiceDiscovery 5 12 命令来获取端口号以发现远程 HFP 服务器的服务。
    HFP AG>ServiceDiscoveryUsage: SERVICEDISCOVERY [Inquiry Index] [Profile Index] [16/32 bit UUID (Manual only)]. Profile Index: 0) Manual (MUST specify 16/32 bit UUID) 1) L2CAP 2) Advanced Audio 3) A/V Remote Control 4) Basic Imaging 5) Basic Printing 6) Dial-up Networking 7) FAX 8) File Transfer 9) Hard Copy Cable Repl. 10) Health Device 11) Headset 12) Handsfree 13) HID 14) LAN Access
    15) Message Access 16) Object Push 17) Personal Area Network 18) Phonebook Access 19) SIM Access 20) Serial Port 21) IrSYNCFunction Error.HFP AG>ServiceDiscovery 5 12SDP_Service_Search_Attribute_Request(Handsfree) Success.HFP AG>SDP Service Search Attribute Response Received (Size = 0x0010)Service Record: 1:Attribute ID 0x0000Type: Unsigned Int = 0x00010000Attribute ID 0x0001Type: Data Element SequenceType: UUID_16 = 0x111EType: UUID_16 = 0x1203Attribute ID 0x0004Type: Data Element SequenceType: Data Element SequenceType: UUID_16 = 0x0100Type: Data Element SequenceType: UUID_16 = 0x0003Type: Unsigned Int = 0x0AAttribute ID 0x0006Type: Data Element SequenceType: Unsigned Int = 0x656EType: Unsigned Int = 0x006AType: Unsigned Int = 0x0100Attribute ID 0x0009Type: Data Element SequenceType: Data Element SequenceType: UUID_16 = 0x111EType: Unsigned Int = 0x0106Attribute ID 0x0100Type: Text String = Hands-Free unitAttribute ID 0x0311Type: Unsigned Int = 0x003F
  4. 通过发出 OpenAudioGatewayClient 5 10 命令启动与远程 HFP 服务器的连接。
    HFP AG>OpenAudioGatewayClientUsage: OPENAUDIOGATEWAYCLIENT [Inquiry Index] [Port Number].Function Error.HFP AG>OpenAudioGatewayClient 5 10Bluetooth Device Address: 0x08DF1F99F8D0Open Remote HandsFree Port = 000AHFRE_Open_Remote_HandsFree_Port: Function Successful ID = 0001.OpenRemoteHandsFreePort: HFRE_Update_Current_Control_Indicator_Status Function Status 0.

    观察下面来自 HFP 服务器的输出。

    HFP AG>atLinkKeyRequest: 0x08DF1F99F8D0GAP_Authentication_Response() Success.HFP AG>atPINCodeRequest: 0x08DF1F99F8D0Respond with the command: PINCodeResponseHFP AG>PINCodeResponse 0000PINCodeResponse.GAP_Authentication_Response(), Pin Code Response Success.HFP AG>atLinkKeyCreation: 0x08DF1F99F8D0Link Key: 0x4AF49AD7072771919BAC62840F1F985DLink Key Stored locally.HFP AG>HFRE Open Port Confirmation, ID: 0x0001, Status: 0x0000.HFP AG>HFRE Available Codec List Indiocation, ID: 0x0001 NumCodecs: 2 [ 1 2 ]HFP AG>HFRE Open Service Level Connection Indication, ID: 0x0001 RemoteSupportedFeaturesValid: TRUE RemoteSupportedFeatures: 0x000000BF RemoteCallHoldMultipartySupport: 0x00000000HFRE_Enable Call Line IdentificationHFP AG>HFRE Disable Sound_Enhancement Indication, ID: 0x0001HFRE_Send_Terminating_Response (erOK) :: Res = 0HFP AG>HFRE Speaker Gain Indication, ID: 0x0001, Speaker Gain 0x000A.HFP AG>HFRE Call Line Identification Notification Activation Indication, ID: 0x0001, Enabled: TRUE.HFP AG>HFRE Call Waiting Notification Activation Indication, ID: 0x0001, Enabled: TRUE.HFP AG> HFRE Response Hold Status Indication, ID: 0x0001HFRE_Send_Incoming_Call_State (csNone) :: Res = 0HFP AG>HFRE_Current_Calls_List_IndicationHFRE_Send_Terminating_Response (erOK) :: Res = 0
  5. 通过发出ManageAudio <STATE> 命令来启动音频连接,此命令默认选择改良型子带编码 (MSBC)。
    HFP AG>ManageAudioUsage: Audio [Release = 0, set-up = 1].Function Error.HFP AG>ManageAudio 1HFRE_Send_Select_Codec:: Codec = 2, Res = 0

    观察下面来自 HFP 服务器的输出。

    HFP AG>HFRE Codec Select Confirmation, ID: 0x0001 AcceptedCodec=2set-up WBS with Audio for ACL handle 0x0001HFRE_set-up_Audio_Connection: Function Successful.HFRE_set-up_Audio_Connection:: Res = 0HFP AG>HFRE Audio Connection Indication, ID: 0x0001, BDADDR=0x08DF1F99F8D0, Status: 0x0000.

注: 远程免提设备上的端口 ID 为 oxoA(无符号整数),来自属性 ID oxooo4。此端口 ID 转换为十进制数 (10) 后将在以下 OpenAudioGatewayClient 命令中用作第二个参数。