Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

木匠

該模塊包括用於線程連接器角色的功能。

概要

枚舉

otJoinerState枚舉
此枚舉定義了Joiner狀態。

類型定義

otJoinerCallback )(otError aError, void *aContext)類型定義
void(*
調用此函數指針以通知加入操作的完成。
otJoinerDiscerner類型定義
此結構表示Joiner Discerner。
otJoinerState類型定義
此枚舉定義了Joiner狀態。

職能

otJoinerGetDiscerner ( otInstance *aInstance)
此方法獲取Joiner Discerner。
otJoinerGetId ( otInstance *aInstance)
const otExtAddress *
此方法獲取Joiner ID。
otJoinerGetState ( otInstance *aInstance)
此函數返回Joiner狀態。
otJoinerSetDiscerner ( otInstance *aInstance, otJoinerDiscerner *aDiscerner)
此方法設置Joiner Discerner。
otJoinerStart ( otInstance *aInstance, const char *aPskd, const char *aProvisioningUrl, const char *aVendorName, const char *aVendorModel, const char *aVendorSwVersion, const char *aVendorData, otJoinerCallback aCallback, void *aContext)
此功能啟用線程連接器角色。
otJoinerStop ( otInstance *aInstance)
void
此功能禁用線程連接器角色。

結構

otJoinerDiscerner

此結構表示Joiner Discerner。

枚舉

otJoinerState

 otJoinerState

此枚舉定義了Joiner狀態。

類型定義

otJoinerCallback

void(* otJoinerCallback)(otError aError, void *aContext)

調用此函數指針以通知加入操作的完成。

細節
參量
[in] aError
OT_ERROR_NONE,如果加入過程成功。 OT_ERROR_SECURITY(如果由於安全憑證而導致加入過程失敗)。 OT_ERROR_NOT_FOUND(如果未發現可連接的網絡)。如果響應超時,則為OT_ERROR_RESPONSE_TIMEOUT。
[in] aContext
指向特定於應用程序的上下文的指針。

otJoinerDiscerner

struct otJoinerDiscerner otJoinerDiscerner

此結構表示Joiner Discerner。

otJoinerState

enum otJoinerState otJoinerState

此枚舉定義了Joiner狀態。

職能

otJoinerGetDiscerner

const otJoinerDiscerner * otJoinerGetDiscerner(
  otInstance *aInstance
)

此方法獲取Joiner Discerner。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
退貨
指向Joiner Discerner的指針;如果未設置,則為NULL。

otJoinerGetId

const otExtAddress * otJoinerGetId(
  otInstance *aInstance
)

此方法獲取Joiner ID。

如果未設置Joiner Discerner,則Joiner ID是通過工廠分配的IEEE EUI-64計算SHA-256的結果的前64位。否則,將根據Joiner Discerner值計算Joiner ID。

在調試過程中,Joiner ID也用作設備的IEEE 802.15.4擴展地址。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
退貨
指向Joiner ID的指針。

otJoinerGetState

otJoinerState otJoinerGetState(
  otInstance *aInstance
)

此函數返回Joiner狀態。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
返回值
OT_JOINER_STATE_IDLE
OT_JOINER_STATE_DISCOVER
OT_JOINER_STATE_CONNECT
OT_JOINER_STATE_CONNECTED
OT_JOINER_STATE_ENTRUST
OT_JOINER_STATE_JOINED

otJoinerSetDiscerner

otError otJoinerSetDiscerner(
  otInstance *aInstance,
  otJoinerDiscerner *aDiscerner
)

此方法設置Joiner Discerner。

Joiner Discerner用於計算調試/加入過程中使用的Joiner ID。

默認情況下(不提供識別符或將其設置為NULL時),Joiner ID會作為在工廠分配的IEEE EUI-64上計算SHA-256結果的前64位得出。請注意,這是線程規範預期的主要行為。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aDiscerner
指向Joiner Discerner的指針。如果為NULL,則清除任何先前設置的Diserner。
返回值
OT_ERROR_NONE
Joiner Discerner已成功更新。
OT_ERROR_INVALID_ARGS
aDiscerner無效(指定的長度不在有效範圍內)。
OT_ERROR_INVALID_STATE
正在進行加入過程,因此無法更改Joiner Discerner。

otJoinerStart

otError otJoinerStart(
  otInstance *aInstance,
  const char *aPskd,
  const char *aProvisioningUrl,
  const char *aVendorName,
  const char *aVendorModel,
  const char *aVendorSwVersion,
  const char *aVendorData,
  otJoinerCallback aCallback,
  void *aContext
)

此功能啟用線程連接器角色。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aPskd
指向PSKd的指針。
[in] aProvisioningUrl
指向預配置URL的指針(可以為NULL)。
[in] aVendorName
指向供應商名稱的指針(可以為NULL)。
[in] aVendorModel
指向供應商模型的指針(可以為NULL)。
[in] aVendorSwVersion
指向供應商SW版本的指針(可以為NULL)。
[in] aVendorData
指向供應商數據的指針(可以為NULL)。
[in] aCallback
聯接操作完成時將調用的函數的指針。
[in] aContext
指向特定於應用程序的上下文的指針。
返回值
OT_ERROR_NONE
成功啟動了Joiner角色。
OT_ERROR_BUSY
先前的嘗試仍在進行中。
OT_ERROR_INVALID_ARGS
aPskdaProvisioningUrl無效。
OT_ERROR_INVALID_STATE
未啟用IPv6堆棧或已完全啟用線程堆棧。

otJoinerStop

void otJoinerStop(
  otInstance *aInstance
)

此功能禁用線程連接器角色。

細節
參量
[in] aInstance
指向OpenThread實例的指針。

巨集

OT_JOINER_MAX_DISCERNER_LENGTH

 OT_JOINER_MAX_DISCERNER_LENGTH 64

Joiner Discerner的最大長度(以位為單位)。