Conjunto de dados operacional

Inclui funções para a API Operational Dataset.

Resumo

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

Para builds FTD e MTD, a API Operational Datasets 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
}
enum
Representa os tipos TLV do meshcop.

Typedefs

otChannelMask typedef
uint32_t
Representa a máscara do 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(*
Este ponteiro da função de callback é chamado quando uma solicitação de atualização do conjunto de dados é concluída, relatando o status de sucesso ou falha da solicitação de atualização do conjunto de dados.
otExtendedPanId typedef
Representa um ID de PAN estendido.
otMeshLocalPrefix typedef
Representa um prefixo local da rede mesh.
otMeshcopTlvType typedef
Representa os tipos TLV do 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

remotas

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 para usar 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 senha, nome de rede e ID 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 temporizador 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 em andamento (se houver) do conjunto de dados operacional.
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 nula encerrada.

Estruturas

otExtendedPanId

Representa um ID de PAN estendido.

otNetworkKey

Representa uma chave de rede Thread.

otNetworkName

Representa um nome de rede.

otOperationalDataset

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

Representa um conjunto de dados operacional ativo ou pendente.

otPskc

Representa PSKc.

otSecurityPolicy

Representar a Política de Segurança.

otTimestamp

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

Enumerações

otMeshcopTlvType

 otMeshcopTlvType

Representa os tipos TLV do meshcop.

Propriedades
OT_MESHCOP_TLV_ACTIVETIMESTAMP

TLV do carimbo de data/hora ativo do meshcop

OT_MESHCOP_TLV_BORDER_AGENT_RLOC

Localizador de agente de borda do meshcop (TLV)

OT_MESHCOP_TLV_CHANNEL

TLV do canal meshcop

OT_MESHCOP_TLV_CHANNELMASK

TLV da máscara de canal do meshcop

OT_MESHCOP_TLV_COMMISSIONER_ID

ID do comissário do meshcop (TLV)

OT_MESHCOP_TLV_COMMISSIONER_UDP_PORT

Porta UDP do meshcop Commissioner TLV

OT_MESHCOP_TLV_COMM_SESSION_ID

ID da sessão do comissário do meshcop TLV

OT_MESHCOP_TLV_COUNT

TLV de contagem de meshcop

OT_MESHCOP_TLV_DELAYTIMER

TLV do timer de atraso meshcop

OT_MESHCOP_TLV_DISCOVERYREQUEST

TLV da solicitação de descoberta do meshcop

OT_MESHCOP_TLV_DISCOVERYRESPONSE

TLV da resposta de descoberta do meshcop

OT_MESHCOP_TLV_ENERGY_LIST

TLV da lista de energia do meshcop

OT_MESHCOP_TLV_EXTPANID

ID de movimentação estendida do meshcop TLV

OT_MESHCOP_TLV_GET

O meshcop recebe o TLV

OT_MESHCOP_TLV_IPV6_ADDRESS_TLV

TLV do endereço IPv6 meshcop

OT_MESHCOP_TLV_JOINERADVERTISEMENT

TLV do anúncio do Joiner do meshcop

OT_MESHCOP_TLV_JOINER_DTLS

TLV de encapsulamento de encapsulamento meshcop Joiner

OT_MESHCOP_TLV_JOINER_IID

Combinador meshcop IID TLV

OT_MESHCOP_TLV_JOINER_RLOC

Localizador de roteadores do Joiner meshcop TLV

OT_MESHCOP_TLV_JOINER_ROUTER_KEK

Roteador meshcop Joiner KEK TLV

OT_MESHCOP_TLV_JOINER_UDP_PORT

Porta UDP do Joiner meshcop TLV

OT_MESHCOP_TLV_MESHLOCALPREFIX

Prefixo local da malha meshcop TLV

OT_MESHCOP_TLV_NETWORKKEY

TLV da chave de rede meshcop

OT_MESHCOP_TLV_NETWORKNAME

TLV do nome da rede meshcop

OT_MESHCOP_TLV_NETWORK_KEY_SEQUENCE

TLV da sequência de chaves de rede meshcop

OT_MESHCOP_TLV_PANID

ID de Pan do meshcop TLV

OT_MESHCOP_TLV_PENDINGTIMESTAMP

TLV com carimbo de data/hora pendente do meshcop

OT_MESHCOP_TLV_PERIOD

TLV do período meshcop

OT_MESHCOP_TLV_PROVISIONING_URL

TLV do URL de provisionamento do meshcop

OT_MESHCOP_TLV_PSKC

meshcop PSKc TLV

OT_MESHCOP_TLV_SCAN_DURATION

Duração da verificação do meshcop TLV

OT_MESHCOP_TLV_SECURITYPOLICY

TLV da política de segurança do meshcop

OT_MESHCOP_TLV_STATE

TLV do estado do meshcop

OT_MESHCOP_TLV_STEERING_DATA

TLV de dados de direcionamento do meshcop

OT_MESHCOP_TLV_UDP_ENCAPSULATION_TLV

TLV do encapsulamento UDP meshcop

OT_MESHCOP_TLV_VENDOR_DATA_TLV

TLV de dados do fornecedor do meshcop

OT_MESHCOP_TLV_VENDOR_MODEL_TLV

TLV do modelo de fornecedor do meshcop

OT_MESHCOP_TLV_VENDOR_NAME_TLV

Nome do fornecedor do meshcop TLV

OT_MESHCOP_TLV_VENDOR_STACK_VERSION_TLV

Versão do pilha de fornecedor do meshcop TLV

OT_MESHCOP_TLV_VENDOR_SW_VERSION_TLV

Versão SW do fornecedor do meshcop TLV

Typedefs

otChannelMask

uint32_t otChannelMask

Representa a máscara do 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 o 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 durante a análise da resposta.
OT_ERROR_ABORT
A solicitação foi redefinida pelo usuário.
OT_ERROR_RESPONSE_TIMEOUT
Nenhuma resposta ou confirmação foi recebida durante o tempo limite.

otDatasetUpdaterCallback

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

Este ponteiro da função de callback é chamado quando uma solicitação de atualização do conjunto de dados é concluída, relatando 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 estiver 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 ao estado inválido (MLE está desativado). OT_ERROR_ALREADY indica uma 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()).

otExtendedPanId

struct otExtendedPanId otExtendedPanId

Representa um ID de PAN estendido.

otMeshLocalPrefix

otIp6NetworkPrefix otMeshLocalPrefix

Representa um prefixo local da rede mesh.

otMeshcopTlvType

enum otMeshcopTlvType otMeshcopTlvType

Representa os tipos TLV do meshcop.

otNetworkKey

struct otNetworkKey otNetworkKey

Representa uma chave de rede Thread.

otNetworkKeyRef

otCryptoKeyRef otNetworkKeyRef

Esse tipo de dados representa KeyRef para NetworkKey.

Referência à chave

otNetworkName

struct otNetworkName otNetworkName

Representa um nome de rede.

O otNetworkName é uma string C com terminação nula (ou seja, A matriz de caracteres m8 PRECISA terminar com caracteres nulos \0).

otOperationalDataset

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 é codificado em TLV conforme especificado pela linha de execução.

otPskc

struct otPskc otPskc

Representa um PSKc.

otPskcRef

otCryptoKeyRef otPskcRef

Esse tipo de dados representa KeyRef para PSKc.

Referência à chave

otSecurityPolicy

struct otSecurityPolicy otSecurityPolicy

Representar a Política de Segurança.

otTimestamp

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

remotas

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 a ser convertido em TLVs.
[out] aDatasetTlvs
Um ponteiro para os TLVs do conjunto de dados para retornar o resultado.
Valores de retorno
OT_ERROR_NONE
aDataset convertido e atualizado aDatasetTlvs.
OT_ERROR_INVALID_ARGS
aDataset é inválido e não contém carimbos de data/hora ativos ou pendentes.

otDatasetCreateNewNetwork

otError otDatasetCreateNewNetwork(
  otInstance *aInstance,
  otOperationalDataset *aDataset
)

Somente para FTD, cria um novo conjunto de dados operacional para usar 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.

otDatasetGeneratePskc

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

Gera o PSKc a partir de uma determinada senha, nome de rede e ID PAN estendido.

O PSKc é usado para estabelecer a Sessão do Comissário.

Detalhes
Parâmetros
[in] aPassPhrase
A senha de comissionamento.
[in] aNetworkName
O nome da rede para computação PSKc.
[in] aExtPanId
O ID do PAN estendido para computação do PSKc.
[out] aPskc
Um ponteiro para a variável para produzir 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.

otDatasetGetActive

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 o local 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 o local 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
do tempo de atraso mínimo (em ms).

otDatasetGetPending

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 o local onde o conjunto de dados operacional pendente será colocado.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacional 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 o local onde o conjunto de dados operacional pendente será colocado.
Valores de retorno
OT_ERROR_NONE
O conjunto de dados operacional pendente foi recuperado.
OT_ERROR_NOT_FOUND
Nenhum valor correspondente no armazenamento de configurações.

otDatasetIsCommissioned

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 uma rede válida estiver presente 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 os TLVs do conjunto de dados.
[out] aDataset
Um ponteiro para o local onde o conjunto de dados será colocado.
Valores de retorno
OT_ERROR_NONE
aDataset foi definido de 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 devem ser solicitados.
[in] aTlvTypes
Um ponteiro para a matriz que contém outros tipos brutos de TLV a serem solicitados.
[in] aLength
O comprimento de aTlvTypes.
[in] aAddress
Um ponteiro para o destino IPv6, se ele for NULL, vai usar o ALOC líder como padrão.
Valores de retorno
OT_ERROR_NONE
O comando de conjunto de dados meshcop foi enviado.
OT_ERROR_NO_BUFS
Espaço de buffer insuficiente para enviar.

otDatasetSendMgmtActiveSet

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 comprimento dos TLVs.
[in] aCallback
Um ponteiro para uma função que é chamada na recepção de resposta ou no tempo limite.
[in] aContext
Um ponteiro para o contexto específico do aplicativo para aCallback.
Valores de retorno
OT_ERROR_NONE
O comando de 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.

otDatasetSendMgmtPendingGet

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 devem ser solicitados.
[in] aTlvTypes
Um ponteiro para a matriz que contém outros tipos brutos de TLV a serem solicitados.
[in] aLength
O comprimento de aTlvTypes.
[in] aAddress
Um ponteiro para o destino IPv6, se ele for NULL, vai usar o ALOC líder como padrão.
Valores de retorno
OT_ERROR_NONE
O comando de 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 comprimento dos TLVs.
[in] aCallback
Um ponteiro para uma função que é chamada na recepção de resposta ou no tempo limite.
[in] aContext
Um ponteiro para o contexto específico do aplicativo para aCallback.
Valores de retorno
OT_ERROR_NONE
O comando de 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.

otDatasetSetActive

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, estará apenas parcialmente completo.

Se o Thread estiver ativado em um dispositivo que tenha um conjunto de dados ativo parcialmente completo, o dispositivo vai tentar se conectar a uma rede Thread atual usando as informações no conjunto de dados. Apenas a chave de rede Thread é necessária para ser conectada a uma rede.

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

Se o dispositivo for conectado a uma rede Thread, ele recuperará o conjunto de dados ativo completo do pai. Observe que um dispositivo compatível 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 configurar o conjunto de dados operacional ativo.
OT_ERROR_NOT_IMPLEMENTED
A plataforma não implementa funcionalidades 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, estará apenas parcialmente completo.

Se o Thread estiver ativado em um dispositivo que tenha um conjunto de dados ativo parcialmente completo, o dispositivo vai tentar se conectar a uma rede Thread atual usando as informações no conjunto de dados. Apenas a chave de rede Thread é necessária para ser conectada a uma rede.

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

Se o dispositivo for conectado a uma rede Thread, ele recuperará o conjunto de dados ativo completo do pai. Observe que um dispositivo compatível 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 configurar o conjunto de dados operacional ativo.
OT_ERROR_NOT_IMPLEMENTED
A plataforma não implementa funcionalidades de configurações.

otDatasetSetDelayTimerMinimal

otError otDatasetSetDelayTimerMinimal(
  otInstance *aInstance,
  uint32_t aDelayTimerMinimal
)

Somente para FTD, define um temporizador 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
Timer de atraso mínimo definido com sucesso.
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 funcionalidades 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 funcionalidades 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 os 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 em andamento (se houver) do conjunto de dados operacional.

Disponível quando o OPENTHREAD_CONFIG_DATASET_UPDATER_ENABLE estiver 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 estiver 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 estiver ativado.

aDataset precisa conter os campos a serem atualizados e o novo valor deles. Ele não deve conter campos de carimbo de data/hora Ativo ou Pendente. O campo "Atraso" é opcional. Caso não seja informado, um valor padrão (1.000 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 é concluída.
[in] aContext
Um contexto arbitrário passado 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 (MLE está desativado).
OT_ERROR_INVALID_ARGS
aDataset não é válido (contém um 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.

otNetworkNameFromString

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

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

aNameString precisa seguir a codificação UTF-8, e o tamanho do nome da rede não pode ser maior do 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 foi definido de aNameString.
OT_ERROR_INVALID_ARGS
aNameStrng é inválido (muito longo ou não segue a codificação UTF-8).

Macros

OT_CHANNEL_10_MASK

 OT_CHANNEL_10_MASK (1 << 10)

Canal 10.

OT_CHANNEL_11_MASK

 OT_CHANNEL_11_MASK (1 << 11)

Canal 11.

OT_CHANNEL_12_MASK

 OT_CHANNEL_12_MASK (1 << 12)

Canal 12.

OT_CHANNEL_13_MASK

 OT_CHANNEL_13_MASK (1 << 13)

Canal 13.

OT_CHANNEL_14_MASK

 OT_CHANNEL_14_MASK (1 << 14)

Canal 14.

OT_CHANNEL_15_MASK

 OT_CHANNEL_15_MASK (1 << 15)

Canal 15.

OT_CHANNEL_16_MASK

 OT_CHANNEL_16_MASK (1 << 16)

Canal 16.

OT_CHANNEL_17_MASK

 OT_CHANNEL_17_MASK (1 << 17)

Canal 17.

OT_CHANNEL_18_MASK

 OT_CHANNEL_18_MASK (1 << 18)

Canal 18.

OT_CHANNEL_19_MASK

 OT_CHANNEL_19_MASK (1 << 19)

Canal 19.

OT_CHANNEL_1_MASK

 OT_CHANNEL_1_MASK (1 << 1)

Canal 1.

OT_CHANNEL_20_MASK

 OT_CHANNEL_20_MASK (1 << 20)

Canal 20.

OT_CHANNEL_21_MASK

 OT_CHANNEL_21_MASK (1 << 21)

Canal 21.

OT_CHANNEL_22_MASK

 OT_CHANNEL_22_MASK (1 << 22)

Canal 22.

OT_CHANNEL_23_MASK

 OT_CHANNEL_23_MASK (1 << 23)

Canal 23.

OT_CHANNEL_24_MASK

 OT_CHANNEL_24_MASK (1 << 24)

Canal 24.

OT_CHANNEL_25_MASK

 OT_CHANNEL_25_MASK (1 << 25)

Canal 25.

OT_CHANNEL_26_MASK

 OT_CHANNEL_26_MASK (1 << 26)

Canal 26.

OT_CHANNEL_2_MASK

 OT_CHANNEL_2_MASK (1 << 2)

Canal 2.

OT_CHANNEL_3_MASK

 OT_CHANNEL_3_MASK (1 << 3)

Canal 3.

OT_CHANNEL_4_MASK

 OT_CHANNEL_4_MASK (1 << 4)

Canal 4.

OT_CHANNEL_5_MASK

 OT_CHANNEL_5_MASK (1 << 5)

Canal 5.

OT_CHANNEL_6_MASK

 OT_CHANNEL_6_MASK (1 << 6)

Canal 6.

OT_CHANNEL_7_MASK

 OT_CHANNEL_7_MASK (1 << 7)

Canal 7.

OT_CHANNEL_8_MASK

 OT_CHANNEL_8_MASK (1 << 8)

Canal 8.

OT_CHANNEL_9_MASK

 OT_CHANNEL_9_MASK (1 << 9)

Canal 9.

OT_EXT_PAN_ID_SIZE

 OT_EXT_PAN_ID_SIZE 8

Tamanho de um ID PAN de thread (bytes)

OT_MESH_LOCAL_PREFIX_SIZE

 OT_MESH_LOCAL_PREFIX_SIZE OT_IP6_PREFIX_SIZE

Tamanho do prefixo local da rede mesh (bytes)

OT_NETWORK_KEY_SIZE

 OT_NETWORK_KEY_SIZE 16

Tamanho da chave de rede Thread (bytes)

OT_NETWORK_NAME_MAX_SIZE

 OT_NETWORK_NAME_MAX_SIZE 16

Tamanho máximo do campo Thread Network Name (bytes)

OT_OPERATIONAL_DATASET_MAX_LENGTH

 OT_OPERATIONAL_DATASET_MAX_LENGTH 254

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

OT_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.