Istanza

Questo modulo include funzioni che controllano l'istanza di OpenThread.

Riepilogo

Enumerazioni

anonymous enum{
  OT_CHANGED_IP6_ADDRESS_ADDED = 1 << 0,
  OT_CHANGED_IP6_ADDRESS_REMOVED = 1 << 1,
  OT_CHANGED_THREAD_ROLE = 1 << 2,
  OT_CHANGED_THREAD_LL_ADDR = 1 << 3,
  OT_CHANGED_THREAD_ML_ADDR = 1 << 4,
  OT_CHANGED_THREAD_RLOC_ADDED = 1 << 5,
  OT_CHANGED_THREAD_RLOC_REMOVED = 1 << 6,
  OT_CHANGED_THREAD_PARTITION_ID = 1 << 7,
  OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER = 1 << 8,
  OT_CHANGED_THREAD_NETDATA = 1 << 9,
  OT_CHANGED_THREAD_CHILD_ADDED = 1 << 10,
  OT_CHANGED_THREAD_CHILD_REMOVED = 1 << 11,
  OT_CHANGED_IP6_MULTICAST_SUBSCRIBED = 1 << 12,
  OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED = 1 << 13,
  OT_CHANGED_THREAD_CHANNEL = 1 << 14,
  OT_CHANGED_THREAD_PANID = 1 << 15,
  OT_CHANGED_THREAD_NETWORK_NAME = 1 << 16,
  OT_CHANGED_THREAD_EXT_PANID = 1 << 17,
  OT_CHANGED_NETWORK_KEY = 1 << 18,
  OT_CHANGED_PSKC = 1 << 19,
  OT_CHANGED_SECURITY_POLICY = 1 << 20,
  OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL = 1 << 21,
  OT_CHANGED_SUPPORTED_CHANNEL_MASK = 1 << 22,
  OT_CHANGED_COMMISSIONER_STATE = 1 << 23,
  OT_CHANGED_THREAD_NETIF_STATE = 1 << 24,
  OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE = 1 << 25,
  OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL = 1 << 26,
  OT_CHANGED_JOINER_STATE = 1 << 27,
  OT_CHANGED_ACTIVE_DATASET = 1 << 28,
  OT_CHANGED_PENDING_DATASET = 1 << 29
}
enum
Questa enumerazione definisce i flag trasmessi come parte di otStateChangedCallback.

Defdef

otChangedFlags tipodef
uint32_t
Questo tipo rappresenta un campo a bit che indica uno stato/configurazione specifico modificato.
otInstance tipodef
struct otInstance
Questa struttura rappresenta la struttura delle istanze OpenThread.
otStateChangedCallback)(otChangedFlags aFlags, void *aContext) tipodef
void(*
Il puntatore di questa funzione viene chiamato per notificare determinate modifiche dello stato o della configurazione all'interno di OpenThread.

Functions

otGetRadioVersionString(otInstance *aInstance)
const char *
Questa funzione riceve la stringa di versione radio OpenThread.
otGetVersionString(void)
const char *
Questa funzione riceve la stringa di versione OpenThread.
otInstanceErasePersistentInfo(otInstance *aInstance)
Questa funzione cancella tutte le informazioni persistenti di OpenThread (impostazioni di rete) archiviate nella memoria non volatile.
otInstanceFactoryReset(otInstance *aInstance)
void
Questo metodo elimina tutte le impostazioni memorizzate sulla memoria non volatile e attiva il ripristino della piattaforma.
otInstanceFinalize(otInstance *aInstance)
void
Questa funzione disabilita la libreria OpenThread.
otInstanceGetUptime(otInstance *aInstance)
uint64_t
Questa funzione restituisce il tempo di attività dell'istanza attuale (in msec).
otInstanceGetUptimeAsString(otInstance *aInstance, char *aBuffer, uint16_t aSize)
void
Questa funzione restituisce il tempo di attività dell'istanza attuale come stringa leggibile dall'utente.
otInstanceInit(void *aInstanceBuffer, size_t *aInstanceBufferSize)
Questa funzione inizializza la libreria OpenThread.
otInstanceInitSingle(void)
Questa funzione inizializza la singola istanza statica della libreria OpenThread.
otInstanceIsInitialized(otInstance *aInstance)
bool
Questa funzione indica se l'istanza è valida o inizializzata.
otInstanceReset(otInstance *aInstance)
void
Questo metodo attiva il ripristino della piattaforma.
otInstanceResetRadioStack(otInstance *aInstance)
void
Questo metodo reimposta gli stati interni dello stack radio OpenThread.
otRemoveStateChangeCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
void
Questa funzione rimuove un callback per indicare quando determinati stati o configurazioni cambiano all'interno di OpenThread.
otSetStateChangedCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
Questa funzione registra un callback per indicare quando cambiano la configurazione o lo stato all'interno di OpenThread.

Enumerazioni

enumerazione anonima

 anonymous enum

Questa enumerazione definisce i flag trasmessi come parte di otStateChangedCallback.

Proprietà
OT_CHANGED_ACTIVE_DATASET

Set di dati operativo attivo modificato.

OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL

Nuovo canale Thread in attesa cambiato in Gestione dei canali.

OT_CHANGED_COMMISSIONER_STATE

Stato del commissario modificato.

OT_CHANGED_IP6_ADDRESS_ADDED

Indirizzo IPv6 aggiunto.

OT_CHANGED_IP6_ADDRESS_REMOVED

L'indirizzo IPv6 è stato rimosso.

OT_CHANGED_IP6_MULTICAST_SUBSCRIBED

Iscrizione effettuata a un indirizzo multicast IPv6.

OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED

Iscrizione annullata a un indirizzo multicast IPv6.

OT_CHANGED_JOINER_STATE

Stato joiner modificato.

OT_CHANGED_NETWORK_KEY

Chiave di rete modificata.

OT_CHANGED_PENDING_DATASET

Set di dati operativo in attesa modificato.

OT_CHANGED_PSKC

PSKc modificato.

OT_CHANGED_SECURITY_POLICY

Criterio di sicurezza modificato.

OT_CHANGED_SUPPORTED_CHANNEL_MASK

Maschera del canale supportata modificata.

OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL

Configurazione del router backbone locale modificata.

OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE

Stato del router Backbone modificato.

OT_CHANGED_THREAD_CHANNEL

Canale di rete del thread modificato.

OT_CHANGED_THREAD_CHILD_ADDED

Elemento secondario aggiunto.

OT_CHANGED_THREAD_CHILD_REMOVED

Il bambino è stato rimosso.

OT_CHANGED_THREAD_EXT_PANID

ID PAN esteso della rete di thread modificato.

OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER

Sequenza di chiavi thread modificata.

OT_CHANGED_THREAD_LL_ADDR

L'indirizzo locale rispetto al collegamento è cambiato.

OT_CHANGED_THREAD_ML_ADDR

L'indirizzo mesh locale è cambiato.

OT_CHANGED_THREAD_NETDATA

Dati di rete in thread modificati.

OT_CHANGED_THREAD_NETIF_STATE

Stato dell'interfaccia di rete di thread modificato.

OT_CHANGED_THREAD_NETWORK_NAME

Nome della rete di thread modificato.

OT_CHANGED_THREAD_PANID

ID PAN rete Thread modificato.

OT_CHANGED_THREAD_PARTITION_ID

ID partizione modificato.

OT_CHANGED_THREAD_RLOC_ADDED

RLOC aggiunto.

OT_CHANGED_THREAD_RLOC_REMOVED

RLOC è stato rimosso.

OT_CHANGED_THREAD_ROLE

Ruolo (disattivato, scollegato, secondario, router, leader) modificato.

Defdef

otChangedFlags

uint32_t otChangedFlags

Questo tipo rappresenta un campo a bit che indica uno stato/configurazione specifico modificato.

Vedi le definizioni di OT_CHANGED_*.

OtInstance

struct otInstance otInstance

Questa struttura rappresenta la struttura delle istanze OpenThread.

OtStateChangedCallback

void(* otStateChangedCallback)(otChangedFlags aFlags, void *aContext)

Il puntatore di questa funzione viene chiamato per notificare determinate modifiche dello stato o della configurazione all'interno di OpenThread.

Dettagli
Parametri
[in] aFlags
Un campo di bit che indica uno stato specifico modificato. Vedi le definizioni di OT_CHANGED_*.
[in] aContext
Un puntatore sul contesto specifico dell'applicazione.

Functions

otGetRadioVersionString

const char * otGetRadioVersionString(
  otInstance *aInstance
)

Questa funzione riceve la stringa di versione radio OpenThread.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.
Restituisce
Un puntatore che rimanda alla versione radio di OpenThread.

otGetVersionString

const char * otGetVersionString(
  void
)

Questa funzione riceve la stringa di versione OpenThread.

Dettagli
Restituisce
Un puntatore alla versione OpenThread.

OtInstance comparire solo le informazioni persistenti

otError otInstanceErasePersistentInfo(
  otInstance *aInstance
)

Questa funzione cancella tutte le informazioni persistenti di OpenThread (impostazioni di rete) archiviate nella memoria non volatile.

Il reset è riuscito solo se il dispositivo è in stato/ruolo disabled.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.
Valori di ritorno
OT_ERROR_NONE
Tutte le informazioni/lo stato persistenti sono state cancellate.
OT_ERROR_INVALID_STATE
Il dispositivo non è in stato/ruolo disabled.

Ripristino istanza di fabbrica

void otInstanceFactoryReset(
  otInstance *aInstance
)

Questo metodo elimina tutte le impostazioni memorizzate sulla memoria non volatile e attiva il ripristino della piattaforma.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.

OtInstanceFinalize

void otInstanceFinalize(
  otInstance *aInstance
)

Questa funzione disabilita la libreria OpenThread.

Chiama questa funzione quando OpenThread non è più in uso.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.

OtInstanceGetUptime

uint64_t otInstanceGetUptime(
  otInstance *aInstance
)

Questa funzione restituisce il tempo di attività dell'istanza attuale (in msec).

Questa funzione richiede l'abilitazione di OPENTHREAD_CONFIG_UPTIME_ENABLE.

Il tempo di attività è espresso come numero di millisecondi da quando l'istanza di OpenThread è stata inizializzata.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.
Restituisce
Tempo di attività (numero di millisecondi).

otInstanceGetUptimeAsString

void otInstanceGetUptimeAsString(
  otInstance *aInstance,
  char *aBuffer,
  uint16_t aSize
)

Questa funzione restituisce il tempo di attività dell'istanza attuale come stringa leggibile dall'utente.

Questa funzione richiede l'abilitazione di OPENTHREAD_CONFIG_UPTIME_ENABLE.

La stringa segue il formato "::." per ore, minuti, secondi e millisecondi (se il tempo di attività è inferiore a un giorno) o "

d.::." (se più lungo di un giorno).

Se la stringa risultante non rientra in aBuffer (entro i suoi caratteri aSize), la stringa viene troncata, ma la stringa restituita è sempre null-terminata.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.
[out] aBuffer
Un puntatore a un array di caratteri per generare la stringa.
[in] aSize
La dimensione di aBuffer (in byte). Opzione consigliata di utilizzare OT_UPTIME_STRING_SIZE.

OtInstanceInit

otInstance * otInstanceInit(
  void *aInstanceBuffer,
  size_t *aInstanceBufferSize
)

Questa funzione inizializza la libreria OpenThread.

Questa funzione inizializza OpenThread e lo prepara per le chiamate API OpenThread successive. Questa funzione deve essere chiamata prima di tutte le altre chiamate a OpenThread.

Questa funzione è disponibile e può essere utilizzata solo quando è supportato il supporto per più istanze OpenThread.

Dettagli
Parametri
[in] aInstanceBuffer
Il buffer per OpenThread da utilizzare per assegnare la struttura otInstance.
[in,out] aInstanceBufferSize
All'input, le dimensioni di aInstanceBuffer. Nell'output, se lo spazio non è sufficiente per otInstance, il numero di byte necessari per otInstance.
Restituisce
Un puntatore sulla nuova istanza OpenThread.
Vedi anche:
otInstanceFinalize

otInstanceInitSingle

otInstance * otInstanceInitSingle(
  void
)

Questa funzione inizializza la singola istanza statica della libreria OpenThread.

Questa funzione inizializza OpenThread e lo prepara per le chiamate API OpenThread successive. Questa funzione deve essere chiamata prima di tutte le altre chiamate a OpenThread.

Questa funzione è disponibile e può essere utilizzata solo quando il supporto per più istanze OpenThread è disabilitato.

Dettagli
Restituisce
Un puntatore sulla singola istanza OpenThread.

otInstanceIsInitialized

bool otInstanceIsInitialized(
  otInstance *aInstance
)

Questa funzione indica se l'istanza è valida o inizializzata.

L'istanza è considerata valida se viene acquisita e inizializzata utilizzando otInstanceInitSingle() (in una singola istanza dell'istanza) o otInstanceInit() (in caso multi-istanza). Una chiamata successiva a otInstanceFinalize() fa sì che l'istanza venga considerata non inizializzata.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.
Restituisce
TRUE se l'istanza specificata è valida/inizializzazione, altrimenti FALSE.

OtInstanceReimposta

void otInstanceReset(
  otInstance *aInstance
)

Questo metodo attiva il ripristino della piattaforma.

Il processo di reimpostazione assicura che tutti gli stati/informazioni di OpenThread (memorizzati nella memoria volatile) vengano cancellati. Tieni presente che otPlatformReset non cancella stati o informazioni permanenti salvati nella memoria non volatile.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.

OtInstanceResetRadioStack

void otInstanceResetRadioStack(
  otInstance *aInstance
)

Questo metodo reimposta gli stati interni dello stack radio OpenThread.

Callback e configurazioni vengono conservati.

Questa API è disponibile soltanto nelle build radio (OPENTHREAD_RADIO = 1).

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.

OtRemoveStateChangeCallback

void otRemoveStateChangeCallback(
  otInstance *aInstance,
  otStateChangedCallback aCallback,
  void *aContext
)

Questa funzione rimuove un callback per indicare quando determinati stati o configurazioni cambiano all'interno di OpenThread.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.
[in] aCallback
Un puntatore a una funzione che viene richiamata con determinate modifiche di configurazione o stato.
[in] aContext
Un puntatore sul contesto specifico dell'applicazione.

OtSetStateChangedCallback

otError otSetStateChangedCallback(
  otInstance *aInstance,
  otStateChangedCallback aCallback,
  void *aContext
)

Questa funzione registra un callback per indicare quando cambiano la configurazione o lo stato all'interno di OpenThread.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza di OpenThread.
[in] aCallback
Un puntatore a una funzione che viene richiamata con determinate modifiche di configurazione o stato.
[in] aContext
Un puntatore sul contesto specifico dell'applicazione.
Valori di ritorno
OT_ERROR_NONE
Aggiunta del callback all'elenco di callback.
OT_ERROR_ALREADY
La richiamata è già stata registrata.
OT_ERROR_NO_BUFS
Impossibile aggiungere il callback a causa di vincoli delle risorse.

Macro

OT_UPTIME_STRING_SIZE

 OT_UPTIME_STRING_SIZE 24

Dimensione consigliata per la rappresentazione della stringa del tempo di attività.

Risorse

Gli argomenti di riferimento per l'API OpenThread provengono dal codice sorgente, disponibile su GitHub. Per ulteriori informazioni o per contribuire alla nostra documentazione, consulta la sezione Risorse.