комиссар

Этот модуль включает функции для роли комиссара потоков.

Краткое содержание

Перечисления

otCommissionerJoinerEvent перечисление
Определяет событие соединения на комиссаре.
otCommissionerState {
OT_COMMISSIONER_STATE_DISABLED = 0,
OT_COMMISSIONER_STATE_PETITION = 1,
OT_COMMISSIONER_STATE_ACTIVE = 2
}
перечисление
Определяет состояние комиссара.
otJoinerInfoType {
OT_JOINER_INFO_TYPE_ANY = 0,
OT_JOINER_INFO_TYPE_EUI64 = 1,
OT_JOINER_INFO_TYPE_DISCERNER = 2
}
перечисление
Определяет тип информации о соединении.

Определения типов

otCommissionerEnergyReportCallback )(uint32_t aChannelMask, const uint8_t *aEnergyList, uint8_t aEnergyListLength, void *aContext) определение типа
void(*
Указатель вызывается, когда комиссар получает энергетический отчет.
otCommissionerJoinerCallback )(otCommissionerJoinerEvent aEvent, const otJoinerInfo *aJoinerInfo, const otExtAddress *aJoinerId, void *aContext) определение типа
void(*
Указатель вызывается всякий раз, когда изменяется состояние соединения.
otCommissionerJoinerEvent определение типа
Определяет событие соединения на комиссаре.
otCommissionerPanIdConflictCallback )(uint16_t aPanId, uint32_t aChannelMask, void *aContext) определение типа
void(*
Указатель вызывается, когда комиссар получает сообщение о конфликте PAN ID.
otCommissionerState определение типа
Определяет состояние комиссара.
otCommissionerStateCallback )(otCommissionerState aState, void *aContext) определение типа
void(*
Указатель вызывается всякий раз, когда изменяется состояние комиссара.
otCommissioningDataset определение типа
Представляет набор данных для ввода в эксплуатацию.
otJoinerInfo определение типа
struct otJoinerInfo
Представляет информацию о соединении.
otJoinerInfoType определение типа
Определяет тип информации о соединении.
otJoinerPskd определение типа
struct otJoinerPskd
Представляет Столяр PSKd.
otSteeringData определение типа
Представляет данные рулевого управления.

Функции

otCommissionerAddJoiner ( otInstance *aInstance, const otExtAddress *aEui64, const char *aPskd, uint32_t aTimeout)
Добавляет запись Joiner.
otCommissionerAddJoinerWithDiscerner ( otInstance *aInstance, const otJoinerDiscerner *aDiscerner, const char *aPskd, uint32_t aTimeout)
Добавляет запись Joiner с заданным значением Joiner Discerner.
otCommissionerAnnounceBegin ( otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, const otIp6Address *aAddress)
Отправляет сообщение «Объявление о начале».
otCommissionerEnergyScan ( otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, uint16_t aScanDuration, const otIp6Address *aAddress, otCommissionerEnergyReportCallback aCallback, void *aContext)
Отправляет сообщение с запросом на сканирование энергии.
otCommissionerGetId ( otInstance *aInstance)
const char *
Возвращает идентификатор комиссара.
otCommissionerGetNextJoinerInfo ( otInstance *aInstance, uint16_t *aIterator, otJoinerInfo *aJoiner)
Получите информацию о соединении в позиции aIterator.
otCommissionerGetProvisioningUrl ( otInstance *aInstance)
const char *
Получает URL-адрес подготовки.
otCommissionerGetSessionId ( otInstance *aInstance)
uint16_t
Возвращает идентификатор сеанса комиссара.
otCommissionerGetState ( otInstance *aInstance)
Возвращает состояние комиссара.
otCommissionerPanIdQuery ( otInstance *aInstance, uint16_t aPanId, uint32_t aChannelMask, const otIp6Address *aAddress, otCommissionerPanIdConflictCallback aCallback, void *aContext)
Отправляет сообщение запроса PAN ID.
otCommissionerRemoveJoiner ( otInstance *aInstance, const otExtAddress *aEui64)
Удаляет запись Joiner.
otCommissionerRemoveJoinerWithDiscerner ( otInstance *aInstance, const otJoinerDiscerner *aDiscerner)
Удаляет запись Joiner.
otCommissionerSendMgmtGet ( otInstance *aInstance, const uint8_t *aTlvs, uint8_t aLength)
Отправляет MGMT_COMMISSIONER_GET.
otCommissionerSendMgmtSet ( otInstance *aInstance, const otCommissioningDataset *aDataset, const uint8_t *aTlvs, uint8_t aLength)
Отправляет MGMT_COMMISSIONER_SET.
otCommissionerSetId ( otInstance *aInstance, const char *aId)
Устанавливает идентификатор комиссара.
otCommissionerSetProvisioningUrl ( otInstance *aInstance, const char *aProvisioningUrl)
Устанавливает URL-адрес предоставления.
otCommissionerStart ( otInstance *aInstance, otCommissionerStateCallback aStateCallback, otCommissionerJoinerCallback aJoinerCallback, void *aCallbackContext)
Включает роль комиссара потоков.
otCommissionerStop ( otInstance *aInstance)
Отключает роль комиссара потоков.

Структуры

otCommissioningDataset

Представляет набор данных для ввода в эксплуатацию.

отДжойнерИнфо

Представляет информацию о соединении.

отJoinerPskd

Представляет Столяр PSKd.

otSteeringData

Представляет данные рулевого управления.

Перечисления

otCommissionerJoinerEvent

 otCommissionerJoinerEvent

Определяет событие соединения на комиссаре.

otCommissionerState

 otCommissionerState

Определяет состояние комиссара.

Характеристики
OT_COMMISSIONER_STATE_ACTIVE

Роль комиссара активна.

OT_COMMISSIONER_STATE_DISABLED

Роль комиссара отключена.

OT_COMMISSIONER_STATE_PETITION

В настоящее время подает прошение о том, чтобы стать комиссаром.

отДжойнерИнфоТип

 otJoinerInfoType

Определяет тип информации о соединении.

Характеристики
OT_JOINER_INFO_TYPE_ANY

Примите любой Joiner (не указан EUI64 или Discerner).

OT_JOINER_INFO_TYPE_DISCERNER

Указан средство распознавания соединений ( mSharedId.mDiscerner в otJoinerInfo ).

OT_JOINER_INFO_TYPE_EUI64

Указан соединитель EUI-64 ( mSharedId.mEui64 в otJoinerInfo ).

Определения типов

otCommissionerEnergyReportCallback

void(* otCommissionerEnergyReportCallback)(uint32_t aChannelMask, const uint8_t *aEnergyList, uint8_t aEnergyListLength, void *aContext)

Указатель вызывается, когда комиссар получает энергетический отчет.

Подробности
Параметры
[in] aChannelMask
Значение маски канала.
[in] aEnergyList
Указатель на список измерений энергии.
[in] aEnergyListLength
Количество записей в aEnergyListLength .
[in] aContext
Указатель на контекст конкретного приложения.

otCommissionerJoinerCallback

void(* otCommissionerJoinerCallback)(otCommissionerJoinerEvent aEvent, const otJoinerInfo *aJoinerInfo, const otExtAddress *aJoinerId, void *aContext)

Указатель вызывается всякий раз, когда изменяется состояние соединения.

Подробности
Параметры
[in] aEvent
Тип события объединения.
[in] aJoinerInfo
Указатель на информацию о присоединении.
[in] aJoinerId
Указатель на идентификатор соединения (если он неизвестен, он будет равен NULL).
[in] aContext
Указатель на контекст конкретного приложения.

otCommissionerJoinerEvent

enum otCommissionerJoinerEvent otCommissionerJoinerEvent

Определяет событие соединения на комиссаре.

otCommissionerPanIdConflictCallback

void(* otCommissionerPanIdConflictCallback)(uint16_t aPanId, uint32_t aChannelMask, void *aContext)

Указатель вызывается, когда комиссар получает сообщение о конфликте PAN ID.

Подробности
Параметры
[in] aPanId
Значение PAN ID.
[in] aChannelMask
Значение маски канала.
[in] aContext
Указатель на контекст конкретного приложения.

otCommissionerState

enum otCommissionerState otCommissionerState

Определяет состояние комиссара.

otCommissionerStateCallback

void(* otCommissionerStateCallback)(otCommissionerState aState, void *aContext)

Указатель вызывается всякий раз, когда изменяется состояние комиссара.

Подробности
Параметры
[in] aState
Комиссар констатирует.
[in] aContext
Указатель на контекст конкретного приложения.

otCommissioningDataset

struct otCommissioningDataset otCommissioningDataset

Представляет набор данных для ввода в эксплуатацию.

отДжойнерИнфо

struct otJoinerInfo otJoinerInfo

Представляет информацию о соединении.

отДжойнерИнфоТип

enum otJoinerInfoType otJoinerInfoType

Определяет тип информации о соединении.

отJoinerPskd

struct otJoinerPskd otJoinerPskd

Представляет Столяр PSKd.

otSteeringData

struct otSteeringData otSteeringData

Представляет данные рулевого управления.

Функции

otCommissionerAddJoiner

otError otCommissionerAddJoiner(
  otInstance *aInstance,
  const otExtAddress *aEui64,
  const char *aPskd,
  uint32_t aTimeout
)

Добавляет запись Joiner.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aEui64
Указатель на IEEE EUI-64 соединителя или NULL для любого соединения.
[in] aPskd
Указатель на PSKd.
[in] aTimeout
Время, по истечении которого объект Joiner автоматически удаляется, в секундах.
Возвращаемые значения
OT_ERROR_NONE
Столяр добавлен успешно.
OT_ERROR_NO_BUFS
Нет доступных буферов для добавления Столяра.
OT_ERROR_INVALID_ARGS
aEui64 или aPskd недействительны.
OT_ERROR_INVALID_STATE
Комиссар не активен.

otCommissionerAddJoinerWithDiscerner

otError otCommissionerAddJoinerWithDiscerner(
  otInstance *aInstance,
  const otJoinerDiscerner *aDiscerner,
  const char *aPskd,
  uint32_t aTimeout
)

Добавляет запись Joiner с заданным значением Joiner Discerner.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aDiscerner
Указатель на Joiner Discerner.
[in] aPskd
Указатель на PSKd.
[in] aTimeout
Время, по истечении которого объект Joiner автоматически удаляется, в секундах.
Возвращаемые значения
OT_ERROR_NONE
Столяр добавлен успешно.
OT_ERROR_NO_BUFS
Нет доступных буферов для добавления Столяра.
OT_ERROR_INVALID_ARGS
aDiscerner или aPskd недействительны.
OT_ERROR_INVALID_STATE
Комиссар не активен.

otCommissionerAnnounceBegin

otError otCommissionerAnnounceBegin(
  otInstance *aInstance,
  uint32_t aChannelMask,
  uint8_t aCount,
  uint16_t aPeriod,
  const otIp6Address *aAddress
)

Отправляет сообщение «Объявление о начале».

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aChannelMask
Значение маски канала.
[in] aCount
Количество сообщений объявлений на канал.
[in] aPeriod
Время между двумя последовательными передачами объявлений MLE (в миллисекундах).
[in] aAddress
Указатель на пункт назначения IPv6.
Возвращаемые значения
OT_ERROR_NONE
Сообщение Announce Begin успешно поставлено в очередь.
OT_ERROR_NO_BUFS
Недостаточно буферов для генерации сообщения Announce Begin.
OT_ERROR_INVALID_STATE
Комиссар не активен.

otCommissionerEnergyScan

otError otCommissionerEnergyScan(
  otInstance *aInstance,
  uint32_t aChannelMask,
  uint8_t aCount,
  uint16_t aPeriod,
  uint16_t aScanDuration,
  const otIp6Address *aAddress,
  otCommissionerEnergyReportCallback aCallback,
  void *aContext
)

Отправляет сообщение с запросом на сканирование энергии.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aChannelMask
Значение маски канала.
[in] aCount
Количество измерений энергии на канал.
[in] aPeriod
Время между измерениями энергии (миллисекунды).
[in] aScanDuration
Длительность сканирования для каждого измерения энергии (миллисекунды).
[in] aAddress
Указатель на пункт назначения IPv6.
[in] aCallback
Указатель на функцию, вызываемую при получении сообщения Energy Report.
[in] aContext
Указатель на контекст конкретного приложения.
Возвращаемые значения
OT_ERROR_NONE
Сообщение запроса на сканирование энергии успешно поставлено в очередь.
OT_ERROR_NO_BUFS
Недостаточно буферов для создания сообщения запроса сканирования энергии.
OT_ERROR_INVALID_STATE
Комиссар не активен.

otCommissionerGetId

const char * otCommissionerGetId(
  otInstance *aInstance
)

Возвращает идентификатор комиссара.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возврат
Комиссар Ид.

otCommissionerGetNextJoinerInfo

otError otCommissionerGetNextJoinerInfo(
  otInstance *aInstance,
  uint16_t *aIterator,
  otJoinerInfo *aJoiner
)

Получите информацию о соединении в позиции aIterator.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр.
[in,out] aIterator
Указатель на контекст итератора Joiner Info.
[out] aJoiner
Ссылка на информацию Joiner.
Возвращаемые значения
OT_ERROR_NONE
Успешно получите информацию о Столяре.
OT_ERROR_NOT_FOUND
Не найден следующий Столяр.

otCommissionerGetProvisioningUrl

const char * otCommissionerGetProvisioningUrl(
  otInstance *aInstance
)

Получает URL-адрес подготовки.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возврат
Указатель на строку URL.

откомиссионержетсессионид

uint16_t otCommissionerGetSessionId(
  otInstance *aInstance
)

Возвращает идентификатор сеанса комиссара.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возврат
Идентификатор текущего сеанса комиссара.

otCommissionerGetState

otCommissionerState otCommissionerGetState(
  otInstance *aInstance
)

Возвращает состояние комиссара.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возвращаемые значения
OT_COMMISSIONER_STATE_DISABLED
Комиссар инвалид.
OT_COMMISSIONER_STATE_PETITION
Стать комиссаром.
OT_COMMISSIONER_STATE_ACTIVE
Комиссар включен.

откоммиссерпанидкуери

otError otCommissionerPanIdQuery(
  otInstance *aInstance,
  uint16_t aPanId,
  uint32_t aChannelMask,
  const otIp6Address *aAddress,
  otCommissionerPanIdConflictCallback aCallback,
  void *aContext
)

Отправляет сообщение запроса PAN ID.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aPanId
PAN ID для запроса.
[in] aChannelMask
Значение маски канала.
[in] aAddress
Указатель на пункт назначения IPv6.
[in] aCallback
Указатель на функцию, вызываемую при получении сообщения о конфликте PAN ID.
[in] aContext
Указатель на контекст конкретного приложения.
Возвращаемые значения
OT_ERROR_NONE
Сообщение запроса PAN ID успешно поставлено в очередь.
OT_ERROR_NO_BUFS
Недостаточно буферов для создания сообщения запроса PAN ID.
OT_ERROR_INVALID_STATE
Комиссар не активен.

otCommissionerRemoveJoiner

otError otCommissionerRemoveJoiner(
  otInstance *aInstance,
  const otExtAddress *aEui64
)

Удаляет запись Joiner.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aEui64
Указатель на IEEE EUI-64 соединителя или NULL для любого соединения.
Возвращаемые значения
OT_ERROR_NONE
Столяр успешно удален.
OT_ERROR_NOT_FOUND
Соединение, указанное aEui64 не найдено.
OT_ERROR_INVALID_ARGS
aEui64 недействителен.
OT_ERROR_INVALID_STATE
Комиссар не активен.

otCommissionerRemoveJoinerWithDiscerner

otError otCommissionerRemoveJoinerWithDiscerner(
  otInstance *aInstance,
  const otJoinerDiscerner *aDiscerner
)

Удаляет запись Joiner.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aDiscerner
Указатель на Joiner Discerner.
Возвращаемые значения
OT_ERROR_NONE
Столяр успешно удален.
OT_ERROR_NOT_FOUND
Соединение, указанное aEui64 не найдено.
OT_ERROR_INVALID_ARGS
aDiscerner недействителен.
OT_ERROR_INVALID_STATE
Комиссар не активен.

otCommissionerSendMgmtGet

otError otCommissionerSendMgmtGet(
  otInstance *aInstance,
  const uint8_t *aTlvs,
  uint8_t aLength
)

Отправляет MGMT_COMMISSIONER_GET.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aTlvs
Указатель на TLV.
[in] aLength
Длина TLV.
Возвращаемые значения
OT_ERROR_NONE
Успешно отправьте команду набора данных Meshcop.
OT_ERROR_NO_BUFS
Недостаточно места в буфере для отправки.
OT_ERROR_INVALID_STATE
Комиссар не активен.

откомиссерсендмгмтсет

otError otCommissionerSendMgmtSet(
  otInstance *aInstance,
  const otCommissioningDataset *aDataset,
  const uint8_t *aTlvs,
  uint8_t aLength
)

Отправляет MGMT_COMMISSIONER_SET.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aDataset
Указатель на набор данных ввода в эксплуатацию.
[in] aTlvs
Указатель на TLV.
[in] aLength
Длина TLV.
Возвращаемые значения
OT_ERROR_NONE
Успешно отправьте команду набора данных Meshcop.
OT_ERROR_NO_BUFS
Недостаточно места в буфере для отправки.
OT_ERROR_INVALID_STATE
Комиссар не активен.

откомиссерсетид

otError otCommissionerSetId(
  otInstance *aInstance,
  const char *aId
)

Устанавливает идентификатор комиссара.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aId
Указатель на массив строковых символов. Должно быть завершено нулем.
Возвращаемые значения
OT_ERROR_NONE
Успешно установили идентификатор комиссара.
OT_ERROR_INVALID_ARGS
Имя слишком длинное.
OT_ERROR_INVALID_STATE
Комиссар активен и его идентификатор нельзя изменить.

откомиссерсетпровисионингурл

otError otCommissionerSetProvisioningUrl(
  otInstance *aInstance,
  const char *aProvisioningUrl
)

Устанавливает URL-адрес предоставления.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aProvisioningUrl
Указатель на URL-адрес обеспечения (может быть NULL, чтобы задать пустую строку).
Возвращаемые значения
OT_ERROR_NONE
Успешно задан URL-адрес обеспечения.
OT_ERROR_INVALID_ARGS
aProvisioningUrl недействителен (слишком длинный).

otCommissionerStart

otError otCommissionerStart(
  otInstance *aInstance,
  otCommissionerStateCallback aStateCallback,
  otCommissionerJoinerCallback aJoinerCallback,
  void *aCallbackContext
)

Включает роль комиссара потоков.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aStateCallback
Указатель на функцию, которая вызывается при изменении состояния комиссара.
[in] aJoinerCallback
Появляется указатель на функцию, которая вызывается с событием объединения.
[in] aCallbackContext
Указатель на контекст конкретного приложения.
Возвращаемые значения
OT_ERROR_NONE
Успешно начал службу Комиссара.
OT_ERROR_ALREADY
Комиссар уже приступил.
OT_ERROR_INVALID_STATE
Устройство в настоящее время не подключено к сети.

otCommissionerStop

otError otCommissionerStop(
  otInstance *aInstance
)

Отключает роль комиссара потоков.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возвращаемые значения
OT_ERROR_NONE
Службу комиссара удалось остановить.
OT_ERROR_ALREADY
Комиссар уже остановлен.

Макросы

OT_COMMISSIONING_PASSPHRASE_MAX_SIZE

 OT_COMMISSIONING_PASSPHRASE_MAX_SIZE 255

Максимальный размер парольной фразы для ввода в эксплуатацию.

OT_COMMISSIONING_PASSPHRASE_MIN_SIZE

 OT_COMMISSIONING_PASSPHRASE_MIN_SIZE 6

Минимальный размер парольной фразы для ввода в эксплуатацию.

OT_JOINER_MAX_PSKD_LENGTH

 OT_JOINER_MAX_PSKD_LENGTH 32

Максимальная длина строки Joiner PSKd (не включает нулевые символы).

OT_PROVISIONING_URL_MAX_SIZE

 OT_PROVISIONING_URL_MAX_SIZE 64

Максимальный размер (количество символов) в строке URL-адреса предоставления (исключая нулевые символы).

OT_STEERING_DATA_MAX_LENGTH

 OT_STEERING_DATA_MAX_LENGTH 16

Максимальная длина данных рулевого управления (байты)

Ресурсы

Справочные разделы API OpenThread взяты из исходного кода, доступного на GitHub . Для получения дополнительной информации или внесения вклада в нашу документацию обратитесь к Ресурсам .