nl::Weave::Profiles::DataManagement_Legacy

تتضمن مساحة الاسم هذه جميع الواجهات الموجودة داخل Weave لملف تعريف إدارة بيانات Weave (WDM) التي على وشك أن يتم إيقافها.

ملخّص

عمليات التعداد

@103{
  kStatus_CancelSuccess = 0x0001,
  kStatus_InvalidPath = 0x0013,
  kStatus_UnknownTopic = 0x0014,
  kStatus_IllegalReadRequest = 0x0015,
  kStatus_IllegalWriteRequest = 0x0016,
  kStatus_InvalidVersion = 0x0017,
  kStatus_UnsupportedSubscriptionMode = 0x0018
}
تعداد
@166{
  kViewPoolSize = WEAVE_CONFIG_WDM_VIEW_POOL_SIZE,
  kSubscribePoolSize = WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE,
  kCancelSubscriptionPoolSize = WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE,
  kUpdatePoolSize = WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE,
  kNotifyPoolSize = WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE,
  kTransactionTableSize = WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE,
  kBindingTableSize = WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE,
  kNotifierTableSize = WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE,
  kSubscriptionMgrTableSize = WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE
}
تعداد
أحجام بلياردو وطاولة WDM.
@167{
  kMsgType_ViewRequest = 0x10,
  kMsgType_ViewResponse = 0x11,
  kMsgType_SubscribeRequest = 0x12,
  kMsgType_SubscribeResponse = 0x13,
  kMsgType_CancelSubscriptionRequest = 0x14,
  kMsgType_UpdateRequest = 0x15,
  kMsgType_NotifyRequest = 0x16,
  kMsgType_ViewRequest_Deprecated = 0x00,
  kMsgType_ViewResponse_Deprecated = 0x01,
  kMsgType_SubscribeRequest_Deprecated = 0x02,
  kMsgType_SubscribeResponse_Deprecated = 0x03,
  kMsgType_CancelSubscriptionRequest_Deprecated = 0x04,
  kMsgType_UpdateRequest_Deprecated = 0x05,
  kMsgType_NotifyRequest_Deprecated = 0x06
}
تعداد
أنواع رسائل الملف الشخصي في WDM.
@168{
  kTransactionIdNotSpecified = 0,
  kResponseTimeoutNotSpecified = 0,
  kVersionNotSpecified = 0xFFFFFFFFFFFFFFFFULL,
  kInstanceIdNotSpecified = 0,
  kDefaultBindingTableIndex = 0,
  kWeaveTLVTagLen = 8,
  kWeaveTLVControlByteLen = 1
}
تعداد
ثوابت متنوعة خاصة بـ WDM.
@169{
  kStatus_CancelSuccess = 0x0001,
  kStatus_InvalidPath = 0x0013,
  kStatus_UnknownTopic = 0x0014,
  kStatus_IllegalReadRequest = 0x0015,
  kStatus_IllegalWriteRequest = 0x0016,
  kStatus_InvalidVersion = 0x0017,
  kStatus_UnsupportedSubscriptionMode = 0x0018
}
تعداد
رموز الحالة الخاصة بـ WDM.
@170{
  kTag_WDMPathList = 100,
  kTag_WDMPathProfile = 101,
  kTag_WDMPathProfileId = 1,
  kTag_WDMPathProfileInstance = 2,
  kTag_WDMPathProfileId_Deprecated = 102,
  kTag_WDMPathProfileInstance_Deprecated = 103,
  kTag_WDMPathArrayIndexSelector = 104,
  kTag_WDMPathArrayValueSelector = 105,
  kTag_WDMDataList = 200,
  kTag_WDMDataListElementPath = 3,
  kTag_WDMDataListElementVersion = 4,
  kTag_WDMDataListElementData = 5,
  kTag_WDMDataListElementPath_Deprecated = 201,
  kTag_WDMDataListElementVersion_Deprecated = 202,
  kTag_WDMDataListElementData_Deprecated = 203
}
تعداد
علامات بروتوكول إدارة البيانات.
@171{
  kTopicIdPublisherSpecificMask = 0xFFFF000000000000ULL,
  kTopicIdNotSpecified = 0x0000000000000000ULL,
  kAnyTopicId = 0xFFFFFFFFFFFFFFFFULL
}
تعداد
أرقام تعريف المواضيع المميّزة.
WeaveTransportOption{
  kTransport_TCP = 1,
  kTransport_WRMP = 2,
  kTransport_UDP = 3
}
تعداد
خيارات نقل WDM.

تعريف الأنواع

TopicIdentifier تعريف الكتابة
uint64_t
معرِّف الموضوع.

الدوال

CheckTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
bool
تأكَّد من أنّ العنصر TLV الذي تتم قراءته يتضمّن نوع TLV المتوقّع.
CheckWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
bool
تحقق من علامة خاصة بـ WDM.
CloseDataListElement(nl::Weave::TLV::TLVReader & aReader)
إيقاف قراءة عنصر قائمة بيانات WDM.
CloseList(nl::Weave::TLV::TLVReader & aReader)
إيقاف قراءة مسار WDM أو قائمة بيانات.
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
ترميز مسار WDM بعلامات تم إيقافها ومعرّف مثيل عدد صحيح.
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
ترميز مسار WDM بعلامات تم إيقافها ومعرّف مثيل سلسلة.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
ترميز مسار WDM باستخدام معرّف مثيل ملف شخصي بعدد صحيح.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ...)
ترميز مسار WDM باستخدام رقم تعريف مثيل مصفوفة البايت.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
ترميز مسار WDM باستخدام رقم تعريف مثيل السلسلة.
EndDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
إنهاء كتابة عنصر قائمة بيانات.
EndEncodePath(TLVWriter & aWriter, TLVType & mOuterContainer, WEAVE_ERROR mError)
EndList(nl::Weave::TLV::TLVWriter & aWriter)
أنهِ كتابة قائمة مسارات أو قائمة بيانات.
EndList(ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter)
أنهِ كتابة قائمة مسارات أو قائمة بيانات.
IsPublisherSpecific(const TopicIdentifier & aTopicId)
bool
تحقق مما إذا كان رقم تعريف الموضوع خاصًا بالناشر.
OpenDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader)
بدء قراءة قائمة البيانات.
OpenDataListElement(nl::Weave::TLV::TLVReader & aReader, nl::Weave::TLV::TLVReader & aPathReader, uint64_t & aVersion)
بدء قراءة عنصر قائمة بيانات
OpenPathList(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVReader & aReader)
ابدأ قراءة قائمة المسارات.
PublisherSpecificTopicId(void)
إنشاء رقم تعريف لموضوع خاص بالناشر من البداية
SendStatusReport(ExchangeContext *aExchangeCtx, StatusReport & aStatus)
StartDataList(nl::Weave::TLV::TLVWriter & aWriter)
ابدأ في كتابة قائمة بيانات.
StartDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVWriter & aWriter)
ابدأ في كتابة قائمة بيانات في كائن ReferencedTLVData.
StartDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
بدء كتابة عنصر قائمة بيانات.
StartEncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, TLVType & mOuterContainer, TLVType & mPath)
StartPathList(nl::Weave::TLV::TLVWriter & aWriter)
ابدأ في كتابة قائمة مسارات.
TxnResponseHandler(ExchangeContext *anExchangeCtx, const IPPacketInfo *anAddrInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
void
TxnTimeoutHandler(ExchangeContext *anExchangeCtx)
void
ValidateTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
تحقَّق من أنّ العنصر TLV الذي تتم قراءته يتضمّن نوع TLV المتوقّع.
ValidateWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
تحقَّق من أنّ عنصر TLV الذي تتم قراءته يتضمّن علامة WDM المتوقّعة.

صفوف

nl::Weave::Profiles::DataManagement_Legacy::Binding

تدير فئة الربط حالة الاتصالات نيابةً عن كيان التطبيق الذي يستخدم Weave.

nl::Weave::Profiles::DataManagement_Legacy::ClientDataManager

فئة مجردة تحتوي على تعريفات طرق التأكيد والإشارة التي يتطلبها عميل WDM.

nl::Weave::Profiles::DataManagement_Legacy::ClientNotifier

فئة إضافية يتم استخدامها عند الحاجة إلى دعم الاشتراك والإشعارات على عميل WDM.

nl::Weave::Profiles::DataManagement_Legacy::DMClient

الفئة الأساسية التجريدية لعملاء WDM الخاصة بالتطبيقات.

nl::Weave::Profiles::DataManagement_Legacy::DMPublisher

الفئة الأساسية التجريدية لناشري WDM الخاص بالتطبيقات.

nl::Weave::Profiles::DataManagement_Legacy::ProfileDatabase

الفئة الإضافية المجرّدة ProfileDatabase.

nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine

فئة محرك بروتوكول WDM.

nl::Weave::Profiles::DataManagement_Legacy::PublisherDataManager

فئة مجردة تحتوي على تعريفات لطرق التأكيد والإشعار التي يطلبها ناشر WDM.

عمليات التعداد

@103

 @103
أماكن إقامة
kStatus_CancelSuccess

يشير رمز الحالة القديم هذا إلى أنّه تم إلغاء الاشتراك بنجاح.

يعني رمز الحالة هذا أنّه تم إلغاء الاشتراك بنجاح.

kStatus_IllegalReadRequest

يعني رمز الحالة القديم هذا أن العقدة التي تطلب قراءة عنصر بيانات معين ليس لديها إذن بالقيام بذلك.

يعني رمز الحالة هذا أن العقدة التي تطلب قراءة عنصر بيانات معين ليس لديها إذن بالقيام بذلك.

kStatus_IllegalWriteRequest

يعني رمز الحالة القديم هذا أن العقدة التي تطلب كتابة عنصر بيانات معين ليس لديها إذن بالقيام بذلك.

يعني رمز الحالة هذا أن العقدة التي تطلب كتابة عنصر بيانات معين ليس لديها الإذن بذلك.

kStatus_InvalidPath

يعني رمز الحالة القديمة هذا أنّ مسارًا من قائمة المسارات لإطار طلب العرض أو التعديل لم يتطابق مع مخطط المجيب المقيم في العقدة.

يعني رمز الحالة هذا أن مسارًا من قائمة المسارات لإطار طلب العرض أو التعديل لم يتطابق مع مخطط المجيب المقيم في العقدة.

kStatus_InvalidVersion

يعني رمز الحالة القديم هذا أنّ نسخة البيانات المضمّنة في طلب التحديث لم تتطابق مع أحدث نسخة لدى الناشر، وبالتالي تعذّر تطبيق التحديث.

يعني رمز الحالة هذا أنّ نسخة البيانات المضمّنة في طلب التحديث لم تتطابق مع أحدث نسخة متوفّرة لدى الناشر، وبالتالي تعذّر تطبيق التعديل.

kStatus_UnknownTopic

يعني رمز الحالة القديم هذا أن معرّف الموضوع الذي تم تقديمه في طلب الإلغاء أو الإشعار لم يتطابق مع أي اشتراك موجود في العقدة المستلمة.

يعني رمز الحالة هذا أن معرّف الموضوع الذي تم تقديمه في طلب الإلغاء أو الإشعار لم يتطابق مع أي اشتراك متوفّر في عقدة الاستلام.

kStatus_UnsupportedSubscriptionMode

يعني رمز الحالة القديم هذا أنّ الجهاز المستلِم لا يتيح وضع الاشتراك المطلوب.

يعني رمز الحالة هذا أن وضع الاشتراك المطلوب غير متوافق مع الجهاز المستلم.

@166

 @166

أحجام بلياردو وطاولة WDM.

تحدد WDM مجموعة متنوعة من التجمعات والجداول اللازمة لتشغيلها على النحو التالي.

مجموعات معاملات العملاء:

  • kViewPoolSize
  • kSubscribePoolSize
  • kCancelSubscriptionPoolSize
  • kUpdatePoolSize

مجموعات معاملات الناشرين:

  • kNotifyPoolSize

جداول محرّك البروتوكول:

  • kTransactionTableSize
  • kBindingTableSize

الجداول المرتبطة بالاشتراكات:

  • kNotifierTableSize (العميل فقط)
  • kSUBSCRIPTIONMgrTableSize (للناشر فقط)

يُرجى العلم أنّ هذه الكميات قابلة للضبط وأنّ القيم لكل نظام أساسي تظهر في ملف WeaveConfig.h المرتبط.

أماكن إقامة
kBindingTableSize

هذا هو الحجم الافتراضي لجدول الربط في محرك بروتوكول WDM.

قد يتم ضبط هذه القيمة من خلال WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE.

kCancelSubscriptionPoolSize

هذا هو الحجم التلقائي لمجموعة معاملات إلغاء الاشتراك لعميل WDM.

يمكن ضبط هذه القيمة من خلال WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE.

kNotifierTableSize

هذا هو الحجم التلقائي لجدول الإشعارات لعملاء WDM.

قد يتم ضبط هذه القيمة من خلال WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE.

kNotifyPoolSize

هذا هو الحجم التلقائي لمجمّع معاملات طلب الإشعارات لناشر WDM.

يمكن ضبط هذه القيمة من خلال WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE.

kSubscribePoolSize

هذا هو الحجم التلقائي لمجموعة معاملات طلب الاشتراك لعميل WDM.

قد يتم ضبط هذه القيمة من خلال WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE.

kSubscriptionMgrTableSize

هذا هو الحجم التلقائي لجدول الاشتراكات لناشري WDM.

قد يتم ضبط هذه القيمة عبر WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE.

kTransactionTableSize

هذا هو الحجم التلقائي لجدول المعاملات في محرك بروتوكول WDM.

قد يتم ضبط هذه القيمة من خلال WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE.

kUpdatePoolSize

هذا هو الحجم التلقائي لمجموعة معاملات طلب التحديث لعميل WDM.

قد يتم ضبط هذه القيمة من خلال WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE.

kViewPoolSize

هذا هو الحجم التلقائي لمجموعة معاملات طلب العرض لعميل WDM.

قد يتم ضبط هذه القيمة عبر WEAVE_CONFIG_WDM_VIEW_POOL_SIZE.

167@

 @167

أنواع رسائل الملف الشخصي في WDM.

يتم استدعاء هذه القيم في مواصفات إدارة البيانات.

ملاحظة: واعتبارًا من الربع الأول من عام 2015، تم إيقاف أنواع الرسائل المستخدَمة في الإصدارات السابقة من WDM، كما تم تحديد أنواع رسائل جديدة، ما يعكس تغييرًا كافيًا مع تفاصيل التعبئة والتحليل السابقة من أجل تبرير إيقاف مؤقت.

أماكن إقامة
kMsgType_CancelSubscriptionRequest

رسالة إلغاء طلب الاشتراك

kMsgType_CancelSubscriptionRequest_Deprecated

متوقفة نهائيًا

kMsgType_NotifyRequest

إشعار الطلب

kMsgType_NotifyRequest_Deprecated

متوقفة نهائيًا

kMsgType_SubscribeRequest

رسالة طلب الاشتراك

kMsgType_SubscribeRequest_Deprecated

متوقفة نهائيًا

kMsgType_SubscribeResponse

الاشتراك في رسالة الردّ

kMsgType_SubscribeResponse_Deprecated

متوقفة نهائيًا

kMsgType_UpdateRequest

رسالة طلب التعديل

kMsgType_UpdateRequest_Deprecated

متوقفة نهائيًا

kMsgType_ViewRequest

عرض رسالة الطلب

kMsgType_ViewRequest_Deprecated

متوقفة نهائيًا

kMsgType_ViewResponse

عرض رسالة الرد

kMsgType_ViewResponse_Deprecated

متوقفة نهائيًا

168@

 @168

ثوابت متنوعة خاصة بـ WDM.

أماكن إقامة
kDefaultBindingTableIndex

فهرس الربط التلقائي في جدول ربط محرّك البروتوكول بأكثر من إدخال واحد.

kInstanceIdNotSpecified

في المكالمات التي تتطلب مواصفات نسخة افتراضية للملف الشخصي، تشير إلى "بدون".

ويشير هذا في أغلب الأحيان إلى وجود مثيل واحد فقط من الملف الشخصي في الكيان المعني.

kResponseTimeoutNotSpecified

في طرق طلب المعاملة، يشير ذلك إلى أنّ المتصل قد رفض تحديد مهلة.

ويعني هذا بشكل عام أنّه يجب استخدام القيمة التلقائية.

kTransactionIdNotSpecified

في الطرق وبنى البيانات التي تأخذ معرِّف المعاملة، يشير ذلك إلى "بدون" أو قيمة حرف بدل.

kVersionNotSpecified

في المكالمات التي تتطلب تحديد إصدار بيانات، تشير إلى "ما مِن إصدار معيَّن".

kWeaveTLVControlByteLen

طول بايت التحكّم TLV، يُستخدم في طرق الدعم التي ترمّز بُنى WDM في TLV.

kWeaveTLVTagLen

الطول العادي بالبايت لعلامة TLV المؤهلة بالكامل، ويتم استخدامه في طرق الدعم التي ترمّز بُنى WDM في TLV.

@169

 @169

رموز الحالة الخاصة بـ WDM.

أماكن إقامة
kStatus_CancelSuccess

يشير رمز الحالة القديم هذا إلى أنّه تم إلغاء الاشتراك بنجاح.

يعني رمز الحالة هذا أنّه تم إلغاء الاشتراك بنجاح.

kStatus_IllegalReadRequest

يعني رمز الحالة القديم هذا أن العقدة التي تطلب قراءة عنصر بيانات معين ليس لديها إذن بالقيام بذلك.

يعني رمز الحالة هذا أن العقدة التي تطلب قراءة عنصر بيانات معين ليس لديها إذن بالقيام بذلك.

kStatus_IllegalWriteRequest

يعني رمز الحالة القديم هذا أن العقدة التي تطلب كتابة عنصر بيانات معين ليس لديها إذن بالقيام بذلك.

يعني رمز الحالة هذا أن العقدة التي تطلب كتابة عنصر بيانات معين ليس لديها الإذن بذلك.

kStatus_InvalidPath

يعني رمز الحالة القديمة هذا أنّ مسارًا من قائمة المسارات لإطار طلب العرض أو التعديل لم يتطابق مع مخطط المجيب المقيم في العقدة.

يعني رمز الحالة هذا أن مسارًا من قائمة المسارات لإطار طلب العرض أو التعديل لم يتطابق مع مخطط المجيب المقيم في العقدة.

kStatus_InvalidVersion

يعني رمز الحالة القديم هذا أنّ نسخة البيانات المضمّنة في طلب التحديث لم تتطابق مع أحدث نسخة لدى الناشر، وبالتالي تعذّر تطبيق التحديث.

يعني رمز الحالة هذا أنّ نسخة البيانات المضمّنة في طلب التحديث لم تتطابق مع أحدث نسخة متوفّرة لدى الناشر، وبالتالي تعذّر تطبيق التعديل.

kStatus_UnknownTopic

يعني رمز الحالة القديم هذا أن معرّف الموضوع الذي تم تقديمه في طلب الإلغاء أو الإشعار لم يتطابق مع أي اشتراك موجود في العقدة المستلمة.

يعني رمز الحالة هذا أن معرّف الموضوع الذي تم تقديمه في طلب الإلغاء أو الإشعار لم يتطابق مع أي اشتراك متوفّر في عقدة الاستلام.

kStatus_UnsupportedSubscriptionMode

يعني رمز الحالة القديم هذا أنّ الجهاز المستلِم لا يتيح وضع الاشتراك المطلوب.

يعني رمز الحالة هذا أن وضع الاشتراك المطلوب غير متوافق مع الجهاز المستلم.

170@

 @170

علامات بروتوكول إدارة البيانات.

يحدد بروتوكول إدارة البيانات عددًا من العلامات التي سيتم استخدامها في تمثيل TLV لبيانات الملف الشخصي.

كالمعتاد، هناك مشاكل في التوافق بين WDM الجديدة والقديمة. في الماضي، كان يتم تطبيق كل هذه العلامات على أنها خاصة بالملف الشخصي، والتي كانت مضيعة للمساحة. والآن نستخدم علامات السياق كلما أمكن ذلك ولكننا نحتاج إلى الاحتفاظ بالعلامات القديمة (وتوفير آلية لمسارات الترميز في مكانها) عندما يكون ذلك مناسبًا.

لم يتم استخدام العلامة kTag_WDMDataListElementData في الإصدارات السابقة وتم تجاهلها بالكامل بواسطة الرمز، لذا لا داعي لتوفير إصدار تم إيقافه.

أماكن إقامة
kTag_WDMDataList

العنصر عبارة عن قائمة من البُنى التي تحتوي على مسار وإصدار اختياري وعناصر بيانات.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: ترتيب المصفوفة: المستوى الأعلى

kTag_WDMDataListElementData

يمثل العنصر البيانات المشار إليها من خلال مسار معين وله النسخة المحددة.

نوع العلامة: خاص بالسياق نوع العنصر: أي ترتيب: مطلوب

kTag_WDMDataListElementData_Deprecated

تمّ الإيقاف.

نوع العلامة: خاص بالسياق نوع العنصر: أي ترتيب: مطلوب

kTag_WDMDataListElementPath

العنصر هو مكوّن المسار لعنصر قائمة البيانات.

نوع العلامة: خاص بالسياق نوع العنصر: ترتيب المسار: مطلوب

kTag_WDMDataListElementPath_Deprecated

تمّ الإيقاف.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: ترتيب المسار: مطلوب

kTag_WDMDataListElementVersion

العنصر هو مكوّن الإصدار لعنصر قائمة البيانات.

نوع العلامة: خاص بالسياق نوع العنصر: ترتيب صحيح: مطلوب

kTag_WDMDataListElementVersion_Deprecated

تمّ الإيقاف.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: ترتيب صحيح: مطلوب

kTag_WDMPathArrayIndexSelector

يتجاوب عنصر المسار مع صفيف في المخطط ويجب استخدام عنصر العدد الصحيح المتضمّن كفهرس في تلك الصفيفة.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: ترتيب صحيح: اختياري

kTag_WDMPathArrayValueSelector

يتجاوب عنصر المسار مع صفيف في المخطط ويجب استخدام العنصر المغلف كمحدد سجل.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: ترتيب البنية: اختياري

kTag_WDMPathList

العنصر عبارة عن قائمة من مسارات TLV.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: ترتيب المصفوفة: المستوى الأعلى

kTag_WDMPathProfile

العنصر عبارة عن بنية تُستخدم لبدء مسار وتحتوي على معلومات الملف الشخصي التي يتم تفسير العلامات الموجودة في المسار من خلالها.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: ترتيب البنية: مطلوب

kTag_WDMPathProfileId

العنصر هو مكوّن معرّف الملف الشخصي لعنصر الملف الشخصي للمسار الذي يبدأ مسار TLV.

نوع العلامة: خاص بالسياق نوع العنصر: ترتيب صحيح: مطلوب

kTag_WDMPathProfileId_Deprecated

تمّ الإيقاف.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: ترتيب صحيح: مطلوب

kTag_WDMPathProfileInstance

العنصر هو مثيل للملف الشخصي، وقد يتبع معرّف الملف الشخصي في مسار TLV.

يُرجى العِلم أنّ العقدة قد تحتوي على مثيلات متعددة لملف شخصي معيّن أو لا تحتوي على مثيلات متعددة لملف شخصي معيّن، ويمكن حذف هذا العنصر في حال توفّر مثيل واحد فقط.

نوع العلامة: نوع العنصر المتعلّق بالسياق: أي ترتيب: اختياري

kTag_WDMPathProfileInstance_Deprecated

تمّ الإيقاف.

نوع العلامة: نوع العنصر الخاص بالملف الشخصي: أي ترتيب: اختياري

171@

 @171

أرقام تعريف المواضيع المميّزة.

هناك ثلاثة معرّفات مميزة للمواضيع التي تهمّك، ويتم تنسيق هذه المعرّفات الثلاثة على أنّها "خاصة بالناشر".

أماكن إقامة
kAnyTopicId

هذا الرقم محجوز كمعرّف موضوع حرف بدل.

kTopicIdNotSpecified

هذه قيمة خاصة محجوزة للتعبير عن معرّف موضوع غير صالح أو حرف بدل.

kTopicIdPublisherSpecificMask

يُستخدم هذا كقناع لإنشاء معرّف Topci أو تحليله.

WeaveTransportOption

 WeaveTransportOption

خيارات نقل WDM.

تقدّم هذه الخيارات خيارات نقل حصرية لمنصة WDM.

أماكن إقامة
kTransport_TCP

وسيلة النقل الأساسية هي بروتوكول التحكم بالنقل.

يمكن إكمال الربط باستخدام مدير الخدمة أو باستخدام طبقة الرسائل مباشرةً.

kTransport_UDP

عملية النقل الأساسية هي بروتوكول UDP حصريًا.

kTransport_WRMP

طبقة النقل الأساسية هي بروتوكول UDP حصريًا ولكن مع "طبقة دعم التطبيقات" تحسينات الموثوقية.

تعريف الأنواع

TopicIdentifier

uint64_t TopicIdentifier

معرِّف الموضوع.

معرّفات المواضيع هي كميات بتنسيق 64 بت مع استخدامَين أو دلالات ذات صلة. أولاً، يمكن استخدامها كاختصار تقليدي لمجموعة معروفة من المسارات، على سبيل المثال: جهاز كشف دخان Nest" يجب أن تحتوي معرّفات المواضيع التي يتم استخدامها بهذه الطريقة، مثل معرّفات الملفات الشخصية، على رمز مورّد يمنع معرّفات المواضيع التي يختارها المورّدون المختلفون بشكل مستقل من التعارض، على النحو التالي:

بت 48 - 63 بت 0 - 47
رقم تعريف المورّد رقم الموضوع
ينشأ الاستخدام/الدلالات الثانية لمعرّفات المواضيع في هذه الحالة من اشتراك ديناميكي بين عميل WDM وناشر. في هذه الحالة، على الناشر دائمًا تقديم معرّف موضوع فريد يشير إلى الاشتراك المحدّد، ويمكنه إجراء ذلك سواء تمّ طلب الاشتراك باستخدام معرّف موضوع معروف أو قائمة مسارات عشوائية. تتميز معرِّفات المواضيع لهذا النموذج برمز المورِّد 0xFFFF.

يُرجى الاطّلاع أيضًا على:
WeaveVendorIdentifiers.hpp

الدوال

CheckTLVType

bool CheckTLVType(
  nl::Weave::TLV::TLVType aType,
  nl::Weave::TLV::TLVReader & aReader
)

تأكَّد من أنّ العنصر TLV الذي تتم قراءته يتضمّن نوع TLV المتوقّع.

تحقَّق من نوع TLV معيّن وفقًا لنوع العنصر الظاهر في رأس قارئ TLV.

التفاصيل
المعلمات
[in] aType
TLVType المطلوب التحقق منه مقابل عنصر معين
[in] aReader
مرجع لقارئ TLV تمّ وضعه عند العنصر المطلوب التحقّق منه
المرتجعات
true إذا تطابق TLVType للعنصر وaType.
يُرجى الاطّلاع أيضًا على:
WeaveTLVTypes.h

CheckWDMTag

bool CheckWDMTag(
  uint32_t aTagNum,
  nl::Weave::TLV::TLVReader & aReader
)

تحقق من علامة خاصة بـ WDM.

تحقق من عدد العلامات الخاصة بـ WDM، من .../data-management/DMConstants.h، في ضوء العلامة الفعلية في رأس قارئ TLV.

التفاصيل
المعلمات
[in] aTagNum
رقم العلامة المطلوب التحقق منها مقابل عنصر TLV محدّد.
[in] aReader
مرجع إلى قارئ TLV يشير إلى العنصر المطلوب التحقّق منه
المرتجعات
true iff aReader.GetTag() يؤدي إلى إنشاء علامة تطابق أحد نماذج العلامات المتوقعة لرقم العلامة المحدد.

CloseDataListElement

WEAVE_ERROR CloseDataListElement(
  nl::Weave::TLV::TLVReader & aReader
)

إيقاف قراءة عنصر قائمة بيانات WDM.

تفترض هذه الطريقة أن العنصر المعني هو جزء من قائمة بيانات WDM ولذلك يقوم بتمرير kTLVType_Array إلى ExitContainer().

التفاصيل
المعلمات
[in,out] aReader
قارئ TLV موضوع في عنصر قائمة بيانات WDM.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على الخروج من الحاوية.

CloseList

WEAVE_ERROR CloseList(
  nl::Weave::TLV::TLVReader & aReader
)

إيقاف قراءة مسار WDM أو قائمة بيانات.

تفترض هذه الطريقة أن القائمة المعنية هي أعلى عنصر TLV، ولذلك تمرِّر kTLVType_Sructure إلى ExitContainer().

التفاصيل
المعلمات
[in,out] aReader
قارئ TLV موضوع في مسار WDM أو قائمة بيانات.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على الخروج من الحاوية.

EncodeDeprecatedPath

WEAVE_ERROR EncodeDeprecatedPath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint64_t & aInstanceId,
  uint32_t aPathLen,
  ...
)

ترميز مسار WDM بعلامات تم إيقافها ومعرّف مثيل عدد صحيح.

ملاحظة: يمكنك ترميز مسار باستخدام مجموعة العلامات المتوقّفة نهائيًا والتي تقبلها الخدمة قبل الإصدار 2.0 من Weave. يأخذ هذا الإصدار من الطريقة معرّف مثيل رقمي. تبدأ هذه الطريقة حاوية تتضمّن ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile) ثم تُدرِج رقم تعريف الملف الشخصي مع ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_عام). بعد ذلك، تُدرِج رقم تعريف المثيل من خلال ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_ الوصف). هذا هو أحد الإصدارات التي تم إيقافها لترميز مسار، وستتجنب التصميمات الجديدة استخدام هذا التنسيق.

التفاصيل
المعلمات
[in] aWriter
إشارة إلى كاتب TLV الذي تمّ استخدامه لكتابة المسار
[in] aTag
مرجع لعلامة TLV المؤهّلة بالكامل وينطبق على هذا المسار.
[in] aProfileId
رقم تعريف الملف الشخصي الذي سيتم تفسير عناصر المسار ضمنه.
[in] aInstanceId
مرجع إلى رقم التعريف الاختياري للمثيل للملف الشخصي المطلوب استخدامه.
[in] aPathLen
طول قائمة عناصر المسار التي تتجاوز محدد الملف الشخصي الأولي، وقد يكون 0.
[in] ...
قائمة الطول المتغير الاختيارية لعلامات المسارات الإضافية.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض خطأ WEAVE_ERROR يعكس عدم القدرة على تنسيق المسار المعني.

EncodeDeprecatedPath

WEAVE_ERROR EncodeDeprecatedPath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const char *aInstanceId,
  uint32_t aPathLen,
  ...
)

ترميز مسار WDM بعلامات تم إيقافها ومعرّف مثيل سلسلة.

ملاحظة: يمكنك ترميز مسار باستخدام مجموعة العلامات التي تم إيقافها نهائيًا (راجِع DMConstants.h). يأخذ هذا الإصدار من الطريقة سلسلة رقم تعريف المثيل. تبدأ هذه الطريقة حاوية تتضمّن ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile) ثم تُدرِج رقم تعريف الملف الشخصي مع ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_عام). بعد ذلك، تُدرِج رقم تعريف المثيل من خلال ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileInstance_ الوصف). هذا هو أحد الإصدارات التي تم إيقافها لترميز مسار، وستتجنب التصميمات الجديدة استخدام هذا التنسيق.

التفاصيل
المعلمات
[in] aWriter
إشارة إلى كاتب TLV الذي تمّ استخدامه لكتابة المسار
[in] aTag
مرجع لعلامة TLV المؤهّلة بالكامل وينطبق على هذا المسار.
[in] aProfileId
رقم تعريف الملف الشخصي الذي سيتم تفسير عناصر المسار ضمنه.
[in] aInstanceId
السلسلة الاختيارية المستخدمة كمعرّف لمثيل الملف الشخصي. قد تكون هذه الوسيطة فارغة إذا لم يتم تحديد رقم تعريف المثيل.
[in] aPathLen
طول قائمة عناصر المسار التي تتجاوز محدد الملف الشخصي الأولي، وقد يكون 0.
[in] ...
القائمة الاختيارية ذات الطول المتغير لعلامات المسارات الإضافية.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض خطأ WEAVE_ERROR يعكس عدم القدرة على تنسيق المسار المعني.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint64_t & aInstanceId,
  uint32_t aPathLen,
  ...
)

ترميز مسار WDM باستخدام معرّف مثيل ملف شخصي بعدد صحيح.

ملاحظة: اكتب مسار TLV من النوع المستخدَم في إدارة البيانات، حيث يكون هناك على وجه التحديد تصنيف للملف الشخصي في البداية للسماح بتفسير عناصر المسار اللاحقة. يأخذ هذا الإصدار من الطريقة رقم تعريف لمثيل الملف الشخصي بعدد صحيح.

تُدرِج هذه الطريقة رقم تعريف المثيل باستخدام ContextTag(kTag_WDMPathProfileInstance)، وهو أحدث إصدار لترميز المسار.

التفاصيل
المعلمات
[in] aWriter
إشارة إلى كاتب TLV الذي تمّ استخدامه لكتابة المسار
[in] aTag
مرجع لعلامة TLV المؤهّلة بالكامل وينطبق على هذا المسار.
[in] aProfileId
رقم تعريف الملف الشخصي الذي سيتم تفسير عناصر المسار ضمنه.
[in] aInstanceId
مرجع إلى معرّف النسخة الافتراضية للملف الشخصي المطلوب استخدامه. في حال عدم استخدام رقم تعريف المثيل، يجب أن تحتوي هذه المَعلمة على القيمة kInstanceIdNotSpecified.
[in] aPathLen
طول قائمة عناصر المسار التي تتجاوز محدد الملف الشخصي الأولي، وقد يكون 0.
[in] ...
قائمة الطول المتغير الاختيارية لعلامات المسارات الإضافية.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض خطأ WEAVE_ERROR يعكس عدم القدرة على تنسيق المسار المعني.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint32_t aInstanceIdLen,
  const uint8_t *aInstanceId,
  uint32_t aPathLen,
  ...
)

ترميز مسار WDM باستخدام رقم تعريف مثيل مصفوفة البايت.

ملاحظة: اكتب مسار TLV من النوع المستخدَم في إدارة البيانات، حيث يكون هناك على وجه التحديد تصنيف للملف الشخصي في البداية للسماح بتفسير عناصر المسار اللاحقة. يأخذ هذا الإصدار من الطريقة معرّف مثيل ملف تعريف صفيف بايت مع طول.

تُدرِج هذه الطريقة رقم تعريف المثيل باستخدام ContextTag(kTag_WDMPathProfileInstance)، وهو أحدث إصدار لترميز المسار.

التفاصيل
المعلمات
[in] aWriter
إشارة إلى كاتب TLV الذي تمّ استخدامه لكتابة المسار
[in] aTag
مرجع لعلامة TLV المؤهّلة بالكامل وينطبق على هذا المسار.
[in] aProfileId
رقم تعريف الملف الشخصي الذي سيتم تفسير عناصر المسار بموجبه.
[in] aInstanceIdLen
طول صفيفة البايت التي تشكل رقم تعريف المثيل. وفي حال عدم توفّر معرّف، ستكون قيمة هذه المَعلمة 0.
[in] aInstanceId
مصفوفة البايت الاختيارية المستخدَمة كمعرّف مثيل للملف الشخصي. قد تكون هذه الوسيطة فارغة في الحالة التي لم يتم فيها تحديد معرّف للمثيل.
[in] aPathLen
طول قائمة عناصر المسار التي تتجاوز محدد الملف الشخصي الأولي، وقد يكون 0.
[in] ...
القائمة الاختيارية ذات الطول المتغير لعلامات المسارات الإضافية.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض خطأ WEAVE_ERROR يعكس عدم القدرة على تنسيق المسار المعني.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const char *aInstanceId,
  uint32_t aPathLen,
  ...
)

ترميز مسار WDM باستخدام رقم تعريف مثيل السلسلة.

ملاحظة: اكتب مسار TLV من النوع المستخدَم في إدارة البيانات، حيث يكون هناك على وجه التحديد تصنيف للملف الشخصي في البداية للسماح بتفسير عناصر المسار اللاحقة. يأخذ هذا الإصدار من الطريقة رقم تعريف مثيل ملف شخصي سلسلة.

تُدرِج هذه الطريقة رقم تعريف المثيل باستخدام ContextTag(kTag_WDMPathProfileInstance)، وهو أحدث إصدار لترميز المسار.

التفاصيل
المعلمات
[in] aWriter
إشارة إلى كاتب TLV الذي تمّ استخدامه لكتابة المسار
[in] aTag
مرجع لعلامة TLV المؤهّلة بالكامل وينطبق على هذا المسار.
[in] aProfileId
رقم تعريف الملف الشخصي الذي سيتم تفسير عناصر المسار ضمنه.
[in] aInstanceId
السلسلة الاختيارية المستخدمة كمعرّف لمثيل الملف الشخصي. قد تكون هذه الوسيطة فارغة إذا لم يتم تحديد رقم تعريف المثيل.
[in] aPathLen
طول قائمة عناصر المسار التي تتجاوز محدد الملف الشخصي الأولي، وقد يكون 0.
[in] ...
القائمة الاختيارية ذات الطول المتغير لعلامات المسارات الإضافية.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض خطأ WEAVE_ERROR يعكس عدم القدرة على تنسيق المسار المعني.

EndDataListElement

WEAVE_ERROR EndDataListElement(
  nl::Weave::TLV::TLVWriter & aWriter
)

إنهاء كتابة عنصر قائمة بيانات.

اكتب TLV في نهاية عنصر قائمة بيانات WDM. يُرجى العلم أنّ هذا الإجراء يمرّر تلقائيًا من نوع kTLVType_Array إلى استدعاء EndContainer() على افتراض أنّنا نغلق عنصر القائمة دائمًا.

التفاصيل
المعلمات
[in] aWriter
مرجع إلى كاتب TLV لكتابة نهاية العنصر.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على إنهاء الحاوية.

EndEncodePath

WEAVE_ERROR EndEncodePath(
  TLVWriter & aWriter,
  TLVType & mOuterContainer,
  WEAVE_ERROR mError
)

EndList

WEAVE_ERROR EndList(
  nl::Weave::TLV::TLVWriter & aWriter
)

أنهِ كتابة قائمة مسارات أو قائمة بيانات.

اكتب TLV لنهاية مسار WDM أو قائمة البيانات. أيضًا، وضع اللمسات الأخيرة على الكاتب.

التفاصيل
المعلمات
[in,out] aWriter
مرجع إلى كاتب TLV يمكن استخدامه لكتابة نهاية القائمة.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على إنهاء الحاوية.

EndList

WEAVE_ERROR EndList(
  ReferencedTLVData & aList,
  nl::Weave::TLV::TLVWriter & aWriter
)

أنهِ كتابة قائمة مسارات أو قائمة بيانات.

اكتب TLV لنهاية مسار WDM أو قائمة البيانات. أيضًا، وضع اللمسات الأخيرة على الكاتب. في هذه الحالة، يتم تمرير الكائن ReferencedTLVData الذي تتم كتابة TLV إليه وتعديله ليعكس مقدار البيانات المكتوبة.

التفاصيل
المعلمات
[in,out] aList
مرجع إلى الكائن ReferenceTLVData الذي كانت تتم كتابة القائمة إليه.
[in] aWriter
مرجع إلى كاتب TLV يمكن استخدامه لكتابة نهاية القائمة.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على إنهاء الحاوية.

IsPublisherSpecific

bool IsPublisherSpecific(
  const TopicIdentifier & aTopicId
)

تحقق مما إذا كان رقم تعريف الموضوع خاصًا بالناشر.

التفاصيل
المعلمات
[in] aTopicId
التحقق من معرّف الموضوع
المرتجعات
true إذا كان رقم تعريف الموضوع خاصًا بالناشر، false في الحالات الأخرى

OpenDataList

WEAVE_ERROR OpenDataList(
  ReferencedTLVData & aDataList,
  nl::Weave::TLV::TLVReader & aReader
)

بدء قراءة قائمة البيانات.

بناءً على قارئ جديد وقائمة بيانات، ابدأ في قراءة القائمة وتحقق من صحة العلامات والأنواع التي حدثت في البداية في العملية. إذا سارت الأمور على ما يرام، يتوقف القارئ بعد إدخال حاوية القائمة.

التفاصيل
المعلمات
[in] aDataList
قائمة بيانات تم تمريرها كمرجع إلى عنصر ReferencedTLVData ستكون حالة الاستخدام العادية هي المكان الذي لا تزال فيه القائمة بالفعل في مورد احتياطي بعد الاستلام.
[out] aReader
مرجع إلى قارئ TLV يُستخدم لقراءة قائمة البيانات. سيترك هذا القارئ مشيرًا قبل العنصر الأول في القائمة مباشرةً.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض خطأ WEAVE_ERROR يعكس تعذُّر فتح قائمة البيانات و/أو التحقّق من صحة العلامات والأنواع ذات الصلة.

OpenDataListElement

WEAVE_ERROR OpenDataListElement(
  nl::Weave::TLV::TLVReader & aReader,
  nl::Weave::TLV::TLVReader & aPathReader,
  uint64_t & aVersion
)

بدء قراءة عنصر قائمة بيانات

ومع وضع القارئ في عنصر قائمة بيانات، ابدأ في قراءة العنصر وتحقق من صحة العلامات والأنواع التي تظهر لك في البداية في العملية. إذا سارت الأمور على ما يرام، ينتهي الأمر بالقارئ في وضع بيانات عنصر البيانات ويتم وضع قارئ المسار داخل/خارج في المسار المقابل.

التفاصيل
المعلمات
[in] aReader
مرجع إلى قارئ TLV تم وضعه في عنصر قائمة بيانات.
[out] aPathReader
يشير إلى مرجع لقارئ TLV يتم توجيهه إلى مكوّن المسار لعنصر قائمة البيانات.
[out] aVersion
يشير ذلك المصطلح إلى مرجع إلى عدد صحيح 64 بت يتم ضبطه على إصدار عنصر قائمة البيانات في حال توفّر أحد العناصر أو إلى القيمة kVersionNotSpecified.
المرتجعات
WEAVE_NO_ERROR في حالة النجاح أو على WEAVE_ERROR المرتبط بفتح عنصر قائمة البيانات وقراءته.

OpenPathList

WEAVE_ERROR OpenPathList(
  ReferencedTLVData & aPathList,
  nl::Weave::TLV::TLVReader & aReader
)

ابدأ قراءة قائمة المسارات.

بناءً على قارئ جديد وقائمة مسارات، ابدأ في قراءة القائمة وتحقَّق من صحة العلامات والأنواع التي حدثت في البداية في العملية. إذا سارت الأمور على ما يرام، يتوقف القارئ بعد إدخال حاوية القائمة.

التفاصيل
المعلمات
[in] aPathList
قائمة مسارات تم تمريرها كمرجع لكائن ReferencedTLVData ستكون حالة الاستخدام العادية هي المكان الذي لا تزال فيه القائمة بالفعل في مورد احتياطي بعد الاستلام.
[out] aReader
مرجع إلى قارئ TLV يتم استخدامه لقراءة قائمة المسارات سيترك هذا القارئ مشيرًا قبل المسار الأول مباشرة في القائمة.
المرتجعات
WEAVE_NO_ERROR بشأن النجاح؛ بخلاف ذلك، يعرض WEAVE_ERROR خطأ في فتح قائمة المسارات و/أو التحقّق من صحة العلامات والأنواع ذات الصلة.

PublisherSpecificTopicId

TopicIdentifier PublisherSpecificTopicId(
  void
)

إنشاء رقم تعريف لموضوع خاص بالناشر من البداية

التفاصيل
المرتجعات
ومعرّف الموضوع الجديد.

SendStatusReport

WEAVE_ERROR SendStatusReport(
  ExchangeContext *aExchangeCtx,
  StatusReport & aStatus
)

StartDataList

WEAVE_ERROR StartDataList(
  nl::Weave::TLV::TLVWriter & aWriter
)

ابدأ في كتابة قائمة بيانات.

اكتب TLV لبداية قائمة بيانات WDM، مثل. كوسيطة أساسية لـ UpdateRequest().

التفاصيل
المعلمات
[in] aWriter
مرجع لكاتب في TLV يمكنك استخدامه لبدء الكتابة
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على بدء الحاوية.

StartDataList

WEAVE_ERROR StartDataList(
  ReferencedTLVData & aDataList,
  nl::Weave::TLV::TLVWriter & aWriter
)

ابدأ في كتابة قائمة بيانات في كائن ReferencedTLVData.

اكتب TLV لبداية قائمة بيانات WDM. في هذه الحالة، نفترض أنّنا نكتب قائمة البيانات في بنية بيانات TLV المُشار إليها. من المفترض أن يكون كاتب النص غير مهيأ، أو سيتم إعداده، على أي حال، للإشارة إلى كائن معين.

التفاصيل
المعلمات
[out] aDataList
مرجع إلى عنصر ReferencedTLVData المُراد استهدافه للمؤلف والذي سيتضمّن في النهاية البيانات التي تهمّك
[in] aWriter
مرجع لكاتب في TLV يمكنك استخدامه لبدء الكتابة
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على بدء الحاوية.

StartDataListElement

WEAVE_ERROR StartDataListElement(
  nl::Weave::TLV::TLVWriter & aWriter
)

بدء كتابة عنصر قائمة بيانات.

اكتب TLV لبداية عنصر قائمة بيانات WDM.

التفاصيل
المعلمات
[in] aWriter
مرجع لكاتب في TLV يمكنك استخدامه لبدء الكتابة
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على بدء الحاوية.

StartEncodePath

WEAVE_ERROR StartEncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  TLVType & mOuterContainer,
  TLVType & mPath
)

StartPathList

WEAVE_ERROR StartPathList(
  nl::Weave::TLV::TLVWriter & aWriter
)

ابدأ في كتابة قائمة مسارات.

اكتب TLV لبداية قائمة مسارات WDM، على سبيل المثال. كوسيطة أساسية لـ ViewRequest().

التفاصيل
المعلمات
[in] aWriter
مرجع لكاتب في TLV يمكنك استخدامه لبدء الكتابة
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. في الحالات الأخرى، يمكنك عرض WEAVE_ERROR يعكس عدم القدرة على بدء الحاوية.

TxnResponseHandler

void TxnResponseHandler(
  ExchangeContext *anExchangeCtx,
  const IPPacketInfo *anAddrInfo,
  const WeaveMessageInfo *aMsgInfo,
  uint32_t aProfileId,
  uint8_t aMsgType,
  PacketBuffer *aMsg
)

TxnTimeoutHandler

void TxnTimeoutHandler(
  ExchangeContext *anExchangeCtx
)

ValidateTLVType

WEAVE_ERROR ValidateTLVType(
  nl::Weave::TLV::TLVType aType,
  nl::Weave::TLV::TLVReader & aReader
)

تحقَّق من أنّ العنصر TLV الذي تتم قراءته يتضمّن نوع TLV المتوقّع.

تحقَّق من نوع TLV معيّن مقابل نوع العنصر في رأس قارئ TLV، واعرض رسالة خطأ في حال عدم توفّر مطابقة.

التفاصيل
المعلمات
[in] aType
نوع TLVType المطلوب التحقق منه مقابل عنصر معين.
[in] aReader
مرجع لقارئ TLV تمّ وضعه عند العنصر المطلوب التحقّق من صحته.
المرتجعات
WEAVE_NO_ERROR إذا كان هناك تطابق أو WEAVE_ERROR_WRONG_TLV_TYPE إذا لم يكن الأمر كذلك.
يُرجى الاطّلاع أيضًا على:
WeaveTLVTypes.h

ValidateWDMTag

WEAVE_ERROR ValidateWDMTag(
  uint32_t aTagNum,
  nl::Weave::TLV::TLVReader & aReader
)

تحقَّق من أنّ عنصر TLV الذي تتم قراءته يتضمّن علامة WDM المتوقّعة.

التفاصيل
المعلمات
[in] aTagNum
رقم علامة 32 بت لعلامة WDM المتوقعة.
[in] aReader
قارئ TLV موضوع في العنصر المطلوب التحقّق من صحته.
المرتجعات
WEAVE_NO_ERROR عند تحقيق النجاح. بخلاف ذلك، WEAVE_ERROR_INVALID_TLV_TAG إذا لم تتطابق العلامة مع رقم العلامة المحدد عند تفسيرها على أنها علامة WDM.