CoAP

יחידת הלימוד הזו כוללת פונקציות השולטות בתקשורת במסגרת CoAP.

סיכום

הפונקציות במודול הזה זמינות כשתכונת CoAP API (OPENTHREAD_CONFIG_COAP_API_ENABLE) מופעלת.

ספירות

otCoapBlockSzx טיפוסים בני מנייה (enum)
מעריכים של גודל בלוק 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))
}
טיפוסים בני מנייה (enum)
הערכים של CoAP Code.
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
}
טיפוסים בני מנייה (enum)
קודים של פורמט התוכן של 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
}
טיפוסים בני מנייה (enum)
מספרי אפשרויות של CoAP.
otCoapType{
  OT_COAP_TYPE_CONFIRMABLE = 0,
  OT_COAP_TYPE_NON_CONFIRMABLE = 1,
  OT_COAP_TYPE_ACKNOWLEDGMENT = 2,
  OT_COAP_TYPE_RESET = 3
}
טיפוסים בני מנייה (enum)
ערכי CoAP Type (מספר שלם ללא סימן 2 ביט).

הגדרות הקלדה

otCoapBlockSzx typedef
מעריכים של גודל בלוק CoAP.
otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength) typedef
המצביע מופעל כאשר מתקבלת הודעת CoAP עם אפשרות העברה מסוג חסימה.
otCoapBlockwiseResource typedef
מייצג משאב CoAP עם העברות מסוג בלוק.
otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore) typedef
המצביע מופעל לפני שליחת הבלוק הבא בהעברה חכמה.
otCoapCode typedef
enum otCoapCode
הערכים של CoAP Code.
otCoapOption typedef
struct otCoapOption
מייצג אפשרות של CoAP.
otCoapOptionContentFormat typedef
קודים של פורמט התוכן של CoAP.
otCoapOptionIterator typedef
משמש כאיטרטור לאפשרויות של CoAP.
otCoapOptionType typedef
מספרי אפשרויות של CoAP.
otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
void(*
המצביע מופעל כשמתקבלת בקשת CoAP עם נתיב URI נתון.
otCoapResource typedef
מייצג משאב של CoAP.
otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) typedef
void(*
המצביע מופעל כאשר מתקבלת תגובה של CoAP או כאשר פג הזמן הקצוב לבקשה.
otCoapTxParameters typedef
מייצג את הפרמטרים של שידור CoAP.
otCoapType typedef
enum otCoapType
ערכי CoAP Type (מספר שלם ללא סימן 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)
הוספת אפשרות של Block1.
otCoapMessageAppendBlock2Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
הוספת אפשרות של Block2.
otCoapMessageAppendContentFormatOption(otMessage *aMessage, otCoapOptionContentFormat aContentFormat)
הפונקציה הזאת מצרפת את האפשרות CoAP של פורמט התוכן כפי שצוינה ב-https://tools.ietf.org/html/privacypolicy7252#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)
צירוף אפשרות של Proxy-Uri.
otCoapMessageAppendUintOption(otMessage *aMessage, uint16_t aNumber, uint32_t aValue)
הפונקציה הזאת מצרפת אפשרות CoAP של מספר שלם ללא חתימה, כפי שמפורט ב-https://tools.ietf.org/html/googleplay7252#section-3.2.
otCoapMessageAppendUriPathOptions(otMessage *aMessage, const char *aUriPath)
הפונקציה הזאת מצרפת אפשרות של נתיב URI.
otCoapMessageAppendUriQueryOption(otMessage *aMessage, const char *aUriQuery)
הפונקציה מצרפת אפשרות אחת של שאילתת URI.
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)
מחזירה את הערך 'סוג'.
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)
הוספה של סמן מטען ייעודי (payload) שמציין את תחילת המטען הייעודי (payload) לכותרת של 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/doubleclick7252#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
המדיניות מגדירה את ה-handler המשמש כברירת מחדל לבקשות 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 Code.

מאפיינים
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

אין תמיכה בשרת proxy.

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

app/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

app/exi: ["שיפור 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

app/json-patch+json: [RFC6902]

OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT

יישום/פורמט קישור: [RFC6690]

OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON

application/Merge-patch+json: [RFC7396]

OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM

app/octet-stream: [RFC2045][RFC2046]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR

application/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

app/senml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR

application/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

טקסט/רגיל; charset=utf-8: [RFC2046][RFC3676][RFC5147]

OT_COAP_OPTION_CONTENT_FORMAT_XML

app/xml: [RFC3023]

סוג otCoapOption

 otCoapOptionType

מספרי אפשרויות של CoAP.

מאפיינים
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

אם יש התאמה.

OT_COAP_OPTION_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

סכמה של שרת proxy.

OT_COAP_OPTION_PROXY_URI

Proxy-Uri.

OT_COAP_OPTION_SIZE1

גודל 1.

OT_COAP_OPTION_SIZE2

מידה2 (RFC7959)

OT_COAP_OPTION_URI_HOST

Uri-Host.

OT_COAP_OPTION_URI_PATH

נתיב URI.

OT_COAP_OPTION_URI_PORT

אורי-פורט.

OT_COAP_OPTION_URI_QUERY

URI-Query.

סוג otCoap

 otCoapType

ערכי CoAP Type (מספר שלם ללא סימן 2 ביט).

מאפיינים
OT_COAP_TYPE_ACKNOWLEDGMENT

אישור.

OT_COAP_TYPE_CONFIRMABLE

ניתן לאישור.

OT_COAP_TYPE_NON_CONFIRMABLE

לא ניתן לאישור.

OT_COAP_TYPE_RESET

איפוס.

הגדרות הקלדה

otCoapBlockSzx

enum otCoapBlockSzx otCoapBlockSzx

מעריכים של גודל בלוק CoAP.

otCoapBlockwiseReceiveHook

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
האורך הכולל בבייטים של המידע שהועבר (מציין אפשרות גודל 1 או גודל 2).
ערכי החזרה
OT_ERROR_NONE
קטע החסימה נשמר.
OT_ERROR_NO_BUFS
אין יותר זיכרון לאחסון בלוקים.
OT_ERROR_NO_FRAME_RECEIVED
חסר קטע חסימה.

otCoapBlockwise

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, קיים משא ומתן מחדש על גודל הבלוק של כל ה-Exchange. מומלץ לעשות זאת לאחר קבלת החסימה הראשונה, מאחר ששינויים שמתבצעים מאוחר יותר עלולים לגרום לבעיות בהטמעות אחרות של 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 Code.

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.

סוג otCoapOption

enum otCoapOptionType otCoapOptionType

מספרי אפשרויות של CoAP.

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
מפנה למאגר ההודעות שמכיל את התשובה. הערך NULL אם לא התקבלה תשובה.
[in] aMessageInfo
מצביעים עם פרטי ההודעה של aMessage. הערך NULL אם לא התקבלה תשובה.
[in] aResult
תוצאה של עסקת CoAP.
ערכי החזרה
OT_ERROR_NONE
התקבלה תשובה בהצלחה.
OT_ERROR_ABORT
עסקת CoAP אופסה על ידי עמית.
OT_ERROR_RESPONSE_TIMEOUT
לא התקבלה תגובה או אישור במהלך תקופת הזמן הקצוב לתפוגה.

פרמטרים של otCoapTx

struct otCoapTxParameters otCoapTxParameters

מייצג את הפרמטרים של שידור CoAP.

סוג otCoap

enum otCoapType otCoapType

ערכי CoAP Type (מספר שלם ללא סימן 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
חסימת מעריך גודל.
החזרות
ערך המעריך של הגודל בפועל.

otCoapMessageAppendBlock1Option

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

הוספת אפשרות של Block1.

פרטים
פרמטרים
[in,out] aMessage
מעבר להודעה של CoAP.
[in] aNum
מספר הבלוק הנוכחי.
[in] aMore
ערך בוליאני שמציין שיש לשלוח בלוקים נוספים.
[in] aSize
מעריך גודל הבלוק.
ערכי החזרה
OT_ERROR_NONE
האפשרות נוספה בהצלחה.
OT_ERROR_INVALID_ARGS
סוג האפשרות לא שווה לסוג האפשרות האחרון או גדול ממנו.
OT_ERROR_NO_BUFS
האורך של האפשרות חורג מגודל מאגר הנתונים הזמני.

otCoapMessageAppendBlock2Option

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
האורך של האפשרות חורג מגודל מאגר הנתונים הזמני.

otCoapMessageAppendContentFormatOption

otError otCoapMessageAppendContentFormatOption(
  otMessage *aMessage,
  otCoapOptionContentFormat aContentFormat
)

הפונקציה הזאת מצרפת את האפשרות CoAP של פורמט התוכן כפי שצוינה ב-https://tools.ietf.org/html/privacypolicy7252#page-92.

אם ההודעה כוללת מטען ייעודי (payload), חובה להפעיל אותו לפני שמגדירים את otCoapMessageSetPayloadMarker.

הפונקציה היא wrapper של נוחות סביב otCoapMessageAppendUintOption, ואם הקוד של סוג הפורמט הרצוי לא מופיע ב-otCoapOptionContentFormat, יש להשתמש בפונקציה הבסיסית הזו במקומה.

פרטים
פרמטרים
[in,out] aMessage
מעבר להודעה של CoAP.
[in] aContentFormat
אחד מפורמטים של תוכן המפורטים למעלה ב-otCoapOptionContentFormat.
ערכי החזרה
OT_ERROR_NONE
האפשרות נוספה בהצלחה.
OT_ERROR_INVALID_ARGS
סוג האפשרות לא שווה לסוג האפשרות האחרון או גדול ממנו.
OT_ERROR_NO_BUFS
האורך של האפשרות חורג מגודל מאגר הנתונים הזמני.

otCoapMessageAppendMaxAgeOption

otError otCoapMessageAppendMaxAgeOption(
  otMessage *aMessage,
  uint32_t aMaxAge
)

מצרף אפשרות של גיל מקסימלי.

פרטים
פרמטרים
[in,out] aMessage
מעבר להודעה של CoAP.
[in] aMaxAge
ערך הגיל המקסימלי.
ערכי החזרה
OT_ERROR_NONE
האפשרות נוספה בהצלחה.
OT_ERROR_INVALID_ARGS
סוג האפשרות לא שווה לסוג האפשרות האחרון או גדול ממנו.
OT_ERROR_NO_BUFS
האורך של האפשרות חורג מגודל מאגר הנתונים הזמני.

otCoapMessageAppendObserveOption

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

צירוף האפשרות 'תצפית'.

פרטים
פרמטרים
[in,out] aMessage
מעבר להודעה של CoAP.
[in] aObserve
בדיקת ערך השדה.
ערכי החזרה
OT_ERROR_NONE
האפשרות נוספה בהצלחה.
OT_ERROR_INVALID_ARGS
סוג האפשרות לא שווה לסוג האפשרות האחרון או גדול ממנו.
OT_ERROR_NO_BUFS
האורך של האפשרות חורג מגודל מאגר הנתונים הזמני.

otCoapMessageAppendOption

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
האורך של האפשרות חורג מגודל מאגר הנתונים הזמני.

otCoapMessageAppendProxyUriOption

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

צירוף אפשרות של Proxy-Uri.

פרטים
פרמטרים
[in,out] aMessage
מעבר להודעה של CoAP.
[in] aUriPath
מצביע למחרוזת שמסתיימת ב-NULL.
ערכי החזרה
OT_ERROR_NONE
האפשרות נוספה בהצלחה.
OT_ERROR_INVALID_ARGS
סוג האפשרות לא שווה לסוג האפשרות האחרון או גדול ממנו.
OT_ERROR_NO_BUFS
האורך של האפשרות חורג מגודל מאגר הנתונים הזמני.

otCoapMessageAppendUintOption

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

הפונקציה הזאת מצרפת אפשרות CoAP של מספר שלם ללא חתימה, כפי שמפורט ב-https://tools.ietf.org/html/googleplay7252#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

otCoapMessageAppendUriPathOptions

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
האורך של האפשרות חורג מגודל מאגר הנתונים הזמני.

otCoapMessageAppendUriQueryOption

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

הפונקציה מצרפת אפשרות אחת של שאילתת URI.

פרטים
פרמטרים
[in,out] aMessage
מעבר להודעה של CoAP.
[in] aUriQuery
מצביע למחרוזת שמסתיימת ב-NULL, שאמורה להכיל צמד אחד של מפתח=ערך.
ערכי החזרה
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.
החזרות
ערך Message ID (מזהה הודעה).

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
)

מחזירה את הערך 'סוג'.

פרטים
פרמטרים
[in] aMessage
מעבר להודעה של CoAP.
החזרות
הערך 'סוג'.

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
)

הוספה של סמן מטען ייעודי (payload) שמציין את תחילת המטען הייעודי (payload) לכותרת של CoAP.

פרטים
פרמטרים
[in,out] aMessage
מעבר להודעה של CoAP.
ערכי החזרה
OT_ERROR_NONE
סמן המטען הייעודי נוסף בהצלחה.
OT_ERROR_NO_BUFS
הסמן של המטען הייעודי (payload) בכותרת חורג מגודל מאגר הנתונים הזמני.

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 כדי לקבוע את הגדרות ברירת המחדל.
החזרות
מעבר למאגר הנתונים הזמני של ההודעות או למאגר 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/doubleclick7252#section-3.2.

פרטים
פרמטרים
[in,out] aIterator
מצביע לאיטרטור של אפשרות ההודעה ב-CoAP.
[out] aValue
הפניה למספר שלם ללא סימן כדי לקבל את ערך האפשרות.
ערכי החזרה
OT_ERROR_NONE
הערך מולאה בהצלחה.
OT_ERROR_NOT_FOUND
אין אפשרות כרגע.
OT_ERROR_NO_BUFS
הערך ארוך מדי מכדי להתאים ל-uint64_t.
למידע נוסף:
otCoapMessageAppendUintOption

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 מופעלת.

אם צפויה תגובה לבקשה, יש לספק את פרטי הפונקציה וההקשר הרלוונטיים. אם התשובה צפויה להיות מסוג חסימה, יש לספק פונקציית webhook המתאימה. אם לא צפויה תגובה, הארגומנטים צריכים להיות מצביעים מסוג 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 מופעלת.

אם צפויה תגובה לבקשה, יש לספק את פרטי הפונקציה וההקשר הרלוונטיים. אם התשובה צפויה להיות מסוג חסימה, יש לספק פונקציית webhook המתאימה. אם לא צפויה תגובה, הארגומנטים צריכים להיות מצביעים מסוג NULL.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aMessage
מצביע על ההודעה כדי לשלוח.
[in] aMessageInfo
מצביעים עם פרטי ההודעה שמשויכת ל-aMessage.
[in] aHandler
מצביע של פונקציה שייקרא בעת קבלת תגובה או זמן קצוב לתפוגה.
[in] aContext
הפניה לפרטי הקשר שרירותיים. אם לא נעשה בו שימוש, הערך יכול להיות NULL.
[in] aTxParameters
הפניה לפרמטרים של שידור עבור הבקשה הזו. יש להשתמש ב-NULL לברירות המחדל.
[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
הפניה לפרמטרים של שידור עבור הבקשה הזו. יש להשתמש ב-NULL לברירות המחדל. אחרת, הפרמטרים חייבים לעמוד בתנאים הבאים:
  1. הערך של mMaxRetransmit הוא עד OT_COAP_MAX_RETRANSMIT.
  2. הערך של mAckRandomFactorNumerator / mAckRandomFactorDenominator לא יכול להיות קטן מ-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
הפניה לפרמטרים של שידור עבור התגובה הזו. יש להשתמש ב-NULL לברירות המחדל.
[in] aContext
הפניה לפרטי הקשר שרירותיים. אם לא נעשה בו שימוש, הערך יכול להיות NULL.
[in] aTransmitHook
מצביע אל פונקציית הוק לצורך העברה יוצאת מסוג חסימה.
ערכי החזרה
OT_ERROR_NONE
הודעת התגובה של CoAP נוספה בהצלחה לתור.
OT_ERROR_NO_BUFS
אין מספיק מאגרי נתונים זמינים לשליחת התגובה של CoAP.
OT_ERROR_INVALID_ARGS
סופקו ארגומנטים לא חוקיים.

otCoapSendAddressWithParameters

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

שולח תגובת CoAP מהשרת עם פרמטרים מותאמים אישית של שידור.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aMessage
קישור לתשובה של CoAP לשליחה.
[in] aMessageInfo
מצביעים עם פרטי ההודעה שמשויכת ל-aMessage.
[in] aTxParameters
הפניה לפרמטרים של שידור עבור התגובה הזו. יש להשתמש ב-NULL לברירות המחדל.
ערכי החזרה
OT_ERROR_NONE
הודעת התגובה של CoAP נוספה בהצלחה לתור.
OT_ERROR_NO_BUFS
אין מספיק מאגרי נתונים זמינים לשליחת התגובה של CoAP.
OT_ERROR_INVALID_ARGS
סופקו ארגומנטים לא חוקיים.

otCoapSetDefaultHandler

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

המדיניות מגדירה את ה-handler המשמש כברירת מחדל לבקשות 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.

OT_COAP_DEFAULT_TOKEN_LENGTH

 OT_COAP_DEFAULT_TOKEN_LENGTH 2

ברירת המחדל של אורך האסימון.

OT_COAP_MAX_RETRANSMIT

 OT_COAP_MAX_RETRANSMIT 20

שידור חוזר מקסימלי נתמך על ידי OpenThread.

OT_COAP_MAX_TOKEN_LENGTH

 OT_COAP_MAX_TOKEN_LENGTH 8

אורך האסימון המקסימלי כפי שצוין (RFC 7252).

OT_COAP_MIN_ACK_TIMEOUT

 OT_COAP_MIN_ACK_TIMEOUT 1000

זמן קצוב לתפוגה מינימלי של ACK, באלפיות השנייה שנתמך על ידי OpenThread.

OT_DEFAULT_COAP_PORT

 OT_DEFAULT_COAP_PORT 5683

יציאת ברירת המחדל של CoAP, כפי שמצוין ב-RFC 7252.

משאבים

נושאי העזר של OpenThread API מגיעים מקוד המקור, שזמין ב-GitHub. אפשר לקרוא מידע נוסף או לתרום למסמכי התיעוד שלנו במקורות המידע.