Instance

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

Résumé

Typedefs

otChangedFlags typedef
uint32_t
Représente un champ de bits indiquant un état ou une configuration spécifique qui a été modifié.
otInstance typedef
struct otInstance
Représente la structure de l'instance OpenThread.
otStateChangedCallback)(otChangedFlags aFlags, void *aContext) typedef
void(*
Le pointeur est appelé pour avertir certains changements de configuration ou d'état dans OpenThread.

distantes

otGetRadioVersionString(otInstance *aInstance)
const char *
Récupère la chaîne de version radio OpenThread.
otGetVersionString(void)
const char *
Récupère la chaîne de version d'OpenThread.
otInstanceErasePersistentInfo(otInstance *aInstance)
Efface toutes les informations persistantes OpenThread (paramètres réseau) stockées sur la mémoire non volatile.
otInstanceFactoryReset(otInstance *aInstance)
void
Supprime tous les paramètres stockés dans la mémoire non volatile, puis déclenche une réinitialisation de la plate-forme.
otInstanceFinalize(otInstance *aInstance)
void
Désactive la bibliothèque OpenThread.
otInstanceGetId(otInstance *aInstance)
uint32_t
Récupère l'identifiant de l'instance.
otInstanceGetUptime(otInstance *aInstance)
uint64_t
Renvoie le temps d'activité actuel de l'instance (en millisecondes).
otInstanceGetUptimeAsString(otInstance *aInstance, char *aBuffer, uint16_t aSize)
void
Renvoie le temps d'activité actuel de l'instance sous forme de chaîne lisible.
otInstanceInit(void *aInstanceBuffer, size_t *aInstanceBufferSize)
Initialise la bibliothèque OpenThread.
otInstanceInitMultiple(uint8_t aIdx)
Initialise l'instance OpenThread.
otInstanceInitSingle(void)
Initialise l'instance unique statique de la bibliothèque OpenThread.
otInstanceIsInitialized(otInstance *aInstance)
bool
Indique si l'instance est valide ou initialisée.
otInstanceReset(otInstance *aInstance)
void
Déclenche une réinitialisation de la plate-forme.
otInstanceResetRadioStack(otInstance *aInstance)
void
Réinitialise les états internes de la pile d'options OpenThread.
otInstanceResetToBootloader(otInstance *aInstance)
Redémarre la plate-forme en mode bootloader, si compatible.
otRemoveStateChangeCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
void
Supprime un rappel pour indiquer quand une configuration ou un état donné change dans OpenThread.
otSetStateChangedCallback(otInstance *aInstance, otStateChangedCallback aCallback, void *aContext)
Enregistre un rappel pour indiquer quand une configuration ou un état donné change dans OpenThread.

Typedefs

otChangedFlags

uint32_t otChangedFlags

Représente un champ de bits indiquant un état ou une configuration spécifique qui a été modifié.

Voir la définition de OT_CHANGED_*.

otInstance

struct otInstance otInstance

Représente la structure de l'instance OpenThread.

otStateChangedCallback

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

Le pointeur 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 été modifié. Voir la définition de OT_CHANGED_*.
[in] aContext
Pointeur vers un contexte spécifique à l'application.

distantes

otGetRadioVersionString

const char * otGetRadioVersionString(
  otInstance *aInstance
)

Récupère la chaîne de version radio OpenThread.

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

otGetVersionString

const char * otGetVersionString(
  void
)

Récupère la chaîne de version d'OpenThread.

Détails
Renvoie
Pointeur vers la version OpenThread.

otInstanceErasePersistentInfo

otError otInstanceErasePersistentInfo(
  otInstance *aInstance
)

Efface toutes les informations persistantes OpenThread (paramètres réseau) stockées sur la mémoire non volatile.

L'effacement ne fonctionne que si l'appareil possède le rôle/l'état disabled.

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

otInstanceFactoryReset

void otInstanceFactoryReset(
  otInstance *aInstance
)

Supprime tous les paramètres stockés dans 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.

otInstanceFinalize

void otInstanceFinalize(
  otInstance *aInstance
)

Désactive la bibliothèque OpenThread.

Appelez cette fonction lorsqu'OpenThread n'est plus utilisé.

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

otInstanceGetId

uint32_t otInstanceGetId(
  otInstance *aInstance
)

Récupère l'identifiant de l'instance.

Lors de la construction de l'instance, son identifiant est défini sur une valeur aléatoire. Sa valeur ne change pas après l'initialisation.

Détails
Renvoie
Identifiant de l'instance.

otInstanceGetUptime

uint64_t otInstanceGetUptime(
  otInstance *aInstance
)

Renvoie le temps d'activité actuel de l'instance (en millisecondes).

Nécessite l'activation de OPENTHREAD_CONFIG_UPTIME_ENABLE.

Le temps d'activité est exprimé en millisecondes 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
)

Renvoie le temps d'activité actuel de l'instance sous forme de chaîne lisible.

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 à une journée) ou "

d.::." (pour une durée supérieure à un jour).

Si la chaîne obtenue ne rentre pas dans aBuffer (de ses caractères aSize), elle sera tronquée, mais la sortie sera toujours nulle et se termine toujours.

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

otInstanceInit

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

Initialise la bibliothèque OpenThread.

Initialise OpenThread et le prépare pour les appels suivants de l'API OpenThread. Cette fonction doit être appelée avant tout autre appel à OpenThread.

est disponible et ne peut être utilisé que lorsque la prise en charge de plusieurs instances OpenThread est activée.

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

otInstanceInitMultiple

otInstance * otInstanceInitMultiple(
  uint8_t aIdx
)

Initialise l'instance OpenThread.

Cette fonction initialise OpenThread et le prépare pour les appels suivants de l'API OpenThread. Cette fonction doit être appelée avant tout autre appel à OpenThread. Cette méthode utilise un tampon statique pour initialiser l'instance OpenThread.

Cette fonction est disponible et ne peut être utilisée que lorsque la prise en charge de plusieurs instances statiques OpenThread est activée. (OPENTHREAD_CONFIG_MULTIPLE_STATIC_INSTANCE_ENABLE)

Détails
Paramètres
[in] aIdx
Index de l'instance OpenThread à initialiser.
Renvoie
Un pointeur vers la nouvelle instance OpenThread.

otInstanceInitSingle

otInstance * otInstanceInitSingle(
  void
)

Initialise l'instance unique statique de la bibliothèque OpenThread.

Initialise OpenThread et le prépare pour les appels suivants de l'API OpenThread. Cette fonction doit être appelée avant tout autre appel à OpenThread.

est disponible et ne peut être utilisé que lorsque la prise en charge de plusieurs instances OpenThread est désactivée.

Détails
Renvoie
Pointeur vers l'instance OpenThread unique.

otInstanceIsInitialized

bool otInstanceIsInitialized(
  otInstance *aInstance
)

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 le cas d'une seule instance) ou de otInstanceInit() (dans le cas de plusieurs instances). Un appel ultérieur à otInstanceFinalize() fait que l'instance est considérée comme non initialisée.

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
)

Déclenche une réinitialisation de la plate-forme.

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

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

otInstanceResetRadioStack

void otInstanceResetRadioStack(
  otInstance *aInstance
)

Réinitialise les états internes de la pile d'options OpenThread.

Les rappels et les configurations sont conservés.

Cette API n'est disponible que dans les builds radio (OPENTHREAD_RADIO = 1).

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

otInstanceResetToBootloader

otError otInstanceResetToBootloader(
  otInstance *aInstance
)

Redémarre la plate-forme en mode bootloader, si compatible.

Nécessite OPENTHREAD_CONFIG_PLATFORM_BOOTLOADER_MODE_ENABLE.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Valeurs de retour
OT_ERROR_NONE
Le bootloader a bien été rétabli.
OT_ERROR_BUSY
Échec dû à une autre opération en cours.
OT_ERROR_NOT_CAPABLE
Impossible de rétablir le bootloader.

otRemoveStateChangeCallback

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

Supprime un rappel pour indiquer quand une configuration ou un état donné 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 de configuration ou d'état.
[in] aContext
Pointeur vers un contexte spécifique à l'application.

otSetStateChangedCallback

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

Enregistre un rappel pour indiquer quand une configuration ou un état donné 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 de configuration ou d'état.
[in] aContext
Pointeur vers un contexte spécifique à l'application.
Valeurs de retour
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

OT_CHANGED_ACTIVE_DATASET

 OT_CHANGED_ACTIVE_DATASET (1U << 28)

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

OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL

 OT_CHANGED_CHANNEL_MANAGER_NEW_CHANNEL (1U << 21)

La nouvelle chaîne de fils de discussion en attente pour le Gestionnaire de chaînes a été modifiée.

OT_CHANGED_COMMISSIONER_STATE

 OT_CHANGED_COMMISSIONER_STATE (1U << 23)

État du commissaire modifié.

OT_CHANGED_IP6_ADDRESS_ADDED

 OT_CHANGED_IP6_ADDRESS_ADDED (1U << 0)

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

OT_CHANGED_IP6_ADDRESS_REMOVED

 OT_CHANGED_IP6_ADDRESS_REMOVED (1U << 1)

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

OT_CHANGED_IP6_MULTICAST_SUBSCRIBED

 OT_CHANGED_IP6_MULTICAST_SUBSCRIBED (1U << 12)

Abonné à une adresse de multidiffusion IPv6.

OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED

 OT_CHANGED_IP6_MULTICAST_UNSUBSCRIBED (1U << 13)

Désabonné d'une adresse de multidiffusion IPv6.

OT_CHANGED_JOINER_STATE

 OT_CHANGED_JOINER_STATE (1U << 27)

État de la jointure modifié.

OT_CHANGED_NAT64_TRANSLATOR_STATE

 OT_CHANGED_NAT64_TRANSLATOR_STATE (1U << 30)

L'état du traducteur NAT64 a changé.

OT_CHANGED_NETWORK_KEY

 OT_CHANGED_NETWORK_KEY (1U << 18)

Clé réseau modifiée.

 OT_CHANGED_PARENT_LINK_QUALITY (1U << 31)

La qualité du lien parent a été modifiée.

OT_CHANGED_PENDING_DATASET

 OT_CHANGED_PENDING_DATASET (1U << 29)

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

OT_CHANGED_PSKC

 OT_CHANGED_PSKC (1U << 19)

Clé PSKc modifiée.

OT_CHANGED_SECURITY_POLICY

 OT_CHANGED_SECURITY_POLICY (1U << 20)

Règle de sécurité modifiée.

OT_CHANGED_SUPPORTED_CHANNEL_MASK

 OT_CHANGED_SUPPORTED_CHANNEL_MASK (1U << 22)

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

OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL

 OT_CHANGED_THREAD_BACKBONE_ROUTER_LOCAL (1U << 26)

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

OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE

 OT_CHANGED_THREAD_BACKBONE_ROUTER_STATE (1U << 25)

L'état du routeur backbone a été modifié.

OT_CHANGED_THREAD_CHANNEL

 OT_CHANGED_THREAD_CHANNEL (1U << 14)

Canal du réseau Thread modifié.

OT_CHANGED_THREAD_CHILD_ADDED

 OT_CHANGED_THREAD_CHILD_ADDED (1U << 10)

L'enfant a été ajouté.

OT_CHANGED_THREAD_CHILD_REMOVED

 OT_CHANGED_THREAD_CHILD_REMOVED (1U << 11)

L'enfant a été supprimé.

OT_CHANGED_THREAD_EXT_PANID

 OT_CHANGED_THREAD_EXT_PANID (1U << 17)

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

OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER

 OT_CHANGED_THREAD_KEY_SEQUENCE_COUNTER (1U << 8)

La séquence de clés de thread a été modifiée.

OT_CHANGED_THREAD_LL_ADDR

 OT_CHANGED_THREAD_LL_ADDR (1U << 3)

L'adresse de liaison locale a été modifiée.

OT_CHANGED_THREAD_ML_ADDR

 OT_CHANGED_THREAD_ML_ADDR (1U << 4)

L'adresse du réseau maillé a été modifiée.

OT_CHANGED_THREAD_NETDATA

 OT_CHANGED_THREAD_NETDATA (1U << 9)

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

OT_CHANGED_THREAD_NETIF_STATE

 OT_CHANGED_THREAD_NETIF_STATE (1U << 24)

État de l'interface réseau Thread modifié.

OT_CHANGED_THREAD_NETWORK_NAME

 OT_CHANGED_THREAD_NETWORK_NAME (1U << 16)

Nom du réseau Thread modifié.

OT_CHANGED_THREAD_PANID

 OT_CHANGED_THREAD_PANID (1U << 15)

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

OT_CHANGED_THREAD_PARTITION_ID

 OT_CHANGED_THREAD_PARTITION_ID (1U << 7)

ID de partition modifié.

OT_CHANGED_THREAD_RLOC_ADDED

 OT_CHANGED_THREAD_RLOC_ADDED (1U << 5)

RLOC a été ajouté.

OT_CHANGED_THREAD_RLOC_REMOVED

 OT_CHANGED_THREAD_RLOC_REMOVED (1U << 6)

RLOC a été supprimé.

OT_CHANGED_THREAD_ROLE

 OT_CHANGED_THREAD_ROLE (1U << 2)

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

OT_UPTIME_STRING_SIZE

 OT_UPTIME_STRING_SIZE 24

Taille recommandée pour représenter le temps 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 la section Ressources.