CoAP

تتضمن هذه الوحدة وظائف تتحكّم في اتصال CoAP.

ملخّص

تتوفر الوظائف في هذه الوحدة عند تفعيل ميزة CoAP API (OPENTHREAD_CONFIG_COAP_API_ENABLE).

التعداد

otCoapBlockSzx تعداد
أُسّ حجم مجموعة CoAP
otCoapCode{
  OT_COAP_CODE_EMPTY = (((( 0 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_GET = (((( 0 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_POST = (((( 0 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_PUT = (((( 0 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_DELETE = (((( 0 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_RESPONSE_MIN = (((( 2 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_CREATED = (((( 2 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_DELETED = (((( 2 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_VALID = (((( 2 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_CHANGED = (((( 2 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_CONTENT = (((( 2 )&0x7) << 5) | (( 5 )&0x1f)),
  OT_COAP_CODE_CONTINUE = (((( 2 )&0x7) << 5) | (( 31 )&0x1f)),
  OT_COAP_CODE_BAD_REQUEST = (((( 4 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_UNAUTHORIZED = (((( 4 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_BAD_OPTION = (((( 4 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_FORBIDDEN = (((( 4 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_NOT_FOUND = (((( 4 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_METHOD_NOT_ALLOWED = (((( 4 )&0x7) << 5) | (( 5 )&0x1f)),
  OT_COAP_CODE_NOT_ACCEPTABLE = (((( 4 )&0x7) << 5) | (( 6 )&0x1f)),
  OT_COAP_CODE_REQUEST_INCOMPLETE = (((( 4 )&0x7) << 5) | (( 8 )&0x1f)),
  OT_COAP_CODE_PRECONDITION_FAILED = (((( 4 )&0x7) << 5) | (( 12 )&0x1f)),
  OT_COAP_CODE_REQUEST_TOO_LARGE = (((( 4 )&0x7) << 5) | (( 13 )&0x1f)),
  OT_COAP_CODE_UNSUPPORTED_FORMAT = (((( 4 )&0x7) << 5) | (( 15 )&0x1f)),
  OT_COAP_CODE_INTERNAL_ERROR = (((( 5 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_NOT_IMPLEMENTED = (((( 5 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_BAD_GATEWAY = (((( 5 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_SERVICE_UNAVAILABLE = (((( 5 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_GATEWAY_TIMEOUT = (((( 5 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_PROXY_NOT_SUPPORTED = (((( 5 )&0x7) << 5) | (( 5 )&0x1f))
}
تعداد
قيم رمز CoAP
otCoapOptionContentFormat{
  OT_COAP_OPTION_CONTENT_FORMAT_TEXT_PLAIN = 0,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0 = 16,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0 = 17,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1 = 18,
  OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT = 40,
  OT_COAP_OPTION_CONTENT_FORMAT_XML = 41,
  OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM = 42,
  OT_COAP_OPTION_CONTENT_FORMAT_EXI = 47,
  OT_COAP_OPTION_CONTENT_FORMAT_JSON = 50,
  OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON = 51,
  OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON = 52,
  OT_COAP_OPTION_CONTENT_FORMAT_CBOR = 60,
  OT_COAP_OPTION_CONTENT_FORMAT_CWT = 61,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT = 96,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC = 97,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN = 98,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY = 101,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET = 102,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_JSON = 110,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_JSON = 111,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR = 112,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR = 113,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI = 114,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_EXI = 115,
  OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON = 256,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_XML = 310,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_XML = 311
}
تعداد
رموز تنسيق محتوى CoAP
otCoapOptionType{
  OT_COAP_OPTION_IF_MATCH = 1,
  OT_COAP_OPTION_URI_HOST = 3,
  OT_COAP_OPTION_E_TAG = 4,
  OT_COAP_OPTION_IF_NONE_MATCH = 5,
  OT_COAP_OPTION_OBSERVE = 6,
  OT_COAP_OPTION_URI_PORT = 7,
  OT_COAP_OPTION_LOCATION_PATH = 8,
  OT_COAP_OPTION_URI_PATH = 11,
  OT_COAP_OPTION_CONTENT_FORMAT = 12,
  OT_COAP_OPTION_MAX_AGE = 14,
  OT_COAP_OPTION_URI_QUERY = 15,
  OT_COAP_OPTION_ACCEPT = 17,
  OT_COAP_OPTION_LOCATION_QUERY = 20,
  OT_COAP_OPTION_BLOCK2 = 23,
  OT_COAP_OPTION_BLOCK1 = 27,
  OT_COAP_OPTION_SIZE2 = 28,
  OT_COAP_OPTION_PROXY_URI = 35,
  OT_COAP_OPTION_PROXY_SCHEME = 39,
  OT_COAP_OPTION_SIZE1 = 60
}
تعداد
أرقام خيارات التعاون
otCoapType{
  OT_COAP_TYPE_CONFIRMABLE = 0,
  OT_COAP_TYPE_NON_CONFIRMABLE = 1,
  OT_COAP_TYPE_ACKNOWLEDGMENT = 2,
  OT_COAP_TYPE_RESET = 3
}
تعداد
قيم نوع CoAP (عدد صحيح 2 بت غير موقَّع)

تنسيق النوع

otCoapBlockSzx تعريف طباعيّ
أُسّ حجم مجموعة CoAP
otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength) تعريف طباعيّ
يتم طلب المؤشر عند استلام رسالة CoAP بها خيار نقل البيانات بالحظر.
otCoapBlockwiseResource تعريف طباعيّ
يمثل موردًا CoAP مع النقل بالحظر.
otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore) تعريف طباعيّ
يتم استدعاء المؤشر قبل إرسال المجموعة التالية في عملية نقل من نوع الكتلة.
otCoapCode تعريف طباعيّ
enum otCoapCode
قيم رمز CoAP
otCoapOption تعريف طباعيّ
struct otCoapOption
يمثل خيار CoAP.
otCoapOptionContentFormat تعريف طباعيّ
رموز تنسيق محتوى CoAP
otCoapOptionIterator تعريف طباعيّ
يعمل كمكرر لخيارات CoAP.
otCoapOptionType تعريف طباعيّ
أرقام خيارات التعاون
otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) تعريف طباعيّ
void(*
يتم استدعاء المؤشر عند تلقي طلب CoAP يتضمن مسار معرف موارد منتظم (URI) محدد.
otCoapResource تعريف طباعيّ
يمثل مورد CoAP
otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) تعريف طباعيّ
void(*
يتم طلب المؤشر عند تلقّي استجابة CoAP أو عند انتهاء مهلة الطلب.
otCoapTxParameters تعريف طباعيّ
يمثل معلمات الإرسال CoAP.
otCoapType تعريف طباعيّ
enum otCoapType
قيم نوع CoAP (عدد صحيح 2 بت غير موقَّع)

الدوال

otCoapAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
يضيف موردًا محظورًا إلى خادم CoAP.
otCoapAddResource(otInstance *aInstance, otCoapResource *aResource)
void
إضافة مورد إلى خادم CoAP
otCoapBlockSizeFromExponent(otCoapBlockSzx aSize)
uint16_t
تحوِّل حقل SZX خيار كتلة CoAP إلى حجم الكتلة الفعلي.
otCoapMessageAppendBlock1Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
ترفق خيار "حظر 1".
otCoapMessageAppendBlock2Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
ترفق خيار Block2.
otCoapMessageAppendContentFormatOption(otMessage *aMessage, otCoapOptionContentFormat aContentFormat)
تُرفِق هذه الإضافة خيار CoAP لتنسيق المحتوى كما هو محدَّد في https://tools.ietf.org/html/RFC7252#page-92.
otCoapMessageAppendMaxAgeOption(otMessage *aMessage, uint32_t aMaxAge)
ترفق خيار "الحد الأقصى للعمر".
otCoapMessageAppendObserveOption(otMessage *aMessage, uint32_t aObserve)
ترفق خيار "الملاحظة".
otCoapMessageAppendOption(otMessage *aMessage, uint16_t aNumber, uint16_t aLength, const void *aValue)
ترفق خيار CoAP في العنوان.
otCoapMessageAppendProxyUriOption(otMessage *aMessage, const char *aUriPath)
تُرفِق خيار معرِّف الموارد المنتظم (Uri) للخادم الوكيل.
otCoapMessageAppendUintOption(otMessage *aMessage, uint16_t aNumber, uint32_t aValue)
تُرفِق هذه الإضافة خيار CoAP لعدد صحيح غير مُوقَّع، كما هو محدَّد في https://tools.ietf.org/html/RFC7252#section-3.2.
otCoapMessageAppendUriPathOptions(otMessage *aMessage, const char *aUriPath)
ترفق خيار مسار معرّف الموارد المنتظم (URI).
otCoapMessageAppendUriQueryOption(otMessage *aMessage, const char *aUriQuery)
لإلحاق خيار واحد لمعرّف Uri-Query.
otCoapMessageCodeToString(const otMessage *aMessage)
const char *
تعرض رمز CoAP كسلسلة يمكن للإنسان فهمها.
otCoapMessageGenerateToken(otMessage *aMessage, uint8_t aTokenLength)
void
تحدِّد هذه السياسة طول الرمز المميّز وترتيب قيمته عشوائيًا.
otCoapMessageGetCode(const otMessage *aMessage)
تعرِض قيمة الرمز.
otCoapMessageGetMessageId(const otMessage *aMessage)
uint16_t
تعرض قيمة معرّف الرسالة.
otCoapMessageGetToken(const otMessage *aMessage)
const uint8_t *
تعرض مؤشرًا إلى قيمة الرمز المميز.
otCoapMessageGetTokenLength(const otMessage *aMessage)
uint8_t
تعرض طول الرمز المميّز.
otCoapMessageGetType(const otMessage *aMessage)
تعرض قيمة "Type" (النوع).
otCoapMessageInit(otMessage *aMessage, otCoapType aType, otCoapCode aCode)
void
تهيئة عنوان CoAP.
otCoapMessageInitResponse(otMessage *aResponse, const otMessage *aRequest, otCoapType aType, otCoapCode aCode)
يؤدي هذا الخيار إلى إعداد رسالة ردّ.
otCoapMessageSetCode(otMessage *aMessage, otCoapCode aCode)
void
تحدِّد قيمة الرمز.
otCoapMessageSetPayloadMarker(otMessage *aMessage)
تضيف علامة حمولة البيانات التي تشير إلى بداية الحمولة إلى عنوان CoAP.
otCoapMessageSetToken(otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength)
تحدِّد قيمة الرمز المميّز وطوله في أحد العناوين.
otCoapNewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
ينشئ رسالة CoAP جديدة.
otCoapOptionIteratorGetFirstOption(otCoapOptionIterator *aIterator)
const otCoapOption *
تعرض المؤشر على الخيار الأول.
otCoapOptionIteratorGetFirstOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
لعرض مؤشر إلى الخيار الأول الذي يطابق رقم الخيار المحدد.
otCoapOptionIteratorGetNextOption(otCoapOptionIterator *aIterator)
const otCoapOption *
لعرض المؤشر إلى الخيار التالي.
otCoapOptionIteratorGetNextOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
لعرض مؤشر إلى الخيار التالي الذي يطابق رقم الخيار المحدد.
otCoapOptionIteratorGetOptionUintValue(otCoapOptionIterator *aIterator, uint64_t *aValue)
تملأ قيمة الخيار الحالي في aValue على افتراض أنّ القيمة الحالية هي عدد صحيح غير مُوقَّع تم ترميزه وفق https://tools.ietf.org/html/RFC7252#section-3.2.
otCoapOptionIteratorGetOptionValue(otCoapOptionIterator *aIterator, void *aValue)
لتعبئة قيمة الخيار الحالية في aValue.
otCoapOptionIteratorInit(otCoapOptionIterator *aIterator, const otMessage *aMessage)
تقوم بإعداد مكرر للخيارات في الرسالة المقدمة.
otCoapRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
يزيل مورد الحظر من خادم CoAP.
otCoapRemoveResource(otInstance *aInstance, otCoapResource *aResource)
void
إزالة مورد من خادم CoAP
otCoapSendRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext)
إرسال طلب CoAP
otCoapSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
يتم إرسال طلب CoAP من ناحية الحظر.
otCoapSendRequestBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
تتيح هذه الطريقة إرسال طلب CoAP من حيث الحظر باستخدام مَعلمات إرسال مخصَّصة.
otCoapSendRequestWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters)
تتيح إرسال طلب CoAP مع مَعلمات إرسال مخصّصة.
otCoapSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
لإرسال استجابة CoAP من الخادم.
otCoapSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
يرسل استجابة CoAP من الخادم بالحظر.
otCoapSendResponseBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
يرسل هذا الخيار استجابة CoAP من حيث الكتل من الخادم باستخدام مَعلمات إرسال مخصّصة.
otCoapSendResponseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters)
يرسل استجابة CoAP من الخادم مع معلمات إرسال مخصصة.
otCoapSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
void
يضبط المعالج التلقائي لطلبات CoAP التي لم تتم معالجتها.
otCoapStart(otInstance *aInstance, uint16_t aPort)
لتشغيل خادم CoAP.
otCoapStop(otInstance *aInstance)
إيقاف خادم CoAP

الهياكل

otCoapBlockwiseResource

يمثل موردًا CoAP مع النقل بالحظر.

otCoapOption

يمثل خيار CoAP.

otCoapOptionIterator

يعمل كمكرر لخيارات CoAP.

otCoapResource

يمثل مورد CoAP

otCoapTxParameters

يمثل معلمات الإرسال CoAP.

التعداد

otCoapBlockSzx

 otCoapBlockSzx

أُسّ حجم مجموعة CoAP

رمز otCoapCode

 otCoapCode

قيم رمز CoAP

أماكن إقامة
OT_COAP_CODE_BAD_GATEWAY

مدخل غير صالح.

OT_COAP_CODE_BAD_OPTION

خيار غير صالح.

OT_COAP_CODE_BAD_REQUEST

طلب غير صالح.

OT_COAP_CODE_CHANGED

تم التغيير.

OT_COAP_CODE_CONTENT

المحتوى.

OT_COAP_CODE_CONTINUE

RFC7959 متابعة

OT_COAP_CODE_CREATED

تم الإنشاء.

OT_COAP_CODE_DELETE

حذف.

OT_COAP_CODE_DELETED

تم حذف "سجلّ البحث".

OT_COAP_CODE_EMPTY

رمز الرسالة فارغ

OT_COAP_CODE_FORBIDDEN

يحظّر الوصول إلى هذا العنوان.

OT_COAP_CODE_GATEWAY_TIMEOUT

انتهت مهلة البوابة.

OT_COAP_CODE_GET

احصل عليها.

OT_COAP_CODE_INTERNAL_ERROR

خطأ خادم داخلي.

OT_COAP_CODE_METHOD_NOT_ALLOWED

الطريقة غير مسموح بها.

OT_COAP_CODE_NOT_ACCEPTABLE

غير مقبول.

OT_COAP_CODE_NOT_FOUND

غير موجود

OT_COAP_CODE_NOT_IMPLEMENTED

مَتْنَفِّذْشْ.

OT_COAP_CODE_POST

مشاركة

OT_COAP_CODE_PRECONDITION_FAILED

تعذّر الشرط المُسبَق.

OT_COAP_CODE_PROXY_NOT_SUPPORTED

إنشاء الوكلاء غير متاح.

OT_COAP_CODE_PUT

وضع.

OT_COAP_CODE_REQUEST_INCOMPLETE

كيان طلب RFC7959 غير مكتمل.

OT_COAP_CODE_REQUEST_TOO_LARGE

عنصر الطلب كبير جدًا.

OT_COAP_CODE_RESPONSE_MIN

2,00

OT_COAP_CODE_SERVICE_UNAVAILABLE

الخدمة غير متوفرة

OT_COAP_CODE_UNAUTHORIZED

طلب غير مسموح به.

OT_COAP_CODE_UNSUPPORTED_FORMAT

تنسيق المحتوى غير متوافق.

OT_COAP_CODE_VALID

صالحة.

otCoapOptionContentFormat

 otCoapOptionContentFormat

رموز تنسيق محتوى CoAP

تم توثيق القائمة الكاملة على الرابط https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats

أماكن إقامة
OT_COAP_OPTION_CONTENT_FORMAT_CBOR

التطبيق/cbor: [RFC7049]

OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON

application/coap-group+json: [RFC7390]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT

application/cose; cose-type="cose-encrypt": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0

application/cose; cose-type="cose-encrypt0": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY

application/cose-key: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET

application/cose-key-set: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC

application/cose; cose-type="cose-mac": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0

application/cose; cose-type="cose-mac0": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN

application/cose; cose-type="cose-sign": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1

application/cose; cose-type="cose-sign1": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_CWT

application/cwt: [RFC8392]

OT_COAP_OPTION_CONTENT_FORMAT_EXI

application/exi: [" Efficient XML Interchange (EXI) Format 1.0 (Second Edition)", شباط (فبراير) 2014]

OT_COAP_OPTION_CONTENT_FORMAT_JSON

application/json: [RFC7159]

OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON

application/json-patch+json: [RFC6902]

OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT

app/link-format: [RFC6690]

OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON

application/merge-patch+json: [RFC7396]

OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM

application/8tet-stream: [RFC2045][RFC2046]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR

التطبيق/senml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI

application/senml-exi: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_JSON

application/senml+json: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_XML

application/senml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR

التطبيق/sensml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_EXI

application/sensml-exi: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_JSON

application/sensml+json: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_XML

application/sensml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_TEXT_PLAIN

text/plain; charset=utf-8: [RFC2046][RFC3676][RFC5147]

OT_COAP_OPTION_CONTENT_FORMAT_XML

application/xml: [RFC3023]

otCoapOptionType

 otCoapOptionType

أرقام خيارات التعاون

أماكن إقامة
OT_COAP_OPTION_ACCEPT

وعليك قبولها.

OT_COAP_OPTION_BLOCK1

Block1 (RFC7959)

OT_COAP_OPTION_BLOCK2

Block2 (RFC7959)

OT_COAP_OPTION_CONTENT_FORMAT

تنسيق المحتوى:

OT_COAP_OPTION_E_TAG

ETag.

OT_COAP_OPTION_IF_MATCH

If-Match.

OT_COAP_OPTION_IF_NONE_MATCH

If-None-Match.

OT_COAP_OPTION_LOCATION_PATH

مسار الموقع الجغرافي.

OT_COAP_OPTION_LOCATION_QUERY

طلب البحث عن الموقع الجغرافي.

OT_COAP_OPTION_MAX_AGE

الحد الأقصى للعمر.

OT_COAP_OPTION_OBSERVE

يُرجى ملاحظة [RFC7641].

OT_COAP_OPTION_PROXY_SCHEME

مخطط الخادم الوكيل.

OT_COAP_OPTION_PROXY_URI

Proxy-Uri.

OT_COAP_OPTION_SIZE1

الحجم 1.

OT_COAP_OPTION_SIZE2

Size2 (RFC7959)

OT_COAP_OPTION_URI_HOST

معرّف الموارد المنتظم (Uri-Host)

OT_COAP_OPTION_URI_PATH

مسار معرّف الموارد المنتظم (URI).

OT_COAP_OPTION_URI_PORT

منفذ Uri-Port.

OT_COAP_OPTION_URI_QUERY

Uri-Query.

otCoapType

 otCoapType

قيم نوع CoAP (عدد صحيح 2 بت غير موقَّع)

أماكن إقامة
OT_COAP_TYPE_ACKNOWLEDGMENT

إقرار.

OT_COAP_TYPE_CONFIRMABLE

قابلة للتأكيد.

OT_COAP_TYPE_NON_CONFIRMABLE

غير قابلة للتأكيد.

OT_COAP_TYPE_RESET

إعادة الضبط.

تنسيق النوع

otCoapBlockSzx

enum otCoapBlockSzx otCoapBlockSzx

أُسّ حجم مجموعة CoAP

otCoapBlockwiseصافHook

otError(* otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength)

يتم طلب المؤشر عند استلام رسالة CoAP بها خيار نقل البيانات بالحظر.

يتوفر عندما يتم تمكين تهيئة OPENthread_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

التفاصيل
المَعلمات
[in] aContext
مؤشر إلى سياق خاص بالتطبيق.
[in] aBlock
مؤشر ماوس إلى مقطع الجزء.
[in] aPosition
موضع aBlock في تسلسل بالبايت.
[in] aBlockLength
طول جزء الكتلة بالبايت.
[in] aMore
الإبلاغ عن إضافة المزيد من شرائح الحظر في حال متابعتها
[in] aTotalLength
إجمالي الطول بالبايت من المعلومات المنقولة (يشار إليه بخيار Size1 أو Size2).
إرجاع القيم
OT_ERROR_NONE
تم بنجاح تخزين شريحة الحظر.
OT_ERROR_NO_BUFS
لن تحتاج إلى المزيد من الذاكرة لتخزين القوالب.
OT_ERROR_NO_FRAME_RECEIVED
حظر المقطع غير متوفّر.

otCoapBlockwiseResource

struct otCoapBlockwiseResource otCoapBlockwiseResource

يمثل موردًا CoAP مع النقل بالحظر.

otCoapBlockwiseTransmitHook

otError(* otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore)

يتم استدعاء المؤشر قبل إرسال المجموعة التالية في عملية نقل من نوع الكتلة.

يتوفر عندما يتم تمكين تهيئة OPENthread_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

من خلال تغيير قيمة aBlockLength، تتم إعادة التفاوض بشأن حجم كتلة التبادل بالكامل. ويُنصح بتنفيذ ذلك بعد تلقّي المجموعة الأولى لأنّ التغييرات اللاحقة قد تؤدي إلى حدوث مشاكل في عمليات تنفيذ CoAP الأخرى.

التفاصيل
المَعلمات
[in] aContext
مؤشر إلى سياق خاص بالتطبيق.
[in,out] aBlock
مؤشر يشير إلى المكان الذي يمكن كتابة مقطع الحظر فيه.
[in] aPosition
تمثّل هذه السمة الموضع في التسلسل الذي يتم الحصول منه على شريحة الكتلة.
[in,out] aBlockLength
الحد الأقصى لطول جزء الكتلة بالبايت عند الإدخال.
[out] aMore
مؤشر ما إذا كانت أجزاء أخرى من الكتلة ستتبعها.
إرجاع القيم
OT_ERROR_NONE
لم يحدث أي خطأ.
OT_ERROR_INVALID_ARGS
الحظر في aPosition غير موجود.

رمز otCoapCode

enum otCoapCode otCoapCode

قيم رمز CoAP

خدمة otCoapOption

struct otCoapOption otCoapOption

يمثل خيار CoAP.

otCoapOptionContentFormat

enum otCoapOptionContentFormat otCoapOptionContentFormat

رموز تنسيق محتوى CoAP

تم توثيق القائمة الكاملة على الرابط https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats

otCoapOptionIterator

struct otCoapOptionIterator otCoapOptionIterator

يعمل كمكرر لخيارات CoAP.

otCoapOptionType

enum otCoapOptionType otCoapOptionType

أرقام خيارات التعاون

otCoapRequestHandler

void(* otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo)

يتم استدعاء المؤشر عند تلقي طلب CoAP يتضمن مسار معرف موارد منتظم (URI) محدد.

التفاصيل
المَعلمات
[in] aContext
مؤشر إلى معلومات سياق عشوائية
[in] aMessage
مؤشر الرسالة
[in] aMessageInfo
مؤشر إلى معلومات الرسالة الخاصة بـ "aMessage"

otCoapResource

struct otCoapResource otCoapResource

يمثل مورد CoAP

otCoapResponseHandler

void(* otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult)

يتم طلب المؤشر عند تلقّي استجابة CoAP أو عند انتهاء مهلة الطلب.

التفاصيل
المَعلمات
[in] aContext
مؤشر إلى سياق خاص بالتطبيق.
[in] aMessage
مؤشر إلى المخزن المؤقت للرسائل الذي يحتوي على الرد فارغة في حال عدم تلقي أي رد.
[in] aMessageInfo
مؤشر إلى معلومات الرسالة الخاصة بـ "aMessage" فارغة في حال عدم تلقي أي رد.
[in] aResult
نتيجة لمعاملة CoAP.
إرجاع القيم
OT_ERROR_NONE
تم تلقي استجابة بنجاح.
OT_ERROR_ABORT
تمت إعادة ضبط معاملة في CoAP من قِبل تطبيق مشابه.
OT_ERROR_RESPONSE_TIMEOUT
لم يتم تلقي أي رد أو إقرار خلال فترة المهلة.

otCoapTxParameters

struct otCoapTxParameters otCoapTxParameters

يمثل معلمات الإرسال CoAP.

otCoapType

enum otCoapType otCoapType

قيم نوع CoAP (عدد صحيح 2 بت غير موقَّع)

الدوال

otCoapAddBlockWiseResource

void otCoapAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

يضيف موردًا محظورًا إلى خادم CoAP.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aResource
مؤشر إلى المورد.

otCoapAddResource

void otCoapAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

إضافة مورد إلى خادم CoAP

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aResource
مؤشر إلى المورد.

otCoapBlockSizeFromExponent

uint16_t otCoapBlockSizeFromExponent(
  otCoapBlockSzx aSize
)

تحوِّل حقل SZX خيار كتلة CoAP إلى حجم الكتلة الفعلي.

التفاصيل
المَعلمات
[in] aSize
كتلة حجم الأس
المرتجعات
قيمة أس الحجم الفعلي.

otCoapMessageAttachBlock1Option

otError otCoapMessageAppendBlock1Option(
  otMessage *aMessage,
  uint32_t aNum,
  bool aMore,
  otCoapBlockSzx aSize
)

ترفق خيار "حظر 1".

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aNum
رقم القطعة الحالي.
[in] aMore
قيمة منطقية للإشارة إلى إرسال المزيد من القوالب.
[in] aSize
أُس حجم الحظر
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageAttachBlock2Option

otError otCoapMessageAppendBlock2Option(
  otMessage *aMessage,
  uint32_t aNum,
  bool aMore,
  otCoapBlockSzx aSize
)

ترفق خيار Block2.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aNum
رقم القطعة الحالي.
[in] aMore
قيمة منطقية للإشارة إلى إرسال المزيد من القوالب.
[in] aSize
أُس حجم الحظر
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageAttachContentFormatOption

otError otCoapMessageAppendContentFormatOption(
  otMessage *aMessage,
  otCoapOptionContentFormat aContentFormat
)

تُرفِق هذه الإضافة خيار CoAP لتنسيق المحتوى كما هو محدَّد في https://tools.ietf.org/html/RFC7252#page-92.

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

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

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aContentFormat
أحد تنسيقات المحتوى المدرَجة في otCoapOptionContentFormat أعلاه.
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageAttachMaxAgeOption

otError otCoapMessageAppendMaxAgeOption(
  otMessage *aMessage,
  uint32_t aMaxAge
)

ترفق خيار "الحد الأقصى للعمر".

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aMaxAge
قيمة الحد الأقصى للعمر.
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageModifyeOption

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

ترفق خيار "الملاحظة".

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aObserve
راقِب قيمة الحقل.
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageChooseOption

otError otCoapMessageAppendOption(
  otMessage *aMessage,
  uint16_t aNumber,
  uint16_t aLength,
  const void *aValue
)

ترفق خيار CoAP في العنوان.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aNumber
رقم خيار CoAP
[in] aLength
طول خيار CoAP
[in] aValue
مؤشر يشير إلى قيمة CoAP
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageAttachProxyUriOption

otError otCoapMessageAppendProxyUriOption(
  otMessage *aMessage,
  const char *aUriPath
)

تُرفِق خيار معرِّف الموارد المنتظم (Uri) للخادم الوكيل.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aUriPath
مؤشر يؤدي إلى سلسلة تم إنهاؤها فارغة (NULL).
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageInterstitialUintOption

otError otCoapMessageAppendUintOption(
  otMessage *aMessage,
  uint16_t aNumber,
  uint32_t aValue
)

تُرفِق هذه الإضافة خيار CoAP لعدد صحيح غير مُوقَّع، كما هو محدَّد في https://tools.ietf.org/html/RFC7252#section-3.2.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aNumber
رقم خيار CoAP
[in] aValue
قيمة العدد الصحيح غير الموقعة لخيار CoAP
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.
راجِع أيضًا:
otCoapMessageGetOptionUintValue

otCoapMessageInterstitialUriPathOptions

otError otCoapMessageAppendUriPathOptions(
  otMessage *aMessage,
  const char *aUriPath
)

ترفق خيار مسار معرّف الموارد المنتظم (URI).

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aUriPath
مؤشر يؤدي إلى سلسلة تم إنهاؤها فارغة (NULL).
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageComplianceUriQueryOption

otError otCoapMessageAppendUriQueryOption(
  otMessage *aMessage,
  const char *aUriQuery
)

لإلحاق خيار واحد لمعرّف Uri-Query.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aUriQuery
مؤشر يؤدي إلى سلسلة تم إنهاؤها "فارغ"، والذي يجب أن يحتوي على زوج "مفتاح=قيمة" واحد.
إرجاع القيم
OT_ERROR_NONE
تم إلحاق الخيار بنجاح.
OT_ERROR_INVALID_ARGS
نوع الخيار غير مساوٍ لنوع الخيار الأخير أو أكبر منه.
OT_ERROR_NO_BUFS
يتجاوز طول الخيار حجم المخزن المؤقت.

otCoapMessageCodeToString

const char * otCoapMessageCodeToString(
  const otMessage *aMessage
)

تعرض رمز CoAP كسلسلة يمكن للإنسان فهمها.

تعرض علامة @ رمز CoAP كسلسلة.

التفاصيل
المَعلمات
[in] aMessage
مؤشر لرسالة CoAP

otCoapMessageGenerateToken

void otCoapMessageGenerateToken(
  otMessage *aMessage,
  uint8_t aTokenLength
)

تحدِّد هذه السياسة طول الرمز المميّز وترتيب قيمته عشوائيًا.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aTokenLength
طول الرمز المميز المطلوب تعيينه.

otCoapMessageGetCode

otCoapCode otCoapMessageGetCode(
  const otMessage *aMessage
)

تعرِض قيمة الرمز.

التفاصيل
المَعلمات
[in] aMessage
مؤشر لرسالة CoAP
المرتجعات
تمثّل هذه السمة قيمة الرمز.

otCoapMessageGetMessageId

uint16_t otCoapMessageGetMessageId(
  const otMessage *aMessage
)

تعرض قيمة معرّف الرسالة.

التفاصيل
المَعلمات
[in] aMessage
مؤشر لرسالة CoAP
المرتجعات
قيمة معرّف الرسالة.

otCoapMessageGetToken

const uint8_t * otCoapMessageGetToken(
  const otMessage *aMessage
)

تعرض مؤشرًا إلى قيمة الرمز المميز.

التفاصيل
المَعلمات
[in] aMessage
مؤشر لرسالة CoAP
المرتجعات
مؤشر يشير إلى قيمة الرمز المميّز

otCoapMessageGetTokenLength

uint8_t otCoapMessageGetTokenLength(
  const otMessage *aMessage
)

تعرض طول الرمز المميّز.

التفاصيل
المَعلمات
[in] aMessage
مؤشر لرسالة CoAP
المرتجعات
طول الرمز المميّز.

otCoapMessageGetType

otCoapType otCoapMessageGetType(
  const otMessage *aMessage
)

تعرض قيمة "Type" (النوع).

التفاصيل
المَعلمات
[in] aMessage
مؤشر لرسالة CoAP
المرتجعات
قيمة "Type" (النوع).

otCoapMessageInit

void otCoapMessageInit(
  otMessage *aMessage,
  otCoapType aType,
  otCoapCode aCode
)

تهيئة عنوان CoAP.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر يشير إلى رسالة CoAP للتهيئة.
[in] aType
نوع رسالة CoAP
[in] aCode
رمز رسالة CoAP

otCoapMessageInitResponse

otError otCoapMessageInitResponse(
  otMessage *aResponse,
  const otMessage *aRequest,
  otCoapType aType,
  otCoapCode aCode
)

يؤدي هذا الخيار إلى إعداد رسالة ردّ.

التفاصيل
المَعلمات
[in,out] aResponse
مؤشر يؤدّي إلى رسالة الردّ CoAP
[in] aRequest
مؤشر لرسالة طلب CoAP
[in] aType
نوع رسالة CoAP
[in] aCode
رمز رسالة CoAP
إرجاع القيم
OT_ERROR_NONE
تم إعداد رسالة الرد بنجاح.
OT_ERROR_NO_BUFS
هناك مخازن مؤقتة للرسائل غير كافية لتهيئة رسالة الرد.

otCoapMessageSetCode

void otCoapMessageSetCode(
  otMessage *aMessage,
  otCoapCode aCode
)

تحدِّد قيمة الرمز.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر يشير إلى رسالة CoAP للتهيئة.
[in] aCode
رمز رسالة CoAP

otCoapMessageSetPayloadMarker

otError otCoapMessageSetPayloadMarker(
  otMessage *aMessage
)

تضيف علامة حمولة البيانات التي تشير إلى بداية الحمولة إلى عنوان CoAP.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
إرجاع القيم
OT_ERROR_NONE
تمّت إضافة علامة الحمولة بنجاح.
OT_ERROR_NO_BUFS
تتجاوز علامة حمولة العنوان حجم المخزن المؤقت.

otCoapMessageSetToken

otError otCoapMessageSetToken(
  otMessage *aMessage,
  const uint8_t *aToken,
  uint8_t aTokenLength
)

تحدِّد قيمة الرمز المميّز وطوله في أحد العناوين.

التفاصيل
المَعلمات
[in,out] aMessage
مؤشر لرسالة CoAP
[in] aToken
مؤشر يشير إلى قيمة الرمز المميّز
[in] aTokenLength
طول aToken.
إرجاع القيم
OT_ERROR_NONE
تم ضبط قيمة الرمز المميّز بنجاح.
OT_ERROR_NO_BUFS
الموارد الاحتياطية غير كافية لضبط قيمة الرمز المميز.

رسالة otCoapNewMessage

otMessage * otCoapNewMessage(
  otInstance *aInstance,
  const otMessageSettings *aSettings
)

ينشئ رسالة CoAP جديدة.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aSettings
مؤشر يؤدي إلى إعدادات الرسالة أو NULL لضبط الإعدادات التلقائية
المرتجعات
مؤشر إلى المخزن المؤقت للرسائل أو فارغ في حال عدم توفر أي مخازن مؤقتة للرسائل أو عدم صلاحية المعلمات.

otCoapOptionIteratorGetFirstOption

const otCoapOption * otCoapOptionIteratorGetFirstOption(
  otCoapOptionIterator *aIterator
)

تعرض المؤشر على الخيار الأول.

التفاصيل
المَعلمات
[in,out] aIterator
مؤشر يؤدّي إلى مكرّر خيار رسالة CoAP
المرتجعات
مؤشر ما يؤدي إلى الخيار الأول. في حال عدم توفّر أي خيار، سيتم عرض المؤشر "فارغ" (NULL).

otCoapOptionIteratorGetFirstOptionMatching

const otCoapOption * otCoapOptionIteratorGetFirstOptionMatching(
  otCoapOptionIterator *aIterator,
  uint16_t aOption
)

لعرض مؤشر إلى الخيار الأول الذي يطابق رقم الخيار المحدد.

التفاصيل
المَعلمات
[in] aIterator
مؤشر يؤدّي إلى مكرّر خيار رسالة CoAP
[in] aOption
رقم الخيار المطلوب.
المرتجعات
مؤشر ما يؤدي إلى خيار المطابقة الأول في حال عدم توفّر أي خيار مطابقة، سيتم عرض المؤشر "فارغ" (NULL).

otCoapOptionIteratorGetNextOption

const otCoapOption * otCoapOptionIteratorGetNextOption(
  otCoapOptionIterator *aIterator
)

لعرض المؤشر إلى الخيار التالي.

التفاصيل
المَعلمات
[in,out] aIterator
مؤشر يؤدّي إلى مكرّر خيار رسالة CoAP
المرتجعات
مؤشر ماوس يؤدي إلى الخيار التالي. في حال عدم توفر المزيد من الخيارات، سيتم عرض المؤشر "فارغ" (NULL).

otCoapOptionIteratorGetNextOptionMatching

const otCoapOption * otCoapOptionIteratorGetNextOptionMatching(
  otCoapOptionIterator *aIterator,
  uint16_t aOption
)

لعرض مؤشر إلى الخيار التالي الذي يطابق رقم الخيار المحدد.

التفاصيل
المَعلمات
[in] aIterator
مؤشر يؤدّي إلى مكرّر خيار رسالة CoAP
[in] aOption
رقم الخيار المطلوب.
المرتجعات
مؤشر ماوس يؤدي إلى خيار المطابقة التالي. في حال عدم توفّر خيار مطابقة آخر، سيتم عرض المؤشر "فارغ" (NULL).

otCoapOptionIteratorGetOptionUintValue

otError otCoapOptionIteratorGetOptionUintValue(
  otCoapOptionIterator *aIterator,
  uint64_t *aValue
)

تملأ قيمة الخيار الحالي في aValue على افتراض أنّ القيمة الحالية هي عدد صحيح غير مُوقَّع تم ترميزه وفق https://tools.ietf.org/html/RFC7252#section-3.2.

التفاصيل
المَعلمات
[in,out] aIterator
مؤشر يؤدّي إلى مكرّر خيار رسالة CoAP
[out] aValue
يشير إلى عدد صحيح غير موقَّع لتلقّي قيمة الخيار.
إرجاع القيم
OT_ERROR_NONE
تم ملء القيمة بنجاح.
OT_ERROR_NOT_FOUND
ما مِن خيار حالي.
OT_ERROR_NO_BUFS
القيمة طويلة جدًا بحيث لا يمكن تضمينها في uint64_t.
يمكنك أيضًا الاطّلاع على:
otCoapMessageInterstitialUintOption

otCoapOptionIteratorGetOptionValue

otError otCoapOptionIteratorGetOptionValue(
  otCoapOptionIterator *aIterator,
  void *aValue
)

لتعبئة قيمة الخيار الحالية في aValue.

التفاصيل
المَعلمات
[in,out] aIterator
مؤشر يؤدّي إلى مكرّر خيار رسالة CoAP
[out] aValue
مؤشر إلى مورد احتياطي لتلقي قيمة الخيار.
إرجاع القيم
OT_ERROR_NONE
تم ملء القيمة بنجاح.
OT_ERROR_NOT_FOUND
ما مِن خيار حالي.

otCoapOptionIteratorInit

otError otCoapOptionIteratorInit(
  otCoapOptionIterator *aIterator,
  const otMessage *aMessage
)

تقوم بإعداد مكرر للخيارات في الرسالة المقدمة.

التفاصيل
المَعلمات
[in,out] aIterator
مؤشر يؤدّي إلى مكرّر خيار رسالة CoAP
[in] aMessage
مؤشر لرسالة CoAP
إرجاع القيم
OT_ERROR_NONE
تم الإعداد بنجاح.
OT_ERROR_PARSE
حالة الرسالة غير متسقة.

otCoapRemoveBlockWiseResource

void otCoapRemoveBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

يزيل مورد الحظر من خادم CoAP.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aResource
مؤشر إلى المورد.

otCoapRemoveResource

void otCoapRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

إزالة مورد من خادم CoAP

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aResource
مؤشر إلى المورد.

otCoapSendRequest

otError otCoapSendRequest(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  otCoapResponseHandler aHandler,
  void *aContext
)

إرسال طلب CoAP

إذا كان من المتوقّع الاستجابة لطلب معيّن، يجب تقديم معلومات السياق والوظيفة ذات الصلة. وإذا لم تكن هناك استجابة متوقعة، يجب أن تكون هذه الوسيطات مؤشرات فارغة (NULL).

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aMessage
مؤشر الرسالة المطلوب إرسالها
[in] aMessageInfo
مؤشر يؤدي إلى معلومات الرسالة المرتبطة بـ "aMessage"
[in] aHandler
مؤشر دالة يجب استدعاؤه عند استقبال الاستجابة أو انتهاء المهلة.
[in] aContext
مؤشر إلى معلومات سياق عشوائية قد تكون فارغة (NULL) إذا لم يتم استخدامها.
إرجاع القيم
OT_ERROR_NONE
تم إرسال رسالة CoAP بنجاح.
OT_ERROR_NO_BUFS
تعذّر تخصيص بيانات إعادة الإرسال.

otCoapSendRequestBlockWise

otError otCoapSendRequestBlockWise(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  otCoapResponseHandler aHandler,
  void *aContext,
  otCoapBlockwiseTransmitHook aTransmitHook,
  otCoapBlockwiseReceiveHook aReceiveHook
)

يتم إرسال طلب CoAP من ناحية الحظر.

يتوفر عندما يتم تمكين تهيئة OPENthread_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

إذا كان من المتوقّع الاستجابة لطلب معيّن، يجب تقديم معلومات السياق والوظيفة ذات الصلة. إذا كان من المتوقع أن تكون الاستجابة من ناحية الحظر، يجب تقديم دالة الجذب المناسبة. وإذا لم تكن هناك استجابة متوقعة، يجب أن تكون هذه الوسيطات مؤشرات فارغة (NULL).

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aMessage
مؤشر الرسالة المطلوب إرسالها
[in] aMessageInfo
مؤشر يؤدي إلى معلومات الرسالة المرتبطة بـ "aMessage"
[in] aHandler
مؤشر دالة يجب استدعاؤه عند استقبال الاستجابة أو انتهاء المهلة.
[in] aContext
مؤشر إلى معلومات سياق عشوائية قد تكون فارغة (NULL) إذا لم يتم استخدامها.
[in] aTransmitHook
مؤشر يؤدي إلى دالة جذب لإجراء النقل الصادر من نوع الكتلة.
[in] aReceiveHook
مؤشر يؤدي إلى دالة جذب لنقل البيانات الواردة من الكتلة الأصلية
إرجاع القيم
OT_ERROR_NONE
تم إرسال رسالة CoAP بنجاح.
OT_ERROR_NO_BUFS
تعذّر تخصيص بيانات إعادة الإرسال.

otCoapSendRequestBlockWiseWithParameters

otError otCoapSendRequestBlockWiseWithParameters(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  otCoapResponseHandler aHandler,
  void *aContext,
  const otCoapTxParameters *aTxParameters,
  otCoapBlockwiseTransmitHook aTransmitHook,
  otCoapBlockwiseReceiveHook aReceiveHook
)

تتيح هذه الطريقة إرسال طلب CoAP من حيث الحظر باستخدام مَعلمات إرسال مخصَّصة.

يتوفر عندما يتم تمكين تهيئة OPENthread_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

إذا كان من المتوقّع الاستجابة لطلب معيّن، يجب تقديم معلومات السياق والوظيفة ذات الصلة. إذا كان من المتوقع أن تكون الاستجابة من ناحية الحظر، يجب تقديم دالة الجذب المناسبة. وإذا لم تكن هناك استجابة متوقعة، يجب أن تكون هذه الوسيطات مؤشرات فارغة (NULL).

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aMessage
مؤشر الرسالة المطلوب إرسالها
[in] aMessageInfo
مؤشر يؤدي إلى معلومات الرسالة المرتبطة بـ "aMessage"
[in] aHandler
مؤشر دالة يجب استدعاؤه عند استقبال الاستجابة أو انتهاء المهلة.
[in] aContext
مؤشر إلى معلومات سياق عشوائية قد تكون فارغة (NULL) إذا لم يتم استخدامها.
[in] aTxParameters
مؤشر لمعلمات الإرسال لهذا الطلب. استخدم "فارغ" للإعدادات التلقائية.
[in] aTransmitHook
مؤشر يؤدي إلى دالة جذب لإجراء النقل الصادر من نوع الكتلة.
[in] aReceiveHook
مؤشر يؤدي إلى دالة جذب لنقل البيانات الواردة من الكتلة الأصلية
إرجاع القيم
OT_ERROR_NONE
تم إرسال رسالة CoAP بنجاح.
OT_ERROR_NO_BUFS
تعذّر تخصيص بيانات إعادة الإرسال.
OT_ERROR_INVALID_ARGS
تم تقديم وسيطات غير صالحة.

otCoapSendRequestWithParameters

otError otCoapSendRequestWithParameters(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  otCoapResponseHandler aHandler,
  void *aContext,
  const otCoapTxParameters *aTxParameters
)

تتيح إرسال طلب CoAP مع مَعلمات إرسال مخصّصة.

إذا كان من المتوقّع الاستجابة لطلب معيّن، يجب تقديم معلومات السياق والوظيفة ذات الصلة. وإذا لم تكن هناك استجابة متوقعة، يجب أن تكون هذه الوسيطات مؤشرات فارغة (NULL).

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aMessage
مؤشر الرسالة المطلوب إرسالها
[in] aMessageInfo
مؤشر يؤدي إلى معلومات الرسالة المرتبطة بـ "aMessage"
[in] aHandler
مؤشر دالة يجب استدعاؤه عند استقبال الاستجابة أو انتهاء المهلة.
[in] aContext
مؤشر إلى معلومات سياق عشوائية قد تكون فارغة (NULL) إذا لم يتم استخدامها.
[in] aTxParameters
مؤشر لمعلمات الإرسال لهذا الطلب. استخدم "فارغ" للإعدادات التلقائية. وإلا، يجب أن تستوفي المعلمات المقدمة الشروط التالية:
  1. لا تزيد قيمة mMaxRetransmit عن OT_COAP_MAX_RETRANSMIT.
  2. يجب ألا تكون قيمة mAckSharedFactorNumerator / mAckSpamFactorDenominator أقل من 1.0.
  3. يجب ألا تتجاوز مدة عمر التبادل المحسوب uint32_t.
إرجاع القيم
OT_ERROR_NONE
تم إرسال رسالة CoAP بنجاح.
OT_ERROR_NO_BUFS
تعذّر تخصيص بيانات إعادة الإرسال.
OT_ERROR_INVALID_ARGS
تم تقديم وسيطات غير صالحة.

otCoapSendResponse

otError otCoapSendResponse(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo
)

لإرسال استجابة CoAP من الخادم.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aMessage
مؤشر يشير إلى ردّ CoAP للإرسال
[in] aMessageInfo
مؤشر يؤدي إلى معلومات الرسالة المرتبطة بـ "aMessage"
إرجاع القيم
OT_ERROR_NONE
تمت إضافة رسالة استجابة CoAP إلى قائمة الانتظار بنجاح.
OT_ERROR_NO_BUFS
الموارد الاحتياطية المتاحة غير كافية لإرسال استجابة CoAP.

otCoapSendResponseBlockWise

otError otCoapSendResponseBlockWise(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  void *aContext,
  otCoapBlockwiseTransmitHook aTransmitHook
)

يرسل استجابة CoAP من الخادم بالحظر.

يتوفر عندما يتم تمكين تهيئة OPENthread_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aMessage
مؤشر يشير إلى ردّ CoAP للإرسال
[in] aMessageInfo
مؤشر يؤدي إلى معلومات الرسالة المرتبطة بـ "aMessage"
[in] aContext
مؤشر إلى معلومات سياق عشوائية قد تكون فارغة (NULL) إذا لم يتم استخدامها.
[in] aTransmitHook
مؤشر يؤدي إلى دالة جذب لإجراء النقل الصادر من نوع الكتلة.
إرجاع القيم
OT_ERROR_NONE
تمت إضافة رسالة استجابة CoAP إلى قائمة الانتظار بنجاح.
OT_ERROR_NO_BUFS
الموارد الاحتياطية المتاحة غير كافية لإرسال استجابة CoAP.

otCoapSendResponseBlockWiseWithParameters

otError otCoapSendResponseBlockWiseWithParameters(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  const otCoapTxParameters *aTxParameters,
  void *aContext,
  otCoapBlockwiseTransmitHook aTransmitHook
)

يرسل هذا الخيار استجابة CoAP من حيث الكتل من الخادم باستخدام مَعلمات إرسال مخصّصة.

يتوفر عندما يتم تمكين تهيئة OPENthread_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aMessage
مؤشر يشير إلى ردّ CoAP للإرسال
[in] aMessageInfo
مؤشر يؤدي إلى معلومات الرسالة المرتبطة بـ "aMessage"
[in] aTxParameters
مؤشر لمعلمات الإرسال لهذه الاستجابة استخدم "فارغ" للإعدادات التلقائية.
[in] aContext
مؤشر إلى معلومات سياق عشوائية قد تكون فارغة (NULL) إذا لم يتم استخدامها.
[in] aTransmitHook
مؤشر يؤدي إلى دالة جذب لإجراء النقل الصادر من نوع الكتلة.
إرجاع القيم
OT_ERROR_NONE
تمت إضافة رسالة استجابة CoAP إلى قائمة الانتظار بنجاح.
OT_ERROR_NO_BUFS
الموارد الاحتياطية المتاحة غير كافية لإرسال استجابة CoAP.
OT_ERROR_INVALID_ARGS
تم تقديم وسيطات غير صالحة.

otCoapSendResponseWithParameters

otError otCoapSendResponseWithParameters(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  const otCoapTxParameters *aTxParameters
)

يرسل استجابة CoAP من الخادم مع معلمات إرسال مخصصة.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aMessage
مؤشر يشير إلى ردّ CoAP للإرسال
[in] aMessageInfo
مؤشر يؤدي إلى معلومات الرسالة المرتبطة بـ "aMessage"
[in] aTxParameters
مؤشر لمعلمات الإرسال لهذه الاستجابة استخدم "فارغ" للإعدادات التلقائية.
إرجاع القيم
OT_ERROR_NONE
تمت إضافة رسالة استجابة CoAP إلى قائمة الانتظار بنجاح.
OT_ERROR_NO_BUFS
الموارد الاحتياطية المتاحة غير كافية لإرسال استجابة CoAP.
OT_ERROR_INVALID_ARGS
تم تقديم وسيطات غير صالحة.

otCoapSetDefaultHandler

void otCoapSetDefaultHandler(
  otInstance *aInstance,
  otCoapRequestHandler aHandler,
  void *aContext
)

يضبط المعالج التلقائي لطلبات CoAP التي لم تتم معالجتها.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aHandler
مؤشر دالة سيتم استدعاؤه عند وصول طلب لم تتم معالجته.
[in] aContext
مؤشر إلى معلومات سياق عشوائية قد تكون فارغة (NULL) إذا لم يتم استخدامها.

otCoapStart

otError otCoapStart(
  otInstance *aInstance,
  uint16_t aPort
)

لتشغيل خادم CoAP.

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
[in] aPort
منفذ UDP المحلي المطلوب الربط به.
إرجاع القيم
OT_ERROR_NONE
تم بدء تشغيل خادم CoAP بنجاح.
OT_ERROR_FAILED
تعذّر بدء خادم CoAP.

خدمة otCoapStop

otError otCoapStop(
  otInstance *aInstance
)

إيقاف خادم CoAP

التفاصيل
المَعلمات
[in] aInstance
مؤشر إلى مثيل OpenThread
إرجاع القيم
OT_ERROR_NONE
تم إيقاف خادم CoAP بنجاح.

وحدات ماكرو

OT_COAP_CODE

 OT_COAP_CODE ((((c)&0x7) << 5) | ((d)&0x1f))

ماكرو مساعد لتحديد قيم رمز CoAP

الوقت الإضافي_COAP_DEFAULT_TOKEN_LENGTH

 OT_COAP_DEFAULT_TOKEN_LENGTH 2

الطول التلقائي للرمز المميّز.

وقت إضافي للدورة التدريبية COAP_MAX_RETRANSMIT

 OT_COAP_MAX_RETRANSMIT 20

الحد الأقصى لإعادة الإرسال متوافق مع OpenThread.

الوقت الإضافي_COAP_MAX_TOKEN_LENGTH

 OT_COAP_MAX_TOKEN_LENGTH 8

الحد الأقصى لطول الرمز المميز كما هو محدد (RFC 7252).

الوقت الإضافي

 OT_COAP_MIN_ACK_TIMEOUT 1000

الحد الأدنى لمهلة ACK بالمللي ثانية والمدعومة إلى OpenThread.

الوقت الإضافي_DEFAULT_COAP_PORT

 OT_DEFAULT_COAP_PORT 5683

منفذ CoAP التلقائي، على النحو المحدّد في RFC 7252

المراجِع

تنشأ المواضيع المرجعية لواجهة برمجة التطبيقات OpenThread من رمز المصدر المتاح على GitHub. للحصول على مزيد من المعلومات أو للمساهمة في مستنداتنا، يمكنك الاطّلاع على المراجع.