Instance

Ce module inclut des fonctions qui contrôlent l'instance OpenThread.

Résumé

Énumérations

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,
  OT_CHANGED_NAT64_TRANSLATOR_STATE = 1 << 30
}
enum
Cette énumération définit les indicateurs transmis dans le cadre de otStateChangedCallback.

Typedefs

otChangedFlags typedef
uint32_t
Ce type représente un champ de bits indiquant un état ou une configuration spécifiques qui ont changé.
otInstance typedef
struct otInstance
Cette structure représente la structure d'instance OpenThread.
otStateChangedCallback)(otChangedFlags aFlags, void *aContext) typedef
void(*
Ce pointeur de fonction est appelé pour avertir certains changements de configuration ou d'état dans OpenThread.

Fonctions

otGetRadioVersionString(otInstance *aInstance)
const char *
Cette fonction obtient la chaîne de version radio OpenThread.
otGetVersionString(void)
const char *
Cette fonction obtient la chaîne de version OpenThread.
otInstanceErasePersistentInfo(otInstance *aInstance)
Cette fonction efface toutes les informations persistantes OpenThread (paramètres réseau) stockées dans la mémoire non volatile.
otInstanceFactoryReset(otInstance *aInstance)
void
Supprime tous les paramètres stockés sur la mémoire non volatile, puis déclenche une réinitialisation de la plate-forme.
otInstanceFinalize(otInstance *aInstance)
void
Cette fonction désactive la bibliothèque OpenThread.
otInstanceGetUptime(otInstance *aInstance)
uint64_t
Cette fonction renvoie le temps d'activité actuel de l'instance (en millisecondes).
otInstanceGetUptimeAsString(otInstance *aInstance, char *aBuffer, uint16_t aSize)
void
Cette fonction renvoie le temps d'activité actuel de l'instance sous la forme d'une chaîne lisible.
otInstanceInit(void *aInstanceBuffer, size_t *aInstanceBufferSize)
Cette fonction initialise la bibliothèque OpenThread.
otInstanceInitSingle(void)
Cette fonction initialise l'instance statique statique de la bibliothèque OpenThread.
otInstanceIsInitialized(otInstance *aInstance)
bool
Cette fonction indique si l'instance est valide ou initialisée.
otInstanceReset(otInstance *aInstance)
void
Cette méthode déclenche une réinitialisation de la plate-forme.
otInstanceResetRadioStack(otInstance *aInstance)
void
Cette méthode réinitialise les états internes de la pile radio OpenThread.
otRemoveStateChangeCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
void
Cette fonction supprime un rappel pour indiquer quand une configuration ou un état change dans OpenThread.
otSetStateChangedCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
Cette fonction enregistre un rappel pour indiquer quand une configuration ou un état change dans OpenThread.

Énumérations

énumération anonyme

 anonymous enum

Cette énumération définit les indicateurs transmis dans le cadre de otStateChangedCallback.

Propriétés
OT_CHANGED_ACTIVE_DATASET

L'ensemble de données opérationnel actif a été modifié.

OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL

Le nouveau canal de discussion en attente du gestionnaire de canaux a été modifié.

OT_CHANGED_COMMISSIONER_STATE

État du commissionnaire modifié.

OT_CHANGED_IP6_ADDRESS_ADDED

L'adresse IPv6 a été ajoutée.

OT_CHANGED_IP6_ADDRESS_REMOVED

L'adresse IPv6 a été supprimée.

OT_CHANGED_IP6_MULTICAST_SUBSCRIBED

Abonné à une adresse de multidiffusion IPv6.

OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED

Vous vous êtes désabonné d'une adresse de multidiffusion IPv6.

OT_CHANGED_JOINER_STATE

État du joint modifié.

OT_CHANGED_NAT64_TRANSLATOR_STATE

L'état du traducteur NAT64 a changé.

OT_CHANGED_NETWORK_KEY

Clé réseau modifiée.

OT_CHANGED_PENDING_DATASET

L'ensemble de données opérationnel en attente a été modifié.

OT_CHANGED_PSKC

PSKc modifiée.

OT_CHANGED_SECURITY_POLICY

La stratégie de sécurité a été modifiée.

OT_CHANGED_SUPPORTED_CHANNEL_MASK

Le masque de canal compatible a été modifié.

OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL

La configuration du routeur backbone local a été modifiée.

OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE

État du routeur backbone modifié.

OT_CHANGED_THREAD_CHANNEL

Canal du réseau Thread modifié.

OT_CHANGED_THREAD_CHILD_ADDED

L'élément enfant a été ajouté.

OT_CHANGED_THREAD_CHILD_REMOVED

L'enfant a été supprimé.

OT_CHANGED_THREAD_EXT_PANID

L'ID du PAN étendu du réseau Thread a été modifié.

OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER

La séquence de touches Thread a été modifiée.

OT_CHANGED_THREAD_LL_ADDR

L'adresse locale du lien a changé.

OT_CHANGED_THREAD_ML_ADDR

L'adresse du réseau maillé local a changé.

OT_CHANGED_THREAD_NETDATA

Les données du réseau Thread ont été modifiées.

OT_CHANGED_THREAD_NETIF_STATE

L'état de l'interface réseau Thread a été modifié.

OT_CHANGED_THREAD_NETWORK_NAME

Le nom du réseau Thread a été modifié.

OT_CHANGED_THREAD_PANID

ID du PAN du réseau thread modifié.

OT_CHANGED_THREAD_PARTITION_ID

L'ID de la partition a été modifié.

OT_CHANGED_THREAD_RLOC_ADDED

RLOC a été ajouté.

OT_CHANGED_THREAD_RLOC_REMOVED

RLOC a été supprimé.

OT_CHANGED_THREAD_ROLE

Le rôle (désactivé, dissocié, enfant, routeur, responsable) a été modifié.

Typedefs

otChangedFlags

uint32_t otChangedFlags

Ce type représente un champ de bits indiquant un état ou une configuration spécifiques qui ont changé.

Consultez les définitions du OT_CHANGED_*.

Instance de service

struct otInstance otInstance

Cette structure représente la structure d'instance OpenThread.

otStateChangedCallback

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

Ce pointeur de fonction est appelé pour avertir certains changements de configuration ou d'état dans OpenThread.

Détails
Paramètres
[in] aFlags
Champ de bits indiquant un état spécifique qui a changé. Consultez les définitions du OT_CHANGED_*.
[in] aContext
Un pointeur vers un contexte spécifique à l'application.

Fonctions

otGetRadioVersionString

const char * otGetRadioVersionString(
  otInstance *aInstance
)

Cette fonction obtient la chaîne de version radio OpenThread.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Un pointeur vers la version radio OpenThread.

OTGetVersionString

const char * otGetVersionString(
  void
)

Cette fonction obtient la chaîne de version OpenThread.

Détails
Renvoie
Un pointeur vers la version d'OpenThread.

otInstanceEffacerPersistentInfo

otError otInstanceErasePersistentInfo(
  otInstance *aInstance
)

Cette fonction efface toutes les informations persistantes OpenThread (paramètres réseau) stockées dans la mémoire non volatile.

La suppression ne fonctionne que si l'appareil est à l'état disabled.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Valeurs renvoyées
OT_ERROR_NONE
Toutes les informations/états persistants ont bien été effacés.
OT_ERROR_INVALID_STATE
L'état ou le rôle de l'appareil n'est pas disabled.

OTInstanceFactoryReset

void otInstanceFactoryReset(
  otInstance *aInstance
)

Supprime tous les paramètres stockés sur la mémoire non volatile, puis déclenche une réinitialisation de la plate-forme.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.

Finalisation d'instance

void otInstanceFinalize(
  otInstance *aInstance
)

Cette fonction désactive la bibliothèque OpenThread.

Appelez-la lorsque OpenThread n'est plus utilisé.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.

OTInstanceGetUptime

uint64_t otInstanceGetUptime(
  otInstance *aInstance
)

Cette fonction renvoie le temps d'activité actuel de l'instance (en millisecondes).

Cette fonction nécessite l'activation de OPENTHREAD_CONFIG_UPTIME_ENABLE.

Le temps d'activité est exprimé en nombre de millisecondes écoulées depuis l'initialisation de l'instance OpenThread.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Temps d'activité (nombre de millisecondes)

otInstanceGetUptimeAsString

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

Cette fonction renvoie le temps d'activité actuel de l'instance sous la forme d'une chaîne lisible.

Cette fonction nécessite l'activation de OPENTHREAD_CONFIG_UPTIME_ENABLE.

La chaîne suit le format "::." pour les heures, les minutes, les secondes et les millisecondes (si le temps d'activité est inférieur à un jour) ou ".

d.::" (d'une durée supérieure à une journée).

Si la chaîne obtenue ne tient pas dans aBuffer (dans ses caractères aSize), elle sera tronquée, mais la chaîne générée sera toujours terminée.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[out] aBuffer
Un pointeur vers un tableau de caractères pour générer la chaîne.
[in] aSize
Taille de aBuffer (en octets). Recommandé pour utiliser OT_UPTIME_STRING_SIZE.

InstanceInstanceInit

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

Cette fonction initialise la bibliothèque OpenThread.

Cette fonction initialise OpenThread et la prépare pour les appels d'API OpenThread ultérieurs. Cette fonction doit être appelée avant tout autre appel à OpenThread.

Cette fonction est disponible et ne peut être utilisée que lorsque la compatibilité avec plusieurs instances OpenThread est activée.

Détails
Paramètres
[in] aInstanceBuffer
Tampon permettant à OpenThread d'allouer la structure otInstance.
[in,out] aInstanceBufferSize
En entrée, taille d'aInstanceBuffer. En sortie, si l'espace est insuffisant pour otInstance, il s'agit du nombre d'octets requis pour otInstance.
Renvoie
Un pointeur vers la nouvelle instance OpenThread.
Voir aussi:
otInstanceFinalize

OTInstanceInitSingle

otInstance * otInstanceInitSingle(
  void
)

Cette fonction initialise l'instance statique statique de la bibliothèque OpenThread.

Cette fonction initialise OpenThread et la prépare pour les appels d'API OpenThread ultérieurs. Cette fonction doit être appelée avant tout autre appel à OpenThread.

Cette fonction est disponible et ne peut être utilisée que lorsque la compatibilité avec plusieurs instances OpenThread est désactivée.

Détails
Renvoie
Un pointeur vers l'instance OpenThread unique.

otInstanceIsInitialized

bool otInstanceIsInitialized(
  otInstance *aInstance
)

Cette fonction indique si l'instance est valide ou initialisée.

L'instance est considérée comme valide si elle est acquise et initialisée à l'aide de otInstanceInitSingle() (dans un cas unique) ou de otInstanceInit() (dans plusieurs cas). Un appel ultérieur à otInstanceFinalize() entraîne le refus de l'instance.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
TRUE si l'instance donnée est valide/initialisée, FALSE dans le cas contraire.

OTInstanceReset

void otInstanceReset(
  otInstance *aInstance
)

Cette méthode déclenche une réinitialisation de la plate-forme.

Le processus de réinitialisation garantit que toutes les informations et l'état OpenThread (stockés en mémoire volatile) sont effacés. Notez que otPlatformReset n'efface pas les informations ou états persistants dans la mémoire non volatile.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.

otInstanceResetRadioStack

void otInstanceResetRadioStack(
  otInstance *aInstance
)

Cette méthode réinitialise les états internes de la pile radio OpenThread.

Les rappels et les configurations sont conservés.

Cette API n'est disponible que pour les versions radio (OPENTHREAD_RADIO = 1).

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.

otRemoveStateChangeCallback

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

Cette fonction supprime un rappel pour indiquer quand une configuration ou un état change dans OpenThread.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aCallback
Un pointeur vers une fonction appelée avec certains changements d'état ou de configuration.
[in] aContext
Un pointeur vers un contexte spécifique à l'application.

otSetStateChangedCallback

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

Cette fonction enregistre un rappel pour indiquer quand une configuration ou un état change dans OpenThread.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aCallback
Un pointeur vers une fonction appelée avec certains changements d'état ou de configuration.
[in] aContext
Un pointeur vers un contexte spécifique à l'application.
Valeurs renvoyées
OT_ERROR_NONE
Ajout du rappel à la liste des rappels.
OT_ERROR_ALREADY
Le rappel a déjà été enregistré.
OT_ERROR_NO_BUFS
Impossible d'ajouter le rappel en raison de contraintes liées aux ressources.

Macros

PROLONGATION_DE_CHAÎNE_STRING_SIZE

 OT_UPTIME_STRING_SIZE 24

Taille recommandée pour la représentation de la durée d'activité sous forme de chaîne.

Ressources

Les sujets de référence de l'API OpenThread proviennent du code source, disponible sur GitHub. Pour en savoir plus ou pour contribuer à notre documentation, consultez Ressources.