Commissario

Questo modulo include funzioni per il ruolo Thread Commissioner.

Riepilogo

Enumerazioni

otCommissionerJoinerEvent enum
Definisce un evento Joiner sul commissionatore.
otCommissionerState{
  OT_COMMISSIONER_STATE_DISABLED = 0,
  OT_COMMISSIONER_STATE_PETITION = 1,
  OT_COMMISSIONER_STATE_ACTIVE = 2
}
enum
Definisce lo stato del commissario.
otJoinerInfoType{
  OT_JOINER_INFO_TYPE_ANY = 0,
  OT_JOINER_INFO_TYPE_EUI64 = 1,
  OT_JOINER_INFO_TYPE_DISCERNER = 2
}
enum
Definisce un tipo di informazioni per falegname.

Definizione di tipo

otCommissionerEnergyReportCallback)(uint32_t aChannelMask, const uint8_t *aEnergyList, uint8_t aEnergyListLength, void *aContext) typedef
void(*
Il puntatore viene chiamato quando il Commissario riceve un Report sull'energia.
otCommissionerJoinerCallback)(otCommissionerJoinerEvent aEvent, const otJoinerInfo *aJoinerInfo, const otExtAddress *aJoinerId, void *aContext) typedef
void(*
Il puntatore viene chiamato ogni volta che lo stato del joiner cambia.
otCommissionerJoinerEvent typedef
Definisce un evento Joiner sul commissionatore.
otCommissionerPanIdConflictCallback)(uint16_t aPanId, uint32_t aChannelMask, void *aContext) typedef
void(*
Il puntatore viene chiamato quando il Commissario riceve un messaggio PAN ID in conflitto.
otCommissionerState typedef
Definisce lo stato del commissario.
otCommissionerStateCallback)(otCommissionerState aState, void *aContext) typedef
void(*
Il puntatore viene chiamato ogni volta che lo stato del commissario cambia.
otCommissioningDataset typedef
Rappresenta un set di dati per la commissione.
otJoinerInfo typedef
struct otJoinerInfo
Rappresenta un'informazione Joiner.
otJoinerInfoType typedef
Definisce un tipo di informazioni per falegname.
otJoinerPskd typedef
struct otJoinerPskd
Rappresenta un file di join PSKd.
otSteeringData typedef
Rappresentano i dati dello sterzo.

Funzioni

otCommissionerAddJoiner(otInstance *aInstance, const otExtAddress *aEui64, const char *aPskd, uint32_t aTimeout)
Aggiunge una voce Joiner.
otCommissionerAddJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner, const char *aPskd, uint32_t aTimeout)
Aggiunge una voce Joiner con un determinato valore Joiner Discerner.
otCommissionerAnnounceBegin(otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, const otIp6Address *aAddress)
Invia un messaggio di annuncio dell'inizio.
otCommissionerEnergyScan(otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, uint16_t aScanDuration, const otIp6Address *aAddress, otCommissionerEnergyReportCallback aCallback, void *aContext)
Invia un messaggio Query sull'energia.
otCommissionerGetId(otInstance *aInstance)
const char *
Restituisce l'ID commissario.
otCommissionerGetNextJoinerInfo(otInstance *aInstance, uint16_t *aIterator, otJoinerInfo *aJoiner)
Ottieni informazioni su Joiner in una posizione dell'terzatore.
otCommissionerGetProvisioningUrl(otInstance *aInstance)
const char *
Visualizza l'URL di provisioning.
otCommissionerGetSessionId(otInstance *aInstance)
uint16_t
Restituisce l'ID sessione del commissario.
otCommissionerGetState(otInstance *aInstance)
Restituisce lo stato del commissario.
otCommissionerPanIdQuery(otInstance *aInstance, uint16_t aPanId, uint32_t aChannelMask, const otIp6Address *aAddress, otCommissionerPanIdConflictCallback aCallback, void *aContext)
Invia un messaggio di query ID PAN.
otCommissionerRemoveJoiner(otInstance *aInstance, const otExtAddress *aEui64)
Rimuove una voce Joiner.
otCommissionerRemoveJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner)
Rimuove una voce Joiner.
otCommissionerSendMgmtGet(otInstance *aInstance, const uint8_t *aTlvs, uint8_t aLength)
Invia MGMT_COMMISSIONER_GET.
otCommissionerSendMgmtSet(otInstance *aInstance, const otCommissioningDataset *aDataset, const uint8_t *aTlvs, uint8_t aLength)
Invia MGMT_COMMISSIONER_SET.
otCommissionerSetId(otInstance *aInstance, const char *aId)
Imposta l'ID Commissioner.
otCommissionerSetProvisioningUrl(otInstance *aInstance, const char *aProvisioningUrl)
Imposta l'URL di provisioning.
otCommissionerStart(otInstance *aInstance, otCommissionerStateCallback aStateCallback, otCommissionerJoinerCallback aJoinerCallback, void *aCallbackContext)
Attiva il ruolo Thread Commissioner.
otCommissionerStop(otInstance *aInstance)
Consente di disattivare il ruolo Thread Commissioner.

Strutture

otCommissioningDataset

Rappresenta un set di dati per la commissione.

Informazioni su otjoiner

Rappresenta un'informazione Joiner.

otjoinerPskd

Rappresenta un file di join PSKd.

otSteeringData

Rappresentano i dati dello sterzo.

Enumerazioni

OtCommissionerjoinerEvent

 otCommissionerJoinerEvent

Definisce un evento Joiner sul commissionatore.

OtCommissionerState

 otCommissionerState

Definisce lo stato del commissario.

Proprietà
OT_COMMISSIONER_STATE_ACTIVE

Il ruolo di commissario è attivo.

OT_COMMISSIONER_STATE_DISABLED

Il ruolo di commissario è disattivato.

OT_COMMISSIONER_STATE_PETITION

Attualmente invii una gara per diventare Commissario.

InfoType otjoiner

 otJoinerInfoType

Definisce un tipo di informazioni per falegname.

Proprietà
OT_JOINER_INFO_TYPE_ANY

Accetta qualsiasi falegname (non è specificato alcun EUI64 o Discerner).

OT_JOINER_INFO_TYPE_DISCERNER

La fresatrice con giunto è specificata (mSharedId.mDiscerner in otJoinerInfo).

OT_JOINER_INFO_TYPE_EUI64

Il joiner EUI-64 è specificato (mSharedId.mEui64 in otJoinerInfo).

Definizione di tipo

OtCommissionerEnergyReportCallback

void(* otCommissionerEnergyReportCallback)(uint32_t aChannelMask, const uint8_t *aEnergyList, uint8_t aEnergyListLength, void *aContext)

Il puntatore viene chiamato quando il Commissario riceve un Report sull'energia.

Dettagli
Parametri
[in] aChannelMask
Il valore della maschera del canale.
[in] aEnergyList
Un puntatore all'elenco di misurazione dell'energia.
[in] aEnergyListLength
Numero di voci in aEnergyListLength.
[in] aContext
Un puntatore al contesto specifico dell'applicazione.

OtCommissionerjoinerCallback

void(* otCommissionerJoinerCallback)(otCommissionerJoinerEvent aEvent, const otJoinerInfo *aJoinerInfo, const otExtAddress *aJoinerId, void *aContext)

Il puntatore viene chiamato ogni volta che lo stato del joiner cambia.

Dettagli
Parametri
[in] aEvent
Il tipo di evento Joiner.
[in] aJoinerInfo
Un puntatore alle informazioni su Joiner.
[in] aJoinerId
Un puntatore all'ID joiner (se non è noto, sarà NULL).
[in] aContext
Un puntatore al contesto specifico dell'applicazione.

OtCommissionerjoinerEvent

enum otCommissionerJoinerEvent otCommissionerJoinerEvent

Definisce un evento Joiner sul commissionatore.

OtCommissionerPanIdConflittoChiamata

void(* otCommissionerPanIdConflictCallback)(uint16_t aPanId, uint32_t aChannelMask, void *aContext)

Il puntatore viene chiamato quando il Commissario riceve un messaggio PAN ID in conflitto.

Dettagli
Parametri
[in] aPanId
Il valore dell'ID PAN.
[in] aChannelMask
Il valore della maschera del canale.
[in] aContext
Un puntatore al contesto specifico dell'applicazione.

OtCommissionerState

enum otCommissionerState otCommissionerState

Definisce lo stato del commissario.

OtCommissionerStateCallback

void(* otCommissionerStateCallback)(otCommissionerState aState, void *aContext)

Il puntatore viene chiamato ogni volta che lo stato del commissario cambia.

Dettagli
Parametri
[in] aState
Lo stato del Commissario.
[in] aContext
Un puntatore al contesto specifico dell'applicazione.

Set di dati commissioni

struct otCommissioningDataset otCommissioningDataset

Rappresenta un set di dati per la commissione.

Informazioni su Otjoiner

struct otJoinerInfo otJoinerInfo

Rappresenta un'informazione Joiner.

InfoType otjoiner

enum otJoinerInfoType otJoinerInfoType

Definisce un tipo di informazioni per falegname.

Ot Joiner Pskd

struct otJoinerPskd otJoinerPskd

Rappresenta un file di join PSKd.

Dati steering

struct otSteeringData otSteeringData

Rappresentano i dati dello sterzo.

Funzioni

OtCommissioner Aggiungi Joiner

otError otCommissionerAddJoiner(
  otInstance *aInstance,
  const otExtAddress *aEui64,
  const char *aPskd,
  uint32_t aTimeout
)

Aggiunge una voce Joiner.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aEui64
Un puntatore alla IEEE EUI-64 o NULL della falegnameria per qualsiasi falegname.
[in] aPskd
Un puntatore sulla PSKd.
[in] aTimeout
Tempo dopo il quale un joiner viene rimosso automaticamente, in secondi.
Valori restituiti
OT_ERROR_NONE
Joiner aggiunto.
OT_ERROR_NO_BUFS
Nessun buffer disponibile per l'aggiunta di Joiner.
OT_ERROR_INVALID_ARGS
aEui64 o aPskd non è valido.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

OtCommissionerAddjoinerWithDiscerner

otError otCommissionerAddJoinerWithDiscerner(
  otInstance *aInstance,
  const otJoinerDiscerner *aDiscerner,
  const char *aPskd,
  uint32_t aTimeout
)

Aggiunge una voce Joiner con un determinato valore Joiner Discerner.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aDiscerner
Un puntatore alla Joiner Discerner.
[in] aPskd
Un puntatore sulla PSKd.
[in] aTimeout
Tempo dopo il quale un joiner viene rimosso automaticamente, in secondi.
Valori restituiti
OT_ERROR_NONE
Joiner aggiunto.
OT_ERROR_NO_BUFS
Nessun buffer disponibile per l'aggiunta di Joiner.
OT_ERROR_INVALID_ARGS
aDiscerner o aPskd non è valido.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

OtCommissionerAnnounceStart

otError otCommissionerAnnounceBegin(
  otInstance *aInstance,
  uint32_t aChannelMask,
  uint8_t aCount,
  uint16_t aPeriod,
  const otIp6Address *aAddress
)

Invia un messaggio di annuncio dell'inizio.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aChannelMask
Il valore della maschera del canale.
[in] aCount
Il numero di messaggi di annuncio per canale.
[in] aPeriod
Il tempo che intercorre tra due successive trasmissioni di annunci MLE (in millisecondi).
[in] aAddress
Un puntatore sulla destinazione IPv6.
Valori restituiti
OT_ERROR_NONE
Accodati il messaggio Annuncia inizio.
OT_ERROR_NO_BUFS
Buffer insufficienti per generare un messaggio di inizio annuncio.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

OtCommissionerEnergyScan

otError otCommissionerEnergyScan(
  otInstance *aInstance,
  uint32_t aChannelMask,
  uint8_t aCount,
  uint16_t aPeriod,
  uint16_t aScanDuration,
  const otIp6Address *aAddress,
  otCommissionerEnergyReportCallback aCallback,
  void *aContext
)

Invia un messaggio Query sull'energia.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aChannelMask
Il valore della maschera del canale.
[in] aCount
Il numero di misurazioni dell'energia per canale.
[in] aPeriod
Il tempo che intercorre tra una misurazione energetica (millisecondi)
[in] aScanDuration
La durata della scansione per ciascuna misurazione dell'energia (millisecondi).
[in] aAddress
Un puntatore sulla destinazione IPv6.
[in] aCallback
Un puntatore su una funzione chiamata alla ricezione di un messaggio del report sull'energia.
[in] aContext
Un puntatore al contesto specifico dell'applicazione.
Valori restituiti
OT_ERROR_NONE
Accodato correttamente il messaggio Query sull'energia.
OT_ERROR_NO_BUFS
Buffer insufficienti per generare un messaggio Query di scansione dell'energia.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

ID OtCommissioner

const char * otCommissionerGetId(
  otInstance *aInstance
)

Restituisce l'ID commissario.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
Restituisce
ID Commissioner.

otCommissionerGetNextjoinerInfo

otError otCommissionerGetNextJoinerInfo(
  otInstance *aInstance,
  uint16_t *aIterator,
  otJoinerInfo *aJoiner
)

Ottieni informazioni su Joiner in una posizione dell'terzatore.

Dettagli
Parametri
[in] aInstance
Un puntatore all'istanza.
[in,out] aIterator
Un puntatore al contesto dell'iteratore delle informazioni su Joiner.
[out] aJoiner
Un riferimento alle informazioni su Joiner.
Valori restituiti
OT_ERROR_NONE
Ottieni le informazioni su Joiner.
OT_ERROR_NOT_FOUND
Impossibile trovare joiner successivo.

OtCommissionerGetProvisionUrl

const char * otCommissionerGetProvisioningUrl(
  otInstance *aInstance
)

Visualizza l'URL di provisioning.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
Restituisce
Un puntatore alla stringa dell'URL.

ID sessione otCommissioner

uint16_t otCommissionerGetSessionId(
  otInstance *aInstance
)

Restituisce l'ID sessione del commissario.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
Restituisce
L'ID sessione della commissione attuale.

OtCommissionerGetState

otCommissionerState otCommissionerGetState(
  otInstance *aInstance
)

Restituisce lo stato del commissario.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
Valori restituiti
OT_COMMISSIONER_STATE_DISABLED
Commissioner disattivato.
OT_COMMISSIONER_STATE_PETITION
Diventare il commissario.
OT_COMMISSIONER_STATE_ACTIVE
Commissioner attivato.

Query Query oT Commissioner

otError otCommissionerPanIdQuery(
  otInstance *aInstance,
  uint16_t aPanId,
  uint32_t aChannelMask,
  const otIp6Address *aAddress,
  otCommissionerPanIdConflictCallback aCallback,
  void *aContext
)

Invia un messaggio di query ID PAN.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aPanId
L'ID PAN per cui eseguire la query.
[in] aChannelMask
Il valore della maschera del canale.
[in] aAddress
Un puntatore sulla destinazione IPv6.
[in] aCallback
Un puntatore su una funzione chiamata alla ricezione di un messaggio di conflitto ID PAN.
[in] aContext
Un puntatore al contesto specifico dell'applicazione.
Valori restituiti
OT_ERROR_NONE
Il messaggio di query ID PAN è stato accodato.
OT_ERROR_NO_BUFS
Buffer insufficienti per generare un messaggio di query ID PAN.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

OtCommissionerRimuovi Joiner

otError otCommissionerRemoveJoiner(
  otInstance *aInstance,
  const otExtAddress *aEui64
)

Rimuove una voce Joiner.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aEui64
Un puntatore alla IEEE EUI-64 o NULL della falegnameria per qualsiasi falegname.
Valori restituiti
OT_ERROR_NONE
Joiner rimosso correttamente.
OT_ERROR_NOT_FOUND
Impossibile trovare il joiner specificato da aEui64.
OT_ERROR_INVALID_ARGS
Il campo aEui64 non è valido.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

OtCommissionerRemovejoinerWithDiscerner

otError otCommissionerRemoveJoinerWithDiscerner(
  otInstance *aInstance,
  const otJoinerDiscerner *aDiscerner
)

Rimuove una voce Joiner.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aDiscerner
Un puntatore alla Joiner Discerner.
Valori restituiti
OT_ERROR_NONE
Joiner rimosso correttamente.
OT_ERROR_NOT_FOUND
Impossibile trovare il joiner specificato da aEui64.
OT_ERROR_INVALID_ARGS
Il campo aDiscerner non è valido.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

OtCommissionerSendMgmtGet

otError otCommissionerSendMgmtGet(
  otInstance *aInstance,
  const uint8_t *aTlvs,
  uint8_t aLength
)

Invia MGMT_COMMISSIONER_GET.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aTlvs
Un puntatore ai TLV.
[in] aLength
La lunghezza dei TLV.
Valori restituiti
OT_ERROR_NONE
Invio del comando del set di dati meshcop riuscito.
OT_ERROR_NO_BUFS
Margine insufficiente per l'invio.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

OtCommissionerSendMgmtSet

otError otCommissionerSendMgmtSet(
  otInstance *aInstance,
  const otCommissioningDataset *aDataset,
  const uint8_t *aTlvs,
  uint8_t aLength
)

Invia MGMT_COMMISSIONER_SET.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aDataset
Un puntatore alla messa in servizio del set di dati.
[in] aTlvs
Un puntatore ai TLV.
[in] aLength
La lunghezza dei TLV.
Valori restituiti
OT_ERROR_NONE
Invio del comando del set di dati meshcop riuscito.
OT_ERROR_NO_BUFS
Margine insufficiente per l'invio.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

ID commissione OtCommissioner

otError otCommissionerSetId(
  otInstance *aInstance,
  const char *aId
)

Imposta l'ID Commissioner.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aId
Un puntatore su una matrice di caratteri stringa. Deve essere nullo.
Valori restituiti
OT_ERROR_NONE
ID Commissioner impostato correttamente.
OT_ERROR_INVALID_ARGS
Il nome è troppo lungo.
OT_ERROR_INVALID_STATE
Il commissario è attivo e l'ID non può essere modificato.

OtCommissionerSetProvisioningUrl

otError otCommissionerSetProvisioningUrl(
  otInstance *aInstance,
  const char *aProvisioningUrl
)

Imposta l'URL di provisioning.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aProvisioningUrl
Un puntatore all'URL di provisioning (può essere NULL per essere impostato come stringa vuota).
Valori restituiti
OT_ERROR_NONE
Impostazione dell'URL di provisioning riuscita.
OT_ERROR_INVALID_ARGS
aProvisioningUrl non è valido (troppo lungo).

OtCommissionerStart

otError otCommissionerStart(
  otInstance *aInstance,
  otCommissionerStateCallback aStateCallback,
  otCommissionerJoinerCallback aJoinerCallback,
  void *aCallbackContext
)

Attiva il ruolo Thread Commissioner.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
[in] aStateCallback
Un puntatore su una funzione che viene richiamata quando lo stato del commissario cambia.
[in] aJoinerCallback
Si verifica un puntatore del mouse su una funzione chiamata con un evento joiner.
[in] aCallbackContext
Un puntatore al contesto specifico dell'applicazione.
Valori restituiti
OT_ERROR_NONE
Avvio del servizio Commissioner riuscito.
OT_ERROR_ALREADY
Il commissario è già iniziato.
OT_ERROR_INVALID_STATE
Il dispositivo non è attualmente collegato a una rete.

OtCommissionerStop

otError otCommissionerStop(
  otInstance *aInstance
)

Consente di disattivare il ruolo Thread Commissioner.

Dettagli
Parametri
[in] aInstance
Un puntatore su un'istanza OpenThread.
Valori restituiti
OT_ERROR_NONE
Il servizio Commissioner è stato interrotto.
OT_ERROR_ALREADY
Il commissario è già stato interrotto.

Macro

OT_COMMISSIONING_PASSPHRASE_MAX_SIZE

 OT_COMMISSIONING_PASSPHRASE_MAX_SIZE 255

Dimensione massima della passphrase di commissione.

OT_COMMISSIONING_PASSPHRASE_MIN_SIZE

 OT_COMMISSIONING_PASSPHRASE_MIN_SIZE 6

Dimensione minima della passphrase di commissione.

OT_JOINER_MAX_PSKD_LENGTH

 OT_JOINER_MAX_PSKD_LENGTH 32

Lunghezza massima della stringa di un joiner PSKd (non include char null).

OT_PROVISIONING_URL_MAX_SIZE

 OT_PROVISIONING_URL_MAX_SIZE 64

Dimensione massima (numero di caratteri) nella stringa dell'URL di provisioning (escluso il carattere null).

DATI_MAX_STEERING_MAX_LENGTH

 OT_STEERING_DATA_MAX_LENGTH 16

Lunghezza massima dei dati di guida (byte)

Risorse

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