Маршрутизатор/лидер

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

Резюме

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

otCacheEntryState перечисление
Это перечисление определяет состояние записи кэша EID.
otNeighborTableEvent {
OT_NEIGHBOR_TABLE_EVENT_CHILD_ADDED ,
OT_NEIGHBOR_TABLE_EVENT_CHILD_REMOVED ,
OT_NEIGHBOR_TABLE_EVENT_CHILD_MODE_CHANGED ,
OT_NEIGHBOR_TABLE_EVENT_ROUTER_ADDED ,
OT_NEIGHBOR_TABLE_EVENT_ROUTER_REMOVED
}
перечисление
Это перечисление определяет константы, используемые в otNeighborTableCallback для указания изменений в соседней таблице.

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

otCacheEntryInfo определение типа
Эта структура представляет запись кэша EID.
otCacheEntryIterator определение типа
Этот тип представляет собой итератор, используемый для перебора записей таблицы кэша EID.
otCacheEntryState определение типа
Это перечисление определяет состояние записи кэша EID.
otChildIp6AddressIterator определение типа
uint16_t
Используется для перебора IPv6-адресов записи дочернего элемента потока.
otNeighborTableCallback )(otNeighborTableEvent aEvent, const otNeighborTableEntryInfo *aEntryInfo) определение типа
void(*
Этот указатель функции вызывается для уведомления об изменении в соседней таблице.

Функции

otThreadBecomeLeader ( otInstance *aInstance)
Станьте лидером и начните новый раздел.
otThreadBecomeRouter ( otInstance *aInstance)
Попробуйте стать маршрутизатором.
otThreadGetChildInfoById ( otInstance *aInstance, uint16_t aChildId, otChildInfo *aChildInfo)
Функция сохраняет диагностическую информацию для присоединенного дочернего элемента по его идентификатору дочернего элемента или RLOC16.
otThreadGetChildInfoByIndex ( otInstance *aInstance, uint16_t aChildIndex, otChildInfo *aChildInfo)
Функция сохраняет диагностическую информацию для присоединенного дочернего элемента по индексу внутренней таблицы.
otThreadGetChildNextIp6Address ( otInstance *aInstance, uint16_t aChildIndex, otChildIp6AddressIterator *aIterator, otIp6Address *aAddress)
Эта функция получает следующий IPv6-адрес (используя итератор) для данного потомка.
otThreadGetContextIdReuseDelay ( otInstance *aInstance)
uint32_t
Получите параметр CONTEXT_ID_REUSE_DELAY, используемый в роли лидера.
otThreadGetJoinerUdpPort ( otInstance *aInstance)
uint16_t
Получите UDP-порт столяра.
otThreadGetLocalLeaderWeight ( otInstance *aInstance)
uint8_t
Получите вес лидера нити, используемый при работе в роли лидера.
otThreadGetMaxAllowedChildren ( otInstance *aInstance)
uint16_t
Получить максимальное количество детей, разрешенное в настоящее время.
otThreadGetMaxChildIpAddresses ( otInstance *aInstance)
uint8_t
Эта функция получает максимальное количество IP-адресов, которое каждый дочерний MTD может зарегистрировать на этом устройстве в качестве родительского.
otThreadGetMaxRouterId ( otInstance *aInstance)
uint8_t
Функция возвращает максимально допустимый идентификатор маршрутизатора.
otThreadGetNetworkIdTimeout ( otInstance *aInstance)
uint8_t
Получите параметр NETWORK_ID_TIMEOUT, используемый в роли Router.
otThreadGetNextCacheEntry ( otInstance *aInstance, otCacheEntryInfo *aEntryInfo, otCacheEntryIterator *aIterator)
Эта функция получает следующую запись кэша EID (используя итератор).
otThreadGetParentPriority ( otInstance *aInstance)
int8_t
Получите назначенный родительский приоритет.
otThreadGetPreferredLeaderPartitionId ( otInstance *aInstance)
uint32_t
Получите предпочтительный идентификатор раздела лидера потока, используемый при работе в роли лидера.
otThreadGetPskc ( otInstance *aInstance, otPskc *aPskc)
void
Получить поток PSKc.
otThreadGetPskcRef ( otInstance *aInstance)
Получить ключевую ссылку на сохраненный PSKc потока.
otThreadGetRouterDowngradeThreshold ( otInstance *aInstance)
uint8_t
Получите параметр ROUTER_DOWNGRADE_THRESHOLD, используемый в роли Router.
otThreadGetRouterIdRange ( otInstance *aInstance, uint8_t *aMinRouterId, uint8_t *aMaxRouterId)
void
Эта функция получает диапазон идентификаторов маршрутизаторов, которые разрешено назначать узлам в сети потоков.
otThreadGetRouterIdSequence ( otInstance *aInstance)
uint8_t
Получите текущую последовательность идентификатора маршрутизатора.
otThreadGetRouterInfo ( otInstance *aInstance, uint16_t aRouterId, otRouterInfo *aRouterInfo)
Функция сохраняет диагностическую информацию для данного Thread Router.
otThreadGetRouterSelectionJitter ( otInstance *aInstance)
uint8_t
Получите параметр ROUTER_SELECTION_JITTER, используемый в роли REED/маршрутизатора.
otThreadGetRouterUpgradeThreshold ( otInstance *aInstance)
uint8_t
Получите параметр ROUTER_UPGRADE_THRESHOLD, используемый в роли REED.
otThreadIsRouterEligible ( otInstance *aInstance)
bool
Этот метод указывает, подходит ли устройство для маршрутизатора.
otThreadRegisterNeighborTableCallback ( otInstance *aInstance, otNeighborTableCallback aCallback)
void
Эта функция регистрирует функцию обратного вызова соседней таблицы.
otThreadReleaseRouterId ( otInstance *aInstance, uint8_t aRouterId)
Освободите идентификатор маршрутизатора, который был выделен устройством в роли лидера.
otThreadSetCcmEnabled ( otInstance *aInstance, bool aEnabled)
void
Эта функция устанавливает, было ли устройство введено в эксплуатацию с помощью CCM.
otThreadSetContextIdReuseDelay ( otInstance *aInstance, uint32_t aDelay)
void
Установите параметр CONTEXT_ID_REUSE_DELAY, используемый в роли Лидер.
otThreadSetJoinerUdpPort ( otInstance *aInstance, uint16_t aJoinerUdpPort)
Установите UDP-порт для объединения.
otThreadSetLocalLeaderWeight ( otInstance *aInstance, uint8_t aWeight)
void
Установите вес лидера нити, используемый при работе в роли лидера.
otThreadSetMaxAllowedChildren ( otInstance *aInstance, uint16_t aMaxChildren)
Установите максимально допустимое количество детей в настоящее время.
otThreadSetMaxChildIpAddresses ( otInstance *aInstance, uint8_t aMaxIpAddresses)
Эта функция устанавливает/восстанавливает максимальное количество IP-адресов, которые каждый дочерний MTD может зарегистрировать на этом устройстве в качестве родительского.
otThreadSetNetworkIdTimeout ( otInstance *aInstance, uint8_t aTimeout)
void
Установите параметр NETWORK_ID_TIMEOUT, используемый в роли Лидер.
otThreadSetParentPriority ( otInstance *aInstance, int8_t aParentPriority)
Установить родительский приоритет.
otThreadSetPreferredLeaderPartitionId ( otInstance *aInstance, uint32_t aPartitionId)
void
Установите предпочтительный идентификатор раздела лидера потока, используемый при работе в роли лидера.
otThreadSetPreferredRouterId ( otInstance *aInstance, uint8_t aRouterId)
Установите предпочтительный идентификатор маршрутизатора.
otThreadSetPskc ( otInstance *aInstance, const otPskc *aPskc)
Установите поток PSKc.
otThreadSetPskcRef ( otInstance *aInstance, otPskcRef aKeyRef)
Установите поток PSKc.
otThreadSetRouterDowngradeThreshold ( otInstance *aInstance, uint8_t aThreshold)
void
Установите параметр ROUTER_DOWNGRADE_THRESHOLD, используемый в роли Лидер.
otThreadSetRouterEligible ( otInstance *aInstance, bool aEligible)
Эта функция определяет, подходит ли устройство для маршрутизатора.
otThreadSetRouterIdRange ( otInstance *aInstance, uint8_t aMinRouterId, uint8_t aMaxRouterId)
Эта функция устанавливает диапазон идентификаторов маршрутизаторов, которые разрешено назначать узлам в сети потоков.
otThreadSetRouterSelectionJitter ( otInstance *aInstance, uint8_t aRouterJitter)
void
Установите параметр ROUTER_SELECTION_JITTER, используемый в роли REED/Router.
otThreadSetRouterUpgradeThreshold ( otInstance *aInstance, uint8_t aThreshold)
void
Установите параметр ROUTER_UPGRADE_THRESHOLD, используемый в роли Лидер.
otThreadSetSteeringData ( otInstance *aInstance, const otExtAddress *aExtAddress)
void
Установите параметры рулевого управления вне диапазона.
otThreadSetThreadVersionCheckEnabled ( otInstance *aInstance, bool aEnabled)
void
Эта функция устанавливает, включено ли пороговое значение версии TLV политики безопасности для маршрутизации (поле VR).

Структуры

otCacheEntryInfo

Эта структура представляет запись кэша EID.

otCacheEntryIterator

Этот тип представляет собой итератор, используемый для перебора записей таблицы кэша EID.

otChildInfo

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

otNeighborTableEntryInfo

Этот тип представляет информацию о записи в соседней таблице (дочерней или маршрутизаторе) и используется в качестве параметра в обратном вызове соседней таблицы otNeighborTableCallback .

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

откачеэнтристате

 otCacheEntryState

Это перечисление определяет состояние записи кэша EID.

otNeighborTableEvent

 otNeighborTableEvent

Это перечисление определяет константы, используемые в otNeighborTableCallback для указания изменений в соседней таблице.

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

Добавляется ребенок.

OT_NEIGHBOR_TABLE_EVENT_CHILD_MODE_CHANGED

Существующий дочерний режим изменен.

OT_NEIGHBOR_TABLE_EVENT_CHILD_REMOVED

Ребенка удаляют.

OT_NEIGHBOR_TABLE_EVENT_ROUTER_ADDED

Добавляется роутер.

OT_NEIGHBOR_TABLE_EVENT_ROUTER_REMOVED

Роутер удаляется.

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

otCacheEntryInfo

struct otCacheEntryInfo otCacheEntryInfo

Эта структура представляет запись кэша EID.

otCacheEntryIterator

struct otCacheEntryIterator otCacheEntryIterator

Этот тип представляет собой итератор, используемый для перебора записей таблицы кэша EID.

Чтобы инициализировать итератор и начать с первой записи в таблице кэша, установите все его поля в структуре в ноль (например, memset iterator в ноль).

откачеэнтристате

enum otCacheEntryState otCacheEntryState

Это перечисление определяет состояние записи кэша EID.

otChildIp6AddressIterator

uint16_t otChildIp6AddressIterator

Используется для перебора IPv6-адресов записи дочернего элемента потока.

otNeighborTableОбратный вызов

void(* otNeighborTableCallback)(otNeighborTableEvent aEvent, const otNeighborTableEntryInfo *aEntryInfo)

Этот указатель функции вызывается для уведомления об изменении в соседней таблице.

Подробности
Параметры
[in] aEvent
Флаг события.
[in] aEntryInfo
Указатель на информацию о записи таблицы.

Функции

otThreadСтатьлидером

otError otThreadBecomeLeader(
  otInstance *aInstance
)

Станьте лидером и начните новый раздел.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возвращаемые значения
OT_ERROR_NONE
Успешно стал лидером и начал новый раздел.
OT_ERROR_INVALID_STATE
Тема отключена.

otThreadBecomeRouter

otError otThreadBecomeRouter(
  otInstance *aInstance
)

Попробуйте стать маршрутизатором.

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

otThreadGetChildInfoById

otError otThreadGetChildInfoById(
  otInstance *aInstance,
  uint16_t aChildId,
  otChildInfo *aChildInfo
)

Функция сохраняет диагностическую информацию для присоединенного дочернего элемента по его идентификатору дочернего элемента или RLOC16.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aChildId
Идентификатор дочернего элемента или RLOC16 для присоединенного дочернего элемента.
[out] aChildInfo
Указатель на место размещения дочерней информации.
Возвращаемые значения
OT_ERROR_NONE
aChildInfo успешно обновлен информацией для данного идентификатора.
OT_ERROR_NOT_FOUND
Нет допустимого ребенка с этим идентификатором ребенка.
OT_ERROR_INVALID_ARGS
Если aChildInfo имеет значение NULL.

otThreadGetChildInfoByIndex

otError otThreadGetChildInfoByIndex(
  otInstance *aInstance,
  uint16_t aChildIndex,
  otChildInfo *aChildInfo
)

Функция сохраняет диагностическую информацию для присоединенного дочернего элемента по индексу внутренней таблицы.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aChildIndex
Индекс таблицы.
[out] aChildInfo
Указатель на место размещения дочерней информации.
Возвращаемые значения
OT_ERROR_NONE
aChildInfo был успешно обновлен информацией для данного индекса.
OT_ERROR_NOT_FOUND
Нет допустимого дочернего элемента в этом индексе.
OT_ERROR_INVALID_ARGS
Либо aChildInfo имеет значение NULL, либо aChildIndex выходит за пределы допустимого диапазона (выше, чем максимальный индекс таблицы).
Смотрите также:
otGetMaxAllowedChildren

otThreadGetChildNextIp6Address

otError otThreadGetChildNextIp6Address(
  otInstance *aInstance,
  uint16_t aChildIndex,
  otChildIp6AddressIterator *aIterator,
  otIp6Address *aAddress
)

Эта функция получает следующий IPv6-адрес (используя итератор) для данного потомка.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aChildIndex
Дочерний индекс.
[in,out] aIterator
Указатель на итератор. В случае успеха итератор будет обновлен, чтобы указывать на следующую запись в списке. Чтобы получить первый IPv6-адрес, итератор должен быть установлен на OT_CHILD_IP6_ADDRESS_ITERATOR_INIT.
[out] aAddress
Указатель на адрес IPv6, на который помещается следующий адрес дочернего элемента (в случае успеха).
Возвращаемые значения
OT_ERROR_NONE
Успешно найден следующий адрес IPv6 ( aAddress успешно обновлен).
OT_ERROR_NOT_FOUND
Дочерний элемент не имеет последующей записи адреса IPv6.
OT_ERROR_INVALID_ARGS
aIterator или aAddress имеют значение NULL, или дочерний элемент в aChildIndex недействителен.
Смотрите также:
otThreadGetChildInfoByIndex

otThreadGetContextIdReuseDelay

uint32_t otThreadGetContextIdReuseDelay(
  otInstance *aInstance
)

Получите параметр CONTEXT_ID_REUSE_DELAY, используемый в роли лидера.

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

otThreadGetJoinerUdpPort

uint16_t otThreadGetJoinerUdpPort(
  otInstance *aInstance
)

Получите UDP-порт столяра.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возвращает
Номер порта UDP соединения.
Смотрите также:
otThreadSetJoinerUdpPort

otThreadGetLocalLeaderWeight

uint8_t otThreadGetLocalLeaderWeight(
  otInstance *aInstance
)

Получите вес лидера нити, используемый при работе в роли лидера.

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

otThreadGetMaxAllowedChildren

uint16_t otThreadGetMaxAllowedChildren(
  otInstance *aInstance
)

Получить максимальное количество детей, разрешенное в настоящее время.

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

otThreadGetMaxChildIpAddresses

uint8_t otThreadGetMaxChildIpAddresses(
  otInstance *aInstance
)

Эта функция получает максимальное количество IP-адресов, которое каждый дочерний MTD может зарегистрировать на этом устройстве в качестве родительского.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возвращает
Максимальное количество IP-адресов, которое каждый дочерний элемент MTD может зарегистрировать на этом устройстве в качестве родительского.
Смотрите также:
otThreadSetMaxChildIpAddresses

otThreadGetMaxRouterId

uint8_t otThreadGetMaxRouterId(
  otInstance *aInstance
)

Функция возвращает максимально допустимый идентификатор маршрутизатора.

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

otThreadGetNetworkIdTimeout

uint8_t otThreadGetNetworkIdTimeout(
  otInstance *aInstance
)

Получите параметр NETWORK_ID_TIMEOUT, используемый в роли маршрутизатора.

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

otThreadGetNextCacheEntry

otError otThreadGetNextCacheEntry(
  otInstance *aInstance,
  otCacheEntryInfo *aEntryInfo,
  otCacheEntryIterator *aIterator
)

Эта функция получает следующую запись кэша EID (используя итератор).

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[out] aEntryInfo
Указатель места размещения информации о записи кэша EID.
[in,out] aIterator
Указатель на итератор. Он будет обновлен, чтобы указать на следующую запись в случае успеха. Чтобы получить первую запись, инициализируйте итератор, установив все его поля в ноль (например, memset структуру итератора в ноль).
Возвращаемые значения
OT_ERROR_NONE
Успешно заполнено aEntryInfo для следующей записи кэша EID.
OT_ERROR_NOT_FOUND
Нет больше записей в таблице кэша адресов.

otThreadGetParentPriority

int8_t otThreadGetParentPriority(
  otInstance *aInstance
)

Получите назначенный родительский приоритет.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возвращает
Назначенное значение родительского приоритета, -2 означает, что не назначено.
Смотрите также:
otThreadSetParentPriority

otThreadGetPreferredLeaderPartitionId

uint32_t otThreadGetPreferredLeaderPartitionId(
  otInstance *aInstance
)

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

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

otThreadGetPskc

void otThreadGetPskc(
  otInstance *aInstance,
  otPskc *aPskc
)

Получить поток PSKc.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[out] aPskc
Указатель на otPskc для возврата полученного PSKc потока.
Смотрите также:
otThreadSetPskc

otThreadGetPskcRef

otPskcRef otThreadGetPskcRef(
  otInstance *aInstance
)

Получить ключевую ссылку на сохраненный PSKc потока.

Эта функция требует, чтобы функция времени сборки OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE была включена.

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

otThreadGetRouterDowngradeThreshold

uint8_t otThreadGetRouterDowngradeThreshold(
  otInstance *aInstance
)

Получите параметр ROUTER_DOWNGRADE_THRESHOLD, используемый в роли Router.

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

otThreadGetRouterIdRange

void otThreadGetRouterIdRange(
  otInstance *aInstance,
  uint8_t *aMinRouterId,
  uint8_t *aMaxRouterId
)

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

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[out] aMinRouterId
Минимальный идентификатор маршрутизатора.
[out] aMaxRouterId
Максимальный идентификатор маршрутизатора.
Смотрите также:
otThreadSetRouterIdRange

otThreadGetRouterIdSequence

uint8_t otThreadGetRouterIdSequence(
  otInstance *aInstance
)

Получите текущую последовательность идентификатора маршрутизатора.

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

otThreadGetRouterInfo

otError otThreadGetRouterInfo(
  otInstance *aInstance,
  uint16_t aRouterId,
  otRouterInfo *aRouterInfo
)

Функция сохраняет диагностическую информацию для данного Thread Router.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aRouterId
Идентификатор маршрутизатора или RLOC16 для данного маршрутизатора.
[out] aRouterInfo
Указатель на место, где размещается информация о маршрутизаторе.
Возвращаемые значения
OT_ERROR_NONE
Успешно получена информация о маршрутизаторе для данного идентификатора.
OT_ERROR_NOT_FOUND
Нет записи маршрутизатора с данным идентификатором.
OT_ERROR_INVALID_ARGS
aRouterInfo имеет значение NULL.

otThreadGetRouterSelectionJitter

uint8_t otThreadGetRouterSelectionJitter(
  otInstance *aInstance
)

Получите параметр ROUTER_SELECTION_JITTER, используемый в роли REED/маршрутизатора.

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

otThreadGetRouterUpgradeThreshold

uint8_t otThreadGetRouterUpgradeThreshold(
  otInstance *aInstance
)

Получите параметр ROUTER_UPGRADE_THRESHOLD, используемый в роли REED.

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

otThreadIsRouterEligible

bool otThreadIsRouterEligible(
  otInstance *aInstance
)

Этот метод указывает, подходит ли устройство для маршрутизатора.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
Возвращаемые значения
TRUE
Если устройство подходит для маршрутизатора.
FALSE
Если устройство не подходит для маршрутизатора.

otThreadRegisterNeighborTableCallback

void otThreadRegisterNeighborTableCallback(
  otInstance *aInstance,
  otNeighborTableCallback aCallback
)

Эта функция регистрирует функцию обратного вызова соседней таблицы.

Предоставленный обратный вызов (если он не равен NULL) будет вызываться при изменении в таблице соседей (например, добавляется/удаляется запись дочернего элемента или соседа-маршрутизатора или изменяется режим существующего дочернего элемента).

Последующие вызовы этого метода перезапишут предыдущий обратный вызов. Обратите внимание, что этот обратный вызов вызывается во время обновления соседней/дочерней таблицы и всегда перед otStateChangedCallback .

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

otThreadReleaseRouterId

otError otThreadReleaseRouterId(
  otInstance *aInstance,
  uint8_t aRouterId
)

Освободите идентификатор маршрутизатора, который был выделен устройством в роли лидера.

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

otThreadSetCcmEnabled

void otThreadSetCcmEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Эта функция устанавливает, было ли устройство введено в эксплуатацию с помощью CCM.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aEnabled
TRUE, если устройство было введено в эксплуатацию с помощью CCM, иначе FALSE.

otThreadSetContextIdReuseDelay

void otThreadSetContextIdReuseDelay(
  otInstance *aInstance,
  uint32_t aDelay
)

Установите параметр CONTEXT_ID_REUSE_DELAY, используемый в роли Лидер.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aDelay
Значение CONTEXT_ID_REUSE_DELAY.
Смотрите также:
otThreadGetContextIdReuseDelay

otThreadSetJoinerUdpPort

otError otThreadSetJoinerUdpPort(
  otInstance *aInstance,
  uint16_t aJoinerUdpPort
)

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

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aJoinerUdpPort
Номер порта UDP соединения.
Возвращаемые значения
OT_ERROR_NONE
Успешно установил UDP-порт присоединителя.
Смотрите также:
otThreadGetJoinerUdpPort

otThreadSetLocalLeaderWeight

void otThreadSetLocalLeaderWeight(
  otInstance *aInstance,
  uint8_t aWeight
)

Установите вес лидера нити, используемый при работе в роли лидера.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aWeight
Значение веса лидера нити.
Смотрите также:
otThreadGetLeaderWeight

otThreadSetMaxAllowedChildren

otError otThreadSetMaxAllowedChildren(
  otInstance *aInstance,
  uint16_t aMaxChildren
)

Установите максимально допустимое количество детей в настоящее время.

Этот параметр может быть установлен только тогда, когда работа протокола Thread была остановлена.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aMaxChildren
Максимально допустимые дети.
Возвращаемые значения
OT_ERROR_NONE
Успешно установил макс.
OT_ERROR_INVALID_ARGS
Если aMaxChildren не находится в диапазоне [1, OPENTHREAD_CONFIG_MLE_MAX_CHILDREN].
OT_ERROR_INVALID_STATE
Если поток не остановлен.
Смотрите также:
otThreadGetMaxAllowedChildren

otThreadSetMaxChildIpAddresses

otError otThreadSetMaxChildIpAddresses(
  otInstance *aInstance,
  uint8_t aMaxIpAddresses
)

Эта функция устанавливает/восстанавливает максимальное количество IP-адресов, которые каждый дочерний MTD может зарегистрировать на этом устройстве в качестве родительского.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aMaxIpAddresses
Максимальное количество IP-адресов, которое каждый дочерний элемент MTD может зарегистрировать на этом устройстве в качестве родительского. 0, чтобы очистить настройку и восстановить значение по умолчанию.
Возвращаемые значения
OT_ERROR_NONE
Номер успешно установлен/удален.
OT_ERROR_INVALID_ARGS
Если превышает допустимое максимальное число.
Смотрите также:
otThreadGetMaxChildIpAddresses

otThreadSetNetworkIdTimeout

void otThreadSetNetworkIdTimeout(
  otInstance *aInstance,
  uint8_t aTimeout
)

Установите параметр NETWORK_ID_TIMEOUT, используемый в роли Лидер.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aTimeout
Значение NETWORK_ID_TIMEOUT.
Смотрите также:
otThreadGetNetworkIdTimeout

otThreadSetParentPriority

otError otThreadSetParentPriority(
  otInstance *aInstance,
  int8_t aParentPriority
)

Установить родительский приоритет.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aParentPriority
Значение родительского приоритета.
Возвращаемые значения
OT_ERROR_NONE
Успешно установил родительский приоритет.
OT_ERROR_INVALID_ARGS
Если значение родительского приоритета не входит в число 1, 0, -1 и -2.
Смотрите также:
otThreadGetParentPriority

otThreadSetPreferredLeaderPartitionId

void otThreadSetPreferredLeaderPartitionId(
  otInstance *aInstance,
  uint32_t aPartitionId
)

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

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aPartitionId
Значение идентификатора раздела лидера потока.

otThreadSetPreferredRouterId

otError otThreadSetPreferredRouterId(
  otInstance *aInstance,
  uint8_t aRouterId
)

Установите предпочтительный идентификатор маршрутизатора.

Став маршрутизатором/лидером, узел пытается использовать этот идентификатор маршрутизатора. Если предпочтительный идентификатор маршрутизатора не установлен или его нельзя использовать, выбирается случайно сгенерированный идентификатор маршрутизатора. Это свойство можно задать, только если роль устройства отключена или отключена.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aRouterId
Предпочтительный идентификатор маршрутизатора.
Возвращаемые значения
OT_ERROR_NONE
Успешно установил предпочтительный идентификатор маршрутизатора.
OT_ERROR_INVALID_STATE
Не удалось установить (роль не отсоединена и не отключена)

otThreadSetPskc

otError otThreadSetPskc(
  otInstance *aInstance,
  const otPskc *aPskc
)

Установите поток PSKc.

Эта функция сработает только тогда, когда отключены протоколы потоков. Успешный вызов этой функции также сделает недействительным наборы активных и ожидающих операций в энергонезависимой памяти.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aPskc
Указатель на новый поток PSKc.
Возвращаемые значения
OT_ERROR_NONE
Успешно установил PSKc потока.
OT_ERROR_INVALID_STATE
Протоколы потоков включены.
Смотрите также:
otThreadGetPskc

otThreadSetPskcRef

otError otThreadSetPskcRef(
  otInstance *aInstance,
  otPskcRef aKeyRef
)

Установите поток PSKc.

Эта функция требует, чтобы функция времени сборки OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE была включена.

Эта функция сработает только тогда, когда отключены протоколы потоков. Успешный вызов этой функции также сделает недействительным наборы активных и ожидающих операций в энергонезависимой памяти.

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

otThreadSetRouterDowngradeThreshold

void otThreadSetRouterDowngradeThreshold(
  otInstance *aInstance,
  uint8_t aThreshold
)

Установите параметр ROUTER_DOWNGRADE_THRESHOLD, используемый в роли Лидер.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aThreshold
Значение ROUTER_DOWNGRADE_THRESHOLD.
Смотрите также:
otThreadGetRouterDowngradeThreshold

otThreadSetRouterEligible

otError otThreadSetRouterEligible(
  otInstance *aInstance,
  bool aEligible
)

Эта функция определяет, подходит ли устройство для маршрутизатора.

Если aEligible имеет значение false и устройство в настоящее время работает как маршрутизатор, этот вызов вызовет отсоединение устройства и попытку повторного подключения в качестве дочернего.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aEligible
TRUE, чтобы настроить устройство как маршрутизатор, FALSE в противном случае.
Возвращаемые значения
OT_ERROR_NONE
Успешно установил конфигурацию, подходящую для маршрутизатора.
OT_ERROR_NOT_CAPABLE
Устройство не способно стать маршрутизатором.

otThreadSetRouterIdRange

otError otThreadSetRouterIdRange(
  otInstance *aInstance,
  uint8_t aMinRouterId,
  uint8_t aMaxRouterId
)

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

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aMinRouterId
Минимальный идентификатор маршрутизатора.
[in] aMaxRouterId
Максимальный идентификатор маршрутизатора.
Возвращаемые значения
OT_ERROR_NONE
Успешно установил диапазон.
OT_ERROR_INVALID_ARGS
aMinRouterId > aMaxRouterId, или диапазон не покрывается [0, 62].
Смотрите также:
otThreadGetRouterIdRange

otThreadSetRouterSelectionJitter

void otThreadSetRouterSelectionJitter(
  otInstance *aInstance,
  uint8_t aRouterJitter
)

Установите параметр ROUTER_SELECTION_JITTER, используемый в роли REED/Router.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aRouterJitter
Значение ROUTER_SELECTION_JITTER.
Смотрите также:
otThreadGetRouterSelectionJitter

otThreadSetRouterUpgradeThreshold

void otThreadSetRouterUpgradeThreshold(
  otInstance *aInstance,
  uint8_t aThreshold
)

Установите параметр ROUTER_UPGRADE_THRESHOLD, используемый в роли Лидер.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aThreshold
Значение ROUTER_UPGRADE_THRESHOLD.
Смотрите также:
otThreadGetRouterUpgradeThreshold

otThreadSetSteeringData

void otThreadSetSteeringData(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

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

Параметр конфигурации OPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE должен быть установлен, чтобы включить настройку данных рулевого управления вне диапазона.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aExtAddress
Адрес, используемый для обновления данных рулевого управления. Все нули для очистки данных рулевого управления (нет данных рулевого управления). Все 0xFF, чтобы установить данные рулевого управления/фильтр цветения, чтобы принять/разрешить все. Конкретный EUI64, который затем добавляется к текущим данным рулевого управления/фильтру Блума.

otThreadSetThreadVersionCheckEnabled

void otThreadSetThreadVersionCheckEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Эта функция устанавливает, включено ли пороговое значение версии TLV политики безопасности для маршрутизации (поле VR).

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aEnabled
TRUE для включения порога версии TLV политики безопасности для маршрутизации, FALSE в противном случае.

Макросы

OT_CHILD_IP6_ADDRESS_ITERATOR_INIT

 OT_CHILD_IP6_ADDRESS_ITERATOR_INIT 0

Инициализатор для otChildIP6AddressIterator.

Ресурсы

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