Hợp tác với mọi người

Mô-đun này bao gồm các chức năng kiểm soát hoạt động giao tiếp CoAP.

Tóm tắt

Các hàm trong mô-đun này có sẵn khi tính năng API CoAP (OPENTHREAD_CONFIG_COAP_API_ENABLE) được bật.

Bảng liệt kê

otCoapBlockSzx enum
Số mũ kích thước khối 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
Giá trị Mã 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
Mã định dạng nội dung 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
Số tuỳ chọn CoAP.
otCoapType{
  OT_COAP_TYPE_CONFIRMABLE = 0,
  OT_COAP_TYPE_NON_CONFIRMABLE = 1,
  OT_COAP_TYPE_ACKNOWLEDGMENT = 2,
  OT_COAP_TYPE_RESET = 3
}
enum
Giá trị Loại CoAP (số nguyên 2 bit không dấu).

Typedef

otCoapBlockSzx typedef
Số mũ kích thước khối CoAP.
otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength) typedef
Con trỏ được gọi khi nhận được thông báo CoAP có tuỳ chọn chuyển theo khối.
otCoapBlockwiseResource typedef
Đại diện cho một tài nguyên CoAP bằng tính năng chuyển theo khối.
otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore) typedef
Con trỏ được gọi trước khi khối tiếp theo trong quá trình chuyển theo khối được gửi.
otCoapCode typedef
enum otCoapCode
Giá trị Mã CoAP.
otCoapOption typedef
struct otCoapOption
Đại diện cho một tuỳ chọn CoAP.
otCoapOptionContentFormat typedef
Mã định dạng nội dung CoAP.
otCoapOptionIterator typedef
Đóng vai trò là trình lặp cho các tuỳ chọn CoAP.
otCoapOptionType typedef
Số tuỳ chọn CoAP.
otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
void(*
Con trỏ được gọi khi nhận được một yêu cầu CoAP có một Đường dẫn Uri nhất định.
otCoapResource typedef
Đại diện cho một tài nguyên CoAP.
otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) typedef
void(*
Con trỏ được gọi khi nhận được phản hồi CoAP hoặc khi hết thời gian chờ yêu cầu.
otCoapTxParameters typedef
Đại diện cho các tham số truyền CoAP.
otCoapType typedef
enum otCoapType
Giá trị Loại CoAP (số nguyên 2 bit không dấu).

Hàm

otCoapAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Thêm tài nguyên theo khối vào máy chủ CoAP.
otCoapAddResource(otInstance *aInstance, otCoapResource *aResource)
void
Thêm tài nguyên vào máy chủ CoAP.
otCoapBlockSizeFromExponent(otCoapBlockSzx aSize)
uint16_t
Chuyển đổi trường Szx của tuỳ chọn Khối CoAP thành kích thước khối thực tế.
otCoapMessageAppendBlock1Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
Thêm tuỳ chọn Block1.
otCoapMessageAppendBlock2Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
Thêm tuỳ chọn Block2.
otCoapMessageAppendContentFormatOption(otMessage *aMessage, otCoapOptionContentFormat aContentFormat)
Thêm tuỳ chọn CoAP về định dạng nội dung như được chỉ định trong https://tools.ietf.org/html/rfc7252#page-92.
otCoapMessageAppendMaxAgeOption(otMessage *aMessage, uint32_t aMaxAge)
Thêm tuỳ chọn Độ tuổi tối đa.
otCoapMessageAppendObserveOption(otMessage *aMessage, uint32_t aObserve)
Thêm tuỳ chọn Quan sát.
otCoapMessageAppendOption(otMessage *aMessage, uint16_t aNumber, uint16_t aLength, const void *aValue)
Thêm tuỳ chọn CoAP vào tiêu đề.
otCoapMessageAppendProxyUriOption(otMessage *aMessage, const char *aUriPath)
Thêm tuỳ chọn Proxy-Uri.
otCoapMessageAppendUintOption(otMessage *aMessage, uint16_t aNumber, uint32_t aValue)
Thêm tuỳ chọn CoAP số nguyên không ký như được chỉ định trong https://tools.ietf.org/html/rfc7252#section-3.2.
otCoapMessageAppendUriPathOptions(otMessage *aMessage, const char *aUriPath)
Thêm tuỳ chọn Uri-Path (Đường dẫn URI).
otCoapMessageAppendUriQueryOption(otMessage *aMessage, const char *aUriQuery)
Thêm một tuỳ chọn Uri-Query (Truy vấn URI).
otCoapMessageCodeToString(const otMessage *aMessage)
const char *
Trả về Mã CoAP dưới dạng chuỗi mà con người có thể đọc được.
otCoapMessageGenerateToken(otMessage *aMessage, uint8_t aTokenLength)
void
Đặt độ dài Mã thông báo và sắp xếp ngẫu nhiên giá trị của mã đó.
otCoapMessageGetCode(const otMessage *aMessage)
Trả về giá trị Mã.
otCoapMessageGetMessageId(const otMessage *aMessage)
uint16_t
Trả về giá trị Mã nhận dạng của thông báo.
otCoapMessageGetToken(const otMessage *aMessage)
const uint8_t *
Trả về một con trỏ đến giá trị Mã thông báo.
otCoapMessageGetTokenLength(const otMessage *aMessage)
uint8_t
Trả về độ dài mã thông báo.
otCoapMessageGetType(const otMessage *aMessage)
Trả về giá trị Loại.
otCoapMessageInit(otMessage *aMessage, otCoapType aType, otCoapCode aCode)
void
Khởi động tiêu đề CoAP.
otCoapMessageInitResponse(otMessage *aResponse, const otMessage *aRequest, otCoapType aType, otCoapCode aCode)
Khởi tạo một thông báo phản hồi.
otCoapMessageSetCode(otMessage *aMessage, otCoapCode aCode)
void
Đặt giá trị Mã.
otCoapMessageSetPayloadMarker(otMessage *aMessage)
Thêm Payload Marker cho biết thời điểm bắt đầu tải trọng vào tiêu đề CoAP.
otCoapMessageSetToken(otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength)
Đặt giá trị Mã thông báo và độ dài trong tiêu đề.
otCoapNewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
Tạo thông báo CoAP mới.
otCoapOptionIteratorGetFirstOption(otCoapOptionIterator *aIterator)
const otCoapOption *
Trả về một con trỏ đến tuỳ chọn đầu tiên.
otCoapOptionIteratorGetFirstOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Trả về con trỏ đến tuỳ chọn đầu tiên khớp với số tuỳ chọn đã chỉ định.
otCoapOptionIteratorGetNextOption(otCoapOptionIterator *aIterator)
const otCoapOption *
Trả về con trỏ đến tuỳ chọn tiếp theo.
otCoapOptionIteratorGetNextOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Trả về con trỏ đến tuỳ chọn tiếp theo khớp với số tuỳ chọn đã chỉ định.
otCoapOptionIteratorGetOptionUintValue(otCoapOptionIterator *aIterator, uint64_t *aValue)
Điền giá trị tuỳ chọn hiện tại vào aValue giả định giá trị hiện tại là một số nguyên chưa ký được mã hoá theo https://tools.ietf.org/html/rfc7252#section-3.2.
otCoapOptionIteratorGetOptionValue(otCoapOptionIterator *aIterator, void *aValue)
Điền giá trị tuỳ chọn hiện tại vào aValue.
otCoapOptionIteratorInit(otCoapOptionIterator *aIterator, const otMessage *aMessage)
Khởi chạy một trình lặp cho các tuỳ chọn trong thông báo đã cho.
otCoapRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Xoá tài nguyên theo khối khỏi máy chủ CoAP.
otCoapRemoveResource(otInstance *aInstance, otCoapResource *aResource)
void
Xoá tài nguyên khỏi máy chủ CoAP.
otCoapSendRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext)
Gửi yêu cầu CoAP.
otCoapSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Gửi yêu cầu CoAP theo khối.
otCoapSendRequestBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Gửi yêu cầu CoAP theo khối với các thông số truyền tuỳ chỉnh.
otCoapSendRequestWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters)
Gửi yêu cầu CoAP kèm theo các thông số truyền tuỳ chỉnh.
otCoapSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
Gửi phản hồi CoAP từ máy chủ.
otCoapSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Gửi phản hồi CoAP theo khối từ máy chủ.
otCoapSendResponseBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Gửi phản hồi CoAP theo khối theo khối từ máy chủ với các thông số truyền tuỳ chỉnh.
otCoapSendResponseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters)
Gửi phản hồi CoAP từ máy chủ kèm theo các thông số truyền tuỳ chỉnh.
otCoapSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
void
Đặt trình xử lý mặc định cho các yêu cầu CoAP chưa được xử lý.
otCoapStart(otInstance *aInstance, uint16_t aPort)
Khởi động máy chủ CoAP.
otCoapStop(otInstance *aInstance)
Dừng máy chủ CoAP.

Cấu trúc

otCoapBlockwiseResource

Đại diện cho một tài nguyên CoAP bằng tính năng chuyển theo khối.

otCoapOption

Đại diện cho một tuỳ chọn CoAP.

otCoapOptionIterator

Đóng vai trò là trình lặp cho các tuỳ chọn CoAP.

otCoapResource

Đại diện cho một tài nguyên CoAP.

otCoapTxParameters

Đại diện cho các tham số truyền CoAP.

Bảng liệt kê

otCoapBlockSzx

 otCoapBlockSzx

Số mũ kích thước khối CoAP.

Mã otCoap

 otCoapCode

Giá trị Mã CoAP.

Thuộc tính
OT_COAP_CODE_BAD_GATEWAY

Cổng kết nối bị lỗi.

OT_COAP_CODE_BAD_OPTION

Lựa chọn không hợp lệ.

OT_COAP_CODE_BAD_REQUEST

Yêu cầu không hợp lệ.

OT_COAP_CODE_CHANGED

Đã thay đổi.

OT_COAP_CODE_CONTENT

Nội dung.

OT_COAP_CODE_CONTINUE

RFC7959 Tiếp tục.

OT_COAP_CODE_CREATED

Đã tạo.

OT_COAP_CODE_DELETE

Xóa.

OT_COAP_CODE_DELETED

Đã xoá.

OT_COAP_CODE_EMPTY

Mã tin nhắn trống.

OT_COAP_CODE_FORBIDDEN

Cấm truy cập.

OT_COAP_CODE_GATEWAY_TIMEOUT

Hết thời gian chờ.

OT_COAP_CODE_GET

Nhận.

OT_COAP_CODE_INTERNAL_ERROR

Lỗi máy chủ nội bộ.

OT_COAP_CODE_METHOD_NOT_ALLOWED

Không cho phép phương thức.

OT_COAP_CODE_NOT_ACCEPTABLE

Không được chấp nhận.

OT_COAP_CODE_NOT_FOUND

Không tìm thấy.

OT_COAP_CODE_NOT_IMPLEMENTED

Không thực hiện được.

OT_COAP_CODE_POST

Bài đăng.

OT_COAP_CODE_PRECONDITION_FAILED

Điều kiện tiên quyết không thành công.

OT_COAP_CODE_PROXY_NOT_SUPPORTED

Không hỗ trợ proxy.

OT_COAP_CODE_PUT

Đặt.

OT_COAP_CODE_REQUEST_INCOMPLETE

Pháp nhân yêu cầu RFC7959 chưa hoàn chỉnh.

OT_COAP_CODE_REQUEST_TOO_LARGE

Thực thể yêu cầu quá lớn.

OT_COAP_CODE_RESPONSE_MIN

2.00

OT_COAP_CODE_SERVICE_UNAVAILABLE

Dịch vụ không khả dụng

OT_COAP_CODE_UNAUTHORIZED

Không được uỷ quyền.

OT_COAP_CODE_UNSUPPORTED_FORMAT

Định dạng nội dung không được hỗ trợ.

OT_COAP_CODE_VALID

Hợp lệ.

otCoapOptionContentFormat

 otCoapOptionContentFormat

Mã định dạng nội dung CoAP.

Bạn có thể xem danh sách đầy đủ tại https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats

Thuộc tính
OT_COAP_OPTION_CONTENT_FORMAT_CBOR

ứng dụng/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

ứng dụng/khoá cose: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET

ứng dụng/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

ứng dụng/cwt: [RFC8392]

OT_COAP_OPTION_CONTENT_FORMAT_EXI

application/exi: ["Định dạng Trao đổi XML hiệu quả (EXI) 1.0 (Phiên bản thứ hai)", tháng 2 năm 2014]

OT_COAP_OPTION_CONTENT_FORMAT_JSON

ứng dụng/json: [RFC7159]

OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON

ứng dụng/json-patch+json: [RFC6902]

OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT

ứng dụng/định dạng đường liên kết: [RFC6690]

OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON

ứng dụng/hợp nhất-patch+json: [RFC7396]

OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM

ứng dụng/octet-stream: [RFC2045][RFC2046]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR

ứng dụng/senml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI

ứng dụng/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

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

văn bản/văn bản thuần tuý; bộ ký tự=utf-8: [RFC2046][RFC3676][RFC5147]

OT_COAP_OPTION_CONTENT_FORMAT_XML

ứng dụng/xml: [RFC3023]

Loại tùy chọn otCoap

 otCoapOptionType

Số tuỳ chọn CoAP.

Thuộc tính
OT_COAP_OPTION_ACCEPT

Chấp nhận.

OT_COAP_OPTION_BLOCK1

Khối 1 (RFC7959)

OT_COAP_OPTION_BLOCK2

Khối 2 (RFC7959)

OT_COAP_OPTION_CONTENT_FORMAT

Nội dung-Định dạng.

OT_COAP_OPTION_E_TAG

Thẻ ETag.

OT_COAP_OPTION_IF_MATCH

Nếu khớp.

OT_COAP_OPTION_IF_NONE_MATCH

Nếu-Không-Khớp.

OT_COAP_OPTION_LOCATION_PATH

Đường dẫn vị trí.

OT_COAP_OPTION_LOCATION_QUERY

Truy vấn vị trí.

OT_COAP_OPTION_MAX_AGE

Độ tuổi tối đa.

OT_COAP_OPTION_OBSERVE

Quan sát [RFC7641].

OT_COAP_OPTION_PROXY_SCHEME

Lược đồ ủy quyền.

OT_COAP_OPTION_PROXY_URI

Proxy-Uri.

OT_COAP_OPTION_SIZE1

Kích thước1.

OT_COAP_OPTION_SIZE2

Kích thước 2 (RFC7959)

OT_COAP_OPTION_URI_HOST

Máy chủ URI.

OT_COAP_OPTION_URI_PATH

Đường dẫn URI.

OT_COAP_OPTION_URI_PORT

Cổng URI.

OT_COAP_OPTION_URI_QUERY

Truy vấn URI.

Loại otCoap

 otCoapType

Giá trị Loại CoAP (số nguyên 2 bit không dấu).

Thuộc tính
OT_COAP_TYPE_ACKNOWLEDGMENT

Sự công nhận.

OT_COAP_TYPE_CONFIRMABLE

Có thể xác nhận.

OT_COAP_TYPE_NON_CONFIRMABLE

Không thể xác nhận.

OT_COAP_TYPE_RESET

Đặt lại.

Typedef

otCoapBlockSzx

enum otCoapBlockSzx otCoapBlockSzx

Số mũ kích thước khối CoAP.

otCoapBlockwiseReceiveHook

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

Con trỏ được gọi khi nhận được thông báo CoAP có tuỳ chọn chuyển theo khối.

Có sẵn khi bật cấu hình MỞ USD_CONFIG_COAP_BLOCKWISE_Transfer_ENABLE.

Thông tin chi tiết
Các tham số
[in] aContext
Con trỏ đến ngữ cảnh dành riêng cho ứng dụng.
[in] aBlock
Con trỏ đến phân đoạn khối.
[in] aPosition
Vị trí của aBlock trong một chuỗi tính bằng byte.
[in] aBlockLength
Độ dài của phân đoạn khối tính bằng byte.
[in] aMore
Gắn cờ nếu có nhiều phân đoạn chặn đang theo dõi.
[in] aTotalLength
Tổng chiều dài tính bằng byte của thông tin được chuyển (được biểu thị bằng tuỳ chọn Size1 hoặc Size2).
Giá trị trả về
OT_ERROR_NONE
Đã lưu trữ thành công phân đoạn chặn.
OT_ERROR_NO_BUFS
Không còn bộ nhớ để lưu trữ các khối.
OT_ERROR_NO_FRAME_RECEIVED
Thiếu đoạn chặn.

otCoapBlockwiseResource

struct otCoapBlockwiseResource otCoapBlockwiseResource

Đại diện cho một tài nguyên CoAP bằng tính năng chuyển theo khối.

otCoapBlockwiseReceiveHook

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

Con trỏ được gọi trước khi khối tiếp theo trong quá trình chuyển theo khối được gửi.

Có sẵn khi bật cấu hình MỞ USD_CONFIG_COAP_BLOCKWISE_Transfer_ENABLE.

Bằng cách thay đổi giá trị của aBlockLength, kích thước khối của toàn bộ nền tảng trao đổi sẽ được thương lượng lại. Bạn nên thực hiện việc này sau khi nhận được khối đầu tiên vì các thay đổi sau đó có thể gây ra sự cố với các phương thức triển khai CoAP khác.

Thông tin chi tiết
Các tham số
[in] aContext
Con trỏ đến ngữ cảnh dành riêng cho ứng dụng.
[in,out] aBlock
Một con trỏ đến vị trí có thể ghi phân đoạn khối.
[in] aPosition
Vị trí trong một chuỗi mà từ đó sẽ lấy phân đoạn khối.
[in,out] aBlockLength
Khi nhập, độ dài tối đa của phân đoạn tính bằng byte.
[out] aMore
Con trỏ sẽ trỏ tới cờ nếu có thêm phân đoạn khối theo sau.
Giá trị trả về
OT_ERROR_NONE
Không xảy ra lỗi nào.
OT_ERROR_INVALID_ARGS
Chặn ở aPosition không tồn tại.

Mã otCoap

enum otCoapCode otCoapCode

Giá trị Mã CoAP.

Tuỳ chọn otCoap

struct otCoapOption otCoapOption

Đại diện cho một tuỳ chọn CoAP.

otCoapOptionContentFormat

enum otCoapOptionContentFormat otCoapOptionContentFormat

Mã định dạng nội dung CoAP.

Bạn có thể xem danh sách đầy đủ tại https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats

otCoapOptionIterator

struct otCoapOptionIterator otCoapOptionIterator

Đóng vai trò là trình lặp cho các tuỳ chọn CoAP.

Loại tùy chọn otCoap

enum otCoapOptionType otCoapOptionType

Số tuỳ chọn CoAP.

otCoapRequestHandler

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

Con trỏ được gọi khi nhận được một yêu cầu CoAP có một Đường dẫn Uri nhất định.

Thông tin chi tiết
Các tham số
[in] aContext
Con trỏ đến thông tin ngữ cảnh tuỳ ý.
[in] aMessage
Con trỏ chỉ đến thông báo.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn của aMessage.

Tài nguyên của otCoap

struct otCoapResource otCoapResource

Đại diện cho một tài nguyên CoAP.

otCoapResponseHandler

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

Con trỏ được gọi khi nhận được phản hồi CoAP hoặc khi hết thời gian chờ yêu cầu.

Thông tin chi tiết
Các tham số
[in] aContext
Con trỏ đến ngữ cảnh dành riêng cho ứng dụng.
[in] aMessage
Con trỏ đến vùng đệm thông báo chứa phản hồi. Giá trị là NULL nếu không nhận được phản hồi nào.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn của aMessage. Giá trị là NULL nếu không nhận được phản hồi nào.
[in] aResult
Kết quả của giao dịch CoAP.
Giá trị trả về
OT_ERROR_NONE
Đã nhận được phản hồi.
OT_ERROR_ABORT
Một giao dịch CoAP đã được ứng dụng ngang hàng đặt lại.
OT_ERROR_RESPONSE_TIMEOUT
Không nhận được phản hồi hoặc xác nhận trong khoảng thời gian chờ.

Tham số otCoapTx

struct otCoapTxParameters otCoapTxParameters

Đại diện cho các tham số truyền CoAP.

Loại otCoap

enum otCoapType otCoapType

Giá trị Loại CoAP (số nguyên 2 bit không dấu).

Hàm

otCoapAddBlockWiseResource

void otCoapAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Thêm tài nguyên theo khối vào máy chủ CoAP.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aResource
Con trỏ đến tài nguyên.

otCoapAddResource

void otCoapAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Thêm tài nguyên vào máy chủ CoAP.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aResource
Con trỏ đến tài nguyên.

otCoapBlockSizeFromExponent

uint16_t otCoapBlockSizeFromExponent(
  otCoapBlockSzx aSize
)

Chuyển đổi trường Szx của tuỳ chọn Khối CoAP thành kích thước khối thực tế.

Thông tin chi tiết
Các tham số
[in] aSize
Số mũ kích thước khối.
Trả về
Giá trị số mũ kích thước thực tế.

otCoapMessageAppendBlock1Option

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

Thêm tuỳ chọn Block1.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aNum
Số khối hiện tại.
[in] aMore
Boolean để cho biết sẽ gửi thêm khối.
[in] aSize
Kích thước khối luỹ thừa.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageAppendBlock2Option

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

Thêm tuỳ chọn Block2.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aNum
Số khối hiện tại.
[in] aMore
Boolean để cho biết sẽ gửi thêm khối.
[in] aSize
Kích thước khối luỹ thừa.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageAppendContentFormatOption

otError otCoapMessageAppendContentFormatOption(
  otMessage *aMessage,
  otCoapOptionContentFormat aContentFormat
)

Thêm tuỳ chọn CoAP về định dạng nội dung như được chỉ định trong https://tools.ietf.org/html/rfc7252#page-92.

Lệnh này phải được gọi trước khi thiết lập otCoapMessageSetPayloadMarker nếu có tải trọng dữ liệu trong thông báo.

Hàm này là một trình bao bọc tiện lợi xung quanh otCoapMessageAppendUintOption. Nếu mã loại định dạng mong muốn không được liệt kê trong otCoapOptionContentFormat, thì bạn nên dùng hàm cơ sở này.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aContentFormat
Một trong các định dạng nội dung được liệt kê trong otCoapOptionContentFormat ở trên.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageAppendMaxAgeOption

otError otCoapMessageAppendMaxAgeOption(
  otMessage *aMessage,
  uint32_t aMaxAge
)

Thêm tuỳ chọn Độ tuổi tối đa.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aMaxAge
Giá trị Tối đa hoá độ tuổi.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageAppendObserveOption

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

Thêm tuỳ chọn Quan sát.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aObserve
Quan sát giá trị trường.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageAppendOption

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

Thêm tuỳ chọn CoAP vào tiêu đề.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aNumber
Số tuỳ chọn CoAP.
[in] aLength
Thời lượng tuỳ chọn CoAP.
[in] aValue
Con trỏ đến giá trị CoAP.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageAppendProxyUriOption

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

Thêm tuỳ chọn Proxy-Uri.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aUriPath
Con trỏ trỏ đến một chuỗi kết thúc có giá trị NULL.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageAppendUintOption

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

Thêm tuỳ chọn CoAP số nguyên không ký như được chỉ định trong https://tools.ietf.org/html/rfc7252#section-3.2.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aNumber
Số tuỳ chọn CoAP.
[in] aValue
Giá trị số nguyên không dấu của Tuỳ chọn CoAP.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.
Xem thêm:
otCoapMessageGetOptionUintValue

otCoapMessageAppendUriPathOptions

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

Thêm tuỳ chọn Uri-Path (Đường dẫn URI).

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aUriPath
Con trỏ trỏ đến một chuỗi kết thúc có giá trị NULL.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageAppendUriQueryOption

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

Thêm một tuỳ chọn Uri-Query (Truy vấn URI).

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aUriQuery
Con trỏ trỏ đến chuỗi kết thúc bằng giá trị NULL. Con trỏ này phải chứa một cặp khoá=giá trị duy nhất.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công tùy chọn này.
OT_ERROR_INVALID_ARGS
Loại tùy chọn không bằng hoặc lớn hơn loại tùy chọn cuối cùng.
OT_ERROR_NO_BUFS
Độ dài của tuỳ chọn vượt quá kích thước vùng đệm.

otCoapMessageCodeToString

const char * otCoapMessageCodeToString(
  const otMessage *aMessage
)

Trả về Mã CoAP dưới dạng chuỗi mà con người có thể đọc được.

@ trả về Mã CoAP dưới dạng chuỗi.

Thông tin chi tiết
Các tham số
[in] aMessage
Con trỏ đến thông báo CoAP.

otCoapMessageGenerateToken

void otCoapMessageGenerateToken(
  otMessage *aMessage,
  uint8_t aTokenLength
)

Đặt độ dài Mã thông báo và sắp xếp ngẫu nhiên giá trị của mã đó.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aTokenLength
Độ dài của mã thông báo cần đặt.

otCoapMessageGetCode

otCoapCode otCoapMessageGetCode(
  const otMessage *aMessage
)

Trả về giá trị Mã.

Thông tin chi tiết
Các tham số
[in] aMessage
Con trỏ đến thông báo CoAP.
Trả về
Giá trị Mã.

Mã nhận dạng otCoapMessageGetMessage

uint16_t otCoapMessageGetMessageId(
  const otMessage *aMessage
)

Trả về giá trị Mã nhận dạng của thông báo.

Thông tin chi tiết
Các tham số
[in] aMessage
Con trỏ đến thông báo CoAP.
Trả về
Giá trị Mã nhận dạng thư.

otCoapMessageGetToken

const uint8_t * otCoapMessageGetToken(
  const otMessage *aMessage
)

Trả về một con trỏ đến giá trị Mã thông báo.

Thông tin chi tiết
Các tham số
[in] aMessage
Con trỏ đến thông báo CoAP.
Trả về
Con trỏ đến giá trị Mã thông báo.

otCoapMessageGetTokenLength

uint8_t otCoapMessageGetTokenLength(
  const otMessage *aMessage
)

Trả về độ dài mã thông báo.

Thông tin chi tiết
Các tham số
[in] aMessage
Con trỏ đến thông báo CoAP.
Trả về
Độ dài mã thông báo.

otCoapMessageGetType

otCoapType otCoapMessageGetType(
  const otMessage *aMessage
)

Trả về giá trị Loại.

Thông tin chi tiết
Các tham số
[in] aMessage
Con trỏ đến thông báo CoAP.
Trả về
Giá trị Loại.

otCoapMessageInit

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

Khởi động tiêu đề CoAP.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP để khởi động.
[in] aType
Loại thông báo CoAP.
[in] aCode
Mã thông báo CoAP.

otCoapMessageInitResponse

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

Khởi tạo một thông báo phản hồi.

Thông tin chi tiết
Các tham số
[in,out] aResponse
Con trỏ đến thông báo phản hồi CoAP.
[in] aRequest
Con trỏ đến thông báo yêu cầu CoAP.
[in] aType
Loại thông báo CoAP.
[in] aCode
Mã thông báo CoAP.
Giá trị trả về
OT_ERROR_NONE
Đã khởi động thành công thông báo phản hồi.
OT_ERROR_NO_BUFS
Không có đủ vùng đệm thư để khởi tạo thông báo phản hồi.

Mã otCoapMessageSet

void otCoapMessageSetCode(
  otMessage *aMessage,
  otCoapCode aCode
)

Đặt giá trị Mã.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP để khởi động.
[in] aCode
Mã thông báo CoAP.

otCoapMessageSetPayloadMarker

otError otCoapMessageSetPayloadMarker(
  otMessage *aMessage
)

Thêm Payload Marker cho biết thời điểm bắt đầu tải trọng vào tiêu đề CoAP.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công Điểm đánh dấu tải trọng.
OT_ERROR_NO_BUFS
Mã đánh dấu tải trọng tiêu đề vượt quá kích thước vùng đệm.

otCoapMessageSetToken

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

Đặt giá trị Mã thông báo và độ dài trong tiêu đề.

Thông tin chi tiết
Các tham số
[in,out] aMessage
Con trỏ đến thông báo CoAP.
[in] aToken
Con trỏ đến giá trị Mã thông báo.
[in] aTokenLength
Độ dài của aToken.
Giá trị trả về
OT_ERROR_NONE
Đã đặt thành công giá trị mã thông báo.
OT_ERROR_NO_BUFS
Không đủ vùng đệm để đặt giá trị Mã thông báo.

Tin nhắn mới

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

Tạo thông báo CoAP mới.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aSettings
Con trỏ trỏ đến chế độ cài đặt thông báo hoặc giá trị NULL để đặt chế độ cài đặt mặc định.
Trả về
Con trỏ đến vùng đệm thông báo hoặc giá trị NULL nếu không có vùng đệm thông báo hoặc các tham số không hợp lệ.

otCoapOptionIteratorGetFirstOption

const otCoapOption * otCoapOptionIteratorGetFirstOption(
  otCoapOptionIterator *aIterator
)

Trả về một con trỏ đến tuỳ chọn đầu tiên.

Thông tin chi tiết
Các tham số
[in,out] aIterator
Một con trỏ đến trình lặp tuỳ chọn thông báo CoAP.
Trả về
Con trỏ đến tuỳ chọn đầu tiên. Nếu không có tuỳ chọn nào, hệ thống sẽ trả về con trỏ NULL.

otCoapOptionIteratorGetFirstOptionMatching

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

Trả về con trỏ đến tuỳ chọn đầu tiên khớp với số tuỳ chọn đã chỉ định.

Thông tin chi tiết
Các tham số
[in] aIterator
Một con trỏ đến trình lặp tuỳ chọn thông báo CoAP.
[in] aOption
Số tùy chọn đã tìm kiếm.
Trả về
Con trỏ đến tuỳ chọn khớp đầu tiên. Nếu không có tuỳ chọn khớp nào, con trỏ NULL sẽ được trả về.

otCoapOptionIteratorGetNextOption

const otCoapOption * otCoapOptionIteratorGetNextOption(
  otCoapOptionIterator *aIterator
)

Trả về con trỏ đến tuỳ chọn tiếp theo.

Thông tin chi tiết
Các tham số
[in,out] aIterator
Một con trỏ đến trình lặp tuỳ chọn thông báo CoAP.
Trả về
Con trỏ đến tuỳ chọn tiếp theo. Nếu không có tuỳ chọn nào khác, hệ thống sẽ trả về con trỏ NULL.

otCoapOptionIteratorGetNextOptionMatching

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

Trả về con trỏ đến tuỳ chọn tiếp theo khớp với số tuỳ chọn đã chỉ định.

Thông tin chi tiết
Các tham số
[in] aIterator
Một con trỏ đến trình lặp tuỳ chọn thông báo CoAP.
[in] aOption
Số tùy chọn đã tìm kiếm.
Trả về
Con trỏ đến tuỳ chọn khớp tiếp theo. Nếu không có tuỳ chọn khớp thêm nào, con trỏ NULL sẽ được trả về.

otCoapOptionIteratorGetOptionUintValue

otError otCoapOptionIteratorGetOptionUintValue(
  otCoapOptionIterator *aIterator,
  uint64_t *aValue
)

Điền giá trị tuỳ chọn hiện tại vào aValue giả định giá trị hiện tại là một số nguyên chưa ký được mã hoá theo https://tools.ietf.org/html/rfc7252#section-3.2.

Thông tin chi tiết
Các tham số
[in,out] aIterator
Một con trỏ đến trình lặp tuỳ chọn thông báo CoAP.
[out] aValue
Con trỏ đến một số nguyên không dấu để nhận giá trị tuỳ chọn.
Giá trị trả về
OT_ERROR_NONE
Đã điền giá trị thành công.
OT_ERROR_NOT_FOUND
Hiện không có lựa chọn nào.
OT_ERROR_NO_BUFS
Giá trị quá dài nên không vừa trong một uint64_t.
Xem thêm:
otCoapMessageAppendUintOption

otCoapOptionIteratorGetOptionValue

otError otCoapOptionIteratorGetOptionValue(
  otCoapOptionIterator *aIterator,
  void *aValue
)

Điền giá trị tuỳ chọn hiện tại vào aValue.

Thông tin chi tiết
Các tham số
[in,out] aIterator
Một con trỏ đến trình lặp tuỳ chọn thông báo CoAP.
[out] aValue
Con trỏ đến một vùng đệm để nhận giá trị tuỳ chọn.
Giá trị trả về
OT_ERROR_NONE
Đã điền giá trị thành công.
OT_ERROR_NOT_FOUND
Hiện không có lựa chọn nào.

otCoapOptionIteratorInit

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

Khởi chạy một trình lặp cho các tuỳ chọn trong thông báo đã cho.

Thông tin chi tiết
Các tham số
[in,out] aIterator
Một con trỏ đến trình lặp tuỳ chọn thông báo CoAP.
[in] aMessage
Con trỏ đến thông báo CoAP.
Giá trị trả về
OT_ERROR_NONE
Đã khởi chạy thành công.
OT_ERROR_PARSE
Trạng thái thông báo không nhất quán.

otCoapRemoveBlockWiseResource

void otCoapRemoveBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Xoá tài nguyên theo khối khỏi máy chủ CoAP.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aResource
Con trỏ đến tài nguyên.

otCoapRemoveResource

void otCoapRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Xoá tài nguyên khỏi máy chủ CoAP.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aResource
Con trỏ đến tài nguyên.

otCoapSendRequest

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

Gửi yêu cầu CoAP.

Nếu dự kiến sẽ có phản hồi cho yêu cầu, thì bạn phải cung cấp thông tin về chức năng và ngữ cảnh tương ứng. Nếu dự kiến không có phản hồi nào, các đối số này phải là con trỏ NULL.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ trỏ đến tin nhắn cần gửi.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn liên kết với aMessage.
[in] aHandler
Con trỏ hàm sẽ được gọi khi tiếp nhận phản hồi hoặc hết thời gian chờ.
[in] aContext
Con trỏ đến thông tin ngữ cảnh tuỳ ý. Có thể là NULL nếu không được sử dụng.
Giá trị trả về
OT_ERROR_NONE
Đã gửi thành công thư CoAP.
OT_ERROR_NO_BUFS
Không phân bổ được dữ liệu truyền lại.

otCoapSendRequestBlockWise

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

Gửi yêu cầu CoAP theo khối.

Có sẵn khi bật cấu hình MỞ USD_CONFIG_COAP_BLOCKWISE_Transfer_ENABLE.

Nếu dự kiến sẽ có phản hồi cho yêu cầu, thì bạn phải cung cấp thông tin về chức năng và ngữ cảnh tương ứng. Nếu phản hồi dự kiến là theo khối, thì hàm hook tương ứng sẽ được cung cấp. Nếu dự kiến không có phản hồi nào, các đối số này phải là con trỏ NULL.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ trỏ đến tin nhắn cần gửi.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn liên kết với aMessage.
[in] aHandler
Con trỏ hàm sẽ được gọi khi tiếp nhận phản hồi hoặc hết thời gian chờ.
[in] aContext
Con trỏ đến thông tin ngữ cảnh tuỳ ý. Có thể là NULL nếu không được sử dụng.
[in] aTransmitHook
Con trỏ đến một hàm hook để chuyển theo khối đi.
[in] aReceiveHook
Con trỏ đến một hàm hook để thực hiện quá trình chuyển theo khối đến.
Giá trị trả về
OT_ERROR_NONE
Đã gửi thành công thư CoAP.
OT_ERROR_NO_BUFS
Không phân bổ được dữ liệu truyền lại.

otCoapSendRequestBlockWiseWithParameters

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

Gửi yêu cầu CoAP theo khối với các thông số truyền tuỳ chỉnh.

Có sẵn khi bật cấu hình MỞ USD_CONFIG_COAP_BLOCKWISE_Transfer_ENABLE.

Nếu dự kiến sẽ có phản hồi cho yêu cầu, thì bạn phải cung cấp thông tin về chức năng và ngữ cảnh tương ứng. Nếu phản hồi dự kiến là theo khối, thì hàm hook tương ứng sẽ được cung cấp. Nếu dự kiến không có phản hồi nào, các đối số này phải là con trỏ NULL.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ trỏ đến tin nhắn cần gửi.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn liên kết với aMessage.
[in] aHandler
Con trỏ hàm sẽ được gọi khi tiếp nhận phản hồi hoặc hết thời gian chờ.
[in] aContext
Con trỏ đến thông tin ngữ cảnh tuỳ ý. Có thể là NULL nếu không được sử dụng.
[in] aTxParameters
Con trỏ trỏ đến các tham số truyền cho yêu cầu này. Sử dụng NULL cho mặc định.
[in] aTransmitHook
Con trỏ đến một hàm hook để chuyển theo khối đi.
[in] aReceiveHook
Con trỏ đến một hàm hook để thực hiện quá trình chuyển theo khối đến.
Giá trị trả về
OT_ERROR_NONE
Đã gửi thành công thư CoAP.
OT_ERROR_NO_BUFS
Không phân bổ được dữ liệu truyền lại.
OT_ERROR_INVALID_ARGS
Các đối số không hợp lệ đã được cung cấp.

otCoapSendRequestWithParameters

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

Gửi yêu cầu CoAP kèm theo các thông số truyền tuỳ chỉnh.

Nếu dự kiến sẽ có phản hồi cho yêu cầu, thì bạn phải cung cấp thông tin về chức năng và ngữ cảnh tương ứng. Nếu dự kiến không có phản hồi nào, các đối số này phải là con trỏ NULL.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ trỏ đến tin nhắn cần gửi.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn liên kết với aMessage.
[in] aHandler
Con trỏ hàm sẽ được gọi khi tiếp nhận phản hồi hoặc hết thời gian chờ.
[in] aContext
Con trỏ đến thông tin ngữ cảnh tuỳ ý. Có thể là NULL nếu không được sử dụng.
[in] aTxParameters
Con trỏ trỏ đến các tham số truyền cho yêu cầu này. Sử dụng NULL cho mặc định. Nếu không, các thông số đã cung cấp phải đáp ứng các điều kiện sau:
  1. mMaxRetransmit không quá OT_COAP_MAX_RETRANSMIT.
  2. mAckRandomFactorNumerator / mAckRandomFactorDenominator không được thấp hơn 1.0.
  3. Thời gian vòng đời trao đổi được tính toán không được vượt quá uint32_t.
Giá trị trả về
OT_ERROR_NONE
Đã gửi thành công thư CoAP.
OT_ERROR_NO_BUFS
Không phân bổ được dữ liệu truyền lại.
OT_ERROR_INVALID_ARGS
Các đối số không hợp lệ đã được cung cấp.

otCoapSendResponse

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

Gửi phản hồi CoAP từ máy chủ.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ trỏ đến phản hồi CoAP để gửi.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn liên kết với aMessage.
Giá trị trả về
OT_ERROR_NONE
Đã đưa thông báo phản hồi CoAP vào hàng đợi thành công.
OT_ERROR_NO_BUFS
Không đủ bộ đệm để gửi phản hồi CoAP.

otCoapSendResponseBlockWise

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

Gửi phản hồi CoAP theo khối từ máy chủ.

Có sẵn khi bật cấu hình MỞ USD_CONFIG_COAP_BLOCKWISE_Transfer_ENABLE.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ trỏ đến phản hồi CoAP để gửi.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn liên kết với aMessage.
[in] aContext
Con trỏ đến thông tin ngữ cảnh tuỳ ý. Có thể là NULL nếu không được sử dụng.
[in] aTransmitHook
Con trỏ đến một hàm hook để chuyển theo khối đi.
Giá trị trả về
OT_ERROR_NONE
Đã đưa thông báo phản hồi CoAP vào hàng đợi thành công.
OT_ERROR_NO_BUFS
Không đủ bộ đệm để gửi phản hồi CoAP.

otCoapSendResponseBlockWiseWithParameters

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

Gửi phản hồi CoAP theo khối theo khối từ máy chủ với các thông số truyền tuỳ chỉnh.

Có sẵn khi bật cấu hình MỞ USD_CONFIG_COAP_BLOCKWISE_Transfer_ENABLE.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ trỏ đến phản hồi CoAP để gửi.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn liên kết với aMessage.
[in] aTxParameters
Con trỏ trỏ đến các tham số truyền của phản hồi này. Sử dụng NULL cho mặc định.
[in] aContext
Con trỏ đến thông tin ngữ cảnh tuỳ ý. Có thể là NULL nếu không được sử dụng.
[in] aTransmitHook
Con trỏ đến một hàm hook để chuyển theo khối đi.
Giá trị trả về
OT_ERROR_NONE
Đã đưa thông báo phản hồi CoAP vào hàng đợi thành công.
OT_ERROR_NO_BUFS
Không đủ bộ đệm để gửi phản hồi CoAP.
OT_ERROR_INVALID_ARGS
Các đối số không hợp lệ đã được cung cấp.

otCoapSendResponseWithParameters

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

Gửi phản hồi CoAP từ máy chủ kèm theo các thông số truyền tuỳ chỉnh.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ trỏ đến phản hồi CoAP để gửi.
[in] aMessageInfo
Con trỏ đến thông tin tin nhắn liên kết với aMessage.
[in] aTxParameters
Con trỏ trỏ đến các tham số truyền của phản hồi này. Sử dụng NULL cho mặc định.
Giá trị trả về
OT_ERROR_NONE
Đã đưa thông báo phản hồi CoAP vào hàng đợi thành công.
OT_ERROR_NO_BUFS
Không đủ bộ đệm để gửi phản hồi CoAP.
OT_ERROR_INVALID_ARGS
Các đối số không hợp lệ đã được cung cấp.

otCoapSetDefaultHandler

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

Đặt trình xử lý mặc định cho các yêu cầu CoAP chưa được xử lý.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aHandler
Con trỏ hàm sẽ được gọi khi có yêu cầu chưa được xử lý.
[in] aContext
Con trỏ đến thông tin ngữ cảnh tuỳ ý. Có thể là NULL nếu không được sử dụng.

otCoapStart

otError otCoapStart(
  otInstance *aInstance,
  uint16_t aPort
)

Khởi động máy chủ CoAP.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aPort
Cổng UDP cục bộ cần liên kết.
Giá trị trả về
OT_ERROR_NONE
Đã khởi động thành công máy chủ CoAP.
OT_ERROR_FAILED
Không khởi động được máy chủ CoAP.

otCoapStop

otError otCoapStop(
  otInstance *aInstance
)

Dừng máy chủ CoAP.

Thông tin chi tiết
Các tham số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
Giá trị trả về
OT_ERROR_NONE
Đã dừng thành công máy chủ CoAP.

Macro

OT_COAP_CODE (MÃ OT_COAP)

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

Macro trợ giúp để xác định các giá trị Mã CoAP.

OT_COAP_DEFAULT_TOKEN_LENGTH

 OT_COAP_DEFAULT_TOKEN_LENGTH 2

Độ dài mặc định của mã thông báo.

OT_COAP_MAX_RETRANSMIT

 OT_COAP_MAX_RETRANSMIT 20

OpenThread hỗ trợ truyền lại tối đa.

OT_COAP_MAX_TOKEN_LENGTH

 OT_COAP_MAX_TOKEN_LENGTH 8

Độ dài mã thông báo tối đa theo chỉ định (RFC 7252).

OT_COAP_MIN_ACK_TIMEOUT

 OT_COAP_MIN_ACK_TIMEOUT 1000

Thời gian chờ ACK tối thiểu tính bằng mili giây mà OpenThread hỗ trợ.

OT_DEFAULT_COAP_PORT

 OT_DEFAULT_COAP_PORT 5683

Cổng CoAP mặc định, như được chỉ định trong RFC 7252.

Tài nguyên

Các chủ đề tham khảo API OpenThread bắt nguồn từ mã nguồn, có trên GitHub. Để biết thêm thông tin hoặc để đóng góp cho tài liệu của chúng tôi, hãy tham khảo Tài nguyên.