Istanza

Questo modulo include funzioni che controllano l'istanza OpenThread.

Riepilogo

Typedef

otChangedFlags typedef
uint32_t
Rappresenta un campo di bit che indica uno stato o una configurazione specifici che sono cambiati.
otInstance typedef
struct otInstance
Rappresenta la struttura dell'istanza OpenThread.
otStateChangedCallback)(otChangedFlags aFlags, void *aContext) typedef
void(*
Il puntatore viene chiamato per notificare determinate modifiche di configurazione o stato all'interno di OpenThread.

Funzioni

otGetRadioVersionString(otInstance *aInstance)
const char *
Restituisce la stringa della versione radio OpenThread.
otGetVersionString(void)
const char *
Restituisce la stringa di versione OpenThread.
otInstanceErasePersistentInfo(otInstance *aInstance)
Cancella tutte le informazioni permanenti OpenThread (impostazioni di rete) memorizzate nella memoria permanente.
otInstanceFactoryReset(otInstance *aInstance)
void
Elimina tutte le impostazioni archiviate nella memoria permanente e attiva il ripristino della piattaforma.
otInstanceFinalize(otInstance *aInstance)
void
Disattiva la libreria OpenThread.
otInstanceGetId(otInstance *aInstance)
uint32_t
Consente di ottenere l'identificatore di istanza.
otInstanceGetUptime(otInstance *aInstance)
uint64_t
Restituisce l'uptime attuale dell'istanza (in msec).
otInstanceGetUptimeAsString(otInstance *aInstance, char *aBuffer, uint16_t aSize)
void
Restituisce l'uptime attuale dell'istanza come stringa leggibile.
otInstanceInit(void *aInstanceBuffer, size_t *aInstanceBufferSize)
Inizializza la libreria OpenThread.
otInstanceInitMultiple(uint8_t aIdx)
Inizializza l'istanza OpenThread.
otInstanceInitSingle(void)
Inizializza la singola istanza statica della libreria OpenThread.
otInstanceIsInitialized(otInstance *aInstance)
bool
Indica se l'istanza è valida/inizializzata o meno.
otInstanceReset(otInstance *aInstance)
void
Attiva la reimpostazione della piattaforma.
otInstanceResetRadioStack(otInstance *aInstance)
void
Consente di reimpostare gli stati interni dello stack radio OpenThread.
otInstanceResetToBootloader(otInstance *aInstance)
Attiva il ripristino della piattaforma in modalità bootloader, se supportata.
otRemoveStateChangeCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
void
Rimuove un callback per indicare quando una determinata configurazione o stato cambia all'interno di OpenThread.
otSetStateChangedCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
Registra un callback per indicare quando una determinata configurazione o stato cambia all'interno di OpenThread.

Typedef

otChangedFlags

uint32_t otChangedFlags

Rappresenta un campo di bit che indica uno stato o una configurazione specifici che sono cambiati.

Vedi le definizioni di OT_CHANGED_*.

otInstance

struct otInstance otInstance

Rappresenta la struttura dell'istanza OpenThread.

otStateChangedCallback

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

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

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

Funzioni

otGetRadioVersionString

const char * otGetRadioVersionString(
  otInstance *aInstance
)

Restituisce la stringa della versione radio OpenThread.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
Restituisce
Un puntatore alla versione radio OpenThread.

otGetVersionString

const char * otGetVersionString(
  void
)

Restituisce la stringa di versione OpenThread.

Dettagli
Restituisce
Un puntatore alla versione OpenThread.

otInstanceErasePersistentInfo

otError otInstanceErasePersistentInfo(
  otInstance *aInstance
)

Cancella tutte le informazioni permanenti OpenThread (impostazioni di rete) memorizzate nella memoria permanente.

L'eliminazione ha esito positivo solo se il dispositivo è nello stato/ruolo disabled.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
Valori restituiti
OT_ERROR_NONE
Tutte le informazioni/lo stato persistenti sono stati cancellati.
OT_ERROR_INVALID_STATE
Il dispositivo non è in stato/ruolo disabled.

otInstanceFactoryReset

void otInstanceFactoryReset(
  otInstance *aInstance
)

Elimina tutte le impostazioni archiviate nella memoria permanente e attiva il ripristino della piattaforma.

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

otInstanceFinalize

void otInstanceFinalize(
  otInstance *aInstance
)

Disattiva la libreria OpenThread.

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

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

otInstanceGetId

uint32_t otInstanceGetId(
  otInstance *aInstance
)

Consente di ottenere l'identificatore di istanza.

L'identificatore di istanza è impostato su un valore casuale quando viene creata l'istanza e il suo valore non cambierà dopo l'inizializzazione.

Dettagli
Restituisce
L'identificatore dell'istanza.

otInstanceGetUptime

uint64_t otInstanceGetUptime(
  otInstance *aInstance
)

Restituisce l'uptime attuale dell'istanza (in msec).

Richiede l'attivazione di OPENTHREAD_CONFIG_UPTIME_ENABLE.

L'uptime è espresso sotto forma di numero di millisecondi dall'inizializzazione dell'istanza OpenThread.

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

otInstanceGetUptimeAsString

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

Restituisce l'uptime attuale dell'istanza come stringa leggibile.

Richiede l'attivazione 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) oppure "

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

Se la stringa risultante non rientra in aBuffer (all'interno dei suoi aSize caratteri), la stringa viene troncata, ma la stringa restituita è sempre con terminazione null.

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

otInstanceInit

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

Inizializza la libreria OpenThread.

Inizializza OpenThread e lo prepara per le successive chiamate API OpenThread. Questa funzione deve essere chiamata prima di qualsiasi altra chiamata a OpenThread.

È disponibile e può essere utilizzato solo quando è abilitato il supporto per più istanze OpenThread.

Dettagli
Parametri
[in] aInstanceBuffer
Il buffer da utilizzare per OpenThread per l'allocazione della struttura otInstance.
[in,out] aInstanceBufferSize
Al momento dell'input, le dimensioni di aInstanceBuffer. Nell'output, se lo spazio non è sufficiente per otInstance, il numero di byte richiesti per otInstance.
Restituisce
Un puntatore alla nuova istanza OpenThread.
Vedi anche:
otInstanceFinalize

otInstanceInitMultiple

otInstance * otInstanceInitMultiple(
  uint8_t aIdx
)

Inizializza l'istanza OpenThread.

Questa funzione inizializza OpenThread e la prepara per le successive chiamate API OpenThread. Questa funzione deve essere chiamata prima di qualsiasi altra chiamata a OpenThread. Questo metodo utilizza il buffer statico per inizializzare l'istanza OpenThread.

Questa funzione è disponibile e può essere utilizzata solo quando è abilitato il supporto di più istanze statiche OpenThread (OPENTHREAD_CONFIG_MULTIPLE_STATIC_INSTANCE_ENABLE)

Dettagli
Parametri
[in] aIdx
L'indice dell'istanza OpenThread da inizializzare.
Restituisce
Un puntatore alla nuova istanza OpenThread.

otInstanceInitSingle

otInstance * otInstanceInitSingle(
  void
)

Inizializza la singola istanza statica della libreria OpenThread.

Inizializza OpenThread e lo prepara per le successive chiamate API OpenThread. Questa funzione deve essere chiamata prima di qualsiasi altra chiamata a OpenThread.

È disponibile e può essere utilizzato solo quando il supporto per più istanze OpenThread è disabilitato.

Dettagli
Restituisce
Un puntatore alla singola istanza OpenThread.

otInstanceIsInitialized

bool otInstanceIsInitialized(
  otInstance *aInstance
)

Indica se l'istanza è valida/inizializzata o meno.

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

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

otInstanceReset

void otInstanceReset(
  otInstance *aInstance
)

Attiva la reimpostazione della piattaforma.

Il processo di ripristino assicura che tutte le informazioni e lo stato OpenThread (memorizzati nella memoria volatile) vengano cancellati. Tieni presente che otPlatformReset non cancella informazioni o stati permanenti salvati nella memoria permanente.

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

otInstanceResetRadioStack

void otInstanceResetRadioStack(
  otInstance *aInstance
)

Consente di reimpostare gli stati interni dello stack radio OpenThread.

I callback e le configurazioni vengono conservati.

Questa API è disponibile solo in build radio (OPENTHREAD_RADIO = 1).

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

otInstanceResetToBootloader

otError otInstanceResetToBootloader(
  otInstance *aInstance
)

Attiva il ripristino della piattaforma in modalità bootloader, se supportata.

Richiede OPENTHREAD_CONFIG_PLATFORM_BOOTLOADER_MODE_ENABLE.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
Valori restituiti
OT_ERROR_NONE
Ripristino del bootloader completato.
OT_ERROR_BUSY
Operazione non riuscita perché è in corso un'altra operazione.
OT_ERROR_NOT_CAPABLE
Impossibile reimpostare il bootloader.

otRemoveStateChangeCallback

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

Rimuove un callback per indicare quando una determinata configurazione o stato cambia all'interno di OpenThread.

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

otSetStateChangedCallback

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

Registra un callback per indicare quando una determinata configurazione o stato cambia all'interno di OpenThread.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
[in] aCallback
Un puntatore a una funzione richiamata con determinate modifiche di configurazione o stato.
[in] aContext
Un puntatore al contesto specifico dell'applicazione.
Valori restituiti
OT_ERROR_NONE
Il callback è stato aggiunto all'elenco dei callback.
OT_ERROR_ALREADY
Il callback è già stato registrato.
OT_ERROR_NO_BUFS
Impossibile aggiungere il callback a causa di vincoli delle risorse.

Macro

OT_CHANGED_ACTIVE_DATASET

 OT_CHANGED_ACTIVE_DATASET (1U << 28)

Set di dati operativo attivo modificato.

OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL

 OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL (1U << 21)

Il nuovo canale Thread in sospeso del Gestore canali è stato modificato.

OT_CHANGED_COMMISSIONER_STATE

 OT_CHANGED_COMMISSIONER_STATE (1U << 23)

Lo stato del commissario è cambiato.

OT_CHANGED_IP6_ADDRESS_ADDED

 OT_CHANGED_IP6_ADDRESS_ADDED (1U << 0)

L'indirizzo IPv6 è stato aggiunto.

OT_CHANGED_IP6_ADDRESS_REMOVED

 OT_CHANGED_IP6_ADDRESS_REMOVED (1U << 1)

L'indirizzo IPv6 è stato rimosso.

OT_CHANGED_IP6_MULTICAST_SUBSCRIBED

 OT_CHANGED_IP6_MULTICAST_SUBSCRIBED (1U << 12)

È stata effettuata la sottoscrizione a un indirizzo multicast IPv6.

OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED

 OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED (1U << 13)

Iscrizione a un indirizzo multicast IPv6 annullata.

OT_CHANGED_JOINER_STATE

 OT_CHANGED_JOINER_STATE (1U << 27)

Stato del joiner modificato.

OT_CHANGED_NAT64_TRANSLATOR_STATE

 OT_CHANGED_NAT64_TRANSLATOR_STATE (1U << 30)

Lo stato del traduttore NAT64 è cambiato.

OT_CHANGED_NETWORK_KEY

 OT_CHANGED_NETWORK_KEY (1U << 18)

Chiave di rete modificata.

 OT_CHANGED_PARENT_LINK_QUALITY (1U << 31)

Qualità del link principale modificata.

OT_CHANGED_PENDING_DATASET

 OT_CHANGED_PENDING_DATASET (1U << 29)

Set di dati operativo in attesa modificato.

OT_CHANGED_PSKC

 OT_CHANGED_PSKC (1U << 19)

PSKc modificata.

OT_CHANGED_SECURITY_POLICY

 OT_CHANGED_SECURITY_POLICY (1U << 20)

Criterio di sicurezza modificato.

OT_CHANGED_SUPPORTED_CHANNEL_MASK

 OT_CHANGED_SUPPORTED_CHANNEL_MASK (1U << 22)

Maschera del canale supportata modificata.

OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL

 OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL (1U << 26)

Configurazione del router backbone locale modificata.

OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE

 OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE (1U << 25)

Stato del router backbone modificato.

OT_CHANGED_THREAD_CHANNEL

 OT_CHANGED_THREAD_CHANNEL (1U << 14)

Canale di rete Thread modificato.

OT_CHANGED_THREAD_CHILD_ADDED

 OT_CHANGED_THREAD_CHILD_ADDED (1U << 10)

Il bambino è stato aggiunto.

OT_CHANGED_THREAD_CHILD_REMOVED

 OT_CHANGED_THREAD_CHILD_REMOVED (1U << 11)

Il bambino è stato rimosso.

OT_CHANGED_THREAD_EXT_PANID

 OT_CHANGED_THREAD_EXT_PANID (1U << 17)

ID PAN esteso della rete Thread modificato.

OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER

 OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER (1U << 8)

Sequenza di chiavi Thread modificata.

OT_CHANGED_THREAD_LL_ADDR

 OT_CHANGED_THREAD_LL_ADDR (1U << 3)

L'indirizzo locale rispetto al collegamento è cambiato.

OT_CHANGED_THREAD_ML_ADDR

 OT_CHANGED_THREAD_ML_ADDR (1U << 4)

L'indirizzo mesh locale è stato modificato.

OT_CHANGED_THREAD_NETDATA

 OT_CHANGED_THREAD_NETDATA (1U << 9)

Dati di rete Thread modificati.

OT_CHANGED_THREAD_NETIF_STATE

 OT_CHANGED_THREAD_NETIF_STATE (1U << 24)

Stato dell'interfaccia di rete Thread modificato.

OT_CHANGED_THREAD_NETWORK_NAME

 OT_CHANGED_THREAD_NETWORK_NAME (1U << 16)

Nome della rete Thread modificato.

OT_CHANGED_THREAD_PANID

 OT_CHANGED_THREAD_PANID (1U << 15)

L'ID PAN della rete Thread è stato modificato.

OT_CHANGED_THREAD_PARTITION_ID

 OT_CHANGED_THREAD_PARTITION_ID (1U << 7)

ID partizione modificato.

OT_CHANGED_THREAD_RLOC_ADDED

 OT_CHANGED_THREAD_RLOC_ADDED (1U << 5)

RLOC è stato aggiunto.

OT_CHANGED_THREAD_RLOC_REMOVED

 OT_CHANGED_THREAD_RLOC_REMOVED (1U << 6)

RLOC rimosso.

OT_CHANGED_THREAD_ROLE

 OT_CHANGED_THREAD_ROLE (1U << 2)

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

OT_UPTIME_STRING_SIZE

 OT_UPTIME_STRING_SIZE 24

Dimensione consigliata per la rappresentazione stringa dell'uptime.

Risorse

Gli argomenti di riferimento dell'API OpenThread provengono dal codice sorgente, disponibile su GitHub. Per saperne di più o per contribuire alla nostra documentazione, consulta la sezione Risorse.