bluetoothctl - 什麼是藍牙代理?

bluetoothctl - 什麼是藍牙代理?

我正在使用該bluetoothctl實用程式在電腦和 Raspberry Pi 之間建立藍牙連接。

在 中bluetoothctl,我可以看到有一個叫做“代理”的東西,透過查看大多數教程,必須將這個“代理”設置為“打開”才能創建連接。我想了解什麼是藍牙代理。

1)什麼是藍牙代理?

2) for 中的「default-agent」指令是什麼bluetoothctl?所有連接都可以相同嗎?

3)建立連線時不使用代理有什麼影響?

4)透過查看man bluetoothctl,據說代理可以設定能力。什麼是代理能力?那裡可以放什麼值?

5)代理只能透過藍牙存在嗎?還有wifi代理嗎?

我對藍牙世界相當陌生,並且 bluetoothctl 的文檔非常有限......任何資訊將不勝感激。

答案1

藍牙代理負責管理藍牙「配對代碼」。它可以回應傳入的“配對碼”,也可以發送“配對碼”。

預設代理應該適合您。您說您是藍牙新手,所以我建議您暫時使用預設值。

不使用代理將意味著這兩個裝置無法協商「配對代碼」。

一個例子可能會有所幫助,所以這裡有一個在我的 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 0000 &

顯然“0000”可以是任何數字。

這些代理程式和「配對代碼」是特定於藍牙而不是 Wi-Fi。

相關內容