Komisarz

Ten moduł obejmuje funkcje na stanowisku komisarza ds. wątków.

Podsumowanie

Wyliczenia

otCommissionerJoinerEvent enum | typ wyliczeniowy
Definiuje zdarzenie Joiner na komisarzu.
otCommissionerState{
  OT_COMMISSIONER_STATE_DISABLED = 0,
  OT_COMMISSIONER_STATE_PETITION = 1,
  OT_COMMISSIONER_STATE_ACTIVE = 2
}
enum | typ wyliczeniowy
Definiuje stan komisarza.
otJoinerInfoType{
  OT_JOINER_INFO_TYPE_ANY = 0,
  OT_JOINER_INFO_TYPE_EUI64 = 1,
  OT_JOINER_INFO_TYPE_DISCERNER = 2
}
enum | typ wyliczeniowy
Definiuje typ danych złączającego.

Definicje typów

otCommissionerEnergyReportCallback)(uint32_t aChannelMask, const uint8_t *aEnergyList, uint8_t aEnergyListLength, void *aContext) typedef
void(*
Wskaźnik jest wywoływany, gdy komisarz otrzyma raport energetyczny.
otCommissionerJoinerCallback)(otCommissionerJoinerEvent aEvent, const otJoinerInfo *aJoinerInfo, const otExtAddress *aJoinerId, void *aContext) typedef
void(*
Wskaźnik jest wywoływany za każdym razem, gdy zmieni się stan złączania.
otCommissionerJoinerEvent typedef
Definiuje zdarzenie Joiner na komisarzu.
otCommissionerPanIdConflictCallback)(uint16_t aPanId, uint32_t aChannelMask, void *aContext) typedef
void(*
Wskaźnik jest wywoływany, gdy komisarz otrzyma komunikat o konfliktie identyfikatora PAN.
otCommissionerState typedef
Definiuje stan komisarza.
otCommissionerStateCallback)(otCommissionerState aState, void *aContext) typedef
void(*
Wskaźnik jest wywoływany za każdym razem, gdy zmienia się stan komisarza.
otCommissioningDataset typedef
Reprezentuje zbiór danych używany na zlecenie.
otJoinerInfo typedef
struct otJoinerInfo
Reprezentuje łącznika.
otJoinerInfoType typedef
Definiuje typ danych złączającego.
otJoinerPskd typedef
struct otJoinerPskd
Reprezentuje łącznik PSKd.
otSteeringData typedef
Reprezentuje dane kierowania.

Funkcje

otCommissionerAddJoiner(otInstance *aInstance, const otExtAddress *aEui64, const char *aPskd, uint32_t aTimeout)
Dodaje wpis Joiner.
otCommissionerAddJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner, const char *aPskd, uint32_t aTimeout)
Dodaje wpis złącza o podanej wartości wspólnego rozróżnienia.
otCommissionerAnnounceBegin(otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, const otIp6Address *aAddress)
Wysyła wiadomość o rozpoczęciu ogłoszenia.
otCommissionerEnergyScan(otInstance *aInstance, uint32_t aChannelMask, uint8_t aCount, uint16_t aPeriod, uint16_t aScanDuration, const otIp6Address *aAddress, otCommissionerEnergyReportCallback aCallback, void *aContext)
Wysyła komunikat zapytania skanowania energii.
otCommissionerGetId(otInstance *aInstance)
const char *
Zwraca identyfikator komisarza.
otCommissionerGetNextJoinerInfo(otInstance *aInstance, uint16_t *aIterator, otJoinerInfo *aJoiner)
Uzyskuj informacje o złączaniu na pozycji aIterator.
otCommissionerGetProvisioningUrl(otInstance *aInstance)
const char *
Pobiera adres URL do obsługi administracyjnej.
otCommissionerGetSessionId(otInstance *aInstance)
uint16_t
Zwraca identyfikator sesji komisarza.
otCommissionerGetState(otInstance *aInstance)
Zwraca stan komisarza.
otCommissionerPanIdQuery(otInstance *aInstance, uint16_t aPanId, uint32_t aChannelMask, const otIp6Address *aAddress, otCommissionerPanIdConflictCallback aCallback, void *aContext)
Wysyła zapytanie o identyfikator PAN.
otCommissionerRemoveJoiner(otInstance *aInstance, const otExtAddress *aEui64)
Usuwa wpis Joiner.
otCommissionerRemoveJoinerWithDiscerner(otInstance *aInstance, const otJoinerDiscerner *aDiscerner)
Usuwa wpis Joiner.
otCommissionerSendMgmtGet(otInstance *aInstance, const uint8_t *aTlvs, uint8_t aLength)
Wysyła MGMT_COMMISSIONER_GET.
otCommissionerSendMgmtSet(otInstance *aInstance, const otCommissioningDataset *aDataset, const uint8_t *aTlvs, uint8_t aLength)
Wysyła MGMT_COMMISSIONER_SET.
otCommissionerSetId(otInstance *aInstance, const char *aId)
Ustawia identyfikator komisarza.
otCommissionerSetProvisioningUrl(otInstance *aInstance, const char *aProvisioningUrl)
Ustawia adres URL obsługi administracyjnej.
otCommissionerStart(otInstance *aInstance, otCommissionerStateCallback aStateCallback, otCommissionerJoinerCallback aJoinerCallback, void *aCallbackContext)
Włącza rolę komisarza ds. wątków.
otCommissionerStop(otInstance *aInstance)
Wyłącza rolę komisarza ds. wątków.

Konstrukcja

otCommissioningDataset

Reprezentuje zbiór danych używany na zlecenie.

otJoinerInfo

Reprezentuje łącznika.

otJoinerPskd

Reprezentuje łącznik PSKd.

otSteeringData

Reprezentuje dane kierowania.

Wyliczenia

otCommissionerJoinerEvent

 otCommissionerJoinerEvent

Definiuje zdarzenie Joiner na komisarzu.

otCommissionerState

 otCommissionerState

Definiuje stan komisarza.

Właściwości
OT_COMMISSIONER_STATE_ACTIVE

Rola komisarza jest aktywna.

OT_COMMISSIONER_STATE_DISABLED

Rola komisarza jest wyłączona.

OT_COMMISSIONER_STATE_PETITION

Obecnie składasz wniosek o przyznanie komisarza.

otJoinerInfoType

 otJoinerInfoType

Definiuje typ danych złączającego.

Właściwości
OT_JOINER_INFO_TYPE_ANY

Zaakceptuj dowolny łącznik (nie określono EUI64 ani wyróżniającego).

OT_JOINER_INFO_TYPE_DISCERNER

Określono narzędzie wyróżniające złącza (mSharedId.mDiscerner w otJoinerInfo).

OT_JOINER_INFO_TYPE_EUI64

Określono łącznik EUI-64 (mSharedId.mEui64 w: otJoinerInfo).

Definicje typów

otCommissionerEnergyReportCallback

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

Wskaźnik jest wywoływany, gdy komisarz otrzyma raport energetyczny.

Szczegóły
Parametry
[in] aChannelMask
Wartość maski kanału.
[in] aEnergyList
Wskaźnik na liście pomiarów energii.
[in] aEnergyListLength
Liczba wpisów w kategorii aEnergyListLength.
[in] aContext
Wskaźnik do kontekstu aplikacji.

otCommissionerJoinerCallback

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

Wskaźnik jest wywoływany za każdym razem, gdy zmieni się stan złączania.

Szczegóły
Parametry
[in] aEvent
Typ zdarzenia łączenia.
[in] aJoinerInfo
Wskaźnik do informacji o łączeniu.
[in] aJoinerId
Wskaźnik do identyfikatora złączającego (jeśli nie jest znany, będzie miał wartość NULL).
[in] aContext
Wskaźnik do kontekstu aplikacji.

otCommissionerJoinerEvent

enum otCommissionerJoinerEvent otCommissionerJoinerEvent

Definiuje zdarzenie Joiner na komisarzu.

otCommissionerPanIdConflictCallback

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

Wskaźnik jest wywoływany, gdy komisarz otrzyma komunikat o konfliktie identyfikatora PAN.

Szczegóły
Parametry
[in] aPanId
Wartość identyfikatora PAN.
[in] aChannelMask
Wartość maski kanału.
[in] aContext
Wskaźnik do kontekstu aplikacji.

otCommissionerState

enum otCommissionerState otCommissionerState

Definiuje stan komisarza.

otCommissionerStateCallback

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

Wskaźnik jest wywoływany za każdym razem, gdy zmienia się stan komisarza.

Szczegóły
Parametry
[in] aState
Stan komisarza.
[in] aContext
Wskaźnik do kontekstu aplikacji.

otCommissioningDataset

struct otCommissioningDataset otCommissioningDataset

Reprezentuje zbiór danych używany na zlecenie.

otJoinerInfo

struct otJoinerInfo otJoinerInfo

Reprezentuje łącznika.

otJoinerInfoType

enum otJoinerInfoType otJoinerInfoType

Definiuje typ danych złączającego.

otJoinerPskd

struct otJoinerPskd otJoinerPskd

Reprezentuje łącznik PSKd.

otSteeringData

struct otSteeringData otSteeringData

Reprezentuje dane kierowania.

Funkcje

otCommissionerAddJoiner

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

Dodaje wpis Joiner.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aEui64
Wskaźnik do IEEE EUI-64 lub NULL złącza dla dowolnego złącza.
[in] aPskd
Wskaźnik do klucza PSKd.
[in] aTimeout
Czas (w sekundach), po którym użytkownik złącza jest automatycznie usuwany.
Zwracane wartości
OT_ERROR_NONE
Dodano łącznika.
OT_ERROR_NO_BUFS
Brak dostępnych buforów do dodania narzędzia Joiner.
OT_ERROR_INVALID_ARGS
Wartość aEui64 lub aPskd jest nieprawidłowa.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerAddJoinerWithDiscerner

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

Dodaje wpis złącza o podanej wartości wspólnego rozróżnienia.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aDiscerner
Wskaźnik do łączenia elementów.
[in] aPskd
Wskaźnik do klucza PSKd.
[in] aTimeout
Czas (w sekundach), po którym użytkownik złącza jest automatycznie usuwany.
Zwracane wartości
OT_ERROR_NONE
Dodano łącznika.
OT_ERROR_NO_BUFS
Brak dostępnych buforów do dodania narzędzia Joiner.
OT_ERROR_INVALID_ARGS
Wartość aDiscerner lub aPskd jest nieprawidłowa.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerAnnounceBegin

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

Wysyła wiadomość o rozpoczęciu ogłoszenia.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aChannelMask
Wartość maski kanału.
[in] aCount
Liczba wiadomości z ogłoszeniami na kanał.
[in] aPeriod
Czas między 2 kolejnymi transmisjami MLE (w milisekundach).
[in] aAddress
Wskaźnik do miejsca docelowego IPv6.
Zwracane wartości
OT_ERROR_NONE
Wiadomość o rozpoczęciu ogłoszenia została dodana do kolejki.
OT_ERROR_NO_BUFS
Niewystarczająca ilość buforów, aby wygenerować komunikat o rozpoczęciu ogłaszania.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerEnergyScan

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

Wysyła komunikat zapytania skanowania energii.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aChannelMask
Wartość maski kanału.
[in] aCount
Liczba pomiarów energii na kanał.
[in] aPeriod
Czas między pomiarami energii (w milisekundach).
[in] aScanDuration
Czas trwania skanowania dla każdego pomiaru energii (milisekundy).
[in] aAddress
Wskaźnik do miejsca docelowego IPv6.
[in] aCallback
Wskaźnik do funkcji wywoływanej po otrzymaniu wiadomości Raportu energetycznego.
[in] aContext
Wskaźnik do kontekstu aplikacji.
Zwracane wartości
OT_ERROR_NONE
Komunikat zapytania skanowania energii został dodany do kolejki.
OT_ERROR_NO_BUFS
Niewystarczająca ilość buforów, aby wygenerować wiadomość zapytania skanowania energii.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerGetId

const char * otCommissionerGetId(
  otInstance *aInstance
)

Zwraca identyfikator komisarza.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwroty
Identyfikator komisarza

otCommissionerGetNextJoinerInfo

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

Uzyskuj informacje o złączaniu na pozycji aIterator.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji.
[in,out] aIterator
Wskaźnik kontekstu iteratora informacji o złączaniach.
[out] aJoiner
Odniesienie do informacji o zbieraniu danych.
Zwracane wartości
OT_ERROR_NONE
Udało się pobrać informacje o zbieraniu danych.
OT_ERROR_NOT_FOUND
Nie znaleziono następnego Joiner.

otCommissionerGetProvisioningUrl

const char * otCommissionerGetProvisioningUrl(
  otInstance *aInstance
)

Pobiera adres URL do obsługi administracyjnej.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwroty
Wskaźnik do ciągu adresu URL.

otCommissionerGetSessionId

uint16_t otCommissionerGetSessionId(
  otInstance *aInstance
)

Zwraca identyfikator sesji komisarza.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwroty
Identyfikator bieżącej sesji komisarza.

otCommissionerGetState

otCommissionerState otCommissionerGetState(
  otInstance *aInstance
)

Zwraca stan komisarza.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwracane wartości
OT_COMMISSIONER_STATE_DISABLED
Komisarz wyłączony.
OT_COMMISSIONER_STATE_PETITION
Jak zostać komisarzem
OT_COMMISSIONER_STATE_ACTIVE
Komisarz włączony.

otCommissionerPanIdQuery

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

Wysyła zapytanie o identyfikator PAN.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aPanId
Identyfikator PAN, którego dotyczy zapytanie.
[in] aChannelMask
Wartość maski kanału.
[in] aAddress
Wskaźnik do miejsca docelowego IPv6.
[in] aCallback
Wskaźnik do funkcji wywoływanej po otrzymaniu komunikatu o konflikcie identyfikatora PAN.
[in] aContext
Wskaźnik do kontekstu aplikacji.
Zwracane wartości
OT_ERROR_NONE
Komunikat zapytania o identyfikator PAN został dodany do kolejki.
OT_ERROR_NO_BUFS
Niewystarczająca ilość buforów, aby wygenerować komunikat zapytania o identyfikator PAN.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerRemoveJoiner

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

Usuwa wpis Joiner.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aEui64
Wskaźnik do IEEE EUI-64 lub NULL złącza dla dowolnego złącza.
Zwracane wartości
OT_ERROR_NONE
Udało się usunąć użytkownika łączyjącego.
OT_ERROR_NOT_FOUND
Nie znaleziono osoby łączącej określone przez użytkownika aEui64.
OT_ERROR_INVALID_ARGS
Element aEui64 jest nieprawidłowy.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerRemoveJoinerWithDiscerner

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

Usuwa wpis Joiner.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aDiscerner
Wskaźnik do łączenia elementów.
Zwracane wartości
OT_ERROR_NONE
Udało się usunąć użytkownika łączyjącego.
OT_ERROR_NOT_FOUND
Nie znaleziono osoby łączącej określone przez użytkownika aEui64.
OT_ERROR_INVALID_ARGS
Element aDiscerner jest nieprawidłowy.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerSendMgmtGet

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

Wysyła MGMT_COMMISSIONER_GET.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aTlvs
Wskaźnik do zespołów TLV.
[in] aLength
Długość TLV.
Zwracane wartości
OT_ERROR_NONE
Polecenie zbioru danych meshcop zostało wysłane.
OT_ERROR_NO_BUFS
Za mało miejsca, aby wysłać wiadomość.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerSendMgmtSet

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

Wysyła MGMT_COMMISSIONER_SET.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aDataset
Wskaźnik wdrażania zbioru danych na zlecenie.
[in] aTlvs
Wskaźnik do zespołów TLV.
[in] aLength
Długość TLV.
Zwracane wartości
OT_ERROR_NONE
Polecenie zbioru danych meshcop zostało wysłane.
OT_ERROR_NO_BUFS
Za mało miejsca, aby wysłać wiadomość.
OT_ERROR_INVALID_STATE
Komisarz jest nieaktywny.

otCommissionerSetId

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

Ustawia identyfikator komisarza.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aId
Wskaźnik do tablicy znaków w postaci ciągu znaków. Musi mieć wartość null.
Zwracane wartości
OT_ERROR_NONE
Identyfikator komisarza został ustawiony.
OT_ERROR_INVALID_ARGS
Imię jest za długie.
OT_ERROR_INVALID_STATE
Komisarz jest aktywny i nie można zmienić jego identyfikatora.

otCommissionerSetProvisioningUrl

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

Ustawia adres URL obsługi administracyjnej.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aProvisioningUrl
Wskaźnik do adresu URL do obsługi administracyjnej (może mieć wartość NULL, aby ustawić go jako pusty ciąg znaków).
Zwracane wartości
OT_ERROR_NONE
Adres URL obsługi administracyjnej został ustawiony.
OT_ERROR_INVALID_ARGS
Wartość aProvisioningUrl jest nieprawidłowa (za długa).

otCommissionerStart

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

Włącza rolę komisarza ds. wątków.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
[in] aStateCallback
Wskaźnik do funkcji, która jest wywoływana po zmianie stanu komisarza.
[in] aJoinerCallback
Pojawia się wskaźnik do funkcji wywoływanej za pomocą zdarzenia łączenia.
[in] aCallbackContext
Wskaźnik do kontekstu aplikacji.
Zwracane wartości
OT_ERROR_NONE
Włączono obsługę komisarza.
OT_ERROR_ALREADY
Komisarz jest już aktywny.
OT_ERROR_INVALID_STATE
Urządzenie nie jest obecnie podłączone do sieci.

otCommissionerStop

otError otCommissionerStop(
  otInstance *aInstance
)

Wyłącza rolę komisarza ds. wątków.

Szczegóły
Parametry
[in] aInstance
Wskaźnik do instancji OpenThread.
Zwracane wartości
OT_ERROR_NONE
Zatrzymano usługę Komisarz.
OT_ERROR_ALREADY
Komisarz jest już zatrzymany.

Makra

OT_COMMISSIONING_PASSPHRASE_MAX_SIZE

 OT_COMMISSIONING_PASSPHRASE_MAX_SIZE 255

Maksymalny rozmiar hasła na zlecenie.

OT_COMMISSIONING_PASSPHRASE_MIN_SIZE

 OT_COMMISSIONING_PASSPHRASE_MIN_SIZE 6

Minimalny rozmiar hasła na potrzeby zlecenia.

OT_JOINER_MAX_PSKD_LENGTH

 OT_JOINER_MAX_PSKD_LENGTH 32

Maksymalna długość ciągu znaków w łączniku PSKd (nie obejmuje znaków null).

OT_PROVISIONING_URL_MAX_SIZE

 OT_PROVISIONING_URL_MAX_SIZE 64

Maksymalny rozmiar (liczba znaków) w ciągu znaków adresu URL obsługi administracyjnej (nie obejmuje pustego znaku).

OT_STEERING_DATA_MAX_LENGTH

 OT_STEERING_DATA_MAX_LENGTH 16

Maksymalna długość danych sterowania (bajty)

Zasoby

Tematy referencyjne interfejsu OpenThread API pochodzą z kodu źródłowego dostępnego w GitHub. Aby dowiedzieć się więcej lub dołączyć do naszej dokumentacji, skorzystaj z sekcji Zasoby.