Routeur/Leader

Ce module inclut des fonctions pour les routeurs Thread et les dirigeants.

Résumé

Énumérations

otCacheEntryState enum
Définit l'état de l'entrée de cache EID.
otNeighborTableEvent{
  OT_NEIGHBOR_TABLE_EVENT_CHILD_ADDED,
  OT_NEIGHBOR_TABLE_EVENT_CHILD_REMOVED,
  OT_NEIGHBOR_TABLE_EVENT_CHILD_MODE_CHANGED,
  OT_NEIGHBOR_TABLE_EVENT_ROUTER_ADDED,
  OT_NEIGHBOR_TABLE_EVENT_ROUTER_REMOVED
}
enum
Définit les constantes utilisées dans otNeighborTableCallback pour indiquer les modifications apportées à la table voisine.
otPowerSupply{
  OT_POWER_SUPPLY_BATTERY = 0,
  OT_POWER_SUPPLY_EXTERNAL = 1,
  OT_POWER_SUPPLY_EXTERNAL_STABLE = 2,
  OT_POWER_SUPPLY_EXTERNAL_UNSTABLE = 3
}
enum
Représente la propriété d'alimentation d'un appareil.

Typedefs

otCacheEntryInfo typedef
Représente une entrée de cache EID.
otCacheEntryIterator typedef
Représente un itérateur utilisé pour itérer les entrées de la table de cache EID.
otCacheEntryState typedef
Définit l'état de l'entrée de cache EID.
otChildIp6AddressIterator typedef
uint16_t
Utilisé pour itérer les adresses IPv6 d'une entrée Thread enfant.
otDeviceProperties typedef
Représente les propriétés de l'appareil utilisées pour calculer la pondération des régions principales locales sur un appareil.
otNeighborTableCallback)(otNeighborTableEvent aEvent, const otNeighborTableEntryInfo *aEntryInfo) typedef
void(*
Le pointeur est appelé pour signaler une modification dans la table voisine.

distantes

otThreadBecomeLeader(otInstance *aInstance)
Devenez un leader et créez une nouvelle partition.
otThreadBecomeRouter(otInstance *aInstance)
Essayez de devenir un routeur.
otThreadGetAdvertisementTrickleIntervalMax(otInstance *aInstance)
uint32_t
Récupère la valeur d'intervalle maximal actuelle utilisée par le minuteur minime d'annonce.
otThreadGetChildInfoById(otInstance *aInstance, uint16_t aChildId, otChildInfo *aChildInfo)
Récupère les informations de diagnostic d'un enfant associé à l'aide de son ID enfant ou RLOC16.
otThreadGetChildInfoByIndex(otInstance *aInstance, uint16_t aChildIndex, otChildInfo *aChildInfo)
La fonction conserve les informations de diagnostic pour un enfant associé par l'index de table interne.
otThreadGetChildNextIp6Address(otInstance *aInstance, uint16_t aChildIndex, otChildIp6AddressIterator *aIterator, otIp6Address *aAddress)
Récupère l'adresse IPv6 suivante (à l'aide d'un itérateur) pour un enfant donné.
otThreadGetChildRouterLinks(otInstance *aInstance)
uint8_t
Obtenez le paramètre MLE_CHILD_ROUTER_LINKS utilisé dans le rôle REED.
otThreadGetContextIdReuseDelay(otInstance *aInstance)
uint32_t
Obtenez le paramètre CONTEXT_ID_REUSE_Delay utilisé pour le rôle de responsable.
otThreadGetDeviceProperties(otInstance *aInstance)
Permet d'obtenir les propriétés actuelles de l'appareil.
otThreadGetJoinerUdpPort(otInstance *aInstance)
uint16_t
Récupère le port UDP Joiner.
otThreadGetLocalLeaderWeight(otInstance *aInstance)
uint8_t
Récupère la pondération utilisée pour les variantes de filetage lorsqu'il s'agit du rôle de responsable.
otThreadGetMaxAllowedChildren(otInstance *aInstance)
uint16_t
Récupère le nombre maximal d'enfants actuellement autorisés.
otThreadGetMaxChildIpAddresses(otInstance *aInstance)
uint8_t
Récupère le nombre maximal d'adresses IP que chaque enfant MTD peut enregistrer avec cet appareil en tant que parent.
otThreadGetMaxRouterId(otInstance *aInstance)
uint8_t
La fonction renvoie l'ID de routeur maximal autorisé.
otThreadGetNetworkIdTimeout(otInstance *aInstance)
uint8_t
Obtenez le paramètre NETWORK_ID_TIMEOUT.
otThreadGetNextCacheEntry(otInstance *aInstance, otCacheEntryInfo *aEntryInfo, otCacheEntryIterator *aIterator)
Récupère l'entrée de cache EID suivante (à l'aide d'un itérateur).
otThreadGetNextHopAndPathCost(otInstance *aInstance, uint16_t aDestRloc16, uint16_t *aNextHopRloc16, uint8_t *aPathCost)
void
Récupère le prochain saut et le coût du chemin vers une destination RLOC16 donnée.
otThreadGetParentPriority(otInstance *aInstance)
int8_t
Permet d'obtenir la priorité parente attribuée.
otThreadGetPreferredLeaderPartitionId(otInstance *aInstance)
uint32_t
Permet d'obtenir l'ID de partition de thread leader souhaité lorsque vous occupez le rôle de leader.
otThreadGetPskc(otInstance *aInstance, otPskc *aPskc)
void
Téléchargez Thread PSKc.
otThreadGetPskcRef(otInstance *aInstance)
Permet d'obtenir la référence clé du Thread PSKc stocké.
otThreadGetRouterDowngradeThreshold(otInstance *aInstance)
uint8_t
Obtenez le paramètre ROUTER_DOWNGRADE_THRESHOLD utilisé pour le rôle "Routeur".
otThreadGetRouterIdRange(otInstance *aInstance, uint8_t *aMinRouterId, uint8_t *aMaxRouterId)
void
Récupère la plage d'ID de routeur autorisés à être attribuées aux nœuds du réseau Thread.
otThreadGetRouterIdSequence(otInstance *aInstance)
uint8_t
Obtenez la séquence d'ID de routeur actuelle.
otThreadGetRouterInfo(otInstance *aInstance, uint16_t aRouterId, otRouterInfo *aRouterInfo)
La fonction conserve les informations de diagnostic pour un routeur Thread donné.
otThreadGetRouterSelectionJitter(otInstance *aInstance)
uint8_t
Permet d'obtenir le paramètre ROUTER_election_JITTER utilisé dans le rôle REED/Routeur.
otThreadGetRouterUpgradeThreshold(otInstance *aInstance)
uint8_t
Permet d'obtenir le paramètre ROUTER_UPGRADE_THRESHOLD utilisé dans le rôle REED.
otThreadIsRouterEligible(otInstance *aInstance)
bool
Indique si l'appareil est compatible avec les routeurs.
otThreadIsRouterIdAllocated(otInstance *aInstance, uint8_t aRouterId)
bool
Indique si un ID de routeur est actuellement alloué ou non.
otThreadRegisterNeighborTableCallback(otInstance *aInstance, otNeighborTableCallback aCallback)
void
Enregistre une fonction de rappel pour la table voisine.
otThreadReleaseRouterId(otInstance *aInstance, uint8_t aRouterId)
Libérez un ID de routeur qui a été alloué par l'appareil dans le rôle de leader.
otThreadSetCcmEnabled(otInstance *aInstance, bool aEnabled)
void
Détermine si l'appareil a été mis en service à l'aide de CCM.
otThreadSetChildRouterLinks(otInstance *aInstance, uint8_t aChildRouterLinks)
Définissez le paramètre MLE_CHILD_ROUTER_LINKS utilisé dans le rôle REED.
otThreadSetContextIdReuseDelay(otInstance *aInstance, uint32_t aDelay)
void
Définissez le paramètre CONTEXT_ID_REUSE_Delay utilisé pour le rôle "Dirigeant".
otThreadSetDeviceProperties(otInstance *aInstance, const otDeviceProperties *aDeviceProperties)
void
Définissez les propriétés de l'appareil qui sont ensuite utilisées pour déterminer et définir la pondération de la variante optimale.
otThreadSetJoinerUdpPort(otInstance *aInstance, uint16_t aJoinerUdpPort)
Définit le port UDP de jointure.
otThreadSetLocalLeaderWeight(otInstance *aInstance, uint8_t aWeight)
void
Définit la pondération des dirigeants de threads utilisée lorsque vous utilisez le rôle de responsable.
otThreadSetMaxAllowedChildren(otInstance *aInstance, uint16_t aMaxChildren)
Définit le nombre maximal d'enfants actuellement autorisés.
otThreadSetMaxChildIpAddresses(otInstance *aInstance, uint8_t aMaxIpAddresses)
Définit ou restaure le nombre maximal d'adresses IP que chaque enfant MTD peut enregistrer avec cet appareil en tant que parent.
otThreadSetNetworkIdTimeout(otInstance *aInstance, uint8_t aTimeout)
void
Définissez le paramètre NETWORK_ID_TIMEOUT.
otThreadSetParentPriority(otInstance *aInstance, int8_t aParentPriority)
Définissez la priorité du parent.
otThreadSetPreferredLeaderPartitionId(otInstance *aInstance, uint32_t aPartitionId)
void
Définissez l'ID de partition de la variante optimale de thread à utiliser lorsque vous occupez le rôle de leader.
otThreadSetPreferredRouterId(otInstance *aInstance, uint8_t aRouterId)
Définissez l'ID du routeur préféré.
otThreadSetPskc(otInstance *aInstance, const otPskc *aPskc)
Définissez Thread PSKc.
otThreadSetPskcRef(otInstance *aInstance, otPskcRef aKeyRef)
Définissez la référence de la clé sur "Thread PSKc".
otThreadSetRouterDowngradeThreshold(otInstance *aInstance, uint8_t aThreshold)
void
Définissez le paramètre ROUTER_DOWNGRADE_THRESHOLD utilisé dans le rôle "Dirigeant".
otThreadSetRouterEligible(otInstance *aInstance, bool aEligible)
Détermine si l'appareil est compatible avec les routeurs.
otThreadSetRouterIdRange(otInstance *aInstance, uint8_t aMinRouterId, uint8_t aMaxRouterId)
Définit la plage d'ID de routeur autorisés à être attribués aux nœuds du réseau Thread.
otThreadSetRouterSelectionJitter(otInstance *aInstance, uint8_t aRouterJitter)
void
Définissez le paramètre ROUTER_election_JITTER utilisé dans le rôle REED/Routeur.
otThreadSetRouterUpgradeThreshold(otInstance *aInstance, uint8_t aThreshold)
void
Définissez le paramètre ROUTER_UPGRADE_ automatiquement utilisé pour le rôle de leader.
otThreadSetSteeringData(otInstance *aInstance, const otExtAddress *aExtAddress)
void
Définir les données de direction hors bande.
otThreadSetThreadVersionCheckEnabled(otInstance *aInstance, bool aEnabled)
void
Détermine si le seuil de version du TLV de la règle de sécurité pour le routage (champ VR) est activé.

Structs

otCacheEntryInfo

Représente une entrée de cache EID.

otCacheEntryIterator

Représente un itérateur utilisé pour itérer les entrées de la table de cache EID.

otChildInfo

Contient les informations de diagnostic d'un enfant Thread.

otDeviceProperties

Représente les propriétés de l'appareil utilisées pour calculer la pondération des régions principales locales sur un appareil.

otNeighborTableEntryInfo

Représente les informations d'une entrée de table voisine (enfant ou routeur) et est utilisé comme paramètre dans le rappel otNeighborTableCallback de la table voisine.

Énumérations

otCacheEntryState

 otCacheEntryState

Définit l'état de l'entrée de cache EID.

otNeighborTableEvent

 otNeighborTableEvent

Définit les constantes utilisées dans otNeighborTableCallback pour indiquer les modifications apportées à la table voisine.

Propriétés
OT_NEIGHBOR_TABLE_EVENT_CHILD_ADDED

Un enfant est en cours d'ajout.

OT_NEIGHBOR_TABLE_EVENT_CHILD_MODE_CHANGED

Le mode enfant existant est modifié.

OT_NEIGHBOR_TABLE_EVENT_CHILD_REMOVED

Un enfant est en cours de suppression.

OT_NEIGHBOR_TABLE_EVENT_ROUTER_ADDED

Un routeur est en cours d'ajout.

OT_NEIGHBOR_TABLE_EVENT_ROUTER_REMOVED

Un routeur est en cours de suppression.

otPowerSupply

 otPowerSupply

Représente la propriété d'alimentation d'un appareil.

Cette propriété est utilisée dans otDeviceProperties pour calculer la pondération de la variante optimale.

Propriétés
OT_POWER_SUPPLY_BATTERY

Alimentation sur batterie

OT_POWER_SUPPLY_EXTERNAL

Alimentation externe (alimentation principale).

OT_POWER_SUPPLY_EXTERNAL_STABLE

Alimentation externe stable avec une batterie de secours ou un onduleur.

OT_POWER_SUPPLY_EXTERNAL_UNSTABLE

Ext. potentiellement instable (par exemple, ampoule alimentée par un interrupteur).

Typedefs

otCacheEntryInfo

struct otCacheEntryInfo otCacheEntryInfo

Représente une entrée de cache EID.

otCacheEntryIterator

struct otCacheEntryIterator otCacheEntryIterator

Représente un itérateur utilisé pour itérer les entrées de la table de cache EID.

Pour initialiser l'itérateur et commencer à partir de la première entrée de la table de cache, définissez tous les champs de la structure sur zéro (par exemple, memset correspond à l'itérateur à zéro).

otCacheEntryState

enum otCacheEntryState otCacheEntryState

Définit l'état de l'entrée de cache EID.

otChildIp6AddressIterator

uint16_t otChildIp6AddressIterator

Utilisé pour itérer les adresses IPv6 d'une entrée Thread enfant.

otDeviceProperties

struct otDeviceProperties otDeviceProperties

Représente les propriétés de l'appareil utilisées pour calculer la pondération des régions principales locales sur un appareil.

Les paramètres sont définis en fonction de la capacité de l'appareil, qu'il s'agisse d'un routeur de bordure, de la configuration de son alimentation, etc.

mIsUnstable indique la stabilité opérationnelle de l'appareil et est déterminée par un mécanisme spécifique au fournisseur. Cela peut inclure les cas suivants:

  • L'appareil détecte en interne qu'il perd l'alimentation externe plus souvent que d'habitude. Le fournisseur détermine les actions habituelles.
  • L'appareil détecte en interne qu'il redémarre plus souvent que d'habitude. Le fournisseur détermine les actions habituelles.

otNeighborTableCallback

void(* otNeighborTableCallback)(otNeighborTableEvent aEvent, const otNeighborTableEntryInfo *aEntryInfo)

Le pointeur est appelé pour signaler une modification dans la table voisine.

Détails
Paramètres
[in] aEvent
Indicateur d'événement.
[in] aEntryInfo
Pointeur vers les informations sur les entrées du tableau.

distantes

otThreadBecomeLeader

otError otThreadBecomeLeader(
  otInstance *aInstance
)

Devenez un leader et créez une nouvelle partition.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Valeurs de retour
OT_ERROR_NONE
Il est devenu leader et a créé une nouvelle partition.
OT_ERROR_INVALID_STATE
Thread désactivé.

otThreadBecomeRouter

otError otThreadBecomeRouter(
  otInstance *aInstance
)

Essayez de devenir un routeur.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Valeurs de retour
OT_ERROR_NONE
La tentative de devenir un routeur a bien commencé.
OT_ERROR_INVALID_STATE
Thread désactivé.

otThreadGetAdvertisementTrickleIntervalMax

uint32_t otThreadGetAdvertisementTrickleIntervalMax(
  otInstance *aInstance
)

Récupère la valeur d'intervalle maximal actuelle utilisée par le minuteur minime d'annonce.

Cette API nécessite OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE et est destinée aux tests uniquement.

Détails
Renvoie
Intervalle maximal du minuteur minime d'annonce en millisecondes.

otThreadGetChildInfoById

otError otThreadGetChildInfoById(
  otInstance *aInstance,
  uint16_t aChildId,
  otChildInfo *aChildInfo
)

Récupère les informations de diagnostic d'un enfant associé à l'aide de son ID enfant ou RLOC16.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aChildId
Identifiant enfant ou RLOC16 de l'élément enfant associé.
[out] aChildInfo
Pointeur vers l'emplacement des informations de l'enfant.
Valeurs de retour
OT_ERROR_NONE
aChildInfo a bien été mis à jour avec les informations associées à cet ID.
OT_ERROR_NOT_FOUND
Aucun enfant valide avec cet ID enfant.
OT_ERROR_INVALID_ARGS
Si aChildInfo est NULL.

otThreadGetChildInfoByIndex

otError otThreadGetChildInfoByIndex(
  otInstance *aInstance,
  uint16_t aChildIndex,
  otChildInfo *aChildInfo
)

La fonction conserve les informations de diagnostic pour un enfant associé par l'index de table interne.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aChildIndex
Index de la table
[out] aChildInfo
Pointeur vers l'emplacement des informations de l'enfant.
Valeurs de retour
OT_ERROR_NONE
aChildInfo a bien été mis à jour avec les informations de l'index donné.
OT_ERROR_NOT_FOUND
Aucun enfant valide pour cet index.
OT_ERROR_INVALID_ARGS
Soit aChildInfo est NULL, soit aChildIndex est hors plage (supérieur à l'index de table maximal).
Voir aussi:
otGetMaxAllowedChildren

otThreadGetChildNextIp6Address

otError otThreadGetChildNextIp6Address(
  otInstance *aInstance,
  uint16_t aChildIndex,
  otChildIp6AddressIterator *aIterator,
  otIp6Address *aAddress
)

Récupère l'adresse IPv6 suivante (à l'aide d'un itérateur) pour un enfant donné.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aChildIndex
Index enfant
[in,out] aIterator
Pointeur vers l'itérateur. Si l'opération réussit, l'itérateur est mis à jour pour pointer vers l'entrée suivante dans la liste. Pour obtenir la première adresse IPv6, l'itérateur doit être défini sur OT_CHILD_IP6_ADDRESS_ITERATOR_INIT.
[out] aAddress
Pointeur vers une adresse IPv6 où l'adresse suivante de l'enfant est placée (en cas de réussite).
Valeurs de retour
OT_ERROR_NONE
L'adresse IPv6 suivante a bien été trouvée (aAddress a bien été mis à jour).
OT_ERROR_NOT_FOUND
L'enfant n'a pas d'entrée d'adresse IPv6 ultérieure.
OT_ERROR_INVALID_ARGS
aIterator ou aAddress sont NULL, ou l'enfant de aChildIndex n'est pas valide.
Voir aussi:
otThreadGetChildInfoByIndex

uint8_t otThreadGetChildRouterLinks(
  otInstance *aInstance
)

Obtenez le paramètre MLE_CHILD_ROUTER_LINKS utilisé dans le rôle REED.

Ce paramètre spécifie le nombre maximal de routeurs voisins avec lesquels l'appareil (en tant que FED) tentera d'établir la liaison.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Valeur MLE_CHILD_ROUTER_LINKS.
Voir aussi:
otThreadSetChildRouterLinks

otThreadGetContextIdReuseDelay

uint32_t otThreadGetContextIdReuseDelay(
  otInstance *aInstance
)

Obtenez le paramètre CONTEXT_ID_REUSE_Delay utilisé pour le rôle de responsable.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Valeur CONTEXT_ID_REUSE_REQUEST
Voir aussi:
otThreadSetContextIdReuseDelay

otThreadGetDeviceProperties

const otDeviceProperties * otThreadGetDeviceProperties(
  otInstance *aInstance
)

Permet d'obtenir les propriétés actuelles de l'appareil.

Nécessite OPENTHREAD_CONFIG_MLE_DEVICE_PROPERTY_LEADER_WEIGHT_ENABLE.

Détails
Renvoie
Propriétés de l'appareil otDeviceProperties.

otThreadGetJoinerUdpPort

uint16_t otThreadGetJoinerUdpPort(
  otInstance *aInstance
)

Récupère le port UDP Joiner.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Numéro du port UDP Joiner.
Voir aussi:
otThreadSetJoinerUdpPort

otThreadGetLocalLeaderWeight

uint8_t otThreadGetLocalLeaderWeight(
  otInstance *aInstance
)

Récupère la pondération utilisée pour les variantes de filetage lorsqu'il s'agit du rôle de responsable.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Valeur du poids des fils de discussion.
Voir aussi:
otThreadSetLeaderWeight
otThreadSetDeviceProperties

otThreadGetMaxAllowedChildren

uint16_t otThreadGetMaxAllowedChildren(
  otInstance *aInstance
)

Récupère le nombre maximal d'enfants actuellement autorisés.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Nombre maximal d'enfants actuellement autorisés.
Voir aussi:
otThreadSetMaxAllowedChildren

otThreadGetMaxChildIpAddresses

uint8_t otThreadGetMaxChildIpAddresses(
  otInstance *aInstance
)

Récupère le nombre maximal d'adresses IP que chaque enfant MTD peut enregistrer avec cet appareil en tant que parent.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Nombre maximal d'adresses IP que chaque enfant MTD peut enregistrer avec cet appareil en tant que parent.
Voir aussi:
otThreadSetMaxChildIpAddresses

otThreadGetMaxRouterId

uint8_t otThreadGetMaxRouterId(
  otInstance *aInstance
)

La fonction renvoie l'ID de routeur maximal autorisé.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
ID de routeur maximal autorisé.

otThreadGetNetworkIdTimeout

uint8_t otThreadGetNetworkIdTimeout(
  otInstance *aInstance
)

Obtenez le paramètre NETWORK_ID_TIMEOUT.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
La valeur NETWORK_ID_TIMEOUT
Voir aussi:
otThreadSetNetworkIdTimeout

otThreadGetNextCacheEntry

otError otThreadGetNextCacheEntry(
  otInstance *aInstance,
  otCacheEntryInfo *aEntryInfo,
  otCacheEntryIterator *aIterator
)

Récupère l'entrée de cache EID suivante (à l'aide d'un itérateur).

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[out] aEntryInfo
Pointeur vers l'emplacement des informations d'entrée du cache EID.
[in,out] aIterator
Pointeur vers un itérateur. Il est mis à jour de manière à pointer vers l'entrée suivante en cas de réussite. Pour obtenir la première entrée, initialisez l'itérateur en définissant tous ses champs sur zéro (par exemple, memset correspond à la structure de l'itérateur sur zéro).
Valeurs de retour
OT_ERROR_NONE
Le champ aEntryInfo a bien été renseigné pour la prochaine entrée de cache de l'EID.
OT_ERROR_NOT_FOUND
La table du cache d'adresses ne contient plus d'entrées.

otThreadGetNextHopAndPathCost

void otThreadGetNextHopAndPathCost(
  otInstance *aInstance,
  uint16_t aDestRloc16,
  uint16_t *aNextHopRloc16,
  uint8_t *aPathCost
)

Récupère le prochain saut et le coût du chemin vers une destination RLOC16 donnée.

Peut être utilisé avec aNextHopRloc16 ou aPathCost défini sur NULL, indiquant que l'appelant ne souhaite pas obtenir la valeur.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aDestRloc16
RLOC16 de la destination.
[out] aNextHopRloc16
Pointeur pour renvoyer le RLOC16 du saut suivant, 0xfffe en l'absence de saut suivant.
[out] aPathCost
Pointeur permettant d'afficher le coût du chemin de retour vers la destination.

otThreadGetParentPriority

int8_t otThreadGetParentPriority(
  otInstance *aInstance
)

Permet d'obtenir la priorité parente attribuée.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Valeur de priorité parente attribuée. -2 signifie non attribué.
Voir aussi:
otThreadSetParentPriority

otThreadGetPreferredLeaderPartitionId

uint32_t otThreadGetPreferredLeaderPartitionId(
  otInstance *aInstance
)

Permet d'obtenir l'ID de partition de thread leader souhaité lorsque vous occupez le rôle de leader.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Valeur de l'ID de partition des leaders de threads.

otThreadGetPskc

void otThreadGetPskc(
  otInstance *aInstance,
  otPskc *aPskc
)

Téléchargez Thread PSKc.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[out] aPskc
Pointeur vers un élément otPskc pour renvoyer la clé pré-partagée Thread récupérée.
Voir aussi:
otThreadSetPskc

otThreadGetPskcRef

otPskcRef otThreadGetPskcRef(
  otInstance *aInstance
)

Permet d'obtenir la référence clé du Thread PSKc stocké.

Nécessite l'activation de la fonctionnalité de compilation OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Référence clé concernant PSKc
Voir aussi:
otThreadSetPskcRef

otThreadGetRouterDowngradeThreshold

uint8_t otThreadGetRouterDowngradeThreshold(
  otInstance *aInstance
)

Obtenez le paramètre ROUTER_DOWNGRADE_THRESHOLD utilisé pour le rôle "Routeur".

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Valeur ROUTER_DOWNgrade_ installation.
Voir aussi:
otThreadSetRouterDowngradeThreshold

otThreadGetRouterIdRange

void otThreadGetRouterIdRange(
  otInstance *aInstance,
  uint8_t *aMinRouterId,
  uint8_t *aMaxRouterId
)

Récupère la plage d'ID de routeur autorisés à être attribuées aux nœuds du réseau Thread.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[out] aMinRouterId
ID de routeur minimal.
[out] aMaxRouterId
ID de routeur maximal.
Voir aussi:
otThreadSetRouterIdRange

otThreadGetRouterIdSequence

uint8_t otThreadGetRouterIdSequence(
  otInstance *aInstance
)

Obtenez la séquence d'ID de routeur actuelle.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Séquence d'ID de routeur.

otThreadGetRouterInfo

otError otThreadGetRouterInfo(
  otInstance *aInstance,
  uint16_t aRouterId,
  otRouterInfo *aRouterInfo
)

La fonction conserve les informations de diagnostic pour un routeur Thread donné.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aRouterId
ID de routeur, ou RLOC16, pour un routeur donné.
[out] aRouterInfo
Pointeur vers l'emplacement des informations du routeur.
Valeurs de retour
OT_ERROR_NONE
Les informations du routeur pour l'ID donné ont bien été récupérées.
OT_ERROR_NOT_FOUND
Aucune entrée de routeur avec l'ID donné.
OT_ERROR_INVALID_ARGS
aRouterInfo est NULL.

otThreadGetRouterSelectionJitter

uint8_t otThreadGetRouterSelectionJitter(
  otInstance *aInstance
)

Permet d'obtenir le paramètre ROUTER_election_JITTER utilisé dans le rôle REED/Routeur.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Valeur ROUTER_election_JITTER.
Voir aussi:
otThreadSetRouterSelectionJitter

otThreadGetRouterUpgradeThreshold

uint8_t otThreadGetRouterUpgradeThreshold(
  otInstance *aInstance
)

Permet d'obtenir le paramètre ROUTER_UPGRADE_THRESHOLD utilisé dans le rôle REED.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Renvoie
Valeur ROUTER_UPGRADE_THRESHOLD.
Voir aussi:
otThreadSetRouterUpgradeThreshold

otThreadIsRouterEligible

bool otThreadIsRouterEligible(
  otInstance *aInstance
)

Indique si l'appareil est compatible avec les routeurs.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Valeurs de retour
TRUE
Si l'appareil est compatible avec les routeurs.
FALSE
Si l'appareil n'est pas compatible avec les routeurs.

otThreadIsRouterIdAllocated

bool otThreadIsRouterIdAllocated(
  otInstance *aInstance,
  uint8_t aRouterId
)

Indique si un ID de routeur est actuellement alloué ou non.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aRouterId
ID de routeur à vérifier.
Valeurs de retour
TRUE
Le aRouterId est alloué.
FALSE
Le aRouterId n'est pas alloué.

otThreadRegisterNeighborTableCallback

void otThreadRegisterNeighborTableCallback(
  otInstance *aInstance,
  otNeighborTableCallback aCallback
)

Enregistre une fonction de rappel pour la table voisine.

Le rappel fourni (s'il n'est pas nul) sera invoqué en cas de modification de la table voisine (par exemple, si une entrée enfant ou une entrée de routeur voisine est ajoutée/supprimée ou si le mode d'un enfant existant est modifié).

Les appels suivants à cette méthode écraseront le rappel précédent. Notez que ce rappel est invoqué pendant la mise à jour de la table voisine/enfant et toujours avant otStateChangedCallback.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aCallback
Pointeur vers une fonction de gestionnaire de rappel.

otThreadReleaseRouterId

otError otThreadReleaseRouterId(
  otInstance *aInstance,
  uint8_t aRouterId
)

Libérez un ID de routeur qui a été alloué par l'appareil dans le rôle de leader.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aRouterId
ID de routeur à libérer. La plage valide est [0, 62].
Valeurs de retour
OT_ERROR_NONE
L'ID de routeur a bien été libéré.
OT_ERROR_INVALID_ARGS
aRouterId n'est pas compris dans la plage [0, 62].
OT_ERROR_INVALID_STATE
L'appareil n'est actuellement pas considéré comme responsable.
OT_ERROR_NOT_FOUND
L'ID de routeur n'est pas attribué actuellement.

otThreadSetCcmEnabled

void otThreadSetCcmEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Détermine si l'appareil a été mis en service à l'aide de CCM.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aEnabled
TRUE si l'appareil a été mis en service avec CCM, FALSE dans le cas contraire.
otError otThreadSetChildRouterLinks(
  otInstance *aInstance,
  uint8_t aChildRouterLinks
)

Définissez le paramètre MLE_CHILD_ROUTER_LINKS utilisé dans le rôle REED.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aChildRouterLinks
Valeur MLE_CHILD_ROUTER_LINKS.
Valeurs de retour
OT_ERROR_NONE
La valeur a bien été définie.
OT_ERROR_INVALID_STATE
Les protocoles Thread sont activés.
Voir aussi:
otThreadGetChildRouterLinks

otThreadSetContextIdReuseDelay

void otThreadSetContextIdReuseDelay(
  otInstance *aInstance,
  uint32_t aDelay
)

Définissez le paramètre CONTEXT_ID_REUSE_Delay utilisé pour le rôle "Dirigeant".

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aDelay
Valeur CONTEXT_ID_REUSE_REQUEST
Voir aussi:
otThreadGetContextIdReuseDelay

otThreadSetDeviceProperties

void otThreadSetDeviceProperties(
  otInstance *aInstance,
  const otDeviceProperties *aDeviceProperties
)

Définissez les propriétés de l'appareil qui sont ensuite utilisées pour déterminer et définir la pondération de la variante optimale.

Nécessite OPENTHREAD_CONFIG_MLE_DEVICE_PROPERTY_LEADER_WEIGHT_ENABLE.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aDeviceProperties
Propriétés de l'appareil.

otThreadSetJoinerUdpPort

otError otThreadSetJoinerUdpPort(
  otInstance *aInstance,
  uint16_t aJoinerUdpPort
)

Définit le port UDP de jointure.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aJoinerUdpPort
Numéro du port UDP Joiner.
Valeurs de retour
OT_ERROR_NONE
Le port UDP de Joiner a bien été défini.
Voir aussi:
otThreadGetJoinerUdpPort

otThreadSetLocalLeaderWeight

void otThreadSetLocalLeaderWeight(
  otInstance *aInstance,
  uint8_t aWeight
)

Définit la pondération des dirigeants de threads utilisée lorsque vous utilisez le rôle de responsable.

Définit directement la pondération de la variante optimale sur la nouvelle valeur, en remplaçant sa valeur précédente (qui peut avoir été déterminée à partir de la valeur otDeviceProperties actuelle).

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aWeight
Valeur du poids des fils de discussion.
Voir aussi:
otThreadGetLeaderWeight

otThreadSetMaxAllowedChildren

otError otThreadSetMaxAllowedChildren(
  otInstance *aInstance,
  uint16_t aMaxChildren
)

Définit le nombre maximal d'enfants actuellement autorisés.

Ce paramètre ne peut être défini que lorsque le fonctionnement du protocole Thread a été arrêté.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMaxChildren
Nombre maximal d'enfants autorisés.
Valeurs de retour
OT_ERROR_NONE
Les enchères au CPC max. ont bien été définies
OT_ERROR_INVALID_ARGS
Si aMaxChildren n'est pas compris dans la plage [1, OPENTHREAD_CONFIG_MLE_MAX_CHILDREN].
OT_ERROR_INVALID_STATE
Si Thread n'est pas arrêté
Voir aussi:
otThreadGetMaxAllowedChildren

otThreadSetMaxChildIpAddresses

otError otThreadSetMaxChildIpAddresses(
  otInstance *aInstance,
  uint8_t aMaxIpAddresses
)

Définit ou restaure le nombre maximal d'adresses IP que chaque enfant MTD peut enregistrer avec cet appareil en tant que parent.

Transmettez 0 pour effacer le paramètre et restaurer la valeur par défaut.

Disponible lorsque OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE est activé.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMaxIpAddresses
Nombre maximal d'adresses IP que chaque enfant MTD peut enregistrer avec cet appareil en tant que parent. 0 pour effacer le paramètre et rétablir la valeur par défaut.
Valeurs de retour
OT_ERROR_NONE
Le numéro a bien été défini/effacé.
OT_ERROR_INVALID_ARGS
Si dépasse le nombre maximum autorisé.
Voir aussi:
otThreadGetMaxChildIpAddresses

otThreadSetNetworkIdTimeout

void otThreadSetNetworkIdTimeout(
  otInstance *aInstance,
  uint8_t aTimeout
)

Définissez le paramètre NETWORK_ID_TIMEOUT.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aTimeout
La valeur NETWORK_ID_TIMEOUT
Voir aussi:
otThreadGetNetworkIdTimeout

otThreadSetParentPriority

otError otThreadSetParentPriority(
  otInstance *aInstance,
  int8_t aParentPriority
)

Définissez la priorité du parent.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aParentPriority
Valeur de priorité du parent.
Valeurs de retour
OT_ERROR_NONE
La priorité parente a bien été définie.
OT_ERROR_INVALID_ARGS
Si la valeur de priorité du parent n'est pas comprise entre 1, 0, -1 et -2.
Voir aussi:
otThreadGetParentPriority

otThreadSetPreferredLeaderPartitionId

void otThreadSetPreferredLeaderPartitionId(
  otInstance *aInstance,
  uint32_t aPartitionId
)

Définissez l'ID de partition de la variante optimale de thread à utiliser lorsque vous occupez le rôle de leader.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aPartitionId
Valeur de l'ID de partition des leaders de threads.

otThreadSetPreferredRouterId

otError otThreadSetPreferredRouterId(
  otInstance *aInstance,
  uint8_t aRouterId
)

Définissez l'ID du routeur préféré.

En devenant routeur/responsable, le nœud tente d'utiliser cet ID de routeur. Si l'ID de routeur préféré n'est pas défini ou s'il ne peut pas être utilisé, un ID de routeur généré de manière aléatoire est sélectionné. Cette propriété ne peut être définie que lorsque le rôle de l'appareil est dissocié ou désactivé.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aRouterId
ID du routeur préféré.
Valeurs de retour
OT_ERROR_NONE
L'ID de routeur préféré a bien été défini.
OT_ERROR_INVALID_STATE
Impossible de définir (le rôle n'est pas dissocié ni désactivé)

otThreadSetPskc

otError otThreadSetPskc(
  otInstance *aInstance,
  const otPskc *aPskc
)

Définissez Thread PSKc.

N'aboutit que lorsque les protocoles Thread sont désactivés. L'appel réussi à cette fonction invalidera également les ensembles de données opérationnels actifs et en attente dans la mémoire non volatile.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aPskc
Pointeur vers la nouvelle clé pré-partagée Thread.
Valeurs de retour
OT_ERROR_NONE
Thread PSKc a bien été défini.
OT_ERROR_INVALID_STATE
Les protocoles Thread sont activés.
Voir aussi:
otThreadGetPskc

otThreadSetPskcRef

otError otThreadSetPskcRef(
  otInstance *aInstance,
  otPskcRef aKeyRef
)

Définissez la référence de la clé sur "Thread PSKc".

Nécessite l'activation de la fonctionnalité de compilation OPENTHREAD_CONFIG_PLATFORM_KEY_REFERENCES_ENABLE.

N'aboutit que lorsque les protocoles Thread sont désactivés. Si l'opération réussit, les ensembles de données opérationnels actifs et en attente dans la mémoire non volatile sont également invalidés.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aKeyRef
Référence clé concernant la nouvelle clé pré-partagée Thread
Valeurs de retour
OT_ERROR_NONE
Thread PSKc a bien été défini.
OT_ERROR_INVALID_STATE
Les protocoles Thread sont activés.
Voir aussi:
otThreadGetPskcRef

otThreadSetRouterDowngradeThreshold

void otThreadSetRouterDowngradeThreshold(
  otInstance *aInstance,
  uint8_t aThreshold
)

Définissez le paramètre ROUTER_DOWNGRADE_THRESHOLD utilisé dans le rôle "Dirigeant".

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aThreshold
Valeur ROUTER_DOWNgrade_ installation.
Voir aussi:
otThreadGetRouterDowngradeThreshold

otThreadSetRouterEligible

otError otThreadSetRouterEligible(
  otInstance *aInstance,
  bool aEligible
)

Détermine si l'appareil est compatible avec les routeurs.

Si aEligible est défini sur "false" et que l'appareil fonctionne actuellement comme routeur, cet appel entraînera la dissociation de l'appareil et une tentative de le reconnecter en tant qu'enfant.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aEligible
TRUE pour configurer l'appareil comme compatible avec les routeurs, FALSE dans le cas contraire.
Valeurs de retour
OT_ERROR_NONE
La configuration éligible pour le routeur a bien été définie.
OT_ERROR_NOT_CAPABLE
L'appareil ne peut pas devenir un routeur.

otThreadSetRouterIdRange

otError otThreadSetRouterIdRange(
  otInstance *aInstance,
  uint8_t aMinRouterId,
  uint8_t aMaxRouterId
)

Définit la plage d'ID de routeur autorisés à être attribués aux nœuds du réseau Thread.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMinRouterId
ID de routeur minimal.
[in] aMaxRouterId
ID de routeur maximal.
Valeurs de retour
OT_ERROR_NONE
La plage a bien été définie.
OT_ERROR_INVALID_ARGS
aMinRouterId > aMaxRouterId, ou la plage n'est pas couverte par [0, 62].
Voir aussi:
otThreadGetRouterIdRange

otThreadSetRouterSelectionJitter

void otThreadSetRouterSelectionJitter(
  otInstance *aInstance,
  uint8_t aRouterJitter
)

Définissez le paramètre ROUTER_election_JITTER utilisé dans le rôle REED/Routeur.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aRouterJitter
Valeur ROUTER_election_JITTER.
Voir aussi:
otThreadGetRouterSelectionJitter

otThreadSetRouterUpgradeThreshold

void otThreadSetRouterUpgradeThreshold(
  otInstance *aInstance,
  uint8_t aThreshold
)

Définissez le paramètre ROUTER_UPGRADE_ automatiquement utilisé pour le rôle de leader.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aThreshold
Valeur ROUTER_UPGRADE_THRESHOLD.
Voir aussi:
otThreadGetRouterUpgradeThreshold

otThreadSetSteeringData

void otThreadSetSteeringData(
  otInstance *aInstance,
  const otExtAddress *aExtAddress
)

Définir les données de direction hors bande.

L'option de configuration OPENTHREAD_CONFIG_MLE_STEERING_DATA_SET_OOB_ENABLE doit être définie pour permettre le paramétrage des données d'orientation hors bande.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aExtAddress
Adresse utilisée pour mettre à jour les données de pilotage. Tous les zéros pour effacer les données de pilotage (pas de données de pilotage). Tous les 0xFF pour définir le filtre des données de direction/sur l'effleurement afin qu'ils acceptent/autorisent tout. Un EUI64 spécifique qui est ensuite ajouté au filtre de données de pilotage/d'effleurement actuel

otThreadSetThreadVersionCheckEnabled

void otThreadSetThreadVersionCheckEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Détermine si le seuil de version du TLV de la règle de sécurité pour le routage (champ VR) est activé.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aEnabled
TRUE pour activer le seuil de version du TLV de la règle de sécurité pour le routage, FALSE dans le cas contraire.

Macros

OT_CHILD_IP6_ADDRESS_ITERATOR_INIT

 OT_CHILD_IP6_ADDRESS_ITERATOR_INIT 0

Initialiseur pour otChildIP6AddressIterator.

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.