CoAP : CoAP : 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(*
포인터는 지정된 Uri-Path의 CoAP 요청이 수신될 때 호출됩니다.
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
CoAP 블록 옵션 SZX 필드를 실제 블록 크기로 변환합니다.
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)
https://tools.ietf.org/html/rfc7252#page-92에 지정된 대로 콘텐츠 형식 CoAP 옵션을 추가합니다.
otCoapMessageAppendMaxAgeOption(otMessage *aMessage, uint32_t aMaxAge)
Max-Age 옵션을 추가합니다.
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)
https://tools.ietf.org/html/rfc7252#section-3.2에 지정된 대로 부호 없는 정수 CoAP 옵션을 추가합니다.
otCoapMessageAppendUriPathOptions(otMessage *aMessage, const char *aUriPath)
Uri-Path 옵션을 추가합니다.
otCoapMessageAppendUriQueryOption(otMessage *aMessage, const char *aUriQuery)
단일 Uri-Query 옵션을 추가합니다.
otCoapMessageCodeToString(const otMessage *aMessage)
const char *
CoAP 코드를 사람이 읽을 수 있는 문자열로 반환합니다.
otCoapMessageGenerateToken(otMessage *aMessage, uint8_t aTokenLength)
void
토큰 길이를 설정하고 값을 무작위로 지정합니다.
otCoapMessageGetCode(const otMessage *aMessage)
코드 값을 반환합니다.
otCoapMessageGetMessageId(const otMessage *aMessage)
uint16_t
메시지 ID 값을 반환합니다.
otCoapMessageGetToken(const otMessage *aMessage)
const uint8_t *
Token 값에 대한 포인터를 반환합니다.
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)
페이로드의 시작을 나타내는 페이로드 마커를 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)
현재 값이 https://tools.ietf.org/html/rfc7252#section-3.2에 따라 인코딩된 부호 없는 정수라고 가정하고 현재 옵션 값을 aValue에 채웁니다.
otCoapOptionIteratorGetOptionValue(otCoapOptionIterator *aIterator, void *aValue)
현재 옵션 값을 aValue에 채웁니다.
otCoapOptionIteratorInit(otCoapOptionIterator *aIterator, const otMessage *aMessage)
지정된 메시지에서 옵션의 이터레이터를 초기화합니다.
otCoapRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
CoAP 서버에서 블록별 리소스를 삭제합니다.
otCoapRemoveResource(otInstance *aInstance, otCoapResource *aResource)
void
CoAP 서버에서 리소스를 삭제합니다.
otCoapSendRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext)
CoAP 요청을 전송합니다.
otCoapSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
블록별로 CoAP 요청을 전송합니다.
otCoapSendRequestBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
맞춤 전송 매개변수를 사용하여 블록별로 CoAP 요청을 전송합니다.
otCoapSendRequestWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters)
맞춤 전송 매개변수와 함께 CoAP 요청을 전송합니다.
otCoapSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
서버에서 CoAP 응답을 전송합니다.
otCoapSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
서버에서 블록별 CoAP 응답을 전송합니다.
otCoapSendResponseBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
맞춤 전송 매개변수를 사용하여 서버에서 블록별로 CoAP 응답을 전송합니다.
otCoapSendResponseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters)
맞춤 전송 매개변수를 사용하여 서버에서 CoAP 응답을 전송합니다.
otCoapSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
void
처리되지 않은 CoAP 요청의 기본 핸들러를 설정합니다.
otCoapStart(otInstance *aInstance, uint16_t aPort)
CoAP 서버를 시작합니다.
otCoapStop(otInstance *aInstance)
CoAP 서버를 중지합니다.

구조체

otCoapBlockwiseResource

블록별 환승이 포함된 CoAP 리소스를 나타냅니다.

otCoapOption

CoAP 옵션을 나타냅니다.

otCoapOptionIterator

CoAP 옵션의 반복자 역할을 합니다.

otCoapResource

CoAP 리소스를 나타냅니다.

otCoapTxParameters

CoAP 전송 매개변수를 나타냅니다.

열거형

otCoapBlockSzx

 otCoapBlockSzx

CoAP 블록 크기 지수

OTCoapCode

 otCoapCode

CoAP 코드 값입니다.

속성
OT_COAP_CODE_BAD_GATEWAY

게이트웨이가 잘못되었습니다.

OT_COAP_CODE_BAD_OPTION

잘못된 옵션입니다.

OT_COAP_CODE_BAD_REQUEST

잘못된 요청입니다.

OT_COAP_CODE_CHANGED

변경되었습니다.

OT_COAP_CODE_CONTENT

콘텐츠.

OT_COAP_CODE_CONTINUE

RFC7959 계속

OT_COAP_CODE_CREATED

생성됨

OT_COAP_CODE_DELETE

삭제를 탭합니다.

OT_COAP_CODE_DELETED

삭제되었습니다.

OT_COAP_CODE_EMPTY

메시지 코드가 비어 있습니다.

OT_COAP_CODE_FORBIDDEN

금지되었습니다.

OT_COAP_CODE_GATEWAY_TIMEOUT

게이트웨이 시간 초과.

OT_COAP_CODE_GET

받기

OT_COAP_CODE_INTERNAL_ERROR

내부 서버 오류

OT_COAP_CODE_METHOD_NOT_ALLOWED

허용되지 않는 방법입니다.

OT_COAP_CODE_NOT_ACCEPTABLE

허용되지 않습니다.

OT_COAP_CODE_NOT_FOUND

찾을 수 없음

OT_COAP_CODE_NOT_IMPLEMENTED

구현되지 않았습니다.

OT_COAP_CODE_POST

게시를 탭합니다.

OT_COAP_CODE_PRECONDITION_FAILED

전제조건이 실패했습니다.

OT_COAP_CODE_PROXY_NOT_SUPPORTED

프록시가 지원되지 않습니다.

OT_COAP_CODE_PUT

넣으세요.

OT_COAP_CODE_REQUEST_INCOMPLETE

RFC7959 요청 항목 미완료

OT_COAP_CODE_REQUEST_TOO_LARGE

요청 항목이 너무 큽니다.

OT_COAP_CODE_RESPONSE_MIN

2.00

OT_COAP_CODE_SERVICE_UNAVAILABLE

서비스를 사용할 수 없습니다.

OT_COAP_CODE_UNAUTHORIZED

승인되지 않았습니다.

OT_COAP_CODE_UNSUPPORTED_FORMAT

지원되지 않는 콘텐츠 형식입니다.

OT_COAP_CODE_VALID

올바른 쿼리입니다.

otCoapOptionContentFormat

 otCoapOptionContentFormat

CoAP 콘텐츠 형식 코드

전체 목록은 https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats에 설명되어 있습니다.

속성
OT_COAP_OPTION_CONTENT_FORMAT_CBOR

application/cbor: [RFC7049]

OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON

application/coap-group+json: [RFC7390]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY

application/cose-key: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET

application/cose-key-set: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1

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

OT_COAP_OPTION_CONTENT_FORMAT_CWT

application/cwt: [RFC8392]

OT_COAP_OPTION_CONTENT_FORMAT_EXI

application/exi: ["EXI (Efficient XML Interchange) 형식 1.0 (두 번째 버전)", 2014년 2월]

OT_COAP_OPTION_CONTENT_FORMAT_JSON

application/json: [RFC7159]

OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON

application/json-patch+json: [RFC6902]

OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT

application/link-format: [RFC6690]

OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON

application/merge-patch+json: [RFC7396]

OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM

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

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

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

OT_COAP_OPTION_CONTENT_FORMAT_XML

application/xml: [RFC3023]

otCoapOptionType

 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

if-None-Match.

OT_COAP_OPTION_LOCATION_PATH

위치-경로

OT_COAP_OPTION_LOCATION_QUERY

위치-쿼리.

OT_COAP_OPTION_MAX_AGE

최대 연령.

OT_COAP_OPTION_OBSERVE

[RFC7641]을 준수합니다.

OT_COAP_OPTION_PROXY_SCHEME

프록시 스키마입니다.

OT_COAP_OPTION_PROXY_URI

Proxy-Uri입니다.

OT_COAP_OPTION_SIZE1

크기1.

OT_COAP_OPTION_SIZE2

Size2 (RFC7959)

OT_COAP_OPTION_URI_HOST

Uri-Host.

OT_COAP_OPTION_URI_PATH

Uri-Path를 지정합니다.

OT_COAP_OPTION_URI_PORT

Uri-Port입니다.

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
전송된 정보의 총 길이 (Size1 또는 Size2 옵션으로 표시)입니다.
반환 값
OT_ERROR_NONE
블록 세그먼트가 저장되었습니다.
OT_ERROR_NO_BUFS
블록을 저장할 메모리가 더 이상 없습니다.
OT_ERROR_NO_FRAME_RECEIVED
차단 세그먼트가 누락되었습니다.

otCoapBlockwiseResource

struct otCoapBlockwiseResource otCoapBlockwiseResource

블록별 환승이 포함된 CoAP 리소스를 나타냅니다.

otCoapBlockwiseTransmitHook

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

포인터는 블록별 환승의 다음 블록이 전송되기 전에 호출됩니다.

OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 구성이 사용 설정된 경우 사용할 수 있습니다.

aBlockLength 값을 변경하면 전체 거래소의 블록 크기가 다시 협상됩니다. 나중에 변경하면 다른 CoAP 구현에 문제가 발생할 수 있으므로 첫 번째 블록을 수신한 후에 이렇게 하는 것이 좋습니다.

세부정보
매개변수
[in] aContext
애플리케이션별 컨텍스트에 대한 포인터입니다.
[in,out] aBlock
블록 세그먼트를 쓸 수 있는 위치를 가리키는 포인터입니다.
[in] aPosition
시퀀스에서 블록 세그먼트를 가져올 위치입니다.
[in,out] aBlockLength
입력 시 최대 블록 세그먼트 길이(바이트)입니다.
[out] aMore
더 많은 블록 세그먼트가 뒤에 오는 경우 플래그에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
오류가 발생하지 않았습니다.
OT_ERROR_INVALID_ARGS
aPosition에 있는 차단이 존재하지 않습니다.

OTCoapCode

enum otCoapCode otCoapCode

CoAP 코드 값입니다.

OTCoapOption

struct otCoapOption otCoapOption

CoAP 옵션을 나타냅니다.

otCoapOptionContentFormat

enum otCoapOptionContentFormat otCoapOptionContentFormat

CoAP 콘텐츠 형식 코드

전체 목록은 https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats에 설명되어 있습니다.

otCoapOptionIterator

struct otCoapOptionIterator otCoapOptionIterator

CoAP 옵션의 반복자 역할을 합니다.

otCoapOptionType

enum otCoapOptionType otCoapOptionType

CoAP 옵션 번호

otCoapRequestHandler

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

포인터는 지정된 Uri-Path의 CoAP 요청이 수신될 때 호출됩니다.

세부정보
매개변수
[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
응답이 포함된 메시지 버퍼에 대한 포인터입니다. 응답이 수신되지 않은 경우 NULL입니다.
[in] aMessageInfo
aMessage의 메시지 정보에 대한 포인터입니다. 응답이 수신되지 않은 경우 NULL입니다.
[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비트 정수)

함수

otCoapAddBlockWise리소스

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
)

CoAP 블록 옵션 SZX 필드를 실제 블록 크기로 변환합니다.

세부정보
매개변수
[in] aSize
블록 크기 지수입니다.
반환
실제 크기 지수 값입니다.

otCoapMessageAttachBlock1Option

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
옵션 길이가 버퍼 크기를 초과합니다.

otCoapMessageAttachBlock2Option

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

Block2 옵션을 추가합니다.

세부정보
매개변수
[in,out] aMessage
CoAP 메시지에 대한 포인터입니다.
[in] aNum
현재 블록 번호입니다.
[in] aMore
더 많은 블록을 전송할 것을 나타내는 불리언입니다.
[in] aSize
블록 크기 지수
반환 값
OT_ERROR_NONE
옵션이 추가되었습니다.
OT_ERROR_INVALID_ARGS
옵션 유형이 마지막 옵션 유형과 같거나 크지 않습니다.
OT_ERROR_NO_BUFS
옵션 길이가 버퍼 크기를 초과합니다.

otCoapMessageAttachContentFormatOption

otError otCoapMessageAppendContentFormatOption(
  otMessage *aMessage,
  otCoapOptionContentFormat aContentFormat
)

https://tools.ietf.org/html/rfc7252#page-92에 지정된 대로 콘텐츠 형식 CoAP 옵션을 추가합니다.

메시지에 페이로드를 포함하려면 otCoapMessageSetPayloadMarker를 설정하기 전에 반드시 호출해야 합니다.

이 함수는 otCoapMessageAttachUintOption을 둘러싼 편의 래퍼이며, 원하는 형식 유형 코드가 otCoapOptionContentFormat에 없는 경우 이 기본 함수를 대신 사용해야 합니다.

세부정보
매개변수
[in,out] aMessage
CoAP 메시지에 대한 포인터입니다.
[in] aContentFormat
위의 otCoapOptionContentFormat에 나열된 콘텐츠 형식 중 하나입니다.
반환 값
OT_ERROR_NONE
옵션이 추가되었습니다.
OT_ERROR_INVALID_ARGS
옵션 유형이 마지막 옵션 유형과 같거나 크지 않습니다.
OT_ERROR_NO_BUFS
옵션 길이가 버퍼 크기를 초과합니다.

otCoapMessageAttachMaxAgeOption

otError otCoapMessageAppendMaxAgeOption(
  otMessage *aMessage,
  uint32_t aMaxAge
)

Max-Age 옵션을 추가합니다.

세부정보
매개변수
[in,out] aMessage
CoAP 메시지에 대한 포인터입니다.
[in] aMaxAge
최대 기간 값입니다.
반환 값
OT_ERROR_NONE
옵션이 추가되었습니다.
OT_ERROR_INVALID_ARGS
옵션 유형이 마지막 옵션 유형과 같거나 크지 않습니다.
OT_ERROR_NO_BUFS
옵션 길이가 버퍼 크기를 초과합니다.

otCoapMessageAttachObserveOption

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

관찰 옵션을 추가합니다.

세부정보
매개변수
[in,out] aMessage
CoAP 메시지에 대한 포인터입니다.
[in] aObserve
필드 값을 관찰합니다.
반환 값
OT_ERROR_NONE
옵션이 추가되었습니다.
OT_ERROR_INVALID_ARGS
옵션 유형이 마지막 옵션 유형과 같거나 크지 않습니다.
OT_ERROR_NO_BUFS
옵션 길이가 버퍼 크기를 초과합니다.

otCoapMessageAttachOption

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

헤더에 CoAP 옵션을 추가합니다.

세부정보
매개변수
[in,out] aMessage
CoAP 메시지에 대한 포인터입니다.
[in] aNumber
CoAP 옵션 번호입니다.
[in] aLength
CoAP 옵션 길이
[in] aValue
CoAP 값에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
옵션이 추가되었습니다.
OT_ERROR_INVALID_ARGS
옵션 유형이 마지막 옵션 유형과 같거나 크지 않습니다.
OT_ERROR_NO_BUFS
옵션 길이가 버퍼 크기를 초과합니다.

otCoapMessageAttachProxyUriOption

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

Proxy-Uri 옵션을 추가합니다.

세부정보
매개변수
[in,out] aMessage
CoAP 메시지에 대한 포인터입니다.
[in] aUriPath
NULL로 끝나는 문자열에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
옵션이 추가되었습니다.
OT_ERROR_INVALID_ARGS
옵션 유형이 마지막 옵션 유형과 같거나 크지 않습니다.
OT_ERROR_NO_BUFS
옵션 길이가 버퍼 크기를 초과합니다.

otCoapMessageAttachUintOption

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

https://tools.ietf.org/html/rfc7252#section-3.2에 지정된 대로 부호 없는 정수 CoAP 옵션을 추가합니다.

세부정보
매개변수
[in,out] aMessage
CoAP 메시지에 대한 포인터입니다.
[in] aNumber
CoAP 옵션 번호입니다.
[in] aValue
CoAP 옵션의 부호 없는 정수 값입니다.
반환 값
OT_ERROR_NONE
옵션이 추가되었습니다.
OT_ERROR_INVALID_ARGS
옵션 유형이 마지막 옵션 유형과 같거나 크지 않습니다.
OT_ERROR_NO_BUFS
옵션 길이가 버퍼 크기를 초과합니다.
참고 항목:
otCoapMessageGetOptionUintValue

otCoapMessageAttachUriPathOptions 클래스의 정적 변수

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

Uri-Path 옵션을 추가합니다.

세부정보
매개변수
[in,out] aMessage
CoAP 메시지에 대한 포인터입니다.
[in] aUriPath
NULL로 끝나는 문자열에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
옵션이 추가되었습니다.
OT_ERROR_INVALID_ARGS
옵션 유형이 마지막 옵션 유형과 같거나 크지 않습니다.
OT_ERROR_NO_BUFS
옵션 길이가 버퍼 크기를 초과합니다.

otCoapMessageAttachUriQueryOption

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

단일 Uri-Query 옵션을 추가합니다.

세부정보
매개변수
[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
)

메시지 ID 값을 반환합니다.

세부정보
매개변수
[in] aMessage
CoAP 메시지에 대한 포인터입니다.
반환
메시지 ID 값입니다.

otCoapMessageGetToken

const uint8_t * otCoapMessageGetToken(
  const otMessage *aMessage
)

Token 값에 대한 포인터를 반환합니다.

세부정보
매개변수
[in] aMessage
CoAP 메시지에 대한 포인터입니다.
반환
Token 값에 대한 포인터입니다.

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
)

페이로드의 시작을 나타내는 페이로드 마커를 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
Token 값에 대한 포인터입니다.
[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
)

현재 값이 https://tools.ietf.org/html/rfc7252#section-3.2에 따라 인코딩된 부호 없는 정수라고 가정하고 현재 옵션 값을 aValue에 채웁니다.

세부정보
매개변수
[in,out] aIterator
CoAP 메시지 옵션 반복자에 대한 포인터입니다.
[out] aValue
옵션 값을 받을 부호 없는 정수에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
값을 채웠습니다.
OT_ERROR_NOT_FOUND
현재 옵션이 없습니다.
OT_ERROR_NO_BUFS
값이 너무 길어 uint64_t에 맞지 않습니다.
참고 항목:
otCoapMessageAttachUintOption

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
리소스에 대한 포인터입니다.

otCoap리소스 삭제

void otCoapRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

CoAP 서버에서 리소스를 삭제합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aResource
리소스에 대한 포인터입니다.

otCoapSendRequest

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

CoAP 요청을 전송합니다.

요청에 대한 응답이 예상되면 해당 기능과 컨텍스트 정보를 제공해야 합니다. 응답이 예상되지 않는 경우 이러한 인수는 NULL 포인터여야 합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aMessage
전송할 메시지의 포인터입니다.
[in] aMessageInfo
aMessage와 연결된 메시지 정보의 포인터입니다.
[in] aHandler
응답 수신 또는 제한 시간 시에 호출해야 하는 함수 포인터입니다.
[in] aContext
임의의 컨텍스트 정보에 대한 포인터입니다. 사용하지 않을 경우 NULL일 수 있습니다.
반환 값
OT_ERROR_NONE
CoAP 메시지를 보냈습니다.
OT_ERROR_NO_BUFS
재전송 데이터를 할당할 수 없습니다.

otCoapSendRequestBlockWise

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

블록별로 CoAP 요청을 전송합니다.

OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 구성이 사용 설정된 경우 사용할 수 있습니다.

요청에 대한 응답이 예상되면 해당 기능과 컨텍스트 정보를 제공해야 합니다. 응답이 블록 단위여야 하는 경우 각 후크 함수를 제공해야 합니다. 응답이 예상되지 않는 경우 이러한 인수는 NULL 포인터여야 합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aMessage
전송할 메시지의 포인터입니다.
[in] aMessageInfo
aMessage와 연결된 메시지 정보의 포인터입니다.
[in] aHandler
응답 수신 또는 제한 시간 시에 호출해야 하는 함수 포인터입니다.
[in] aContext
임의의 컨텍스트 정보에 대한 포인터입니다. 사용하지 않을 경우 NULL일 수 있습니다.
[in] aTransmitHook
발신 블록별 전송을 위한 후크 함수에 대한 포인터입니다.
[in] aReceiveHook
수신되는 블록별 전송을 위한 후크 함수에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
CoAP 메시지를 보냈습니다.
OT_ERROR_NO_BUFS
재전송 데이터를 할당할 수 없습니다.

otCoapSendRequestBlockWiseWithParameters

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

맞춤 전송 매개변수를 사용하여 블록별로 CoAP 요청을 전송합니다.

OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE 구성이 사용 설정된 경우 사용할 수 있습니다.

요청에 대한 응답이 예상되면 해당 기능과 컨텍스트 정보를 제공해야 합니다. 응답이 블록 단위여야 하는 경우 각 후크 함수를 제공해야 합니다. 응답이 예상되지 않는 경우 이러한 인수는 NULL 포인터여야 합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aMessage
전송할 메시지의 포인터입니다.
[in] aMessageInfo
aMessage와 연결된 메시지 정보의 포인터입니다.
[in] aHandler
응답 수신 또는 제한 시간 시에 호출해야 하는 함수 포인터입니다.
[in] aContext
임의의 컨텍스트 정보에 대한 포인터입니다. 사용하지 않을 경우 NULL일 수 있습니다.
[in] aTxParameters
이 요청의 전송 매개변수에 대한 포인터입니다. 기본값에는 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
잘못된 인수가 제공되었습니다.

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 코드 값을 정의하는 도우미 매크로입니다.

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

OpenThread에서 지원하는 최소 ACK 제한 시간(밀리초)입니다.

OT_DEFAULT_COAP_PORT

 OT_DEFAULT_COAP_PORT 5683

RFC 7252에 지정된 기본 CoAP 포트입니다.

자료

OpenThread API 참조 주제는 GitHub에서 제공되는 소스 코드에서 가져옵니다. 자세한 내용을 알아보거나 문서에 참여하려면 리소스를 참고하세요.