Comisionado

Este módulo incluye funciones para el rol de Comisionado de subprocesos.

Resumen

Enumeraciones

otCommissionerJoinerEvent Enum
Define un evento de Joiner en el Comisionado.
otCommissionerState{
  OT_COMMISSIONER_STATE_DISABLED = 0,
  OT_COMMISSIONER_STATE_PETITION = 1,
  OT_COMMISSIONER_STATE_ACTIVE = 2
}
Enum
Define el estado del comisionado.
otJoinerInfoType{
  OT_JOINER_INFO_TYPE_ANY = 0,
  OT_JOINER_INFO_TYPE_EUI64 = 1,
  OT_JOINER_INFO_TYPE_DISCERNER = 2
}
Enum
Define un tipo de información de Joiner.

Typedefs

otCommissionerEnergyReportCallback)(uint32_t aChannelMask, const uint8_t *aEnergyList, uint8_t aEnergyListLength, void *aContext) typedef
void(*
Se llama al puntero cuando el comisionado recibe un informe de energía.
otCommissionerJoinerCallback)(otCommissionerJoinerEvent aEvent, const otJoinerInfo *aJoinerInfo, const otExtAddress *aJoinerId, void *aContext) typedef
void(*
Se llama al puntero cada vez que cambia el estado de la unión.
otCommissionerJoinerEvent typedef
Define un evento de Joiner en el Comisionado.
otCommissionerPanIdConflictCallback)(uint16_t aPanId, uint32_t aChannelMask, void *aContext) typedef
void(*
Se llama al puntero cuando el comisionado recibe un mensaje de conflicto de ID de PAN.
otCommissionerState typedef
Define el estado del comisionado.
otCommissionerStateCallback)(otCommissionerState aState, void *aContext) typedef
void(*
Se llama al puntero cada vez que cambia el estado del comisionado.
otCommissioningDataset typedef
Representa un conjunto de datos de comisión.
otJoinerInfo typedef
struct otJoinerInfo
Representa una información de unión.
otJoinerInfoType typedef
Define un tipo de información de Joiner.
otJoinerPskd typedef
struct otJoinerPskd
Representa un PSKd de Joiner.
otSteeringData typedef
Representa los datos de la dirección.

Funciones

otCommissionerAddJoiner(otInstance *aInstance, const otExtAddress *aEui64, const char *aPskd, uint32_t aTimeout)
Agrega una entrada de Joiner.
otCommissionerAddJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner, const char *aPskd, uint32_t aTimeout)
Agrega una entrada de Joiner con un valor específico de Disterner de Joiner.
otCommissionerAnnounceBegin(otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, const otIp6Address *aAddress)
Envía un mensaje de inicio del anuncio.
otCommissionerEnergyScan(otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, uint16_t aScanDuration, const otIp6Address *aAddress, otCommissionerEnergyReportCallback aCallback, void *aContext)
Envía un mensaje de búsqueda de energía.
otCommissionerGetId(otInstance *aInstance)
const char *
Muestra el ID del comisionado.
otCommissionerGetNextJoinerInfo(otInstance *aInstance, uint16_t *aIterator, otJoinerInfo *aJoiner)
Obtenga información de unedores en la posición aIterator.
otCommissionerGetProvisioningUrl(otInstance *aInstance)
const char *
Obtiene la URL de aprovisionamiento.
otCommissionerGetSessionId(otInstance *aInstance)
uint16_t
Muestra el ID de sesión del comisionado.
otCommissionerGetState(otInstance *aInstance)
Muestra el estado de comisión.
otCommissionerPanIdQuery(otInstance *aInstance, uint16_t aPanId, uint32_t aChannelMask, const otIp6Address *aAddress, otCommissionerPanIdConflictCallback aCallback, void *aContext)
Envía un mensaje de consulta de ID de PAN.
otCommissionerRemoveJoiner(otInstance *aInstance, const otExtAddress *aEui64)
Quita una entrada de Joiner.
otCommissionerRemoveJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner)
Quita una entrada de Joiner.
otCommissionerSendMgmtGet(otInstance *aInstance, const uint8_t *aTlvs, uint8_t aLength)
Envía MGMT_COMMISSIONER_GET.
otCommissionerSendMgmtSet(otInstance *aInstance, const otCommissioningDataset *aDataset, const uint8_t *aTlvs, uint8_t aLength)
Envía MGMT_COMMISSIONER_SET.
otCommissionerSetId(otInstance *aInstance, const char *aId)
Establece el ID del comisionado.
otCommissionerSetProvisioningUrl(otInstance *aInstance, const char *aProvisioningUrl)
Establece la URL de aprovisionamiento.
otCommissionerStart(otInstance *aInstance, otCommissionerStateCallback aStateCallback, otCommissionerJoinerCallback aJoinerCallback, void *aCallbackContext)
Habilita la función de Thread Commissioner.
otCommissionerStop(otInstance *aInstance)
Inhabilita el rol Comisionado de subprocesos.

Structs

OtCommissioningDataset

Representa un conjunto de datos de comisión.

OtJoinerInfo.

Representa una información de unión.

otJoinerPskd.

Representa un PSKd de Joiner.

OtSteeringData

Representa los datos de la dirección.

Enumeraciones

otCommissionerJoinerEvent

 otCommissionerJoinerEvent

Define un evento de Joiner en el Comisionado.

Estado de comisión

 otCommissionerState

Define el estado del comisionado.

Propiedades
OT_COMMISSIONER_STATE_ACTIVE

El rol de comisionado está activo.

OT_COMMISSIONER_STATE_DISABLED

La función de comisionado está inhabilitada.

OT_COMMISSIONER_STATE_PETITION

Actualmente petición para convertirte en Comisionada.

Tipo de información de unión del ot

 otJoinerInfoType

Define un tipo de información de Joiner.

Propiedades
OT_JOINER_INFO_TYPE_ANY

Acepta cualquier unión (no se especifica EUI64 ni Discerner).

OT_JOINER_INFO_TYPE_DISCERNER

Se especifica el Disparador de unión (mSharedId.mDiscerner en otJoinerInfo).

OT_JOINER_INFO_TYPE_EUI64

Se especifica el unión EUI-64 (mSharedId.mEui64 en otJoinerInfo).

Typedefs

otCommissionerEnergyReportCallback

void(* otCommissionerEnergyReportCallback)(uint32_t aChannelMask, const uint8_t *aEnergyList, uint8_t aEnergyListLength, void *aContext)

Se llama al puntero cuando el comisionado recibe un informe de energía.

Detalles
Parámetros
[in] aChannelMask
El valor de la máscara del canal
[in] aEnergyList
Un puntero a la lista de medición de energía.
[in] aEnergyListLength
Cantidad de entradas en aEnergyListLength
[in] aContext
Un puntero al contexto específico de la aplicación.

otCommissionerJoinerCallback

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

Se llama al puntero cada vez que cambia el estado de la unión.

Detalles
Parámetros
[in] aEvent
El tipo de evento de unión.
[in] aJoinerInfo
Un puntero a la información de Joiner.
[in] aJoinerId
Un puntero para el ID del Joiner (si no se conoce, será NULL).
[in] aContext
Un puntero al contexto específico de la aplicación.

otCommissionerJoinerEvent

enum otCommissionerJoinerEvent otCommissionerJoinerEvent

Define un evento de Joiner en el Comisionado.

otCommissionerPanIdConflictCallback

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

Se llama al puntero cuando el comisionado recibe un mensaje de conflicto de ID de PAN.

Detalles
Parámetros
[in] aPanId
El valor del ID de PAN.
[in] aChannelMask
El valor de la máscara del canal
[in] aContext
Un puntero al contexto específico de la aplicación.

Estado de comisión

enum otCommissionerState otCommissionerState

Define el estado del comisionado.

otCommissionerStateCallback

void(* otCommissionerStateCallback)(otCommissionerState aState, void *aContext)

Se llama al puntero cada vez que cambia el estado del comisionado.

Detalles
Parámetros
[in] aState
El estado de Comisionado.
[in] aContext
Un puntero al contexto específico de la aplicación.

otCommissioningDataset

struct otCommissioningDataset otCommissioningDataset

Representa un conjunto de datos de comisión.

Información sobre otJoiner

struct otJoinerInfo otJoinerInfo

Representa una información de unión.

Tipo de información de unión del ot

enum otJoinerInfoType otJoinerInfoType

Define un tipo de información de Joiner.

osJoinerPskd

struct otJoinerPskd otJoinerPskd

Representa un PSKd de Joiner.

otSteeringData

struct otSteeringData otSteeringData

Representa los datos de la dirección.

Funciones

otCommissionerAddJoiner

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

Agrega una entrada de Joiner.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aEui64
Un puntero a IEEE EUI-64 o NULL para Joiner para cualquier Joiner.
[in] aPskd
Un puntero a la PSKd
[in] aTimeout
La hora en la que se quita un Joiner automáticamente, en segundos.
Valores que se muestran
OT_ERROR_NONE
Se agregó correctamente la unión.
OT_ERROR_NO_BUFS
No hay búferes disponibles para agregar a Joiner.
OT_ERROR_INVALID_ARGS
aEui64 o aPskd no es válido.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

otCommissionerAddJoinerWithDiscerner

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

Agrega una entrada de Joiner con un valor específico de Disterner de Joiner.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aDiscerner
Un puntero para el receptor de la unión.
[in] aPskd
Un puntero a la PSKd
[in] aTimeout
La hora en la que se quita un Joiner automáticamente, en segundos.
Valores que se muestran
OT_ERROR_NONE
Se agregó correctamente la unión.
OT_ERROR_NO_BUFS
No hay búferes disponibles para agregar a Joiner.
OT_ERROR_INVALID_ARGS
aDiscerner o aPskd no es válido.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

Comisionado de anuncios

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

Envía un mensaje de inicio del anuncio.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aChannelMask
El valor de la máscara del canal
[in] aCount
Es la cantidad de mensajes de anuncios por canal.
[in] aPeriod
El tiempo transcurrido entre dos transmisiones sucesivas de MLE Announce (en milisegundos).
[in] aAddress
Un puntero para el destino IPv6.
Valores que se muestran
OT_ERROR_NONE
El mensaje de inicio del anuncio se colocó correctamente en cola.
OT_ERROR_NO_BUFS
No hay suficientes búferes para generar un mensaje de inicio de anuncio.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

otCommissionerEnergyScan

otError otCommissionerEnergyScan(
  otInstance *aInstance,
  uint32_t aChannelMask,
  uint8_t aCount,
  uint16_t aPeriod,
  uint16_t aScanDuration,
  const otIp6Address *aAddress,
  otCommissionerEnergyReportCallback aCallback,
  void *aContext
)

Envía un mensaje de búsqueda de energía.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aChannelMask
El valor de la máscara del canal
[in] aCount
La cantidad de mediciones de energía por canal
[in] aPeriod
El tiempo que transcurre entre las mediciones de energía (milisegundos)
[in] aScanDuration
La duración del análisis para cada medición de energía (milisegundos).
[in] aAddress
Un puntero para el destino IPv6.
[in] aCallback
Un puntero a una función a la que se llama cuando se recibe un mensaje de informe de energía
[in] aContext
Un puntero al contexto específico de la aplicación.
Valores que se muestran
OT_ERROR_NONE
El mensaje de búsqueda del análisis de energía se puso en cola correctamente.
OT_ERROR_NO_BUFS
No hay búferes suficientes para generar un mensaje de búsqueda de energía.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

otCommissionerGetId

const char * otCommissionerGetId(
  otInstance *aInstance
)

Muestra el ID del comisionado.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Qué muestra
El ID del comisionado.

otCommissionerGetNextJoinerInfo

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

Obtenga información de unedores en la posición aIterator.

Detalles
Parámetros
[in] aInstance
Un puntero para la instancia.
[in,out] aIterator
Un puntero al contexto del iterador de la información de Joiner.
[out] aJoiner
Una referencia a la información de Joiner.
Valores que se muestran
OT_ERROR_NONE
Se obtuvo con éxito la información de Joiner.
OT_ERROR_NOT_FOUND
No se encontró la próxima unión.

otCommissionerGetProvisioningUrl

const char * otCommissionerGetProvisioningUrl(
  otInstance *aInstance
)

Obtiene la URL de aprovisionamiento.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Qué muestra
Un puntero para la string de la URL.

otCommissionerGetSessionId

uint16_t otCommissionerGetSessionId(
  otInstance *aInstance
)

Muestra el ID de sesión del comisionado.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Qué muestra
El ID de sesión del comisionado actual.

otCommissionerGetState

otCommissionerState otCommissionerGetState(
  otInstance *aInstance
)

Muestra el estado de comisión.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Valores que se muestran
OT_COMMISSIONER_STATE_DISABLED
Se inhabilitó el comisionado.
OT_COMMISSIONER_STATE_PETITION
Convertirse en comisionado
OT_COMMISSIONER_STATE_ACTIVE
Se habilitó el comisionado.

otCommissionerPanIdQuery

otError otCommissionerPanIdQuery(
  otInstance *aInstance,
  uint16_t aPanId,
  uint32_t aChannelMask,
  const otIp6Address *aAddress,
  otCommissionerPanIdConflictCallback aCallback,
  void *aContext
)

Envía un mensaje de consulta de ID de PAN.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aPanId
El ID de PAN que se debe consultar.
[in] aChannelMask
El valor de la máscara del canal
[in] aAddress
Un puntero para el destino IPv6.
[in] aCallback
Un puntero a una función a la que se llama cuando se recibe un mensaje de conflicto de ID de PAN.
[in] aContext
Un puntero al contexto específico de la aplicación.
Valores que se muestran
OT_ERROR_NONE
Se puso en cola correctamente el mensaje de consulta de ID de PAN.
OT_ERROR_NO_BUFS
No hay suficientes búferes para generar un mensaje de consulta de ID de PAN.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

otCommissionerRemoveJoiner

otError otCommissionerRemoveJoiner(
  otInstance *aInstance,
  const otExtAddress *aEui64
)

Quita una entrada de Joiner.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aEui64
Un puntero a IEEE EUI-64 o NULL para Joiner para cualquier Joiner.
Valores que se muestran
OT_ERROR_NONE
Se quitó correctamente la unión.
OT_ERROR_NOT_FOUND
No se encontró el Joiner especificado por aEui64.
OT_ERROR_INVALID_ARGS
aEui64 no es válido.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

otCommissionerRemoveJoinerWithDiscerner

otError otCommissionerRemoveJoinerWithDiscerner(
  otInstance *aInstance,
  const otJoinerDiscerner *aDiscerner
)

Quita una entrada de Joiner.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aDiscerner
Un puntero para el receptor de la unión.
Valores que se muestran
OT_ERROR_NONE
Se quitó correctamente la unión.
OT_ERROR_NOT_FOUND
No se encontró el Joiner especificado por aEui64.
OT_ERROR_INVALID_ARGS
aDiscerner no es válido.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

otCommissionerSendMgmtGet

otError otCommissionerSendMgmtGet(
  otInstance *aInstance,
  const uint8_t *aTlvs,
  uint8_t aLength
)

Envía MGMT_COMMISSIONER_GET.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aTlvs
Un puntero para los TLV
[in] aLength
Es la longitud de los TLV.
Valores que se muestran
OT_ERROR_NONE
Se envió correctamente el comando del conjunto de datos de Meshcop.
OT_ERROR_NO_BUFS
No hay suficiente espacio para el búfer para enviar.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

otCommissionerSendMgmtSet

otError otCommissionerSendMgmtSet(
  otInstance *aInstance,
  const otCommissioningDataset *aDataset,
  const uint8_t *aTlvs,
  uint8_t aLength
)

Envía MGMT_COMMISSIONER_SET.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aDataset
Un puntero para la asignación de datos del conjunto de datos.
[in] aTlvs
Un puntero para los TLV
[in] aLength
Es la longitud de los TLV.
Valores que se muestran
OT_ERROR_NONE
Se envió correctamente el comando del conjunto de datos de Meshcop.
OT_ERROR_NO_BUFS
No hay suficiente espacio para el búfer para enviar.
OT_ERROR_INVALID_STATE
El comisionado no está activo.

ID de comisión de Ot

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

Establece el ID del comisionado.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aId
Un puntero para un array de caracteres de string. Debe finalizarse de forma nula.
Valores que se muestran
OT_ERROR_NONE
Se configuró correctamente el ID de comisionado.
OT_ERROR_INVALID_ARGS
El nombre de pila es demasiado largo.
OT_ERROR_INVALID_STATE
El comisionado está activo y no se puede cambiar el ID.

otCommissionerSetProvisioningUrl

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

Establece la URL de aprovisionamiento.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aProvisioningUrl
Un puntero para la URL de aprovisionamiento (puede ser NULO para establecer como una string vacía).
Valores que se muestran
OT_ERROR_NONE
Se configuró correctamente la URL de aprovisionamiento.
OT_ERROR_INVALID_ARGS
aProvisioningUrl no es válido (demasiado largo).

Comisionado inicial

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

Habilita la función de Thread Commissioner.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aStateCallback
Un puntero a una función a la que se llama cuando cambia el estado de comisión.
[in] aJoinerCallback
Se produce un puntero a una función a la que se llama con un evento de unión.
[in] aCallbackContext
Un puntero al contexto específico de la aplicación.
Valores que se muestran
OT_ERROR_NONE
Se inició correctamente el servicio de Comisionado.
OT_ERROR_ALREADY
El comisionado ya se inició.
OT_ERROR_INVALID_STATE
El dispositivo no está conectado a ninguna red.

otCommissionerStop

otError otCommissionerStop(
  otInstance *aInstance
)

Inhabilita el rol Comisionado de subprocesos.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Valores que se muestran
OT_ERROR_NONE
Se detuvo correctamente el servicio de Comisionado.
OT_ERROR_ALREADY
El comisionado ya está detenido.

Macros

TS_COMMISSIONING_PASSPHRASE_MAX_SIZE

 OT_COMMISSIONING_PASSPHRASE_MAX_SIZE 255

Tamaño máximo de la frase de contraseña de comisión.

TS_COMMISSIONING_PASSPHRASE_MIN_SIZE

 OT_COMMISSIONING_PASSPHRASE_MIN_SIZE 6

Tamaño mínimo de la frase de contraseña de comisión.

TS_JOINER_MAX_PSKD_LENGTH

 OT_JOINER_MAX_PSKD_LENGTH 32

Longitud máxima de la string de un PSKd de Joiner (no incluye un carácter nulo).

PO_PROVISIONING_URL_MAX_SIZE

 OT_PROVISIONING_URL_MAX_SIZE 64

Tamaño máximo (número de caracteres) en la cadena de URL de aprovisionamiento (no se incluye el carácter nulo).

TS_STEERING_DATA_MAX_LENGTH

 OT_STEERING_DATA_MAX_LENGTH 16

Longitud máxima de los datos de dirección (bytes)

Recursos

Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o colaborar con nuestra documentación, consulta la sección Recursos.