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
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 (จำนวนเต็มที่ไม่มีเครื่องหมาย 2 บิต)

Typedef

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
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-Path ที่ระบุ
otCoapResource Typedef
แสดงทรัพยากร CoAP
otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) Typedef
void(*
ระบบจะเรียกใช้ตัวชี้เมื่อได้รับการตอบกลับของ CoAP หรือเมื่อคำขอหมดเวลา
otCoapTxParameters Typedef
แสดงพารามิเตอร์การส่งสัญญาณ CoAP
otCoapType Typedef
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 Block ให้เป็นขนาดบล็อกจริง
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/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)
เพิ่มตัวเลือก Proxy-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-Path
otCoapMessageAppendUriQueryOption(otMessage *aMessage, const char *aUriQuery)
เพิ่มตัวเลือก Uri-Query 1 รายการต่อท้าย
otCoapMessageCodeToString(const otMessage *aMessage)
const char *
แสดงผล CoAP Code เป็นสตริงที่มนุษย์อ่านได้
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

รหัส otCoap

 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

แอปพลิเคชัน/coap-group+json: [RFC7390]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT

แอปพลิเคชัน/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

แอปพลิเคชัน/คีย์ cose: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET

ชุดแอปพลิเคชัน/คีย์รหัส: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC

แอปพลิเคชัน/cose; cose-type="cose-mac": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0

แอปพลิเคชัน/cose; cose-type="cose-mac0": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN

แอปพลิเคชัน/cose; cose-type="cose-sign": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1

แอปพลิเคชัน/cose; cose-type="cose-sign1": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_CWT

แอปพลิเคชัน/CWT: [RFC8392]

OT_COAP_OPTION_CONTENT_FORMAT_EXI

แอปพลิเคชัน/exi: ["Efficient XML Interchange (EXI) Format 1.0 (Second Edition)", กุมภาพันธ์ 2014]

OT_COAP_OPTION_CONTENT_FORMAT_JSON

แอปพลิเคชัน/json: [RFC7159]

OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON

แอปพลิเคชัน/json-patch+json: [RFC6902]

OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT

แอปพลิเคชัน/รูปแบบลิงก์: [RFC6690]

OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON

แอปพลิเคชัน/Merge-patch+json: [RFC7396]

OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM

แอปพลิเคชัน/สตรีมอ็อกเท็ต: [RFC2045][RFC2046]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR

แอปพลิเคชัน/Senml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI

แอปพลิเคชัน/senml-exi: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_JSON

แอปพลิเคชัน/senml+json: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_XML

แอปพลิเคชัน/senml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR

แอปพลิเคชัน/Sensml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_EXI

แอปพลิเคชัน/sensml-exi: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_JSON

แอปพลิเคชัน/sensml+json: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_XML

แอปพลิเคชัน/Sensml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_TEXT_PLAIN

ข้อความ/ข้อความธรรมดา charset=utf-8: [RFC2046][RFC3676][RFC5147]

OT_COAP_OPTION_CONTENT_FORMAT_XML

แอปพลิเคชัน/xml: [RFC3023]

ประเภทตัวเลือกของ otCoap

 otCoapOptionType

หมายเลขตัวเลือก CoAP

พร็อพเพอร์ตี้
OT_COAP_OPTION_ACCEPT

ยอมรับ

OT_COAP_OPTION_BLOCK1

บล็อก1 (RFC7959)

OT_COAP_OPTION_BLOCK2

บล็อก2 (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

Location-Path

OT_COAP_OPTION_LOCATION_QUERY

การค้นหาตำแหน่ง

OT_COAP_OPTION_MAX_AGE

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

ขนาด 2 (RFC7959)

OT_COAP_OPTION_URI_HOST

Uri-Host

OT_COAP_OPTION_URI_PATH

Uri-Path

OT_COAP_OPTION_URI_PORT

Uri-พอร์ต

OT_COAP_OPTION_URI_QUERY

URI-Query

ประเภท otCoap

 otCoapType

ค่าประเภท CoAP (จำนวนเต็มที่ไม่มีเครื่องหมาย 2 บิต)

พร็อพเพอร์ตี้
OT_COAP_TYPE_ACKNOWLEDGMENT

การรับทราบ

OT_COAP_TYPE_CONFIRMABLE

ยืนยันได้

OT_COAP_TYPE_NON_CONFIRMABLE

ยืนยันไม่ได้

OT_COAP_TYPE_RESET

รีเซ็ต

Typedef

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
ไม่มีกลุ่มการบล็อก

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

รหัส otCoap

enum otCoapCode otCoapCode

ค่ารหัส CoAP

ตัวเลือก otCoap

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

ประเภทตัวเลือกของ otCoap

enum otCoapOptionType otCoapOptionType

หมายเลขตัวเลือก CoAP

otCoapRequestHandler

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

ระบบจะเรียกตัวชี้เมื่อได้รับคำขอ CoAP ที่มี Uri-Path ที่ระบุ

รายละเอียด
พารามิเตอร์
[in] aContext
ตัวชี้ไปยังข้อมูลบริบทที่กำหนดเอง
[in] aMessage
ตัวชี้ไปยังข้อความ
[in] aMessageInfo
ตัวชี้เมาส์ไปที่ข้อมูลข้อความสำหรับ aMessage

ทรัพยากร otCoap

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

ประเภท otCoap

enum otCoapType otCoapType

ค่าประเภท CoAP (จำนวนเต็มที่ไม่มีเครื่องหมาย 2 บิต)

ฟังก์ชัน

OTCoapAddBlockWiseResource

void otCoapAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

เพิ่มทรัพยากรแบบบล็อกไปยังเซิร์ฟเวอร์ CoAP

รายละเอียด
พารามิเตอร์
[in] aInstance
ตัวชี้ไปยังอินสแตนซ์ OpenThread
[in] aResource
ตัวชี้ไปยังทรัพยากร

เพิ่มทรัพยากร otCoap

void otCoapAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

เพิ่มทรัพยากรไปยังเซิร์ฟเวอร์ CoAP

รายละเอียด
พารามิเตอร์
[in] aInstance
ตัวชี้ไปยังอินสแตนซ์ OpenThread
[in] aResource
ตัวชี้ไปยังทรัพยากร

otCoapBlockSizeFromExponent

uint16_t otCoapBlockSizeFromExponent(
  otCoapBlockSzx aSize
)

แปลงฟิลด์ SZX ของตัวเลือก CoAP Block ให้เป็นขนาดบล็อกจริง

รายละเอียด
พารามิเตอร์
[in] aSize
เลขชี้กำลังขนาดบล็อก
การส่งคืน
ค่าเลขชี้กำลังขนาดจริง

ตัวเลือก otCoapMessageAppendBlock1

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/rfc7252#page-92

ระบบจะต้องเรียกใช้ไฟล์นี้ก่อนตั้งค่า 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
ค่า Max-Age
ผลลัพธ์
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
ตัวชี้ไปยังสตริงที่มีการยุติค่าว่าง
ผลลัพธ์
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/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

ตัวเลือก otCoapMessageAppendUriPath

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

เพิ่มตัวเลือก Uri-Path

รายละเอียด
พารามิเตอร์
[in,out] aMessage
ตัวชี้ไปยังข้อความ CoAP
[in] aUriPath
ตัวชี้ไปยังสตริงที่มีการยุติค่าว่าง
ผลลัพธ์
OT_ERROR_NONE
ต่อท้ายตัวเลือกนี้เรียบร้อยแล้ว
OT_ERROR_INVALID_ARGS
ประเภทตัวเลือกไม่เท่ากับหรือมากกว่าประเภทตัวเลือกสุดท้าย
OT_ERROR_NO_BUFS
ตัวเลือกมีความยาวเกินขนาดบัฟเฟอร์

otCoapMessageAppendUriQueryOption

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

เพิ่มตัวเลือก Uri-Query 1 รายการต่อท้าย

รายละเอียด
พารามิเตอร์
[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 Code เป็นสตริงที่มนุษย์อ่านได้

@ แสดงผล CoAP Code เป็นสตริง

รายละเอียด
พารามิเตอร์
[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
การส่งคืน
ค่าประเภท

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 เพื่อตั้งค่าเริ่มต้น
การส่งคืน
ตัวชี้ไปยังบัฟเฟอร์ข้อความหรือค่า 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
การส่งคืน
ตัวชี้ไปยังตัวเลือกถัดไป หากไม่มีตัวเลือกอื่นแสดงตัวชี้เป็นค่าว่างอยู่

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
โปรดดู
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

หากการตอบสนองคําขอคาดหวังได้ ควรระบุฟังก์ชันและข้อมูลบริบทที่เกี่ยวข้อง หากคาดว่าการตอบกลับจะเป็นแบบบล็อก คุณควรระบุฟังก์ชัน hook ที่เกี่ยวข้อง ถ้าไม่มีการตอบสนอง อาร์กิวเมนต์เหล่านี้ควรเป็นตัวชี้ NULL

รายละเอียด
พารามิเตอร์
[in] aInstance
ตัวชี้ไปยังอินสแตนซ์ OpenThread
[in] aMessage
ตัวชี้ไปยังข้อความที่จะส่ง
[in] aMessageInfo
ตัวชี้ไปยังข้อมูลข้อความที่เชื่อมโยงกับ aMessage
[in] aHandler
ตัวชี้ฟังก์ชันที่จะถูกเรียกเมื่อมีการรับการตอบสนองหรือระยะหมดเวลา
[in] aContext
ตัวชี้ไปยังข้อมูลบริบทที่กำหนดเอง ค่าอาจเป็น NULL หากไม่ได้นำไปใช้
[in] aTransmitHook
ตัวชี้ไปยังฟังก์ชัน hook สำหรับการโอนข้อมูลแบบบล็อกขาออก
[in] aReceiveHook
ตัวชี้ไปยังฟังก์ชัน hook สำหรับการโอนบล็อกตามบล็อกขาเข้า
ผลลัพธ์
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

หากการตอบสนองคําขอคาดหวังได้ ควรระบุฟังก์ชันและข้อมูลบริบทที่เกี่ยวข้อง หากคาดว่าการตอบกลับจะเป็นแบบบล็อก คุณควรระบุฟังก์ชัน hook ที่เกี่ยวข้อง ถ้าไม่มีการตอบสนอง อาร์กิวเมนต์เหล่านี้ควรเป็นตัวชี้ NULL

รายละเอียด
พารามิเตอร์
[in] aInstance
ตัวชี้ไปยังอินสแตนซ์ OpenThread
[in] aMessage
ตัวชี้ไปยังข้อความที่จะส่ง
[in] aMessageInfo
ตัวชี้ไปยังข้อมูลข้อความที่เชื่อมโยงกับ aMessage
[in] aHandler
ตัวชี้ฟังก์ชันที่จะถูกเรียกเมื่อมีการรับการตอบสนองหรือระยะหมดเวลา
[in] aContext
ตัวชี้ไปยังข้อมูลบริบทที่กำหนดเอง ค่าอาจเป็น NULL หากไม่ได้นำไปใช้
[in] aTxParameters
ตัวชี้ไปยังพารามิเตอร์การส่งสำหรับคำขอนี้ ใช้ NULL เป็นค่าเริ่มต้น
[in] aTransmitHook
ตัวชี้ไปยังฟังก์ชัน hook สำหรับการโอนข้อมูลแบบบล็อกขาออก
[in] aReceiveHook
ตัวชี้ไปยังฟังก์ชัน hook สำหรับการโอนบล็อกตามบล็อกขาเข้า
ผลลัพธ์
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 / mAckRandomFactorDedicateor ต้องไม่ต่ำกว่า 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
ตัวชี้ไปยังฟังก์ชัน hook สำหรับการโอนข้อมูลแบบบล็อกขาออก
ผลลัพธ์
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
ตัวชี้ไปยังฟังก์ชัน hook สำหรับการโอนข้อมูลแบบบล็อกขาออก
ผลลัพธ์
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
ตัวชี้ไปยังพารามิเตอร์การส่งสำหรับการตอบสนองนี้ ใช้ NULL เป็นค่าเริ่มต้น
ผลลัพธ์
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 Code

OT_COAP_DEFAULT_TOKEN_LENGTH

 OT_COAP_DEFAULT_TOKEN_LENGTH 2

ความยาวโทเค็นเริ่มต้น

โอนซ้ำต่อครั้ง COAP_MAX_

 OT_COAP_MAX_RETRANSMIT 20

การส่งเงินสูงสุดที่รองรับโดย OpenThread

ต่อเวลา 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

 OT_DEFAULT_COAP_PORT 5683

พอร์ต CoAP เริ่มต้นตามที่ระบุไว้ใน RFC 7252

แหล่งข้อมูล

หัวข้ออ้างอิง OpenThread API จะมาจากซอร์สโค้ดซึ่งพร้อมใช้งานใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารของเราได้ที่แหล่งข้อมูล