bluetoothctl - một đại lý bluetooth là gì?


16

Tôi đang sử dụng bluetoothctltiện ích để thiết lập kết nối Bluetooth giữa máy tính và Raspberry Pis.

Trong bluetoothctl, tôi có thể thấy có một thứ gọi là "tác nhân" và bằng cách xem hầu hết các hướng dẫn, "tác nhân" này phải được đặt "bật" để tạo kết nối. Tôi đang cố gắng để hiểu thế nào là một đại lý bluetooth.

1) Đại lý bluetooth là gì?

2) Lệnh "default-agent" bluetoothctldùng để làm gì? Nó có thể giống nhau cho tất cả các kết nối?

3) Tác động của việc không sử dụng tác nhân khi thiết lập kết nối là gì?

4) Bằng cách nhìn vào man bluetoothctl, người ta nói rằng các tác nhân có thể được thiết lập một khả năng. Một khả năng đại lý là gì? Những giá trị nào có thể được đặt ở đó?

5) Các đại lý chỉ tồn tại với bluetooth? Có ai nói đại lý wifi không?

Tôi còn khá mới mẻ với thế giới Bluetooth và tài liệu về bluetoothctl khá hạn chế ... Mọi thông tin sẽ được đánh giá cao.

Câu trả lời:


12

Tác nhân Bluetooth là thứ quản lý 'mã ghép nối' của Bluetooth. Nó có thể phản hồi với một 'mã ghép nối' đang đến hoặc có thể gửi một mã ra.

Tác nhân mặc định sẽ làm việc cho bạn. Bạn nói rằng bạn chưa quen với Bluetooth, vì vậy tôi khuyên bạn nên đi với mặc định ngay bây giờ.

Không sử dụng một tác nhân sẽ có nghĩa là 2 thiết bị không thể đàm phán 'mã ghép nối'.

Một ví dụ có thể giúp ích, vì vậy đây là một ví dụ về những gì đã làm việc cho tôi trên Raspberry Pi 3 của tôi được gọi là 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

Ở đây tôi đã yêu cầu iPhone ghép nối với Shep và iPhone đã gửi 680044.

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

Hoặc xem phần sau nếu bạn muốn đặt khóa mật khẩu trước:

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

Thiết lập tác nhân bluetooth để vượt qua mã ghép nối dự kiến

$ bluetooth-agent 0000 &

Rõ ràng '0000' có thể là bất kỳ số nào.

Các tác nhân và 'mã ghép nối' này dành riêng cho Bluetooth thay vì Wi-Fi.


Cảm ơn Geoff. Làm rõ tốt. Cộng với liên kết bạn cung cấp cho tôi giải thích cách thiết lập kết nối nối tiếp qua Bluetooth, đây là vấn đề tiếp theo của tôi.
phodor

Có vẻ như bluetooth-agentkhông có sẵn trên xenial. Một số googling gợi ý rằng nó từng là một phần của bluezgói. Bạn có suy nghĩ gì về cách đặt khóa pass trước trên xenial không?
cheshirekow

@cheshirekow kiểm tra bt-agent trong bluez-tools
Bjorn Nilsson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.