D-Bus интерфейс mesh.Provisioner1
Интерфейс для управления данными от поставщика.
Шина: | системная |
Служба: | уникальное имя |
Объект: | свободно определяемый |
Интерфейс: | org.bluez.mesh.Provisioner1 |
Методы
- AddNodeComplete(array{byte}[16] uuid, uint16 unicast, uint8 count)
- AddNodeFailed(array{byte}[16] uuid, string reason)
- uint16 net_index, uint16 unicast RequestProvData(uint8 count)
- ScanResult(int16 rssi, array{byte} data, dict options)
Подробное описание
Интерфейс содержит методы для управления данными от поставщика.
Описание методов
AddNodeComplete(array{byte}[16] uuid, uint16 unicast, uint8 count)
Метод вызывается, когда подготовка узла, инициированная
AddNode()
, успешно завершена.
Аргумент unicast
— это основной адрес, назначенный новому узлу, и адрес его сервера конфигурации.
Аргумент count
— это количество уникальных адресов, назначенных новому узлу.
Новому узлу теперь можно отправлять сообщения, используя учётные данные,
предоставленные методом RequestProvData
.
AddNodeFailed(array{byte}[16] uuid, string reason)
Метод вызывается, когда инициализация узла, инициированная
AddNode()
, не удалась.
В зависимости от того, насколько далеко продвинулась подготовка перед сбоем,
может потребоваться некоторая очистка кэшированных данных.
Аргумент reason
определяет причину сбоя инициализации.
Определённые значения: aborted
, timeout
, bad-pdu
, confirmation-failed
, out-of-resources
,
decryption-error
, unexpected-error
, cannot-assign-addresses
.
uint16 net_index, uint16 unicast RequestProvData(uint8 count)
Метод реализуется приложением с поддержкой поставщика и вызывается, когда удалённое устройство полностью аутентифицировано и подтверждено.
Аргумент count
— это количество последовательных уникальных адресов,
запрашиваемых удалённым устройством.
Возвращаемые параметры взяты из спецификации mesh-профиля:
net_index
- индекс подсети
net_key
; unicast
- первичный уникальный адрес нового узла.
Возможные ошибки:
org.bluez.mesh.Error.Abort
.
ScanResult(int16 rssi, array{byte} data, dict options)
Метод вызывается из демона bluetooth-meshd, когда во время
UnprovisionedScan()
для неинициализированных устройств обнаруживается уникальный UUID.
Аргумент rssi
представляет собой нормализованное измерение силы
полученного неподготовленного сигнала.
Аргумент data
представляет собой массив байтов переменной длины, который может содержать
1, 2 или 3 отдельных поля, включая 16-байтовый UUID удалённого устройства (всегда),
16-битную маску флагов аутентификации OOB (необязательно)
и 32-битный хэш URI (если бит URI установлен в маске OOB).
Существуют ли эти поля или нет, решает удалённое устройство.
Аргумент options
— это словарь, который может содержать дополнительную информацию
о результатах сканирования (в настоящее время он пуст для прямой совместимости).
Если демон получает сигнал с UUID, о котором уже было сообщено, он будет молча отброшен,
если только он не был получен на более высоком уровне мощности rssi
.