Conjunto de dados operacional

Inclui funções para a Operational Dataset API.

Resumo

Somente para builds de FTD, o Dataset Updater inclui funções para gerenciar atualizações do conjunto de dados.

Para builds FTD e MTD, a Operational Dataset API inclui funções para gerenciar conjuntos de dados ativos e pendentes e TLVs de conjuntos de dados.

Enumerações

otMeshcopTlvType{
  OT_MESHCOP_TLV_CHANNEL = 0,
  OT_MESHCOP_TLV_PANID = 1,
  OT_MESHCOP_TLV_EXTPANID = 2,
  OT_MESHCOP_TLV_NETWORKNAME = 3,
  OT_MESHCOP_TLV_PSKC = 4,
  OT_MESHCOP_TLV_NETWORKKEY = 5,
  OT_MESHCOP_TLV_NETWORK_KEY_SEQUENCE = 6,
  OT_MESHCOP_TLV_MESHLOCALPREFIX = 7,
  OT_MESHCOP_TLV_STEERING_DATA = 8,
  OT_MESHCOP_TLV_BORDER_AGENT_RLOC = 9,
  OT_MESHCOP_TLV_COMMISSIONER_ID = 10,
  OT_MESHCOP_TLV_COMM_SESSION_ID = 11,
  OT_MESHCOP_TLV_SECURITYPOLICY = 12,
  OT_MESHCOP_TLV_GET = 13,
  OT_MESHCOP_TLV_ACTIVETIMESTAMP = 14,
  OT_MESHCOP_TLV_COMMISSIONER_UDP_PORT = 15,
  OT_MESHCOP_TLV_STATE = 16,
  OT_MESHCOP_TLV_JOINER_DTLS = 17,
  OT_MESHCOP_TLV_JOINER_UDP_PORT = 18,
  OT_MESHCOP_TLV_JOINER_IID = 19,
  OT_MESHCOP_TLV_JOINER_RLOC = 20,
  OT_MESHCOP_TLV_JOINER_ROUTER_KEK = 21,
  OT_MESHCOP_TLV_PROVISIONING_URL = 32,
  OT_MESHCOP_TLV_VENDOR_NAME_TLV = 33,
  OT_MESHCOP_TLV_VENDOR_MODEL_TLV = 34,
  OT_MESHCOP_TLV_VENDOR_SW_VERSION_TLV = 35,
  OT_MESHCOP_TLV_VENDOR_DATA_TLV = 36,
  OT_MESHCOP_TLV_VENDOR_STACK_VERSION_TLV = 37,
  OT_MESHCOP_TLV_UDP_ENCAPSULATION_TLV = 48,
  OT_MESHCOP_TLV_IPV6_ADDRESS_TLV = 49,
  OT_MESHCOP_TLV_PENDINGTIMESTAMP = 51,
  OT_MESHCOP_TLV_DELAYTIMER = 52,
  OT_MESHCOP_TLV_CHANNELMASK = 53,
  OT_MESHCOP_TLV_COUNT = 54,
  OT_MESHCOP_TLV_PERIOD = 55,
  OT_MESHCOP_TLV_SCAN_DURATION = 56,
  OT_MESHCOP_TLV_ENERGY_LIST = 57,
  OT_MESHCOP_TLV_DISCOVERYREQUEST = 128,
  OT_MESHCOP_TLV_DISCOVERYRESPONSE = 129,
  OT_MESHCOP_TLV_JOINERADVERTISEMENT = 241
}
tipo enumerado
Representa tipos de TLV meshcop.

Typedefs

otChannelMask typedef
uint32_t
Representa a máscara de canal.
otDatasetMgmtSetCallback)(otError aResult, void *aContext) typedef
void(*
O ponteiro é chamado quando uma resposta a uma solicitação MGMT_SET é recebida ou expira.
otDatasetUpdaterCallback)(otError aError, void *aContext) typedef
void(*
Esse ponteiro de função de retorno de chamada é chamado quando uma solicitação de atualização do conjunto de dados é concluída, informando o status de sucesso ou falha da solicitação de atualização do conjunto de dados.
otExtendedPanId typedef
Representa um código PAN estendido.
otMeshLocalPrefix typedef
Representa um prefixo local de malha.
otMeshcopTlvType typedef
Representa tipos de TLV meshcop.
otNetworkKey typedef
struct otNetworkKey
Representa uma chave de rede Thread.
otNetworkKeyRef typedef
Esse tipo de dados representa KeyRef para NetworkKey.
otNetworkName typedef
struct otNetworkName
Representa um nome de rede.
otOperationalDataset typedef
Representa um conjunto de dados operacional ativo ou pendente.
otOperationalDatasetComponents typedef
Representa a presença de diferentes componentes no conjunto de dados operacional ativo ou pendente.
otOperationalDatasetTlvs typedef
Representa um conjunto de dados operacional ativo ou pendente.
otPskc typedef
struct otPskc
Representa um PSKc.
otPskcRef typedef
Esse tipo de dados representa KeyRef para PSKc.
otSecurityPolicy typedef
Representar a política de segurança.
otTimestamp typedef
struct otTimestamp
Representa um componente de carimbo de data/hora do conjunto de dados da linha de execução.

Variáveis.

OT_TOOL_PACKED_END

Funções

otDatasetConvertToTlvs(const otOperationalDataset *aDataset, otOperationalDatasetTlvs *aDatasetTlvs)
Converte um determinado conjunto de dados operacional em otOperationalDatasetTlvs.
otDatasetCreateNewNetwork(otInstance *aInstance, otOperationalDataset *aDataset)
Somente para FTD, cria um novo conjunto de dados operacional a ser usado ao formar uma nova rede.
otDatasetGeneratePskc(const char *aPassPhrase, const otNetworkName *aNetworkName, const otExtendedPanId *aExtPanId, otPskc *aPskc)
Gera o PSKc a partir de uma determinada frase de acesso, nome de rede e código PAN estendido.
otDatasetGetActive(otInstance *aInstance, otOperationalDataset *aDataset)
Recebe o conjunto de dados operacional ativo.
otDatasetGetActiveTlvs(otInstance *aInstance, otOperationalDatasetTlvs *aDataset)
Recebe o conjunto de dados operacional ativo.
otDatasetGetDelayTimerMinimal(otInstance *aInstance)
uint32_t
Somente para FTD, recebe um timer de atraso mínimo.
otDatasetGetPending(otInstance *aInstance, otOperationalDataset *aDataset)
Recebe o conjunto de dados operacional pendente.
otDatasetGetPendingTlvs(otInstance *aInstance, otOperationalDatasetTlvs *aDataset)
Recebe o conjunto de dados operacional pendente.
otDatasetIsCommissioned(otInstance *aInstance)
bool
Indica se uma rede válida está presente no conjunto de dados operacional ativo.
otDatasetParseTlvs(const otOperationalDatasetTlvs *aDatasetTlvs, otOperationalDataset *aDataset)
Analisa um conjunto de dados operacional de um determinado otOperationalDatasetTlvs.
otDatasetSendMgmtActiveGet(otInstance *aInstance, const otOperationalDatasetComponents *aDatasetComponents, const uint8_t *aTlvTypes, uint8_t aLength, const otIp6Address *aAddress)
Envia MGMT_ACTIVE_GET.
otDatasetSendMgmtActiveSet(otInstance *aInstance, const otOperationalDataset *aDataset, const uint8_t *aTlvs, uint8_t aLength, otDatasetMgmtSetCallback aCallback, void *aContext)
Envia MGMT_ACTIVE_SET.
otDatasetSendMgmtPendingGet(otInstance *aInstance, const otOperationalDatasetComponents *aDatasetComponents, const uint8_t *aTlvTypes, uint8_t aLength, const otIp6Address *aAddress)
Envia MGMT_PENDING_GET.
otDatasetSendMgmtPendingSet(otInstance *aInstance, const otOperationalDataset *aDataset, const uint8_t *aTlvs, uint8_t aLength, otDatasetMgmtSetCallback aCallback, void *aContext)
Envia MGMT_PENDING_SET.
otDatasetSetActive(otInstance *aInstance, const otOperationalDataset *aDataset)
Define o conjunto de dados operacional ativo.
otDatasetSetActiveTlvs(otInstance *aInstance, const otOperationalDatasetTlvs *aDataset)
Define o conjunto de dados operacional ativo.
otDatasetSetDelayTimerMinimal(otInstance *aInstance, uint32_t aDelayTimerMinimal)
Somente para FTD, define um timer de atraso mínimo.
otDatasetSetPending(otInstance *aInstance, const otOperationalDataset *aDataset)
Define o conjunto de dados operacional pendente.
otDatasetSetPendingTlvs(otInstance *aInstance, const otOperationalDatasetTlvs *aDataset)
Define o conjunto de dados operacional pendente.
otDatasetUpdateTlvs(const otOperationalDataset *aDataset, otOperationalDatasetTlvs *aDatasetTlvs)
Atualiza um determinado conjunto de dados operacional.
otDatasetUpdaterCancelUpdate(otInstance *aInstance)
void
Cancela uma solicitação de atualização do conjunto de dados operacional em andamento (se houver).
otDatasetUpdaterIsUpdateOngoing(otInstance *aInstance)
bool
Indica se há uma solicitação de atualização do conjunto de dados de operação em andamento.
otDatasetUpdaterRequestUpdate(otInstance *aInstance, const otOperationalDataset *aDataset, otDatasetUpdaterCallback aCallback, void *aContext)
Solicita uma atualização do conjunto de dados operacional.
otNetworkNameFromString(otNetworkName *aNetworkName, const char *aNameString)
Define uma instância otNetworkName de uma determinada string C terminada e nula.

Estruturas

otExtendedPanId.

Representa um código PAN estendido.

Chave de rede

Representa uma chave de rede Thread.

otNetworkName (em inglês)

Representa um nome de rede.

otOperationalDataset (em inglês)

Representa um conjunto de dados operacional ativo ou pendente.

otOperationalDatasetComponents

Representa a presença de diferentes componentes no conjunto de dados operacional ativo ou pendente.

otOperationalDatasetTlvs (em inglês)

Representa um conjunto de dados operacional ativo ou pendente.

otPsk (em inglês)

Representa PSKc.

otSecurityPolicy (link em inglês)

Representar a política de segurança.

otTimestamp (em inglês)

Representa um componente de carimbo de data/hora do conjunto de dados da linha de execução.

Enumerações

Tipo de otMeshcopTlvType

 otMeshcopTlvType

Representa tipos de TLV meshcop.

Propriedades
OT_MESHCOP_TLV_ACTIVETIMESTAMP

TLV do carimbo de data/hora ativo da meshcop

OT_MESHCOP_TLV_BORDER_AGENT_RLOC

TLV do localizador de agentes de borda da meshcop

OT_MESHCOP_TLV_CHANNEL

TLV do canal da meshcop

OT_MESHCOP_TLV_CHANNELMASK

Máscara de canal de máscara TLV

OT_MESHCOP_TLV_COMMISSIONER_ID

meshcop ID de comissário TLV

OT_MESHCOP_TLV_COMMISSIONER_UDP_PORT

Meshcop Commissioner UDP Port TLV

OT_MESHCOP_TLV_COMM_SESSION_ID

código de sessão do comissário de malhacop TLV

OT_MESHCOP_TLV_COUNT

TLV de contagem de meshcop

OT_MESHCOP_TLV_DELAYTIMER

TLV do timer de atraso da meshcop

OT_MESHCOP_TLV_DISCOVERYREQUEST

Solicitação de descoberta de malhacop TLV

OT_MESHCOP_TLV_DISCOVERYRESPONSE

TLV da resposta da descoberta do meshcop

OT_MESHCOP_TLV_ENERGY_LIST

TLV da lista de energia da meshcop

OT_MESHCOP_TLV_EXTPANID

TLV de código estendido de panorâmica de malha

OT_MESHCOP_TLV_GET

meshcop Obter TLV

OT_MESHCOP_TLV_IPV6_ADDRESS_TLV

TLV do endereço IPv6 da meshcop

OT_MESHCOP_TLV_JOINERADVERTISEMENT

meshcop Publicidade de mesclagem TLV

OT_MESHCOP_TLV_JOINER_DTLS

Entroncamento de DTLS de encapsulamento DTLS da meshcop

OT_MESHCOP_TLV_JOINER_IID

Combinador de malha IID TLV

OT_MESHCOP_TLV_JOINER_RLOC

TLV do localizador de roteadores de mesclagem meshcop

OT_MESHCOP_TLV_JOINER_ROUTER_KEK

Roteador de junçãor KEK TLV

OT_MESHCOP_TLV_JOINER_UDP_PORT

meshcop Junta UDP porta TLV

OT_MESHCOP_TLV_MESHLOCALPREFIX

meshcop Prefixo local do TLV

OT_MESHCOP_TLV_NETWORKKEY

meshcop TLV Chave de rede

OT_MESHCOP_TLV_NETWORKNAME

Nome da rede TLV da meshcop

OT_MESHCOP_TLV_NETWORK_KEY_SEQUENCE

malhacop Sequência de chaves de rede TLV

OT_MESHCOP_TLV_PANID

ID de movimento pan da meshcop TLV

OT_MESHCOP_TLV_PENDINGTIMESTAMP

meshcop TLV com carimbo de data/hora pendente

OT_MESHCOP_TLV_PERIOD

TLV do período meshcop

OT_MESHCOP_TLV_PROVISIONING_URL

URL de provisionamento TLV da meshcop

OT_MESHCOP_TLV_PSKC

malhacop PSKc TLV

OT_MESHCOP_TLV_SCAN_DURATION

Duração da verificação da malhacop TLV

OT_MESHCOP_TLV_SECURITYPOLICY

TLV da Política de Segurança da Meshcop

OT_MESHCOP_TLV_STATE

TLV do estado da meshcop

OT_MESHCOP_TLV_STEERING_DATA

Dados de direção de malha TLV

OT_MESHCOP_TLV_UDP_ENCAPSULATION_TLV

TLV de encapsulamento UDP da meshcop

OT_MESHCOP_TLV_VENDOR_DATA_TLV

TLV de dados do fornecedor da meshcop

OT_MESHCOP_TLV_VENDOR_MODEL_TLV

Modelo de fornecedor de malha TLV

OT_MESHCOP_TLV_VENDOR_NAME_TLV

Nome da fornecedor da malhacop TLV

OT_MESHCOP_TLV_VENDOR_STACK_VERSION_TLV

Versão Stack da pilha do fornecedor (TLV, na sigla em inglês)

OT_MESHCOP_TLV_VENDOR_SW_VERSION_TLV

Versão de SW do fornecedor de malhacop do TLV

Typedefs

Máscara de canal

uint32_t otChannelMask

Representa a máscara de canal.

OtDatasetMgmtSetCallback

void(* otDatasetMgmtSetCallback)(otError aResult, void *aContext)

O ponteiro é chamado quando uma resposta a uma solicitação MGMT_SET é recebida ou expira.

Detalhes
Parâmetros
[in] aResult
Um resultado da operação.
[in] aContext
Um ponteiro para contexto específico do aplicativo.
Valores de retorno
OT_ERROR_NONE
A solicitação foi aceita pelo líder.
OT_ERROR_REJECTED
A solicitação foi rejeitada pelo líder.
OT_ERROR_PARSE
Ocorreu um erro ao analisar a resposta.
OT_ERROR_ABORT
A solicitação foi redefinida por um colega.
OT_ERROR_RESPONSE_TIMEOUT
Nenhuma resposta ou confirmação recebida durante o período de tempo limite.

OtDatasetUpdaterCallback.

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

Esse ponteiro de função de retorno de chamada é chamado quando uma solicitação de atualização do conjunto de dados é concluída, informando o status de sucesso ou falha da solicitação de atualização do conjunto de dados.

Disponível quando o OPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE está ativado.

Detalhes
Parâmetros
[in] aError
O status do erro. OT_ERROR_NONE indica que a atualização do conjunto de dados foi bem-sucedida. OT_ERROR_INVALID_STATE indica falha devido a estado inválido (MLE sendo desativado). OT_ERROR_ALREADY indica falha devido a outro dispositivo na rede solicitando uma atualização conflitante do conjunto de dados.
[in] aContext
Um ponteiro para o contexto arbitrário (fornecido pelo usuário em otDatasetUpdaterRequestUpdate()).

ID otExtendedPanId

struct otExtendedPanId otExtendedPanId

Representa um código PAN estendido.

OtMeshLocalPrefix

otIp6NetworkPrefix otMeshLocalPrefix

Representa um prefixo local de malha.

Tipo de otMeshcopTlvType

enum otMeshcopTlvType otMeshcopTlvType

Representa tipos de TLV meshcop.

Chave de rede ot

struct otNetworkKey otNetworkKey

Representa uma chave de rede Thread.

OtNetworkKeyRef

otCryptoKeyRef otNetworkKeyRef

Esse tipo de dados representa KeyRef para NetworkKey.

Referência à chave

Nome da rede

struct otNetworkName otNetworkName

Representa um nome de rede.

O otNetworkName é uma string C terminada nula (ou seja, m8: a matriz de caracteres PRECISA terminar com o caractere nulo \0.

Conjunto de dados otOperational

struct otOperationalDataset otOperationalDataset

Representa um conjunto de dados operacional ativo ou pendente.

Os componentes no conjunto de dados são opcionais. A estrutura mComponents especifica quais componentes estão presentes no conjunto de dados.

OtOperationalDatasetComponents

struct otOperationalDatasetComponents otOperationalDatasetComponents

Representa a presença de diferentes componentes no conjunto de dados operacional ativo ou pendente.

OtOperationalDatasetTlvs

struct otOperationalDatasetTlvs otOperationalDatasetTlvs

Representa um conjunto de dados operacional ativo ou pendente.

O conjunto de dados operacional é TLV codificado conforme especificado pela Thread.

OtPsk

struct otPskc otPskc

Representa um PSKc.

OtPskcRef

otCryptoKeyRef otPskcRef

Esse tipo de dados representa KeyRef para PSKc.

Referência à chave

Política de segurança de dados

struct otSecurityPolicy otSecurityPolicy

Representar a política de segurança.

Carimbo de data/hora

struct otTimestamp otTimestamp

Representa um componente de carimbo de data/hora do conjunto de dados da linha de execução.

Variáveis.

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otNetworkKey OT_TOOL_PACKED_END

Funções

OtDatasetConvertToTlvs

otError otDatasetConvertToTlvs(
  const otOperationalDataset *aDataset,
  otOperationalDatasetTlvs *aDatasetTlvs
)

Converte um determinado conjunto de dados operacional em otOperationalDatasetTlvs.

Detalhes
Parâmetros
[in] aDataset
Um conjunto de dados operacional para converter em TLVs.
[out] aDatasetTlvs
Um ponteiro para TLVs do conjunto de dados para retornar o resultado.
Valores de retorno
OT_ERROR_NONE
aDataset convertido e aDatasetTlvs atualizado.
OT_ERROR_INVALID_ARGS
aDataset é inválido, não contém carimbos de data/hora ativos ou pendentes.

conjunto de dados de criação de conjuntos de dados

otError otDatasetCreateNewNetwork(
  otInstance *aInstance,
  otOperationalDataset *aDataset
)

Somente para FTD, cria um novo conjunto de dados operacional a ser usado ao formar uma nova rede.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[out] aDataset
O conjunto de dados operacional.
Valores de retorno
OT_ERROR_NONE
Um novo conjunto de dados operacional foi criado.
OT_ERROR_FAILED
Falha ao gerar valores aleatórios para os novos parâmetros.

ODatasetDatasetPskc

otError otDatasetGeneratePskc(
  const char *aPassPhrase,
  const otNetworkName *aNetworkName,
  const otExtendedPanId *aExtPanId,
  otPskc *aPskc
)

Gera o PSKc a partir de uma determinada frase de acesso, nome de rede e código PAN estendido.

A PSKc é usada para estabelecer a sessão do comissário.

Detalhes
Parâmetros
[in] aPassPhrase
A frase-senha de comissionamento.
[in] aNetworkName
O nome da rede para o cálculo do PSKc.
[in] aExtPanId
O código PAN estendido para computação PSKc.
[out] aPskc
Um ponteiro para variável para gerar o PSKc gerado.
Valores de retorno
OT_ERROR_NONE
O PSKc foi gerado.
OT_ERROR_INVALID_ARGS
Se algum dos argumentos de entrada for inválido.

Conjunto de dados ot GetActive

otError otDatasetGetActive(
  otInstance *aInstance,
  otOperationalDataset *aDataset
)

Recebe o conjunto de dados operacional ativo.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[out] aDataset
Um ponteiro para onde o conjunto de dados operacional ativo será colocado.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacional ativo foi recuperado.
OT_ERROR_NOT_FOUND
Nenhum valor correspondente no armazenamento de configurações.

OtDatasetGetActiveTlvs

otError otDatasetGetActiveTlvs(
  otInstance *aInstance,
  otOperationalDatasetTlvs *aDataset
)

Recebe o conjunto de dados operacional ativo.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[out] aDataset
Um ponteiro para onde o conjunto de dados operacional ativo será colocado.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacional ativo foi recuperado.
OT_ERROR_NOT_FOUND
Nenhum valor correspondente no armazenamento de configurações.

OtDatasetGetDelayTimerMinimal

uint32_t otDatasetGetDelayTimerMinimal(
  otInstance *aInstance
)

Somente para FTD, recebe um timer de atraso mínimo.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Valores de retorno
the
valor do timer de atraso mínimo (em ms).

oDatasetDatasetPendente

otError otDatasetGetPending(
  otInstance *aInstance,
  otOperationalDataset *aDataset
)

Recebe o conjunto de dados operacional pendente.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[out] aDataset
Um ponteiro para onde o conjunto de dados operacional pendente será colocado.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacionais pendente foi recuperado.
OT_ERROR_NOT_FOUND
Nenhum valor correspondente no armazenamento de configurações.

OtDatasetGetPendingTlvs

otError otDatasetGetPendingTlvs(
  otInstance *aInstance,
  otOperationalDatasetTlvs *aDataset
)

Recebe o conjunto de dados operacional pendente.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[out] aDataset
Um ponteiro para onde o conjunto de dados operacional pendente será colocado.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacionais pendente foi recuperado.
OT_ERROR_NOT_FOUND
Nenhum valor correspondente no armazenamento de configurações.

OtDatasetIsCommissioned (em inglês)

bool otDatasetIsCommissioned(
  otInstance *aInstance
)

Indica se uma rede válida está presente no conjunto de dados operacional ativo.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Retorna
TRUE se houver uma rede válida no conjunto de dados operacional ativo. Caso contrário, FALSE.

OtDatasetParseTlvs

otError otDatasetParseTlvs(
  const otOperationalDatasetTlvs *aDatasetTlvs,
  otOperationalDataset *aDataset
)

Analisa um conjunto de dados operacional de um determinado otOperationalDatasetTlvs.

Detalhes
Parâmetros
[in] aDatasetTlvs
Um ponteiro para TLVs do conjunto de dados.
[out] aDataset
Um ponteiro para onde o conjunto de dados será colocado.
Valores de retorno
OT_ERROR_NONE
aDataset definido com êxito em aDatasetTlvs.
OT_ERROR_INVALID_ARGS
aDatasetTlvs não é uma entrada válida.

OtDatasetSendMgmtActiveGet

otError otDatasetSendMgmtActiveGet(
  otInstance *aInstance,
  const otOperationalDatasetComponents *aDatasetComponents,
  const uint8_t *aTlvTypes,
  uint8_t aLength,
  const otIp6Address *aAddress
)

Envia MGMT_ACTIVE_GET.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDatasetComponents
Um ponteiro para uma estrutura de componentes do conjunto de dados que especifica quais componentes serão solicitados.
[in] aTlvTypes
Um ponteiro para matriz contendo outros tipos brutos de TLV a serem solicitados.
[in] aLength
O tamanho de aTlvTypes.
[in] aAddress
Um ponteiro para o destino IPv6, se for NULL, usará o ALOC líder como padrão.
Valores de retorno
OT_ERROR_NONE
O comando do conjunto de dados meshcop foi enviado.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para enviar.

Conjunto de dados otSendSendMgmtActiveSet

otError otDatasetSendMgmtActiveSet(
  otInstance *aInstance,
  const otOperationalDataset *aDataset,
  const uint8_t *aTlvs,
  uint8_t aLength,
  otDatasetMgmtSetCallback aCallback,
  void *aContext
)

Envia MGMT_ACTIVE_SET.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDataset
Um ponteiro para o conjunto de dados operacional.
[in] aTlvs
Um ponteiro para TLVs.
[in] aLength
O tamanho dos TLVs.
[in] aCallback
Um ponteiro para uma função chamada na recepção da resposta ou no tempo limite.
[in] aContext
Um ponteiro para contexto específico do aplicativo para aCallback.
Valores de retorno
OT_ERROR_NONE
O comando do conjunto de dados meshcop foi enviado.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para enviar.
OT_ERROR_BUSY
Uma solicitação anterior está em andamento.

OdDatasetSendMgmtPendingGet

otError otDatasetSendMgmtPendingGet(
  otInstance *aInstance,
  const otOperationalDatasetComponents *aDatasetComponents,
  const uint8_t *aTlvTypes,
  uint8_t aLength,
  const otIp6Address *aAddress
)

Envia MGMT_PENDING_GET.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDatasetComponents
Um ponteiro para uma estrutura de componentes do conjunto de dados que especifica quais componentes serão solicitados.
[in] aTlvTypes
Um ponteiro para matriz contendo outros tipos brutos de TLV a serem solicitados.
[in] aLength
O tamanho de aTlvTypes.
[in] aAddress
Um ponteiro para o destino IPv6, se for NULL, usará o ALOC líder como padrão.
Valores de retorno
OT_ERROR_NONE
O comando do conjunto de dados meshcop foi enviado.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para enviar.

OtDatasetSendMgmtPendingSet

otError otDatasetSendMgmtPendingSet(
  otInstance *aInstance,
  const otOperationalDataset *aDataset,
  const uint8_t *aTlvs,
  uint8_t aLength,
  otDatasetMgmtSetCallback aCallback,
  void *aContext
)

Envia MGMT_PENDING_SET.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDataset
Um ponteiro para o conjunto de dados operacional.
[in] aTlvs
Um ponteiro para TLVs.
[in] aLength
O tamanho dos TLVs.
[in] aCallback
Um ponteiro para uma função chamada na recepção da resposta ou no tempo limite.
[in] aContext
Um ponteiro para contexto específico do aplicativo para aCallback.
Valores de retorno
OT_ERROR_NONE
O comando do conjunto de dados meshcop foi enviado.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para enviar.
OT_ERROR_BUSY
Uma solicitação anterior está em andamento.

Conjunto de dados otSetActive

otError otDatasetSetActive(
  otInstance *aInstance,
  const otOperationalDataset *aDataset
)

Define o conjunto de dados operacional ativo.

Se o conjunto de dados não incluir um carimbo de data/hora ativo, ele estará apenas parcialmente completo.

Se a linha de execução estiver ativada em um dispositivo que tem um conjunto de dados ativo parcialmente completo, o dispositivo tentará se conectar a uma rede do Thread existente usando qualquer informação existente no conjunto de dados. Apenas a chave de rede Thread é necessária para anexar a uma rede.

Se o canal não estiver incluído no conjunto de dados, o dispositivo enviará mensagens de anúncio do MLE em canais diferentes para encontrar vizinhos em outros canais.

Se o dispositivo for anexado a uma rede Thread, ele vai recuperar o conjunto de dados completo completo do pai. Observe que um dispositivo com roteador não fará a transição para os papéis de roteador ou líder até que tenha um conjunto de dados ativo completo.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDataset
Um ponteiro para o conjunto de dados operacional ativo.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacional ativo foi definido.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para definir o conjunto de dados operacional ativo.
OT_ERROR_NOT_IMPLEMENTED
A plataforma não implementa a funcionalidade de configurações.

OtDatasetSetActiveTlvs

otError otDatasetSetActiveTlvs(
  otInstance *aInstance,
  const otOperationalDatasetTlvs *aDataset
)

Define o conjunto de dados operacional ativo.

Se o conjunto de dados não incluir um carimbo de data/hora ativo, ele estará apenas parcialmente completo.

Se a linha de execução estiver ativada em um dispositivo que tem um conjunto de dados ativo parcialmente completo, o dispositivo tentará se conectar a uma rede do Thread existente usando qualquer informação existente no conjunto de dados. Apenas a chave de rede Thread é necessária para anexar a uma rede.

Se o canal não estiver incluído no conjunto de dados, o dispositivo enviará mensagens de anúncio do MLE em canais diferentes para encontrar vizinhos em outros canais.

Se o dispositivo for anexado a uma rede Thread, ele vai recuperar o conjunto de dados completo completo do pai. Observe que um dispositivo com roteador não fará a transição para os papéis de roteador ou líder até que tenha um conjunto de dados ativo completo.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDataset
Um ponteiro para o conjunto de dados operacional ativo.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacional ativo foi definido.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para definir o conjunto de dados operacional ativo.
OT_ERROR_NOT_IMPLEMENTED
A plataforma não implementa a funcionalidade de configurações.

OtDatasetSetDelayTimerMinimal

otError otDatasetSetDelayTimerMinimal(
  otInstance *aInstance,
  uint32_t aDelayTimerMinimal
)

Somente para FTD, define um timer de atraso mínimo.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDelayTimerMinimal
O valor do timer de atraso mínimo (em ms).
Valores de retorno
OT_ERROR_NONE
O timer de atraso mínimo foi definido.
OT_ERROR_INVALID_ARGS
Se aDelayTimerMinimal não for válido.

OtDatasetSetPending

otError otDatasetSetPending(
  otInstance *aInstance,
  const otOperationalDataset *aDataset
)

Define o conjunto de dados operacional pendente.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDataset
Um ponteiro para o conjunto de dados operacional pendente.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacional pendente foi definido.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para definir o conjunto de dados operacional pendente.
OT_ERROR_NOT_IMPLEMENTED
A plataforma não implementa a funcionalidade de configurações.

OtDatasetSetPendingTlvs

otError otDatasetSetPendingTlvs(
  otInstance *aInstance,
  const otOperationalDatasetTlvs *aDataset
)

Define o conjunto de dados operacional pendente.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDataset
Um ponteiro para o conjunto de dados operacional pendente.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacional pendente foi definido.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para definir o conjunto de dados operacional pendente.
OT_ERROR_NOT_IMPLEMENTED
A plataforma não implementa a funcionalidade de configurações.

OtDatasetUpdateTlvs

otError otDatasetUpdateTlvs(
  const otOperationalDataset *aDataset,
  otOperationalDatasetTlvs *aDatasetTlvs
)

Atualiza um determinado conjunto de dados operacional.

aDataset contém os campos a serem atualizados e o novo valor deles.

Detalhes
Parâmetros
[in] aDataset
Especifica o conjunto de tipos e valores a serem atualizados.
[in,out] aDatasetTlvs
Um ponteiro para TLVs do conjunto de dados a serem atualizados.
Valores de retorno
OT_ERROR_NONE
aDatasetTlvs foi atualizado.
OT_ERROR_INVALID_ARGS
aDataset contém valores inválidos.
OT_ERROR_NO_BUFS
Não há espaço suficiente em aDatasetTlvs para aplicar a atualização.

otDatasetUpdaterCancelUpdate

void otDatasetUpdaterCancelUpdate(
  otInstance *aInstance
)

Cancela uma solicitação de atualização do conjunto de dados operacional em andamento (se houver).

Disponível quando o OPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE está ativado.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.

OtDatasetUpdaterIsUpdateOngoing

bool otDatasetUpdaterIsUpdateOngoing(
  otInstance *aInstance
)

Indica se há uma solicitação de atualização do conjunto de dados de operação em andamento.

Disponível quando o OPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE está ativado.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Valores de retorno
TRUE
Há uma atualização em andamento.
FALSE
Não há atualizações em andamento.

OtDatasetUpdaterRequestUpdate

otError otDatasetUpdaterRequestUpdate(
  otInstance *aInstance,
  const otOperationalDataset *aDataset,
  otDatasetUpdaterCallback aCallback,
  void *aContext
)

Solicita uma atualização do conjunto de dados operacional.

Disponível quando o OPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE está ativado.

aDataset precisa conter os campos a serem atualizados e o novo valor. Ele não pode conter campos de carimbo de data e hora ativos ou pendentes. O campo Delay é opcional. Se não for fornecido um valor padrão (1000 ms), será usado.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aDataset
Um ponteiro para o conjunto de dados que contém os campos a serem alterados.
[in] aCallback
Um callback para indicar quando a solicitação de atualização do conjunto de dados termina.
[in] aContext
Um contexto arbitrário transmitido para o callback.
Valores de retorno
OT_ERROR_NONE
A atualização do conjunto de dados foi iniciada (aCallback será invocado na conclusão).
OT_ERROR_INVALID_STATE
O dispositivo está desativado (o MLE está desativado).
OT_ERROR_INVALID_ARGS
O aDataset não é válido (contém carimbo de data/hora ativo ou pendente).
OT_ERROR_BUSY
Não é possível iniciar a atualização. Uma anterior está em andamento.
OT_ERROR_NO_BUFS
Não foi possível alocar o buffer para salvar o conjunto de dados.

RedeNomeDoNomedaRede

otError otNetworkNameFromString(
  otNetworkName *aNetworkName,
  const char *aNameString
)

Define uma instância otNetworkName de uma determinada string C terminada e nula.

aNameString precisa seguir a codificação UTF-8, e o comprimento do nome da rede não pode ser maior que OT_NETWORK_NAME_MAX_SIZE.

Detalhes
Parâmetros
[out] aNetworkName
Um ponteiro para o otNetworkName a ser definido.
[in] aNameString
Uma string de nome C.
Valores de retorno
OT_ERROR_NONE
aNetworkName definido com êxito em aNameString.
OT_ERROR_INVALID_ARGS
aNameStrng é inválido (muito longo ou não segue a codificação UTF-8).

Macros

PRÓXIMO_DO_CANAL_10_MASK

 OT_CHANNEL_10_MASK (1 << 10)

Canal 10.

PRÓXIMO_CANAL_11_MASK

 OT_CHANNEL_11_MASK (1 << 11)

Canal 11.

OT_CANAL_12_MASK

 OT_CHANNEL_12_MASK (1 << 12)

Canal 12.

PRÓXIMO_DO_CANAL_13_MASK

 OT_CHANNEL_13_MASK (1 << 13)

Canal 13.

PRÓXIMO_DO_CANAL_14

 OT_CHANNEL_14_MASK (1 << 14)

Canal 14.

OT_CANAL_15_MASK

 OT_CHANNEL_15_MASK (1 << 15)

Canal 15.

PRÓXIMO_DO_CANAL_16_MASK

 OT_CHANNEL_16_MASK (1 << 16)

Canal 16.

PRÓXIMO_DO_CANAL_17_MASK

 OT_CHANNEL_17_MASK (1 << 17)

Canal 17.

OT_CANAL_18_MASK

 OT_CHANNEL_18_MASK (1 << 18)

Canal 18.

PRÓXIMO_DO_CANAL_19_MASK

 OT_CHANNEL_19_MASK (1 << 19)

Canal 19.

OT_CANAL_1_MASK

 OT_CHANNEL_1_MASK (1 << 1)

Canal 1.

OT_20_MASK

 OT_CHANNEL_20_MASK (1 << 20)

Canal 20.

OT_CANAL_21_MASK

 OT_CHANNEL_21_MASK (1 << 21)

Canal 21.

OT_CANAL_22_MASK

 OT_CHANNEL_22_MASK (1 << 22)

Canal 22.

OT_CANAL_23_MASK

 OT_CHANNEL_23_MASK (1 << 23)

Canal 23.

OT_CANAL_24_MASK

 OT_CHANNEL_24_MASK (1 << 24)

Canal 24.

OT_CANAL_25_MASK

 OT_CHANNEL_25_MASK (1 << 25)

Canal 25.

OT_CANAL_26_MASK

 OT_CHANNEL_26_MASK (1 << 26)

Canal 26.

OT_CANAL_2_MASK

 OT_CHANNEL_2_MASK (1 << 2)

Canal 2.

OT_CANAL_3_MASK

 OT_CHANNEL_3_MASK (1 << 3)

Canal 3.

OT_CANAL_4_MASK

 OT_CHANNEL_4_MASK (1 << 4)

Canal 4.

OT_CANAL_5_MASK

 OT_CHANNEL_5_MASK (1 << 5)

Canal 5.

OT_CANAL_6_MASK

 OT_CHANNEL_6_MASK (1 << 6)

Canal 6.

OT_CANAL_7_MASK

 OT_CHANNEL_7_MASK (1 << 7)

Canal 7.

OT_CANAL_8_MASK

 OT_CHANNEL_8_MASK (1 << 8)

Canal 8.

OT_CANAL_9_MASK

 OT_CHANNEL_9_MASK (1 << 9)

Canal 9.

PR_EXT_PAN_ID_SIZE

 OT_EXT_PAN_ID_SIZE 8

Tamanho de um código PAN de thread (bytes)

Pr_MESH_LOCAL_PREFIX_SIZE

 OT_MESH_LOCAL_PREFIX_SIZE OT_IP6_PREFIX_SIZE

Tamanho do prefixo local da malha (bytes)

PRO_NETWORK_KEY_SIZE

 OT_NETWORK_KEY_SIZE 16

Tamanho da chave de rede Thread (bytes)

PR_NETWORK_NAME_MAX_SIZE

 OT_NETWORK_NAME_MAX_SIZE 16

Tamanho máximo do campo Nome da rede Thread (bytes)

OT_OPERATIONAL_DATASET_MAX_LENGTH

 OT_OPERATIONAL_DATASET_MAX_LENGTH 254

Tamanho máximo do conjunto de dados operacional em bytes.

PR_PSKC_MAX_SIZE

 OT_PSKC_MAX_SIZE 16

Tamanho máximo do PSKc (bytes)

Recursos

Os tópicos de referência da API OpenThread são originados do código-fonte, disponível no GitHub. Para mais informações ou para contribuir com nossa documentação, consulte Recursos.