با مجموعه‌ها، منظم بمانید ذخیره و دسته‌بندی محتوا براساس اولویت‌های شما.

ردیاب تاریخ

سابقه رویدادهای مختلف، برای مثال پیام‌های RX و TX یا تغییرات اطلاعات شبکه را ثبت می‌کند.

خلاصه

تمام ورودی های پیگیری شده دارای مهر زمانی هستند.

عملکردهای این ماژول زمانی در دسترس هستند که OPENTHREAD_CONFIG_HISTOR_TRACKER_ENABLE فعال باشد.

شمارش ها

anonymous enum {
OT_HISTORY_TRACKER_MSG_PRIORITY_LOW = OT_MESSAGE_PRIORITY_LOW,
OT_HISTORY_TRACKER_MSG_PRIORITY_NORMAL = OT_MESSAGE_PRIORITY_NORMAL,
OT_HISTORY_TRACKER_MSG_PRIORITY_HIGH = OT_MESSAGE_PRIORITY_HIGH,
OT_HISTORY_TRACKER_MSG_PRIORITY_NET = OT_MESSAGE_PRIORITY_HIGH + 1
}
enum
ثابت ها نشان دهنده اولویت پیام مورد استفاده در ساختار otHistoryTrackerMessageInfo .
otHistoryTrackerAddressEvent {
OT_HISTORY_TRACKER_ADDRESS_EVENT_ADDED = 0,
OT_HISTORY_TRACKER_ADDRESS_EVENT_REMOVED = 1
}
enum
این شمارش رویدادها را برای اطلاعات آدرس IPv6 (یکپارچه یا چندپخشی) تعریف می کند (یعنی اینکه آیا آدرس اضافه یا حذف شده است).
otHistoryTrackerNeighborEvent {
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_ADDED = 0,
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_REMOVED = 1,
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_CHANGED = 2,
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING = 3
}
enum
این شمارش رویدادها را در اطلاعات همسایه تعریف می کند (به عنوان مثال
otHistoryTrackerNetDataEvent {
OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED = 0,
OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED = 1
}
enum
این شمارش رویدادها را برای ورودی داده شبکه تعریف می کند (یعنی اینکه آیا یک ورودی اضافه یا حذف شده است).

Typedefs

otHistoryTrackerExternalRouteInfo typedef
این ساختار اطلاعات مسیر خارجی داده شبکه را نشان می دهد.
otHistoryTrackerIterator typedef
این نوع یک تکرار کننده را برای تکرار از طریق لیست تاریخ نشان می دهد.
otHistoryTrackerMessageInfo typedef
این ساختار اطلاعات پیام RX/TX IPv6 را نشان می دهد.
otHistoryTrackerMulticastAddressInfo typedef
این ساختار نشان دهنده اطلاعات آدرس چندپخشی IPv6 است.
otHistoryTrackerNeighborInfo typedef
این ساختار نشان دهنده اطلاعات همسایه است.
otHistoryTrackerNetworkInfo typedef
این ساختار اطلاعات شبکه Thread را نشان می دهد.
otHistoryTrackerOnMeshPrefixInfo typedef
این ساختار یک داده شبکه روی اطلاعات پیشوند مش را نشان می دهد.
otHistoryTrackerUnicastAddressInfo typedef
این ساختار اطلاعات آدرس IPv6 unicast را نشان می دهد.

کارکرد

otHistoryTrackerEntryAgeToString (uint32_t aEntryAge, char *aBuffer, uint16_t aSize)
void
این تابع یک سن ورودی معین را به یک رشته قابل خواندن توسط انسان تبدیل می کند.
otHistoryTrackerInitIterator ( otHistoryTrackerIterator *aIterator)
void
این تابع یک otHistoryTrackerIterator را مقداردهی اولیه می کند.
otHistoryTrackerIterateExternalRouteHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
این تابع روی ورودی‌های فهرست تاریخچه ورود مسیر خارجی داده شبکه تکرار می‌شود.
otHistoryTrackerIterateMulticastAddressHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
این تابع روی ورودی‌های فهرست تاریخچه آدرس چندپخشی تکرار می‌شود.
otHistoryTrackerIterateNeighborHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
این تابع بر روی ورودی های لیست تاریخچه همسایه ها تکرار می شود.
otHistoryTrackerIterateNetInfoHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
این تابع روی ورودی‌های فهرست تاریخچه اطلاعات شبکه تکرار می‌شود.
otHistoryTrackerIterateOnMeshPrefixHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
این تابع روی ورودی‌های داده‌های شبکه در فهرست تاریخچه ورودی پیشوند مش تکرار می‌شود.
otHistoryTrackerIterateRxHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
این تابع روی ورودی های فهرست تاریخچه پیام RX تکرار می شود.
otHistoryTrackerIterateTxHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
این تابع روی ورودی‌های فهرست تاریخچه پیام TX تکرار می‌شود.
otHistoryTrackerIterateUnicastAddressHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
این تابع روی ورودی‌های فهرست تاریخچه آدرس unicast تکرار می‌شود.

سازه ها

otHistoryTrackerExternalRouteInfo

این ساختار اطلاعات مسیر خارجی داده شبکه را نشان می دهد.

otHistoryTrackerIterator

این نوع یک تکرار کننده را برای تکرار از طریق لیست تاریخ نشان می دهد.

otHistoryTrackerMessageInfo

این ساختار اطلاعات پیام RX/TX IPv6 را نشان می دهد.

otHistoryTrackerMulticastAddressInfo

این ساختار نشان دهنده اطلاعات آدرس چندپخشی IPv6 است.

otHistoryTrackerNeighborInfo

این ساختار نشان دهنده اطلاعات همسایه است.

otHistoryTrackerNetworkInfo

این ساختار اطلاعات شبکه Thread را نشان می دهد.

otHistoryTrackerOnMeshPrefixInfo

این ساختار یک داده شبکه روی اطلاعات پیشوند مش را نشان می دهد.

otHistoryTrackerUnicastAddressInfo

این ساختار اطلاعات آدرس IPv6 unicast را نشان می دهد.

شمارش ها

شماره ناشناس

 anonymous enum

ثابت ها نشان دهنده اولویت پیام مورد استفاده در ساختار otHistoryTrackerMessageInfo .

خواص
OT_HISTORY_TRACKER_MSG_PRIORITY_HIGH

سطح اولویت بالا

OT_HISTORY_TRACKER_MSG_PRIORITY_LOW

سطح اولویت پایین

OT_HISTORY_TRACKER_MSG_PRIORITY_NET

سطح اولویت کنترل شبکه

OT_HISTORY_TRACKER_MSG_PRIORITY_NORMAL

سطح اولویت عادی

otHistoryTrackerAddressEvent

 otHistoryTrackerAddressEvent

این شمارش رویدادها را برای اطلاعات آدرس IPv6 (یکپارچه یا چندپخشی) تعریف می کند (یعنی اینکه آیا آدرس اضافه یا حذف شده است).

خواص
OT_HISTORY_TRACKER_ADDRESS_EVENT_ADDED

آدرس اضافه شد

OT_HISTORY_TRACKER_ADDRESS_EVENT_REMOVED

آدرس حذف شده است.

otHistoryTrackerNeighborEvent

 otHistoryTrackerNeighborEvent

این شمارش رویدادها را در اطلاعات همسایه تعریف می کند (به عنوان مثال

خواه همسایه اضافه، حذف یا تغییر داده شود).

رویداد OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING فقط برای همسایگان کودک قابل اجرا است. پس از راه‌اندازی مجدد دستگاه و هنگامی که فهرست فرزندان قبلی از تنظیمات غیرفرار بازیابی می‌شود و دستگاه سعی می‌کند اتصال به آن‌ها را بازیابی کند، فعال می‌شود.

خواص
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_ADDED

همسایه اضافه شد.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_CHANGED

همسایه تغییر کرد (مثلاً پرچم‌های حالت دستگاه تغییر کرد).

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_REMOVED

همسایه حذف می شود.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING

همسایه در حال بازسازی است (فقط برای کودک قابل استفاده است).

otHistoryTrackerNetDataEvent

 otHistoryTrackerNetDataEvent

این شمارش رویدادها را برای ورودی داده شبکه تعریف می کند (یعنی اینکه آیا یک ورودی اضافه یا حذف شده است).

خواص
OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED

ورود داده های شبکه اضافه شده است.

OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED

ورودی داده های شبکه حذف می شود.

Typedefs

otHistoryTrackerExternalRouteInfo

struct otHistoryTrackerExternalRouteInfo otHistoryTrackerExternalRouteInfo

این ساختار اطلاعات مسیر خارجی داده شبکه را نشان می دهد.

otHistoryTrackerIterator

struct otHistoryTrackerIterator otHistoryTrackerIterator

این نوع یک تکرار کننده را برای تکرار از طریق لیست تاریخ نشان می دهد.

فیلدهای این نوع مات هستند (برای استفاده توسط هسته OpenThread در نظر گرفته شده است) و بنابراین نباید توسط تماس گیرنده دسترسی/استفاده شود.

قبل از استفاده از یک تکرار کننده، باید با استفاده از otHistoryTrackerInitIterator() مقداردهی اولیه شود.

otHistoryTrackerMessageInfo

struct otHistoryTrackerMessageInfo otHistoryTrackerMessageInfo

این ساختار اطلاعات پیام RX/TX IPv6 را نشان می دهد.

برخی از فیلدهای این ساختار فقط برای یک پیام RX یا یک پیام TX قابل استفاده هستند، به عنوان مثال، mAveRxRss میانگین RSS تمام فریم های قطعه است که یک پیام دریافتی را تشکیل می دهند و فقط برای یک پیام RX قابل استفاده است.

otHistoryTrackerMulticastAddressInfo

struct otHistoryTrackerMulticastAddressInfo otHistoryTrackerMulticastAddressInfo

این ساختار نشان دهنده اطلاعات آدرس چندپخشی IPv6 است.

otHistoryTrackerNeighborInfo

struct otHistoryTrackerNeighborInfo otHistoryTrackerNeighborInfo

این ساختار نشان دهنده اطلاعات همسایه است.

otHistoryTrackerNetworkInfo

struct otHistoryTrackerNetworkInfo otHistoryTrackerNetworkInfo

این ساختار اطلاعات شبکه Thread را نشان می دهد.

otHistoryTrackerOnMeshPrefixInfo

struct otHistoryTrackerOnMeshPrefixInfo otHistoryTrackerOnMeshPrefixInfo

این ساختار یک داده شبکه روی اطلاعات پیشوند مش را نشان می دهد.

otHistoryTrackerUnicastAddressInfo

struct otHistoryTrackerUnicastAddressInfo otHistoryTrackerUnicastAddressInfo

این ساختار اطلاعات آدرس IPv6 unicast را نشان می دهد.

کارکرد

otHistoryTrackerEntryAgeToString

void otHistoryTrackerEntryAgeToString(
  uint32_t aEntryAge,
  char *aBuffer,
  uint16_t aSize
)

این تابع یک سن ورودی معین را به یک رشته قابل خواندن توسط انسان تبدیل می کند.

رشته سنی ورودی از قالب پیروی می کند : : . برای ساعت، دقیقه، ثانیه و میلی ثانیه (اگر کوتاهتر از یک روز باشد) یا

روزها : : . (اگر بیشتر از یک روز باشد).

اگر رشته به دست آمده در aBuffer (در کاراکترهای aSize آن) قرار نگیرد، رشته کوتاه می‌شود اما رشته خروجی همیشه تهی است.

جزئیات
مولفه های
[in] aEntryAge
سن ورود (مدت زمان بر حسب میلی ثانیه).
[out] aBuffer
یک اشاره گر به آرایه char برای خروجی رشته (نباید NULL باشد).
[in] aSize
اندازه aBuffer . برای استفاده از OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE توصیه می شود.

otHistoryTrackerInitIterator

void otHistoryTrackerInitIterator(
  otHistoryTrackerIterator *aIterator
)

این تابع یک otHistoryTrackerIterator را مقداردهی اولیه می کند.

یک تکرار کننده باید قبل از استفاده مقداردهی اولیه شود.

یک تکرار کننده را می توان دوباره برای شروع از ابتدای لیست مقداردهی کرد.

هنگام تکرار بیش از ورودی‌ها در یک فهرست، برای اطمینان از سازگاری سن‌های ورودی، سن نسبت به زمانی که تکرارکننده اولیه شد، داده می‌شود، یعنی سن ورود به عنوان مدت زمان (بر حسب میلی‌ثانیه) از رویداد (زمانی که ورود انجام شد) ارائه می‌شود. ثبت شده) به زمان اولیه سازی تکرار کننده.

جزئیات
مولفه های
[in] aIterator
یک اشاره گر به تکرار کننده برای مقداردهی اولیه (نباید NULL باشد).

otHistoryTrackerIterateExternalRouteHistory

const otHistoryTrackerExternalRouteInfo * otHistoryTrackerIterateExternalRouteHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

این تابع روی ورودی‌های فهرست تاریخچه ورود مسیر خارجی داده شبکه تکرار می‌شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به نمونه OpenThread.
[in,out] aIterator
اشاره گر به تکرار کننده. باید مقداردهی اولیه شود یا رفتار تعریف نشده است.
[out] aEntryAge
یک اشاره گر به یک متغیر برای خروجی سن ورودی. نباید خالی باشد. سن به عنوان مدت زمان (بر حسب میلی ثانیه) از زمان ثبت ورود تا زمان اولیه سازی aIterator می شود. برای ورودی های بزرگتر از حداکثر سن روی OT_HISTORY_TRACKER_MAX_AGE تنظیم شده است.
برمی گرداند
ورودی otHistoryTrackerExternalRouteInfo یا NULL اگر ورودی دیگری در لیست نباشد.

otHistoryTrackerIterateMulticastAddressHistory

const otHistoryTrackerMulticastAddressInfo * otHistoryTrackerIterateMulticastAddressHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

این تابع روی ورودی‌های فهرست تاریخچه آدرس چندپخشی تکرار می‌شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به نمونه OpenThread.
[in,out] aIterator
اشاره گر به تکرار کننده. باید مقداردهی اولیه شود یا رفتار تعریف نشده است.
[out] aEntryAge
یک اشاره گر به یک متغیر برای خروجی سن ورودی. نباید خالی باشد. سن به عنوان مدت زمان (بر حسب میلی ثانیه) از زمان ثبت ورود تا زمان اولیه سازی aIterator می شود. برای ورودی های بزرگتر از حداکثر سن روی OT_HISTORY_TRACKER_MAX_AGE تنظیم شده است.
برمی گرداند
یک اشاره گر به ورودی otHistoryTrackerMulticastAddressInfo یا NULL اگر ورودی دیگری در لیست نباشد.

otHistoryTrackerIterateNeighborHistory

const otHistoryTrackerNeighborInfo * otHistoryTrackerIterateNeighborHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

این تابع بر روی ورودی های لیست تاریخچه همسایه ها تکرار می شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به نمونه OpenThread.
[in,out] aIterator
اشاره گر به تکرار کننده. باید مقداردهی اولیه شود یا رفتار تعریف نشده است.
[out] aEntryAge
یک اشاره گر به یک متغیر برای خروجی سن ورودی. نباید خالی باشد. سن به عنوان مدت زمان (بر حسب میلی ثانیه) از زمان ثبت ورود تا زمان اولیه سازی aIterator می شود. برای ورودی های بزرگتر از حداکثر سن روی OT_HISTORY_TRACKER_MAX_AGE تنظیم شده است.
برمی گرداند
ورودی otHistoryTrackerNeighborInfo یا NULL اگر ورودی دیگری در لیست نباشد.

otHistoryTrackerIterateNetInfoHistory

const otHistoryTrackerNetworkInfo * otHistoryTrackerIterateNetInfoHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

این تابع روی ورودی‌های فهرست تاریخچه اطلاعات شبکه تکرار می‌شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به نمونه OpenThread.
[in,out] aIterator
اشاره گر به تکرار کننده. باید مقداردهی اولیه شود یا رفتار تعریف نشده است.
[out] aEntryAge
یک اشاره گر به یک متغیر برای خروجی سن ورودی. نباید خالی باشد. سن به عنوان مدت زمان (بر حسب میلی ثانیه) از زمان ثبت ورود تا زمان اولیه سازی aIterator می شود. برای ورودی های بزرگتر از حداکثر سن روی OT_HISTORY_TRACKER_MAX_AGE تنظیم شده است.
برمی گرداند
اشاره گر به ورودی otHistoryTrackerNetworkInfo یا NULL اگر ورودی دیگری در لیست نباشد.

otHistoryTrackerIterateOnMeshPrefixHistory

const otHistoryTrackerOnMeshPrefixInfo * otHistoryTrackerIterateOnMeshPrefixHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

این تابع روی ورودی‌های داده‌های شبکه در فهرست تاریخچه ورودی پیشوند مش تکرار می‌شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به نمونه OpenThread.
[in,out] aIterator
اشاره گر به تکرار کننده. باید مقداردهی اولیه شود یا رفتار تعریف نشده است.
[out] aEntryAge
یک اشاره گر به یک متغیر برای خروجی سن ورودی. نباید خالی باشد. سن به عنوان مدت زمان (بر حسب میلی ثانیه) از زمان ثبت ورود تا زمان اولیه سازی aIterator می شود. برای ورودی های بزرگتر از حداکثر سن روی OT_HISTORY_TRACKER_MAX_AGE تنظیم شده است.
برمی گرداند
ورودی otHistoryTrackerOnMeshPrefixInfo یا NULL اگر ورودی دیگری در لیست نباشد.

otHistoryTrackerIterateRxHistory

const otHistoryTrackerMessageInfo * otHistoryTrackerIterateRxHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

این تابع روی ورودی های فهرست تاریخچه پیام RX تکرار می شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به نمونه OpenThread.
[in,out] aIterator
اشاره گر به تکرار کننده. باید مقداردهی اولیه شود یا رفتار تعریف نشده است.
[out] aEntryAge
یک اشاره گر به یک متغیر برای خروجی سن ورودی. نباید خالی باشد. سن به عنوان مدت زمان (بر حسب میلی ثانیه) از زمان ثبت ورود تا زمان اولیه سازی aIterator می شود. برای ورودی های بزرگتر از حداکثر سن روی OT_HISTORY_TRACKER_MAX_AGE تنظیم شده است.
برمی گرداند
ورودی otHistoryTrackerMessageInfo یا NULL اگر ورودی دیگری در لیست نباشد.

otHistoryTrackerIterateTxHistory

const otHistoryTrackerMessageInfo * otHistoryTrackerIterateTxHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

این تابع روی ورودی‌های فهرست تاریخچه پیام TX تکرار می‌شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به نمونه OpenThread.
[in,out] aIterator
اشاره گر به تکرار کننده. باید مقداردهی اولیه شود یا رفتار تعریف نشده است.
[out] aEntryAge
یک اشاره گر به یک متغیر برای خروجی سن ورودی. نباید خالی باشد. سن به عنوان مدت زمان (بر حسب میلی ثانیه) از زمان ثبت ورود تا زمان اولیه سازی aIterator می شود. برای ورودی های بزرگتر از حداکثر سن روی OT_HISTORY_TRACKER_MAX_AGE تنظیم شده است.
برمی گرداند
ورودی otHistoryTrackerMessageInfo یا NULL اگر ورودی دیگری در لیست نباشد.

otHistoryTrackerIterateUnicastAddressHistory

const otHistoryTrackerUnicastAddressInfo * otHistoryTrackerIterateUnicastAddressHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

این تابع روی ورودی‌های فهرست تاریخچه آدرس unicast تکرار می‌شود.

جزئیات
مولفه های
[in] aInstance
اشاره گر به نمونه OpenThread.
[in,out] aIterator
اشاره گر به تکرار کننده. باید مقداردهی اولیه شود یا رفتار تعریف نشده است.
[out] aEntryAge
یک اشاره گر به یک متغیر برای خروجی سن ورودی. نباید خالی باشد. سن به عنوان مدت زمان (بر حسب میلی ثانیه) از زمان ثبت ورود تا زمان اولیه سازی aIterator می شود. برای ورودی های بزرگتر از حداکثر سن روی OT_HISTORY_TRACKER_MAX_AGE تنظیم شده است.
برمی گرداند
یک اشاره‌گر به ورودی otHistoryTrackerUnicastAddressInfo یا NULL اگر ورودی دیگری در لیست نباشد.

ماکروها

OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE

 OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE 21

اندازه توصیه شده برای نمایش رشته یک سن ورودی.

OT_HISTORY_TRACKER_MAX_AGE

 OT_HISTORY_TRACKER_MAX_AGE (49 * 24 * 60 * 60 * 1000u)

این ثابت حداکثر سن ورودی ها را مشخص می کند که 49 روز (بر حسب میلی ثانیه) است.

ورودی‌های بزرگ‌تر از حداکثر سن، این مقدار را به عنوان سن خود نشان می‌دهند.

منابع

موضوعات مرجع OpenThread API از کد منبع موجود در GitHub سرچشمه می گیرند. برای اطلاعات بیشتر، یا مشارکت در اسناد ما، به منابع مراجعه کنید.