总裁

此模块包含 Thread Commissioner 角色的功能。

摘要

枚举

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) typedef
void(*
当调试器收到能耗报告时,系统会调用指针。
otCommissionerJoinerCallback)(otCommissionerJoinerEvent aEvent, const otJoinerInfo *aJoinerInfo, const otExtAddress *aJoinerId, void *aContext) typedef
void(*
每当联接器状态发生变化时,系统都会调用指针。
otCommissionerJoinerEvent typedef
定义该调试器的联接事件。
otCommissionerPanIdConflictCallback)(uint16_t aPanId, uint32_t aChannelMask, void *aContext) typedef
void(*
当调试器收到 PAN ID 冲突消息时,系统会调用指针。
otCommissionerState typedef
定义委员状态。
otCommissionerStateCallback)(otCommissionerState aState, void *aContext) typedef
void(*
每当调试器状态发生变化时,系统都会调用指针。
otCommissioningDataset typedef
表示调试数据集。
otJoinerInfo typedef
struct otJoinerInfo
表示连接符信息。
otJoinerInfoType typedef
定义连接符信息类型。
otJoinerPskd typedef
struct otJoinerPskd
表示连接符 PSKd。
otSteeringData typedef
表示导向数据。

函数

otCommissionerAddJoiner(otInstance *aInstance, const otExtAddress *aEui64, const char *aPskd, uint32_t aTimeout)
添加“连接符”条目。
otCommissionerAddJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner, const char *aPskd, uint32_t aTimeout)
添加具有指定“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 *
返回专员 ID。
otCommissionerGetNextJoinerInfo(otInstance *aInstance, uint16_t *aIterator, otJoinerInfo *aJoiner)
在迭代器位置获取联接器信息。
otCommissionerGetProvisioningUrl(otInstance *aInstance)
const char *
获取配置网址。
otCommissionerGetSessionId(otInstance *aInstance)
uint16_t
返回调试器会话 ID。
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)
移除“连接符”条目。
otCommissionerRemoveJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner)
移除“连接符”条目。
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)
设置调试器 ID。
otCommissionerSetProvisioningUrl(otInstance *aInstance, const char *aProvisioningUrl)
设置配置网址。
otCommissionerStart(otInstance *aInstance, otCommissionerStateCallback aStateCallback, otCommissionerJoinerCallback aJoinerCallback, void *aCallbackContext)
启用 Thread Commissioner 角色。
otCommissionerStop(otInstance *aInstance)
停用 Thread Commissioner 角色。

结构体

otCommissioningDataset

表示调试数据集。

otJoinerInfo

表示连接符信息。

otJoinerPskd

表示连接符 PSKd。

otSteeringData

表示导向数据。

枚举

otCommissionerJoinerEvent

 otCommissionerJoinerEvent

定义该调试器的联接事件。

otCommissionerState

 otCommissionerState

定义委员状态。

属性
OT_COMMISSIONER_STATE_ACTIVE

已启用调试者角色。

OT_COMMISSIONER_STATE_DISABLED

调试器角色已停用。

OT_COMMISSIONER_STATE_PETITION

目前正在申请成为专员。

otJoinerInfoType

 otJoinerInfoType

定义连接符信息类型。

属性
OT_JOINER_INFO_TYPE_ANY

接受任何加入者(未指定 EUI64 或 Discerner)。

OT_JOINER_INFO_TYPE_DISCERNER

已指定联接器标识符(otJoinerInfo 中的 mSharedId.mDiscerner)。

OT_JOINER_INFO_TYPE_EUI64

已指定联接器 EUI-64(otJoinerInfo 中的 mSharedId.mEui64)。

类型定义符

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
指向连接符 ID 的指针(如果未知,则为 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

表示调试数据集。

otJoinerInfo

struct otJoinerInfo otJoinerInfo

表示连接符信息。

otJoinerInfoType

enum otJoinerInfoType otJoinerInfoType

定义连接符信息类型。

otJoinerPskd

struct otJoinerPskd otJoinerPskd

表示连接符 PSKd。

otSteeringData

struct otSteeringData otSteeringData

表示导向数据。

函数

otCommissionerAddJoiner

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

添加“连接符”条目。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aEui64
指向任何联接器的联接器 IEEE EUI-64 或 NULL 的指针。
[in] aPskd
指向 PSKd 的指针。
[in] aTimeout
超过此时间后,系统会自动移除连接符(以秒为单位)。
返回值
OT_ERROR_NONE
已成功添加连接符。
OT_ERROR_NO_BUFS
没有可用于添加“连接符”的缓冲区。
OT_ERROR_INVALID_ARGS
aEui64aPskd 无效。
OT_ERROR_INVALID_STATE
调试器未激活。

otCommissionerAddJoinerWithDiscerner

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

添加具有指定“Joiner Discerner”值的“连接符”条目。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aDiscerner
指向细木识别器的指针。
[in] aPskd
指向 PSKd 的指针。
[in] aTimeout
超过此时间后,系统会自动移除连接符(以秒为单位)。
返回值
OT_ERROR_NONE
已成功添加连接符。
OT_ERROR_NO_BUFS
没有可用于添加“连接符”的缓冲区。
OT_ERROR_INVALID_ARGS
aDiscerneraPskd 无效。
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
已成功将“播报开始”消息加入队列。
OT_ERROR_NO_BUFS
缓冲区不足,无法生成“播报开始”消息。
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
指向在接收能耗报告消息时调用的函数的指针。
[in] aContext
指向应用特定上下文的指针。
返回值
OT_ERROR_NONE
已成功将 Energy Scan Query 消息加入队列。
OT_ERROR_NO_BUFS
缓冲区不足,无法生成能耗扫描查询消息。
OT_ERROR_INVALID_STATE
调试器未激活。

otCommissionerGetId

const char * otCommissionerGetId(
  otInstance *aInstance
)

返回专员 ID。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
返回值
专员 ID

otCommissionerGetNextJoinerInfo

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

在迭代器位置获取联接器信息。

具体说明
参数
[in] aInstance
指向实例的指针。
[in,out] aIterator
指向“连接符信息”迭代器上下文的指针。
[out] aJoiner
对连接符信息的引用。
返回值
OT_ERROR_NONE
成功获取细枝末节信息。
OT_ERROR_NOT_FOUND
找不到下一个连接符。

otCommissionerGetProvisioningUrl

const char * otCommissionerGetProvisioningUrl(
  otInstance *aInstance
)

获取配置网址。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
返回值
指向网址字符串的指针。

otCommissionerGetSessionId

uint16_t otCommissionerGetSessionId(
  otInstance *aInstance
)

返回调试器会话 ID。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
返回值
当前调试器会话 ID。

otCommissionerGetState

otCommissionerState otCommissionerGetState(
  otInstance *aInstance
)

返回委员州/省/自治区/直辖市。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
返回值
OT_COMMISSIONER_STATE_DISABLED
已停用调试器。
OT_COMMISSIONER_STATE_PETITION
成为专员。
OT_COMMISSIONER_STATE_ACTIVE
已启用调试器。

otCommissionerPanIdQuery

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
)

移除“连接符”条目。

具体说明
参数
[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
)

移除“连接符”条目。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aDiscerner
指向细木识别器的指针。
返回值
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
调试器未激活。

otCommissionerSendMgmtSet

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
调试器未激活。

otCommissionerSetId

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

设置调试器 ID。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aId
指向字符串字符数组的指针。必须为以 null 结尾。
返回值
OT_ERROR_NONE
成功设置调试器 ID。
OT_ERROR_INVALID_ARGS
名字过长。
OT_ERROR_INVALID_STATE
调试器处于有效状态,且 ID 无法更改。

otCommissionerSetProvisioningUrl

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

设置配置网址。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aProvisioningUrl
指向配置网址的指针(可以设为 NULL,可设为空字符串)。
返回值
OT_ERROR_NONE
成功设置配置网址。
OT_ERROR_INVALID_ARGS
aProvisioningUrl 无效(过长)。

otCommissionerStart

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

启用 Thread Commissioner 角色。

具体说明
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aStateCallback
指向在调试器状态更改时调用的函数的指针。
[in] aJoinerCallback
将发生指向通过联接事件调用的函数的指针。
[in] aCallbackContext
指向应用特定上下文的指针。
返回值
OT_ERROR_NONE
已成功启动调试器服务。
OT_ERROR_ALREADY
调试器已启动。
OT_ERROR_INVALID_STATE
设备目前未连接到网络。

otCommissionerStop

otError otCommissionerStop(
  otInstance *aInstance
)

停用 Thread Commissioner 角色。

具体说明
参数
[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

连接符 PSKd 的最大字符串长度(不包括空字符)。

OT_PROVISIONING_URL_MAX_SIZE

 OT_PROVISIONING_URL_MAX_SIZE 64

配置网址字符串中的大小上限(字符数,不包括 null 字符)。

OT_STEERING_DATA_MAX_LENGTH

 OT_STEERING_DATA_MAX_LENGTH 16

导向数据长度上限(字节)

资源

OpenThread API 参考文档源自 GitHub 上提供的源代码。如需了解详情,或者为我们的文档做贡献,请参阅资源