Профиль Bluez и обратный вызов при подключении устройства

Я разрабатываю индивидуальный профиль с сервисным сервером GATT (действующим как периферийное устройство). Я определяю профиль через структуру btd_profile, и есть указатели функций на adapter_probe, device_probe, connect ... Когда bluez deamon запускает, вызывается adapter_probe и там я создаю службу GATT.

После подключения к серверу через gatttool я вижу свои сервисы и характеристики, но функция device_probe не вызывается. Как я могу получить информацию о подключении / отключении устройства, когда какое-то устройство подключено / отключено к моему серверу? А как работает этот device_probe и подключаются callback-функции? Когда они тогда называются?

Спасибо за помощь


person Yanny    schedule 28.05.2014    source источник


Ответы (1)


При регистрации профиля, если мы передадим Role как «сервер», то будет вызываться только функция, связанная с сервером, например, adapter_probe и т. Д., Если мы передадим Role как «client», то будет вызываться device_probe. По умолчанию bluez включает и то, и другое, но если вы передадите роль «сервер» или «клиент», она изменится соответствующим образом. При регистрации роли прохода профиля как NULL, оба будут включены

person ASB    schedule 02.12.2014