This module includes functions that control CoAP communication.
Classes |
|
| struct | otCoapOption |
|
This structure represents a CoAP option.
|
|
| struct | otCoapOptionIterator |
|
This structure acts as an iterator for CoAP options.
|
|
| struct | otCoapResource |
|
This structure represents a CoAP resource.
|
|
| struct | otCoapTxParameters |
|
This structure represents the CoAP transmission parameters.
|
|
Macros |
|
| #define | OT_DEFAULT_COAP_PORT 5683 |
|
Default CoAP port, as specified in RFC 7252.
|
|
| #define | OT_COAP_DEFAULT_TOKEN_LENGTH 2 |
|
Default token length.
|
|
| #define | OT_COAP_MAX_TOKEN_LENGTH 8 |
|
Max token length as specified (RFC 7252).
|
|
| #define | OT_COAP_MAX_RETRANSMIT 20 |
|
Max retransmit supported by OpenThread.
|
|
| #define | OT_COAP_MIN_ACK_TIMEOUT 1000 |
|
Minimal ACK timeout in milliseconds supported by OpenThread.
|
|
| #define | OT_COAP_CODE (c, d) ((((c)&0x7) << 5) | ((d)&0x1f)) |
|
Helper macro to define CoAP Code values.
|
|
Typedefs |
|
| typedef enum otCoapType | otCoapType |
|
CoAP Type values (2 bit unsigned integer).
|
|
| typedef enum otCoapCode | otCoapCode |
|
CoAP Code values.
|
|
| typedef enum otCoapOptionType | otCoapOptionType |
|
CoAP Option Numbers.
|
|
| typedef enum otCoapBlockSize | otCoapBlockSize |
|
CoAP Block Size Exponents.
|
|
| typedef struct otCoapOption | otCoapOption |
|
This structure represents a CoAP option.
|
|
| typedef struct otCoapOptionIterator | otCoapOptionIterator |
|
This structure acts as an iterator for CoAP options.
|
|
| typedef enum otCoapOptionContentFormat | otCoapOptionContentFormat |
|
CoAP Content Format codes.
|
|
| typedef void(* | otCoapResponseHandler ) (void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) |
|
This function pointer is called when a CoAP response is received or on the request timeout.
|
|
| typedef void(* | otCoapRequestHandler ) (void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) |
|
This function pointer is called when a CoAP request with a given Uri-Path is received.
|
|
| typedef struct otCoapResource | otCoapResource |
|
This structure represents a CoAP resource.
|
|
| typedef struct otCoapTxParameters | otCoapTxParameters |
|
This structure represents the CoAP transmission parameters.
|
|
Functions |
|
| void | otCoapMessageInit ( otMessage *aMessage, otCoapType aType, otCoapCode aCode) |
|
This function initializes the CoAP header.
|
|
| otError | otCoapMessageInitResponse ( otMessage *aResponse, const otMessage *aRequest, otCoapType aType, otCoapCode aCode) |
|
This function initializes a response message.
|
|
| otError | otCoapMessageSetToken ( otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength) |
|
This function sets the Token value and length in a header.
|
|
| void | otCoapMessageGenerateToken ( otMessage *aMessage, uint8_t aTokenLength) |
|
This function sets the Token length and randomizes its value.
|
|
| otError | otCoapMessageAppendContentFormatOption ( otMessage *aMessage, otCoapOptionContentFormat aContentFormat) |
|
This function appends the Content Format CoAP option as specified in
https://tools.ietf.org/html/rfc7252#page-92
.
|
|
| otError | otCoapMessageAppendOption ( otMessage *aMessage, uint16_t aNumber, uint16_t aLength, const void *aValue) |
|
This function appends a CoAP option in a header.
|
|
| otError | otCoapMessageAppendUintOption ( otMessage *aMessage, uint16_t aNumber, uint32_t aValue) |
|
This function appends an unsigned integer CoAP option as specified in
https://tools.ietf.org/html/rfc7252#section-3.2
.
|
|
| otError | otCoapMessageAppendObserveOption ( otMessage *aMessage, uint32_t aObserve) |
|
This function appends an Observe option.
|
|
| otError | otCoapMessageAppendUriPathOptions ( otMessage *aMessage, const char *aUriPath) |
|
This function appends a Uri-Path option.
|
|
| uint16_t | otCoapBlockSizeFromExponent ( otCoapBlockSize aSize) |
|
This function converts a CoAP Block option SZX field to the actual block size.
|
|
| otError | otCoapMessageAppendBlock2Option ( otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSize aSize) |
|
This function appends a Block2 option.
|
|
| otError | otCoapMessageAppendBlock1Option ( otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSize aSize) |
|
This function appends a Block1 option.
|
|
| otError | otCoapMessageAppendProxyUriOption ( otMessage *aMessage, const char *aUriPath) |
|
This function appends a Proxy-Uri option.
|
|
| otError | otCoapMessageAppendMaxAgeOption ( otMessage *aMessage, uint32_t aMaxAge) |
|
This function appends a Max-Age option.
|
|
| otError | otCoapMessageAppendUriQueryOption ( otMessage *aMessage, const char *aUriQuery) |
|
This function appends a single Uri-Query option.
|
|
| otError | otCoapMessageSetPayloadMarker ( otMessage *aMessage) |
|
This function adds Payload Marker indicating beginning of the payload to the CoAP header.
|
|
| otCoapType | otCoapMessageGetType (const otMessage *aMessage) |
|
This function returns the Type value.
|
|
| otCoapCode | otCoapMessageGetCode (const otMessage *aMessage) |
|
This function returns the Code value.
|
|
| const char * | otCoapMessageCodeToString (const otMessage *aMessage) |
|
This method returns the CoAP Code as human readable string.
|
|
| uint16_t | otCoapMessageGetMessageId (const otMessage *aMessage) |
|
This function returns the Message ID value.
|
|
| uint8_t | otCoapMessageGetTokenLength (const otMessage *aMessage) |
|
This function returns the Token length.
|
|
| const uint8_t * | otCoapMessageGetToken (const otMessage *aMessage) |
|
This function returns a pointer to the Token value.
|
|
| otError | otCoapOptionIteratorInit ( otCoapOptionIterator *aIterator, const otMessage *aMessage) |
|
This function initialises an iterator for the options in the given message.
|
|
| const otCoapOption * | otCoapOptionIteratorGetFirstOptionMatching ( otCoapOptionIterator *aIterator, uint16_t aOption) |
|
This function returns a pointer to the first option matching the specified option number.
|
|
| const otCoapOption * | otCoapOptionIteratorGetFirstOption ( otCoapOptionIterator *aIterator) |
|
This function returns a pointer to the first option.
|
|
| const otCoapOption * | otCoapOptionIteratorGetNextOptionMatching ( otCoapOptionIterator *aIterator, uint16_t aOption) |
|
This function returns a pointer to the next option matching the specified option number.
|
|
| const otCoapOption * | otCoapOptionIteratorGetNextOption ( otCoapOptionIterator *aIterator) |
|
This function returns a pointer to the next option.
|
|
| otError | otCoapOptionIteratorGetOptionUintValue ( otCoapOptionIterator *aIterator, uint64_t *aValue) |
This function fills current option value into
aValue
assuming the current value is an unsigned integer encoded according to
https://tools.ietf.org/html/rfc7252#section-3.2
.
|
|
| otError | otCoapOptionIteratorGetOptionValue ( otCoapOptionIterator *aIterator, void *aValue) |
This function fills current option value into
aValue
.
|
|
| otMessage * | otCoapNewMessage ( otInstance *aInstance, const otMessageSettings *aSettings) |
|
This function creates a new CoAP message.
|
|
| otError | otCoapSendRequestWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters) |
|
This function sends a CoAP request with custom transmission parameters.
|
|
| static otError | otCoapSendRequest ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext) |
|
This function sends a CoAP request.
|
|
| otError | otCoapStart ( otInstance *aInstance, uint16_t aPort) |
|
This function starts the CoAP server.
|
|
| otError | otCoapStop ( otInstance *aInstance) |
|
This function stops the CoAP server.
|
|
| void | otCoapAddResource ( otInstance *aInstance, otCoapResource *aResource) |
|
This function adds a resource to the CoAP server.
|
|
| void | otCoapRemoveResource ( otInstance *aInstance, otCoapResource *aResource) |
|
This function removes a resource from the CoAP server.
|
|
| void | otCoapSetDefaultHandler ( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext) |
|
This function sets the default handler for unhandled CoAP requests.
|
|
| otError | otCoapSendResponseWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters) |
|
This function sends a CoAP response from the server with custom transmission parameters.
|
|
| static otError | otCoapSendResponse ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo) |
|
This function sends a CoAP response from the server.
|
|
Detailed Description
This module includes functions that control CoAP communication.
The functions in this module are available when CoAP API feature (
OPENTHREAD_CONFIG_COAP_API_ENABLE
) is enabled.
Typedef Documentation
◆ otCoapOptionContentFormat
| typedef enum otCoapOptionContentFormat otCoapOptionContentFormat |
CoAP Content Format codes.
The full list is documented at https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats
◆ otCoapOptionIterator
| typedef struct otCoapOptionIterator otCoapOptionIterator |
This structure acts as an iterator for CoAP options.
◆ otCoapRequestHandler
| typedef void(* otCoapRequestHandler) (void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) |
This function pointer is called when a CoAP request with a given Uri-Path is received.
- Parameters
-
[in] aContextA pointer to arbitrary context information. [in] aMessageA pointer to the message. [in] aMessageInfoA pointer to the message info for aMessage.
◆ otCoapResponseHandler
| typedef void(* otCoapResponseHandler) (void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) |
This function pointer is called when a CoAP response is received or on the request timeout.
- Parameters
-
[in] aContextA pointer to application-specific context. [in] aMessageA pointer to the message buffer containing the response. NULL if no response was received. [in] aMessageInfoA pointer to the message info for aMessage. NULL if no response was received.[in] aResultA result of the CoAP transaction.
- Return values
-
OT_ERROR_NONEA response was received successfully. OT_ERROR_ABORTA CoAP transaction was reset by peer. OT_ERROR_RESPONSE_TIMEOUTNo response or acknowledgment received during timeout period.
◆ otCoapTxParameters
| typedef struct otCoapTxParameters otCoapTxParameters |
This structure represents the CoAP transmission parameters.
- Note
- mAckTimeout * ((2 ** (mMaxRetransmit + 1)) - 1) * (mAckRandomFactorNumerator / mAckRandomFactorDenominator) must not exceed what can be represented by a uint32_t (0xffffffff). This limitation allows OpenThread to avoid 64-bit arithmetic.
Enumeration Type Documentation
◆ otCoapCode
| enum otCoapCode |
CoAP Code values.
◆ otCoapOptionContentFormat
CoAP Content Format codes.
The full list is documented at https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats
◆ otCoapOptionType
| enum otCoapOptionType |
CoAP Option Numbers.
◆ otCoapType
| enum otCoapType |
Function Documentation
◆ otCoapAddResource()
| void otCoapAddResource | ( | otInstance * |
aInstance,
|
| otCoapResource * |
aResource
|
||
| ) |
This function adds a resource to the CoAP server.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aResourceA pointer to the resource.
◆ otCoapBlockSizeFromExponent()
| uint16_t otCoapBlockSizeFromExponent | ( | otCoapBlockSize |
aSize
|
) |
This function converts a CoAP Block option SZX field to the actual block size.
- Parameters
-
[in] aSizeBlock size exponent.
- Returns
- The actual size exponent value.
◆ otCoapMessageAppendBlock1Option()
| otError otCoapMessageAppendBlock1Option | ( | otMessage * |
aMessage,
|
| uint32_t |
aNum,
|
||
| bool |
aMore,
|
||
| otCoapBlockSize |
aSize
|
||
| ) |
This function appends a Block1 option.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aNumCurrent block number. [in] aMoreBoolean to indicate more blocks are to be sent. [in] aSizeBlock Size Exponent.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageAppendBlock2Option()
| otError otCoapMessageAppendBlock2Option | ( | otMessage * |
aMessage,
|
| uint32_t |
aNum,
|
||
| bool |
aMore,
|
||
| otCoapBlockSize |
aSize
|
||
| ) |
This function appends a Block2 option.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aNumCurrent block number. [in] aMoreBoolean to indicate more blocks are to be sent. [in] aSizeBlock Size Exponent.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageAppendContentFormatOption()
| otError otCoapMessageAppendContentFormatOption | ( | otMessage * |
aMessage,
|
| otCoapOptionContentFormat |
aContentFormat
|
||
| ) |
This function appends the Content Format CoAP option as specified in https://tools.ietf.org/html/rfc7252#page-92 .
This must be called before setting otCoapMessageSetPayloadMarker if a payload is to be included in the message.
The function is a convenience wrapper around otCoapMessageAppendUintOption, and if the desired format type code isn't listed in otCoapOptionContentFormat, this base function should be used instead.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aContentFormatOne of the content formats listed in otCoapOptionContentFormat above.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageAppendMaxAgeOption()
This function appends a Max-Age option.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aMaxAgeThe Max-Age value.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageAppendObserveOption()
This function appends an Observe option.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aObserveObserve field value.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageAppendOption()
| otError otCoapMessageAppendOption | ( | otMessage * |
aMessage,
|
| uint16_t |
aNumber,
|
||
| uint16_t |
aLength,
|
||
| const void * |
aValue
|
||
| ) |
This function appends a CoAP option in a header.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aNumberThe CoAP Option number. [in] aLengthThe CoAP Option length. [in] aValueA pointer to the CoAP value.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageAppendProxyUriOption()
This function appends a Proxy-Uri option.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aUriPathA pointer to a NULL-terminated string.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageAppendUintOption()
This function appends an unsigned integer CoAP option as specified in https://tools.ietf.org/html/rfc7252#section-3.2 .
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aNumberThe CoAP Option number. [in] aValueThe CoAP Option unsigned integer value.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
- See also
- otCoapMessageGetOptionUintValue
◆ otCoapMessageAppendUriPathOptions()
This function appends a Uri-Path option.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aUriPathA pointer to a NULL-terminated string.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageAppendUriQueryOption()
This function appends a single Uri-Query option.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aUriQueryA pointer to NULL-terminated string, which should contain a single key=value pair.
- Return values
-
OT_ERROR_NONESuccessfully appended the option. OT_ERROR_INVALID_ARGSThe option type is not equal or greater than the last option type. OT_ERROR_NO_BUFSThe option length exceeds the buffer size.
◆ otCoapMessageCodeToString()
| const char* otCoapMessageCodeToString | ( | const otMessage * |
aMessage
|
) |
This method returns the CoAP Code as human readable string.
- Parameters
-
[in] aMessageA pointer to the CoAP message.
@ returns The CoAP Code as string.
◆ otCoapMessageGenerateToken()
| void otCoapMessageGenerateToken | ( | otMessage * |
aMessage,
|
| uint8_t |
aTokenLength
|
||
| ) |
This function sets the Token length and randomizes its value.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aTokenLengthThe Length of a Token to set.
◆ otCoapMessageGetCode()
| otCoapCode otCoapMessageGetCode | ( | const otMessage * |
aMessage
|
) |
This function returns the Code value.
- Parameters
-
[in] aMessageA pointer to the CoAP message.
- Returns
- The Code value.
◆ otCoapMessageGetMessageId()
| uint16_t otCoapMessageGetMessageId | ( | const otMessage * |
aMessage
|
) |
This function returns the Message ID value.
- Parameters
-
[in] aMessageA pointer to the CoAP message.
- Returns
- The Message ID value.
◆ otCoapMessageGetToken()
| const uint8_t* otCoapMessageGetToken | ( | const otMessage * |
aMessage
|
) |
This function returns a pointer to the Token value.
- Parameters
-
[in] aMessageA pointer to the CoAP message.
- Returns
- A pointer to the Token value.
◆ otCoapMessageGetTokenLength()
| uint8_t otCoapMessageGetTokenLength | ( | const otMessage * |
aMessage
|
) |
This function returns the Token length.
- Parameters
-
[in] aMessageA pointer to the CoAP message.
- Returns
- The Token length.
◆ otCoapMessageGetType()
| otCoapType otCoapMessageGetType | ( | const otMessage * |
aMessage
|
) |
This function returns the Type value.
- Parameters
-
[in] aMessageA pointer to the CoAP message.
- Returns
- The Type value.
◆ otCoapMessageInit()
| void otCoapMessageInit | ( | otMessage * |
aMessage,
|
| otCoapType |
aType,
|
||
| otCoapCode |
aCode
|
||
| ) |
This function initializes the CoAP header.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message to initialize. [in] aTypeCoAP message type. [in] aCodeCoAP message code.
◆ otCoapMessageInitResponse()
| otError otCoapMessageInitResponse | ( | otMessage * |
aResponse,
|
| const otMessage * |
aRequest,
|
||
| otCoapType |
aType,
|
||
| otCoapCode |
aCode
|
||
| ) |
This function initializes a response message.
- Note
-
Both message ID and token are set according to
aRequest.
- Parameters
-
[in,out] aResponseA pointer to the CoAP response message. [in] aRequestA pointer to the CoAP request message. [in] aTypeCoAP message type. [in] aCodeCoAP message code.
- Return values
-
OT_ERROR_NONESuccessfully initialized the response message. OT_ERROR_NO_BUFSInsufficient message buffers available to initialize the response message.
◆ otCoapMessageSetPayloadMarker()
This function adds Payload Marker indicating beginning of the payload to the CoAP header.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message.
- Return values
-
OT_ERROR_NONEPayload Marker successfully added. OT_ERROR_NO_BUFSHeader Payload Marker exceeds the buffer size.
◆ otCoapMessageSetToken()
| otError otCoapMessageSetToken | ( | otMessage * |
aMessage,
|
| const uint8_t * |
aToken,
|
||
| uint8_t |
aTokenLength
|
||
| ) |
This function sets the Token value and length in a header.
- Parameters
-
[in,out] aMessageA pointer to the CoAP message. [in] aTokenA pointer to the Token value. [in] aTokenLengthThe Length of aToken.
- Return values
-
OT_ERROR_NONESuccessfully set the Token value. OT_ERROR_NO_BUFSInsufficient buffers to set the Token value.
◆ otCoapNewMessage()
| otMessage * otCoapNewMessage | ( | otInstance * |
aInstance,
|
| const otMessageSettings * |
aSettings
|
||
| ) |
This function creates a new CoAP message.
- Note
-
If
aSettingsis 'NULL', the link layer security is enabled and the message priority is set to OT_MESSAGE_PRIORITY_NORMAL by default.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aSettingsA pointer to the message settings or NULL to set default settings.
- Returns
- A pointer to the message buffer or NULL if no message buffers are available or parameters are invalid.
◆ otCoapOptionIteratorGetFirstOption()
| const otCoapOption * otCoapOptionIteratorGetFirstOption | ( | otCoapOptionIterator * |
aIterator
|
) |
This function returns a pointer to the first option.
- Parameters
-
[in,out] aIteratorA pointer to the CoAP message option iterator.
- Returns
- A pointer to the first option. If no option is present NULL pointer is returned.
◆ otCoapOptionIteratorGetFirstOptionMatching()
| const otCoapOption * otCoapOptionIteratorGetFirstOptionMatching | ( | otCoapOptionIterator * |
aIterator,
|
| uint16_t |
aOption
|
||
| ) |
This function returns a pointer to the first option matching the specified option number.
- Parameters
-
[in] aIteratorA pointer to the CoAP message option iterator. [in] aOptionThe option number sought.
- Returns
- A pointer to the first matching option. If no matching option is present NULL pointer is returned.
◆ otCoapOptionIteratorGetNextOption()
| const otCoapOption * otCoapOptionIteratorGetNextOption | ( | otCoapOptionIterator * |
aIterator
|
) |
This function returns a pointer to the next option.
- Parameters
-
[in,out] aIteratorA pointer to the CoAP message option iterator.
- Returns
- A pointer to the next option. If no more options are present NULL pointer is returned.
◆ otCoapOptionIteratorGetNextOptionMatching()
| const otCoapOption * otCoapOptionIteratorGetNextOptionMatching | ( | otCoapOptionIterator * |
aIterator,
|
| uint16_t |
aOption
|
||
| ) |
This function returns a pointer to the next option matching the specified option number.
- Parameters
-
[in] aIteratorA pointer to the CoAP message option iterator. [in] aOptionThe option number sought.
- Returns
- A pointer to the next matching option. If no further matching option is present NULL pointer is returned.
◆ otCoapOptionIteratorGetOptionUintValue()
| otError otCoapOptionIteratorGetOptionUintValue | ( | otCoapOptionIterator * |
aIterator,
|
| uint64_t * |
aValue
|
||
| ) |
This function fills current option value into
aValue
assuming the current value is an unsigned integer encoded according to
https://tools.ietf.org/html/rfc7252#section-3.2
.
- Parameters
-
[in,out] aIteratorA pointer to the CoAP message option iterator. [out] aValueA pointer to an unsigned integer to receive the option value.
- Return values
-
OT_ERROR_NONESuccessfully filled value. OT_ERROR_NOT_FOUNDNo current option. OT_ERROR_NO_BUFSValue is too long to fit in a uint64_t.
- See also
- otCoapMessageAppendUintOption
◆ otCoapOptionIteratorGetOptionValue()
| otError otCoapOptionIteratorGetOptionValue | ( | otCoapOptionIterator * |
aIterator,
|
| void * |
aValue
|
||
| ) |
This function fills current option value into
aValue
.
- Parameters
-
[in,out] aIteratorA pointer to the CoAP message option iterator. [out] aValueA pointer to a buffer to receive the option value.
- Return values
-
OT_ERROR_NONESuccessfully filled value. OT_ERROR_NOT_FOUNDNo current option.
◆ otCoapOptionIteratorInit()
| otError otCoapOptionIteratorInit | ( | otCoapOptionIterator * |
aIterator,
|
| const otMessage * |
aMessage
|
||
| ) |
This function initialises an iterator for the options in the given message.
- Parameters
-
[in,out] aIteratorA pointer to the CoAP message option iterator. [in] aMessageA pointer to the CoAP message.
- Return values
-
OT_ERROR_NONESuccessfully initialised. OT_ERROR_PARSEMessage state is inconsistent.
◆ otCoapRemoveResource()
| void otCoapRemoveResource | ( | otInstance * |
aInstance,
|
| otCoapResource * |
aResource
|
||
| ) |
This function removes a resource from the CoAP server.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aResourceA pointer to the resource.
◆ otCoapSendRequest()
|
inline static |
This function sends a CoAP request.
If a response for a request is expected, respective function and context information should be provided. If no response is expected, these arguments should be NULL pointers.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aMessageA pointer to the message to send. [in] aMessageInfoA pointer to the message info associated with aMessage.[in] aHandlerA function pointer that shall be called on response reception or timeout. [in] aContextA pointer to arbitrary context information. May be NULL if not used.
- Return values
-
OT_ERROR_NONESuccessfully sent CoAP message. OT_ERROR_NO_BUFSFailed to allocate retransmission data.
◆ otCoapSendRequestWithParameters()
| otError otCoapSendRequestWithParameters | ( | otInstance * |
aInstance,
|
| otMessage * |
aMessage,
|
||
| const otMessageInfo * |
aMessageInfo,
|
||
| otCoapResponseHandler |
aHandler,
|
||
| void * |
aContext,
|
||
| const otCoapTxParameters * |
aTxParameters
|
||
| ) |
This function sends a CoAP request with custom transmission parameters.
If a response for a request is expected, respective function and context information should be provided. If no response is expected, these arguments should be NULL pointers.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aMessageA pointer to the message to send. [in] aMessageInfoA pointer to the message info associated with aMessage.[in] aHandlerA function pointer that shall be called on response reception or timeout. [in] aContextA pointer to arbitrary context information. May be NULL if not used. [in] aTxParametersA pointer to transmission parameters for this request. Use NULL for defaults. Otherwise, parameters given must meet the following conditions: - mMaxRetransmit is no more than OT_COAP_MAX_RETRANSMIT.
- mAckRandomFactorNumerator / mAckRandomFactorDenominator must not be below 1.0.
- The calculated exchange life time must not overflow uint32_t.
- Return values
-
OT_ERROR_INVALID_ARGSaTxParametersis invalid.OT_ERROR_NONESuccessfully sent CoAP message. OT_ERROR_NO_BUFSFailed to allocate retransmission data.
◆ otCoapSendResponse()
|
inline static |
This function sends a CoAP response from the server.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aMessageA pointer to the CoAP response to send. [in] aMessageInfoA pointer to the message info associated with aMessage.
- Return values
-
OT_ERROR_NONESuccessfully enqueued the CoAP response message. OT_ERROR_NO_BUFSInsufficient buffers available to send the CoAP response.
◆ otCoapSendResponseWithParameters()
| otError otCoapSendResponseWithParameters | ( | otInstance * |
aInstance,
|
| otMessage * |
aMessage,
|
||
| const otMessageInfo * |
aMessageInfo,
|
||
| const otCoapTxParameters * |
aTxParameters
|
||
| ) |
This function sends a CoAP response from the server with custom transmission parameters.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aMessageA pointer to the CoAP response to send. [in] aMessageInfoA pointer to the message info associated with aMessage.[in] aTxParametersA pointer to transmission parameters for this response. Use NULL for defaults.
- Return values
-
OT_ERROR_NONESuccessfully enqueued the CoAP response message. OT_ERROR_NO_BUFSInsufficient buffers available to send the CoAP response.
◆ otCoapSetDefaultHandler()
| void otCoapSetDefaultHandler | ( | otInstance * |
aInstance,
|
| otCoapRequestHandler |
aHandler,
|
||
| void * |
aContext
|
||
| ) |
This function sets the default handler for unhandled CoAP requests.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aHandlerA function pointer that shall be called when an unhandled request arrives. [in] aContextA pointer to arbitrary context information. May be NULL if not used.
◆ otCoapStart()
| otError otCoapStart | ( | otInstance * |
aInstance,
|
| uint16_t |
aPort
|
||
| ) |
This function starts the CoAP server.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance. [in] aPortThe local UDP port to bind to.
- Return values
-
OT_ERROR_NONESuccessfully started the CoAP server. OT_ERROR_FAILEDFailed to start the CoAP server.
◆ otCoapStop()
| otError otCoapStop | ( | otInstance * |
aInstance
|
) |
This function stops the CoAP server.
- Parameters
-
[in] aInstanceA pointer to an OpenThread instance.
- Return values
-
OT_ERROR_NONESuccessfully stopped the CoAP server.