Commissario

Questo modulo include funzioni per il ruolo Thread Commissioner.

Riepilogo

Enumerazioni

otCommissionerJoinerEvent enum
Definisce un evento Joiner sul Commissioner.
otCommissionerState{
  OT_COMMISSIONER_STATE_DISABLED = 0,
  OT_COMMISSIONER_STATE_PETITION = 1,
  OT_COMMISSIONER_STATE_ACTIVE = 2
}
enum
Definisce lo stato del Commissioner.
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 del joiner.

Typedef

otCommissionerEnergyReportCallback)(uint32_t aChannelMask, const uint8_t *aEnergyList, uint8_t aEnergyListLength, void *aContext) typedef
void(*
Il puntatore viene chiamato quando il Commissario riceve un rapporto sui consumi energetici.
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 Commissioner.
otCommissionerPanIdConflictCallback)(uint16_t aPanId, uint32_t aChannelMask, void *aContext) typedef
void(*
Il puntatore viene chiamato quando il commissario riceve un messaggio di conflitto relativo all'ID PAN.
otCommissionerState typedef
Definisce lo stato del Commissioner.
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 messa in servizio.
otJoinerInfo typedef
struct otJoinerInfo
Rappresenta le informazioni sul joiner.
otJoinerInfoType typedef
Definisce un tipo di informazioni del joiner.
otJoinerPskd typedef
struct otJoinerPskd
Rappresenta un PSKd Joiner.
otSteeringData typedef
Rappresenta i dati sullo 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 di discerner Joiner.
otCommissionerAnnounceBegin(otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, const otIp6Address *aAddress)
Invia un messaggio Annuncia 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 sulla scansione energetica.
otCommissionerGetId(otInstance *aInstance)
const char *
Restituisce l'ID Commissioner.
otCommissionerGetNextJoinerInfo(otInstance *aInstance, uint16_t *aIterator, otJoinerInfo *aJoiner)
Ricevi informazioni sui membri nella posizione autore.
otCommissionerGetProvisioningUrl(otInstance *aInstance)
const char *
Recupera l'URL di provisioning.
otCommissionerGetSessionId(otInstance *aInstance)
uint16_t
Restituisce l'ID sessione Commissioner.
otCommissionerGetState(otInstance *aInstance)
Restituisce lo stato Commissioner State.
otCommissionerPanIdQuery(otInstance *aInstance, uint16_t aPanId, uint32_t aChannelMask, const otIp6Address *aAddress, otCommissionerPanIdConflictCallback aCallback, void *aContext)
Invia un messaggio Query sull'ID PAN.
otCommissionerRemoveJoiner(otInstance *aInstance, const otExtAddress *aEui64)
Rimuove una voce del joiner.
otCommissionerRemoveJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner)
Rimuove una voce del 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)
Abilita il ruolo Thread Commissioner.
otCommissionerStop(otInstance *aInstance)
Disabilita il ruolo Thread Commissioner.

Strutture

otCommissioningDataset

Rappresenta un set di dati per la messa in servizio.

otJoinerInfo

Rappresenta le informazioni sul joiner.

otJoinerPskd

Rappresenta un PSKd Joiner.

otSteeringData

Rappresenta i dati sullo sterzo.

Enumerazioni

otCommissionerJoinerEvent

 otCommissionerJoinerEvent

Definisce un evento Joiner sul Commissioner.

otCommissionerState

 otCommissionerState

Definisce lo stato del Commissioner.

Proprietà
OT_COMMISSIONER_STATE_ACTIVE

Il ruolo di commissario è attivo.

OT_COMMISSIONER_STATE_DISABLED

Il ruolo di commissario è disabilitato.

OT_COMMISSIONER_STATE_PETITION

Attualmente è in corso una petizione per diventare Commissario.

otJoinerInfoType

 otJoinerInfoType

Definisce un tipo di informazioni del joiner.

Proprietà
OT_JOINER_INFO_TYPE_ANY

Accetta qualsiasi Joiner (non sono specificati EUI64 o Discerner).

OT_JOINER_INFO_TYPE_DISCERNER

Il discerner del joiner è specificato (mSharedId.mDiscerner in otJoinerInfo).

OT_JOINER_INFO_TYPE_EUI64

L'EUI-64 del joiner è specificato (mSharedId.mEui64 in otJoinerInfo).

Typedef

otCommissionerEnergyReportCallback

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

Il puntatore viene chiamato quando il Commissario riceve un rapporto sui consumi energetici.

Dettagli
Parametri
[in] aChannelMask
Il valore della maschera del canale.
[in] aEnergyList
Un puntatore all'elenco delle misurazioni 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 sul 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 Commissioner.

otCommissionerPanIdConflictCallback

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

Il puntatore viene chiamato quando il commissario riceve un messaggio di conflitto relativo all'ID PAN.

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 Commissioner.

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 Commissario.
[in] aContext
Un puntatore al contesto specifico dell'applicazione.

otCommissioningDataset

struct otCommissioningDataset otCommissioningDataset

Rappresenta un set di dati per la messa in servizio.

otJoinerInfo

struct otJoinerInfo otJoinerInfo

Rappresenta le informazioni sul joiner.

otJoinerInfoType

enum otJoinerInfoType otJoinerInfoType

Definisce un tipo di informazioni del joiner.

otJoinerPskd

struct otJoinerPskd otJoinerPskd

Rappresenta un PSKd Joiner.

otSteeringData

struct otSteeringData otSteeringData

Rappresenta i dati sullo sterzo.

Funzioni

otCommissionerAddJoiner

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

Aggiunge una voce Joiner.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
[in] aEui64
Un'indicazione dello standard IEEE EUI-64 o NULL del Joiner per qualsiasi Joiner.
[in] aPskd
Un puntatore al PSKd.
[in] aTimeout
Periodo di tempo dopo il quale un membro viene rimosso automaticamente, in secondi.
Valori restituiti
OT_ERROR_NONE
Joiner aggiunto correttamente.
OT_ERROR_NO_BUFS
Nessun buffer disponibile per aggiungere il joiner.
OT_ERROR_INVALID_ARGS
aEui64 o aPskd non sono validi.
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 di discerner Joiner.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
[in] aDiscerner
Un'indicazione per Joiner Discerner.
[in] aPskd
Un puntatore al PSKd.
[in] aTimeout
Periodo di tempo dopo il quale un membro viene rimosso automaticamente, in secondi.
Valori restituiti
OT_ERROR_NONE
Joiner aggiunto correttamente.
OT_ERROR_NO_BUFS
Nessun buffer disponibile per aggiungere il joiner.
OT_ERROR_INVALID_ARGS
aDiscerner o aPskd non sono validi.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

otCommissionerAnnounceBegin

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

Invia un messaggio Annuncia inizio.

Dettagli
Parametri
[in] aInstance
Un puntatore a 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 (in millisecondi) tra due trasmissioni successive di annuncio MLE.
[in] aAddress
Un puntatore alla destinazione IPv6.
Valori restituiti
OT_ERROR_NONE
Messaggio di annuncio di inizio inserito correttamente.
OT_ERROR_NO_BUFS
Buffer insufficienti per generare un messaggio Annuncia inizio.
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 sulla scansione energetica.

Dettagli
Parametri
[in] aInstance
Un puntatore a 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 tra le misurazioni dell'energia (millisecondi).
[in] aScanDuration
La durata della scansione per ogni misurazione dell'energia (millisecondi).
[in] aAddress
Un puntatore alla destinazione IPv6.
[in] aCallback
Un puntatore a una funzione chiamata alla ricezione di un messaggio del rapporto sui consumi energetici.
[in] aContext
Un puntatore al contesto specifico dell'applicazione.
Valori restituiti
OT_ERROR_NONE
Messaggio Query sulla scansione energetica accodato correttamente.
OT_ERROR_NO_BUFS
Buffer insufficienti per generare un messaggio Query sulla scansione energetica.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

otCommissionerGetId

const char * otCommissionerGetId(
  otInstance *aInstance
)

Restituisce l'ID Commissioner.

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

otCommissionerGetNextJoinerInfo

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

Ricevi informazioni sui membri nella posizione autore.

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

otCommissionerGetProvisioningUrl

const char * otCommissionerGetProvisioningUrl(
  otInstance *aInstance
)

Recupera l'URL di provisioning.

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

otCommissionerGetSessionId

uint16_t otCommissionerGetSessionId(
  otInstance *aInstance
)

Restituisce l'ID sessione Commissioner.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
Restituisce
L'ID sessione Commissioner corrente.

otCommissionerGetState

otCommissionerState otCommissionerGetState(
  otInstance *aInstance
)

Restituisce lo stato Commissioner State.

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

otCommissionerPanIdQuery

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

Invia un messaggio Query sull'ID PAN.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
[in] aPanId
L'ID PAN su cui eseguire la query.
[in] aChannelMask
Il valore della maschera del canale.
[in] aAddress
Un puntatore alla destinazione IPv6.
[in] aCallback
Un puntatore a 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 Query sull'ID PAN è stato accodato correttamente.
OT_ERROR_NO_BUFS
Buffer insufficienti per generare un messaggio Query sull'ID PAN.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

otCommissionerRemoveJoiner

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

Rimuove una voce del joiner.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
[in] aEui64
Un'indicazione dello standard IEEE EUI-64 o NULL del Joiner per qualsiasi Joiner.
Valori restituiti
OT_ERROR_NONE
Il joiner è stato rimosso.
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 del joiner.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
[in] aDiscerner
Un'indicazione per Joiner Discerner.
Valori restituiti
OT_ERROR_NONE
Il joiner è stato rimosso.
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 a un'istanza OpenThread.
[in] aTlvs
Un puntatore ai TLV.
[in] aLength
La durata dei TLV.
Valori restituiti
OT_ERROR_NONE
Invio del comando per il set di dati meshcop riuscito.
OT_ERROR_NO_BUFS
Spazio nel buffer 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 a un'istanza OpenThread.
[in] aDataset
Un puntatore al set di dati per la messa in servizio.
[in] aTlvs
Un puntatore ai TLV.
[in] aLength
La durata dei TLV.
Valori restituiti
OT_ERROR_NONE
Invio del comando per il set di dati meshcop riuscito.
OT_ERROR_NO_BUFS
Spazio nel buffer insufficiente per l'invio.
OT_ERROR_INVALID_STATE
Il commissario non è attivo.

otCommissionerSetId

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

Imposta l'ID Commissioner.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
[in] aId
Un puntatore a un array di caratteri stringa. Deve essere null terminato.
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 a un'istanza OpenThread.
[in] aProvisioningUrl
Un puntatore all'URL di provisioning (può essere NULL da impostare come stringa vuota).
Valori restituiti
OT_ERROR_NONE
URL di provisioning impostato.
OT_ERROR_INVALID_ARGS
aProvisioningUrl non è valido (troppo lungo).

otCommissionerStart

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

Abilita il ruolo Thread Commissioner.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
[in] aStateCallback
Un puntatore a una funzione che viene richiamata quando lo stato del Commissioner cambia.
[in] aJoinerCallback
Si verifica un puntatore a una funzione richiamata 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
Commissioner è già stato avviato.
OT_ERROR_INVALID_STATE
Al momento il dispositivo non è collegato a una rete.

otCommissionerStop

otError otCommissionerStop(
  otInstance *aInstance
)

Disabilita il ruolo Thread Commissioner.

Dettagli
Parametri
[in] aInstance
Un puntatore a un'istanza OpenThread.
Valori restituiti
OT_ERROR_NONE
Servizio Commissioner interrotto correttamente.
OT_ERROR_ALREADY
Commissioner è già stato interrotto.

Macro

OT_COMMISSIONING_PASSPHRASE_MAX_SIZE

 OT_COMMISSIONING_PASSPHRASE_MAX_SIZE 255

Dimensione massima della passphrase di messa in servizio.

OT_COMMISSIONING_PASSPHRASE_MIN_SIZE

 OT_COMMISSIONING_PASSPHRASE_MIN_SIZE 6

Dimensioni minime della passphrase di messa in servizio.

OT_JOINER_MAX_PSKD_LENGTH

 OT_JOINER_MAX_PSKD_LENGTH 32

Lunghezza massima della stringa di un PSKd Joiner (non include il carattere null).

OT_PROVISIONING_URL_MAX_SIZE

 OT_PROVISIONING_URL_MAX_SIZE 64

Dimensione massima (numero di caratteri) nella stringa URL di provisioning (esclude i caratteri null).

OT_STEERING_DATA_MAX_LENGTH

 OT_STEERING_DATA_MAX_LENGTH 16

Lunghezza massima dei dati di sterzo (byte)

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.