Google 致力于为黑人社区推动种族平等。查看具体行动

总裁

此模块包含线程专员角色的函数。

总结

枚举

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(*
当 Commissioner 收到能效报告时,系统会调用此函数指针。
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(*
当 Commissioner 收到 PAN ID 冲突消息时,会调用此函数指针。
otCommissionerState typedef
此枚举定义了佣金状态。
otCommissionerStateCallback)(otCommissionerState aState, void *aContext) typedef
void(*
每当佣金状态发生变化时,就会调用此函数指针。
otCommissioningDataset typedef
此结构表示一个调试数据集。
otJoinerInfo typedef
struct otJoinerInfo
此结构表示一个联接器信息。
otJoinerInfoType typedef
此枚举定义联接器信息类型。
otJoinerPskd typedef
struct otJoinerPskd
此结构表示一个 Joiner PSKd。
otSteeringData typedef
此结构表示方向数据。

函数

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 Discerner”值的“Joiner”条目。
otCommissionerAnnounceBegin(otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, const otIp6Address *aAddress)
此函数发送 Announce Begin 消息。
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)
此方法可在 aIterator 位置获取联接器信息。
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)
此函数将移除一个 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)
此函数用于设置佣金 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

此结构表示一个 Joiner 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)

当 Commissioner 收到能效报告时,系统会调用此函数指针。

详情
参数
[in] aChannelMask
通道掩码值。
[in] aEnergyList
指向能源测量列表的指针。
[in] aEnergyListLength
aEnergyListLength中的条目数。
[in] aContext
指向应用特定上下文的指针。

otCommissionerJoinerCallback

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

每当联接状态改变时,就会调用此函数指针。

详情
参数
[in] aEvent
Joiner 事件类型。
[in] aJoinerInfo
指向“Joiner 信息”的指针。
[in] aJoinerId
指向联接 ID 的指针(未知,则为 NULL)。
[in] aContext
指向应用特定上下文的指针。

otCommissionerJoinerEvent

enum otCommissionerJoinerEvent otCommissionerJoinerEvent

此枚举定义了佣金者的联接事件。

otCommissionerPanId 冲突回调

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

当 Commissioner 收到 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

此结构表示一个 Joiner PSKd。

oSteeringData

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
系统将在几秒后自动移除联接器(以秒为单位)。
返回值
OT_ERROR_NONE
已成功添加“Joiner”。
OT_ERROR_NO_BUFS
没有任何可用于添加联接的缓冲区。
OT_ERROR_INVALID_ARGS
aEui64aPskd 无效。
OT_ERROR_INVALID_STATE
佣金专员未启用。

oComComererAddJoinerWithDiscerner

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

此函数添加一个具有给定“Joiner Discerner”值的“Joiner”条目。

详情
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aDiscerner
指向联接转换器的指针。
[in] aPskd
指向 PSKd 的指针。
[in] aTimeout
系统将在几秒后自动移除联接器(以秒为单位)。
返回值
OT_ERROR_NONE
已成功添加“Joiner”。
OT_ERROR_NO_BUFS
没有任何可用于添加联接的缓冲区。
OT_ERROR_INVALID_ARGS
aDiscerneraPskd 无效。
OT_ERROR_INVALID_STATE
佣金专员未启用。

oComComererAnnounceBegin

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

此函数发送 Announce Begin 消息。

详情
参数
[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
指向接收能源报告消息时调用的函数的指针。
[in] aContext
指向应用特定上下文的指针。
返回值
OT_ERROR_NONE
已成功将能耗查询消息加入队列。
OT_ERROR_NO_BUFS
缓冲区不足,无法生成能源扫描查询消息。
OT_ERROR_INVALID_STATE
佣金专员未启用。

oComComererGetId

const char * otCommissionerGetId(
  otInstance *aInstance
)

此函数会返回佣金 ID。

详情
参数
[in] aInstance
指向 OpenThread 实例的指针。
返回值
佣金 ID。

otCommissionerGetNextJoinerInfo

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

此方法可在 aIterator 位置获取联接器信息。

详情
参数
[in] aInstance
指向实例的指针。
[in,out] aIterator
指向联接信息迭代器上下文的指针。
[out] aJoiner
引用联接器信息。
返回值
OT_ERROR_NONE
成功获取联接器信息。
OT_ERROR_NOT_FOUND
找不到下一个加入者。

otCommissionerGetProvisioningUrl

const char * otCommissionerGetProvisioningUrl(
  otInstance *aInstance
)

此函数将获取配置网址。

详情
参数
[in] aInstance
指向 OpenThread 实例的指针。
返回值
指向网址字符串的指针。

oComComererGetSessionId

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
)

此函数将移除一个 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
指向联接转换器的指针。
返回值
OT_ERROR_NONE
已成功移除联接器。
OT_ERROR_NOT_FOUND
找不到 aEui64 指定的联接器。
OT_ERROR_INVALID_ARGS
aDiscerner无效。
OT_ERROR_INVALID_STATE
佣金专员未启用。

ocomCommissionerSendMgmtGet

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
佣金专员未启用。

oComComererSetId

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 无效(过长)。

oComComererStart

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

此函数会启用 Thread Commissioner 角色。

详情
参数
[in] aInstance
指向 OpenThread 实例的指针。
[in] aStateCallback
指向佣金状态更改时调用的函数的指针。
[in] aJoinerCallback
会出现指向通过细合并事件调用的函数的指针。
[in] aCallbackContext
指向应用特定上下文的指针。
返回值
OT_ERROR_NONE
已成功启动 Commissioner 服务。
OT_ERROR_ALREADY
佣金已启动。
OT_ERROR_INVALID_STATE
设备目前未连接到网络。

oComComererStop

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 的最大字符串长度(不包括 null 字符)。

OT_PROVISIONING_网址_MAX_SIZE 号

 OT_PROVISIONING_URL_MAX_SIZE 64

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

OT_STEERING_DATA_MAX_LENGTH

 OT_STEERING_DATA_MAX_LENGTH 16

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

资源

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