透過集合功能整理內容 你可以依據偏好儲存及分類內容。

路由器/待開發客戶

這個模組含有執行緒路由器和領導者的函式。

摘要

列舉

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 中使用的常數,以表示鄰居資料表的變更。

Typedefs

otCacheEntryInfo typedef
這個結構代表 EID 快取項目。
otCacheEntryIterator typedef
此類型代表疊代在 EID 快取資料表項目上的疊代器。
otCacheEntryState typedef
這個列舉項目定義了 EID 快取項目狀態。
otChildIp6AddressIterator typedef
uint16_t
用於疊代 Thread 子項目的 IPv6 位址。
otNeighborTableCallback)(otNeighborTableEvent aEvent, const otNeighborTableEntryInfo *aEntryInfo) typedef
void(*
呼叫此函式指標以通知鄰居資料表有變更。

Functions

otThreadBecomeLeader(otInstance *aInstance)
成為領先者,建立新分區。
otThreadBecomeRouter(otInstance *aInstance)
嘗試變成路由器。
otThreadGetChildInfoById(otInstance *aInstance, uint16_t aChildId, otChildInfo *aChildInfo)
透過子 ID 或 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
取得「Lead」角色中使用的 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
取得每部 MTD 子項向該裝置註冊的 IP 位址數量上限 (以父項為目標)。
otThreadGetMaxRouterId(otInstance *aInstance)
uint8_t
函式會傳回允許的路由器 ID 數量上限。
otThreadGetNetworkIdTimeout(otInstance *aInstance)
uint8_t
取得路由器角色中使用的 NETWORK_ID_TIMEOUT 參數。
otThreadGetNextCacheEntry(otInstance *aInstance, otCacheEntryInfo *aEntryInfo, otCacheEntryIterator *aIterator)
這個函式會取得下一個 EID 快取項目 (使用 iterator)。
otThreadGetParentPriority(otInstance *aInstance)
int8_t
取得指派的父項優先順序。
otThreadGetPreferredLeaderPartitionId(otInstance *aInstance)
uint32_t
取得在領導角色中執行時偏好的執行緒執行緒分區 ID。
otThreadGetPskc(otInstance *aInstance, otPskc *aPskc)
void
取得執行緒 PSKc。
otThreadGetPskcRef(otInstance *aInstance)
取得已儲存 Thread PSKc 的金鑰參考。
otThreadGetRouterDowngradeThreshold(otInstance *aInstance)
uint8_t
取得在路由器角色中使用的 ROUTER_DOWNgrade_THRESHOLD 參數。
otThreadGetRouterIdRange(otInstance *aInstance, uint8_t *aMinRouterId, uint8_t *aMaxRouterId)
void
這個函式會取得可指派給執行緒網路中節點的路由器 ID 範圍。
otThreadGetRouterIdSequence(otInstance *aInstance)
uint8_t
取得目前的路由器 ID 序列。
otThreadGetRouterInfo(otInstance *aInstance, uint16_t aRouterId, otRouterInfo *aRouterInfo)
這個函式會保留特定執行緒路由器的診斷資訊。
otThreadGetRouterSelectionJitter(otInstance *aInstance)
uint8_t
取得 REED/Router 角色中使用的 ROUTER_SELECTION_JITTER 參數。
otThreadGetRouterUpgradeThreshold(otInstance *aInstance)
uint8_t
取得 REED 角色中使用的 ROUTER_UPgrade_THRESHOLD 參數。
otThreadIsRouterEligible(otInstance *aInstance)
bool
這種方法可指出裝置是否符合路由器資格。
otThreadRegisterNeighborTableCallback(otInstance *aInstance, otNeighborTableCallback aCallback)
void
這個函式會註冊相鄰資料表的回呼函式。
otThreadReleaseRouterId(otInstance *aInstance, uint8_t aRouterId)
釋出裝置在「待開發客戶」角色中分配的路由器 ID。
otThreadSetCcmEnabled(otInstance *aInstance, bool aEnabled)
void
這項函式會設定裝置是否使用 CCM 委託。
otThreadSetContextIdReuseDelay(otInstance *aInstance, uint32_t aDelay)
void
設定「Lead」角色中使用的 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)
設定或還原每個 MTD 子項向這部裝置註冊的 IP 位址上限 (以父項為上限)。
otThreadSetNetworkIdTimeout(otInstance *aInstance, uint8_t aTimeout)
void
設定「領導」角色中使用的 NETWORK_ID_TIMEOUT 參數。
otThreadSetParentPriority(otInstance *aInstance, int8_t aParentPriority)
設定父項的優先順序。
otThreadSetPreferredLeaderPartitionId(otInstance *aInstance, uint32_t aPartitionId)
void
設定在「領導」角色運作時,偏好的執行緒執行緒分區 ID。
otThreadSetPreferredRouterId(otInstance *aInstance, uint8_t aRouterId)
設定偏好的路由器 ID。
otThreadSetPskc(otInstance *aInstance, const otPskc *aPskc)
設定執行緒 PSKc。
otThreadSetPskcRef(otInstance *aInstance, otPskcRef aKeyRef)
設定執行緒 PSKc。
otThreadSetRouterDowngradeThreshold(otInstance *aInstance, uint8_t aThreshold)
void
設定「Leading」角色中使用的 ROUTER_DOWNgrade_THRESHOLD 參數。
otThreadSetRouterEligible(otInstance *aInstance, bool aEligible)
這個函式會設定裝置是否支援路由器功能。
otThreadSetRouterIdRange(otInstance *aInstance, uint8_t aMinRouterId, uint8_t aMaxRouterId)
這個函式可以設定路由器 ID 範圍,該範圍可指派給執行緒網路中的節點。
otThreadSetRouterSelectionJitter(otInstance *aInstance, uint8_t aRouterJitter)
void
設定 REED/Router 角色中使用的 ROUTER_SELECTION_JITTER 參數。
otThreadSetRouterUpgradeThreshold(otInstance *aInstance, uint8_t aThreshold)
void
設定「Leading」角色中使用的 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

 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

正在移除路由器。

Typedefs

OTCacheEntryInfo

struct otCacheEntryInfo otCacheEntryInfo

這個結構代表 EID 快取項目。

otCacheEntryIterator

struct otCacheEntryIterator otCacheEntryIterator

此類型代表疊代在 EID 快取資料表項目上的疊代器。

如要初始化疊代器,並從快取資料表中的第一個項目開始,請將結構中的所有欄位設為零 (例如memset的疊代器設為零)。

otCacheEntryState

enum otCacheEntryState otCacheEntryState

這個列舉項目定義了 EID 快取項目狀態。

otChildIp6AddressIterator

uint16_t otChildIp6AddressIterator

用於疊代 Thread 子項目的 IPv6 位址。

otNeighborTableCallback

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

呼叫此函式指標以通知鄰居資料表有變更。

詳情
參數
[in] aEvent
事件旗標。
[in] aEntryInfo
指向表格項目資訊的指標。

Functions

otThread 成為主管

otError otThreadBecomeLeader(
  otInstance *aInstance
)

成為領先者,建立新分區。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回值
OT_ERROR_NONE
已成功成為領導者,並啟動新的分區。
OT_ERROR_INVALID_STATE
執行緒已停用。

otThreadMakeRouter

otError otThreadBecomeRouter(
  otInstance *aInstance
)

嘗試變成路由器。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回值
OT_ERROR_NONE
已成功嘗試成為路由器。
OT_ERROR_INVALID_STATE
執行緒已停用。

otThreadGetChildInfoById

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

透過子 ID 或 RLOC16 取得附加子項的診斷資訊。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aChildId
附加子項的子項 ID 或 RLOC16。
[out] aChildInfo
指向子項資訊的位置。
傳回值
OT_ERROR_NONE
已成功將「aChildInfo」更新為指定 ID 的資訊。
OT_ERROR_NOT_FOUND
使用這個子 ID 的有效子項。
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

otThreadGetChildNextIp6 位址

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
aIteratoraAddress 為空值,或 aChildIndex 的子項無效。
另請參閱:
otThreadGetChildInfoByIndex

otThreadGetContextIdReuseDelay

uint32_t otThreadGetContextIdReuseDelay(
  otInstance *aInstance
)

取得「Lead」角色中使用的 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 (otThreadGetLocalLeaderWeight)

uint8_t otThreadGetLocalLeaderWeight(
  otInstance *aInstance
)

取得在主管角色運行時使用的執行緒主管權重。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
執行緒領導者權重值。
另請參閱:
otThreadSetLeaderWeight

otThreadGetMaxAllowedChildren

uint16_t otThreadGetMaxAllowedChildren(
  otInstance *aInstance
)

取得目前允許的子項數量上限。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
目前允許的子項數量上限。
另請參閱:
otThreadSetMaxAllowedChildren

otThreadGetMaxChildIpAddress

uint8_t otThreadGetMaxChildIpAddresses(
  otInstance *aInstance
)

取得每部 MTD 子項向該裝置註冊的 IP 位址數量上限 (以父項為目標)。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
每部 MTD 子項向這部裝置註冊的 IP 位址數量上限為父項。
另請參閱:
otThreadSetMaxChildIpAddresses

otThreadGetMaxRouterId

uint8_t otThreadGetMaxRouterId(
  otInstance *aInstance
)

函式會傳回允許的路由器 ID 數量上限。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
允許的路由器 ID 數量上限。

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 快取項目 (使用 iterator)。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[out] aEntryInfo
指向 EID 快取項目資訊的位置。
[in,out] aIterator
指向 iterator 的指標。以在成功時更新至下一個項目。如要取得第一個項目,請將所有欄位設為零 (例如memset 的疊代器結構為零)。
傳回值
OT_ERROR_NONE
已成功為下一個 EID 快取項目填入 aEntryInfo
OT_ERROR_NOT_FOUND
地址快取表格中沒有其他項目。

otThreadGetParentPriority

int8_t otThreadGetParentPriority(
  otInstance *aInstance
)

取得指派的父項優先順序。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
指派的父項優先順序值,-2 表示未指派。
另請參閱:
otThreadSetParentPriority

otThreadGetPreferredLeader 分區 ID

uint32_t otThreadGetPreferredLeaderPartitionId(
  otInstance *aInstance
)

取得在領導角色中執行時偏好的執行緒執行緒分區 ID。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
執行緒領導者分區 ID 值。

OTThreadGetPskc

void otThreadGetPskc(
  otInstance *aInstance,
  otPskc *aPskc
)

取得執行緒 PSKc。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[out] aPskc
指向 otPskc 的指標,以擷取擷取的執行緒 PSKc。
另請參閱:
otThreadSetPskc

otThreadGetPskcRef

otPskcRef otThreadGetPskcRef(
  otInstance *aInstance
)

取得已儲存 Thread PSKc 的金鑰參考。

您必須啟用建構時間功能 OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE,才能使用這個函式。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
PSKc 金鑰參考資料
另請參閱:
otThreadSetPskcRef

otThreadGetRouterDowngradeThreshold

uint8_t otThreadGetRouterDowngradeThreshold(
  otInstance *aInstance
)

取得在路由器角色中使用的 ROUTER_DOWNgrade_THRESHOLD 參數。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
ROUTER_DOWNgrade_THRESHOLD 值。
另請參閱:
otThreadSetRouterDowngradeThreshold

otThreadGetRouterIdRange

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

這個函式會取得可指派給執行緒網路中節點的路由器 ID 範圍。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[out] aMinRouterId
路由器 ID 數量下限。
[out] aMaxRouterId
路由器 ID 數量上限。
另請參閱:
otThreadSetRouterIdRange

otThreadGetRouterIdSequence

uint8_t otThreadGetRouterIdSequence(
  otInstance *aInstance
)

取得目前的路由器 ID 序列。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
路由器 ID 序列。

otThreadGetRouterInfo

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

這個函式會保留特定執行緒路由器的診斷資訊。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aRouterId
指定路由器的路由器 ID 或 RLOC16。
[out] aRouterInfo
指向路由器資訊的位置。
傳回值
OT_ERROR_NONE
已成功擷取指定 ID 的路由器資訊。
OT_ERROR_NOT_FOUND
沒有具有指定 ID 的路由器項目。
OT_ERROR_INVALID_ARGS
aRouterInfo 為 NULL。

otThreadGetRouterSelectionJitter

uint8_t otThreadGetRouterSelectionJitter(
  otInstance *aInstance
)

取得 REED/Router 角色中使用的 ROUTER_SELECTION_JITTER 參數。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
ROUTER_SELECTION_JITTER 值。
另請參閱:
otThreadSetRouterSelectionJitter

otThreadGetRouterUpgradeThreshold

uint8_t otThreadGetRouterUpgradeThreshold(
  otInstance *aInstance
)

取得 REED 角色中使用的 ROUTER_UPgrade_THRESHOLD 參數。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
傳回
ROUTER_UPgrade_THRESHOLD 值。
另請參閱:
otThreadSetRouterUpgradeThreshold

otThreadIsRouter 符合資格

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
)

釋出裝置在「待開發客戶」角色中分配的路由器 ID。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aRouterId
要釋出的路由器 ID。有效範圍為 [0, 62]。
傳回值
OT_ERROR_NONE
已成功釋出路由器 ID。
OT_ERROR_INVALID_ARGS
aRouterId 不在 [0, 62] 的範圍內。
OT_ERROR_INVALID_STATE
裝置目前並非領先者。
OT_ERROR_NOT_FOUND
目前尚未分配路由器 ID。

otThreadSetCcm 設為已啟用

void otThreadSetCcmEnabled(
  otInstance *aInstance,
  bool aEnabled
)

這項函式會設定裝置是否使用 CCM 委託。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aEnabled
如果裝置使用 CCM 委託開發,則為 TRUE,否則傳回 FALSE。

otThreadSetContextIdReuseDelay

void otThreadSetContextIdReuseDelay(
  otInstance *aInstance,
  uint32_t aDelay
)

設定「Lead」角色中使用的 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 (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, OPENMSG_CONFIG_MLE_MAX_CHILDREN] 的範圍內。
OT_ERROR_INVALID_STATE
如果 Thread 並未停止。
另請參閱:
otThreadGetMaxAllowedChildren

otThreadSetMaxChildIpAddress

otError otThreadSetMaxChildIpAddresses(
  otInstance *aInstance,
  uint8_t aMaxIpAddresses
)

設定或還原每個 MTD 子項向這部裝置註冊的 IP 位址上限 (以父項為上限)。

傳遞 0 即可清除設定並還原預設值。

必須啟用 OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE 才能使用此功能。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aMaxIpAddresses
每部 MTD 子項向這部裝置註冊的 IP 位址數量上限為父項。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

otThreadSetPreferredLeader 分區 ID

void otThreadSetPreferredLeaderPartitionId(
  otInstance *aInstance,
  uint32_t aPartitionId
)

設定在「領導」角色運作時,偏好的執行緒執行緒分區 ID。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aPartitionId
執行緒領導者分區 ID 值。

otThreadSetPreferredRouterId

otError otThreadSetPreferredRouterId(
  otInstance *aInstance,
  uint8_t aRouterId
)

設定偏好的路由器 ID。

成為路由器/領導者後,節點會嘗試使用這個路由器 ID。如未設定偏好路由器 ID,或是無法使用,系統會挑選隨機產生的路由器 ID。只有在裝置角色卸離或停用時,您才能設定這項屬性。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aRouterId
偏好的路由器 ID。
傳回值
OT_ERROR_NONE
已成功設定偏好的路由器 ID。
OT_ERROR_INVALID_STATE
無法設定 (角色未卸離或停用)

OTThreadSetPSKC

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

設定執行緒 PSKc。

只有在 Thread 通訊協定停用時,此函式才會成功。成功呼叫這個函式也會失效非易變記憶體中的使用中和待處理作業資料集。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aPskc
指向新執行緒 PSKc 的指標。
傳回值
OT_ERROR_NONE
已成功設定 Thread PSKc。
OT_ERROR_INVALID_STATE
已啟用執行緒通訊協定。
另請參閱:
otThreadGetPskc

OTThreadSetPskcRef

otError otThreadSetPskcRef(
  otInstance *aInstance,
  otPskcRef aKeyRef
)

設定執行緒 PSKc。

您必須啟用建構時間功能 OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE,才能使用這個函式。

只有在 Thread 通訊協定停用時,此函式才會成功。成功呼叫這個函式也會失效非易變記憶體中的使用中和待處理作業資料集。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aKeyRef
新執行緒 PSKc 的金鑰參考。
傳回值
OT_ERROR_NONE
已成功設定 Thread PSKc。
OT_ERROR_INVALID_STATE
已啟用執行緒通訊協定。
另請參閱:
otThreadGetPskcRef

otThreadSetRouterDowngradeThreshold

void otThreadSetRouterDowngradeThreshold(
  otInstance *aInstance,
  uint8_t aThreshold
)

設定「Leading」角色中使用的 ROUTER_DOWNgrade_THRESHOLD 參數。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aThreshold
ROUTER_DOWNgrade_THRESHOLD 值。
另請參閱:
otThreadGetRouterDowngradeThreshold

otThreadSetRouter 符合資格

otError otThreadSetRouterEligible(
  otInstance *aInstance,
  bool aEligible
)

這個函式會設定裝置是否支援路由器功能。

如果 aEligible 為否,且裝置目前是以路由器的身分運作,則通話將造成裝置卸離,並嘗試以子項重新連接。

詳情
參數
[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
)

這個函式可以設定路由器 ID 範圍,該範圍可指派給執行緒網路中的節點。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aMinRouterId
路由器 ID 數量下限。
[in] aMaxRouterId
路由器 ID 數量上限。
傳回值
OT_ERROR_NONE
已成功設定範圍。
OT_ERROR_INVALID_ARGS
aMinRouterId > aMaxRouterId,或範圍不在 [0, 62] 的範圍內。
另請參閱:
otThreadGetRouterIdRange

otThreadSetRouterSelectionJitter

void otThreadSetRouterSelectionJitter(
  otInstance *aInstance,
  uint8_t aRouterJitter
)

設定 REED/Router 角色中使用的 ROUTER_SELECTION_JITTER 參數。

詳情
參數
[in] aInstance
指向 OpenThread 執行個體的指標。
[in] aRouterJitter
ROUTER_SELECTION_JITTER 值。
另請參閱:
otThreadGetRouterSelectionJitter

otThreadSetRouterUpgradeThreshold

void otThreadSetRouterUpgradeThreshold(
  otInstance *aInstance,
  uint8_t aThreshold
)

設定「Leading」角色中使用的 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 的初始化器。

資源

OpenThread API 參考資料主題出自原始碼,可於 GitHub 取得。如需更多資訊,或想參閱我們的說明文件,請參閱資源