bluetoothctl - Co to jest agent bluetooth?

16

Używam tego bluetoothctlnarzędzia do konfigurowania połączeń Bluetooth między komputerami a Raspberry Pis.

W bluetoothctlwidzę coś jest nazywany „Agent”, a patrząc na większość tutoriali, ten „środek” musi być ustawiony na „ON” do tworzenia połączeń. Próbuję zrozumieć, co to jest agent bluetooth.

1) Co to jest agent bluetooth?

2) Do czego służy polecenie „default-agent” bluetoothctl? Czy może być tak samo dla wszystkich połączeń?

3) Jaki jest wpływ nieużywania agenta podczas konfigurowania połączenia?

4) Patrząc na man bluetoothctl, mówi się, że agenci mogą być ustawieniami możliwości. Co to jest zdolność agenta? Jakie wartości można tam umieścić?

5) Czy agenci istnieją tylko z bluetooth? Czy są też powiedzmy, że agenci Wi-Fi?

Jestem całkiem nowy w świecie Bluetooth, a dokumentacja bluetoothctl jest dość ograniczona ... Wszelkie informacje będą mile widziane.

phodor
źródło

Odpowiedzi:

12

Agent Bluetooth zarządza „kodem parowania” Bluetooth. Może albo odpowiedzieć na nadchodzący „kod parowania”, albo go wysłać.

Domyślny agent powinien działać dla Ciebie. Mówisz, że dopiero zaczynasz korzystać z Bluetooth, więc sugeruję, aby przejść na domyślny.

Nieużywanie agenta oznacza, że ​​2 urządzenia nie mogą negocjować „kodu parowania”.

Przykład może pomóc, więc oto przykład tego, co zadziałało na moim Raspberry Pi 3 o nazwie 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

Tutaj poprosiłem iPhone'a o sparowanie z Shep, a iPhone wysłał 680044.

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

Lub zapoznaj się z poniższymi informacjami, jeśli chcesz wcześniej ustawić klucz dostępu:

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

Skonfiguruj agenta bluetooth, aby przekazać oczekiwany kod parowania

$ bluetooth-agent 0000 &

Oczywiście „0000” może być dowolną liczbą.

Te agenty i „kody parowania” są specyficzne dla Bluetooth, a nie Wi-Fi.

Geoff
źródło
Dzięki, Geoff. Dobre wyjaśnienie. Dodatkowo podany mi link wyjaśnia, jak skonfigurować połączenie szeregowe przez Bluetooth, co było moim następnym problemem.
phodor
Wygląda na bluetooth-agentto, że nie jest dostępny na Xenial. Niektórzy googling sugerują, że kiedyś był częścią bluezpakietu. Czy są jakieś przemyślenia na temat tego, jak wcześniej ustawić klucz dostępu na Xenial?
cheshirekow
@cheshirekow sprawdź bt-agent w bluez-tools
Björn Nilsson