bluetoothctl – 什么是蓝牙代理?

我正在使用bluetoothctl实用程序在计算机和Raspberry Pis之间建立蓝牙连接。

bluetoothctl ,我可以看到有一种称为“代理”的东西,通过查看大多数教程,必须将“代理”设置为“打开”以创建连接。 我试图了解什么是蓝牙代理。

1)什么是蓝牙代理?

2) bluetoothctl的“default-agent”命令是什么? 所有连接都可以相同吗?

3)在建立连接时不使用代理有什么影响?

4)通过查看man bluetoothctl ,可以说代理可以设置一个function。 什么是代理能力? 什么价值可以放在那里?

5)代理商是否仅存在蓝牙? 有没有让我们说wifi代理呢?

我是蓝牙世界的新手,bluetoothctl的文档是非常有限的…任何信息将不胜感激。

蓝牙代理管理蓝牙的“配对代码”。 它可以响应来自的“配对代码”,也可以发送一个。

默认代理应该适合您。 你说你是蓝牙新手,所以我建议你现在使用默认设置。

不使用代理将意味着2个设备无法协商“配对代码”。

一个例子可能会有所帮助,所以这里有一个例子,说明我的Raspberry Pi 3上的Shep对我有用:

 pi@shep:~/bluetooth $ bluetoothctl [NEW] Controller B8:27:EB:B0:BC:22 shep [default] [NEW] Device 18:9E:FC:94:8C:33 iPhone4 [bluetooth]# agent on Agent registered [bluetooth]# default-agent Default agent request successful [CHG] Device 18:9E:FC:94:8C:33 Connected: yes [CHG] Device 18:9E:FC:94:8C:33 Connected: no 

在这里我要求iPhone与Shep配对,而iPhone则发送680044。

 [CHG] Device 18:9E:FC:94:8C:33 Connected: yes Request confirmation [agent] Confirm passkey 680044 (yes/no): yes 

如果要提前设置密钥,请参阅以下内容:

http://www.heatxsink.com/entry/how-to-pair-a-bluetooth-device-from-command-line-on-linux

设置bluetooth-agent以传递预期的配对代码

$ bluetooth-agent 0000 &

显然’0000’可以是任何数字。

这些代理和“配对代码”特定于蓝牙而非Wi-Fi。