CoAP

Этот модуль включает функции, которые управляют связью CoAP.

Резюме

Функции в этом модуле доступны при включенной функции COAP API ( OPENTHREAD_CONFIG_COAP_API_ENABLE ) включена.

Перечисления

otCoapBlockSzx перечислить
Показатели размера блока 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))
}
перечислить
Значения кода 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
}
перечислить
Коды формата содержимого 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
}
перечислить
Номера опций CoAP.
otCoapType {
OT_COAP_TYPE_CONFIRMABLE = 0,
OT_COAP_TYPE_NON_CONFIRMABLE = 1,
OT_COAP_TYPE_ACKNOWLEDGMENT = 2,
OT_COAP_TYPE_RESET = 3
}
перечислить
Значения типа CoAP (2-битное целое число без знака).

Typedefs

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
Значения кода CoAP.
otCoapOption typedef
struct otCoapOption
Эта структура представляет собой вариант CoAP.
otCoapOptionContentFormat typedef
Коды формата содержимого CoAP.
otCoapOptionIterator typedef
Эта структура действует как итератор для опций CoAP.
otCoapOptionType typedef
Номера опций CoAP.
otCoapRequestHandler )(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
void(*
Этот указатель на функцию вызывается при получении запроса CoAP с заданным Uri-Path.
otCoapResource typedef
Эта структура представляет ресурс CoAP.
otCoapResponseHandler )(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) typedef
void(*
Этот указатель на функцию вызывается при получении ответа CoAP или по истечении времени ожидания запроса.
otCoapTxParameters typedef
Эта структура представляет параметры передачи CoAP.
otCoapType typedef
Значения типа CoAP (2-битное целое число без знака).

Функции

otCoapAddBlockWiseResource ( otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Эта функция добавляет блочный ресурс к серверу CoAP.
otCoapAddResource ( otInstance *aInstance, otCoapResource *aResource)
void
Эта функция добавляет ресурс к серверу CoAP.
otCoapBlockSizeFromExponent ( otCoapBlockSzx aSize)
uint16_t
Эта функция преобразует поле SZX параметра блока CoAP в фактический размер блока.
otCoapMessageAppendBlock1Option ( otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
Эта функция добавляет параметр Block1.
otCoapMessageAppendBlock2Option ( otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
Эта функция добавляет параметр Block2.
otCoapMessageAppendContentFormatOption ( otMessage *aMessage, otCoapOptionContentFormat aContentFormat)
Эта функция добавляет Content параметр Формат COAP , как указано в https://tools.ietf.org/html/rfc7252#page-92 .
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)
Эта функция добавляет беззнаковое целое число , параметр COAP , как указано в https://tools.ietf.org/html/rfc7252#section-3.2 .
otCoapMessageAppendUriPathOptions ( otMessage *aMessage, const char *aUriPath)
Эта функция добавляет параметр Uri-Path.
otCoapMessageAppendUriQueryOption ( otMessage *aMessage, const char *aUriQuery)
Эта функция добавляет одну опцию Uri-Query.
otCoapMessageCodeToString (const otMessage *aMessage)
const char *
Этот метод возвращает код CoAP в виде удобочитаемой строки.
otCoapMessageGenerateToken ( otMessage *aMessage, uint8_t aTokenLength)
void
Эта функция устанавливает длину токена и рандомизирует его значение.
otCoapMessageGetCode (const otMessage *aMessage)
Эта функция возвращает значение кода.
otCoapMessageGetMessageId (const otMessage *aMessage)
uint16_t
Эта функция возвращает значение идентификатора сообщения.
otCoapMessageGetToken (const otMessage *aMessage)
const uint8_t *
Эта функция возвращает указатель на значение токена.
otCoapMessageGetTokenLength (const otMessage *aMessage)
uint8_t
Эта функция возвращает длину токена.
otCoapMessageGetType (const otMessage *aMessage)
Эта функция возвращает значение типа.
otCoapMessageInit ( otMessage *aMessage, otCoapType aType, otCoapCode aCode)
void
Эта функция инициализирует заголовок CoAP.
otCoapMessageInitResponse ( otMessage *aResponse, const otMessage *aRequest, otCoapType aType, otCoapCode aCode)
Эта функция инициализирует ответное сообщение.
otCoapMessageSetPayloadMarker ( otMessage *aMessage)
Эта функция добавляет маркер полезной нагрузки, указывающий начало полезной нагрузки, в заголовок CoAP.
otCoapMessageSetToken ( otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength)
Эта функция устанавливает значение и длину токена в заголовке.
otCoapNewMessage ( otInstance *aInstance, const otMessageSettings *aSettings)
Эта функция создает новое сообщение CoAP.
otCoapOptionIteratorGetFirstOption ( otCoapOptionIterator *aIterator)
const otCoapOption *
Эта функция возвращает указатель на первую опцию.
otCoapOptionIteratorGetFirstOptionMatching ( otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Эта функция возвращает указатель на первую опцию, соответствующую указанному номеру опции.
otCoapOptionIteratorGetNextOption ( otCoapOptionIterator *aIterator)
const otCoapOption *
Эта функция возвращает указатель на следующую опцию.
otCoapOptionIteratorGetNextOptionMatching ( otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Эта функция возвращает указатель на следующую опцию, соответствующую указанному номеру опции.
otCoapOptionIteratorGetOptionUintValue ( otCoapOptionIterator *aIterator, uint64_t *aValue)
Эта функция заполняет текущее значение параметра в aValue предполагая , что текущее значение представляет собой целое число без знака кодируется согласно https://tools.ietf.org/html/rfc7252#section-3.2 .
otCoapOptionIteratorGetOptionValue ( otCoapOptionIterator *aIterator, void *aValue)
Эта функция заполняет текущее значение параметра в aValue .
otCoapOptionIteratorInit ( otCoapOptionIterator *aIterator, const otMessage *aMessage)
Эта функция инициализирует итератор для параметров в данном сообщении.
otCoapRemoveBlockWiseResource ( otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Эта функция удаляет блочный ресурс с сервера CoAP.
otCoapRemoveResource ( otInstance *aInstance, otCoapResource *aResource)
void
Эта функция удаляет ресурс с сервера CoAP.
otCoapSendRequest ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext)
Эта функция отправляет запрос CoAP.
otCoapSendRequestBlockWise ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Эта функция отправляет запрос CoAP по блокам.
otCoapSendRequestBlockWiseWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Эта функция отправляет запрос CoAP по блокам с настраиваемыми параметрами передачи.
otCoapSendRequestWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters)
Эта функция отправляет запрос CoAP с настраиваемыми параметрами передачи.
otCoapSendResponse ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
Эта функция отправляет ответ CoAP от сервера.
otCoapSendResponseBlockWise ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Эта функция отправляет ответ CoAP от сервера по блокам.
otCoapSendResponseBlockWiseWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Эта функция отправляет ответ CoAP с сервера по частям с настраиваемыми параметрами передачи.
otCoapSendResponseWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters)
Эта функция отправляет ответ CoAP от сервера с настраиваемыми параметрами передачи.
otCoapSetDefaultHandler ( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
void
Эта функция устанавливает обработчик по умолчанию для необработанных запросов CoAP.
otCoapStart ( otInstance *aInstance, uint16_t aPort)
Эта функция запускает сервер CoAP.
otCoapStop ( otInstance *aInstance)
Эта функция останавливает сервер CoAP.

Структуры

otCoapBlockwiseResource

Эта структура представляет ресурс CoAP с блочной передачей.

otCoapOption

Эта структура представляет собой вариант CoAP.

otCoapOptionIterator

Эта структура действует как итератор для опций CoAP.

otCoapResource

Эта структура представляет ресурс CoAP.

otCoapTxParameters

Эта структура представляет параметры передачи CoAP.

Перечисления

otCoapBlockSzx

 otCoapBlockSzx

Показатели размера блока CoAP.

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 Request Entity Incomplete.

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

приложение / cose; cose-type = "cose-encrypt": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0

приложение / cose; cose-type = "cose-encrypt0": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY

приложение / cose-key: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET

приложение / набор-ключей: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC

приложение / cose; cose-type = "cose-mac": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0

приложение / cose; cose-type = "cose-mac0": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN

приложение / cose; cose-type = "cose-sign": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1

приложение / cose; cose-type = "cose-sign1": [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_CWT

application / cwt: [RFC8392]

OT_COAP_OPTION_CONTENT_FORMAT_EXI

application / exi: [«Эффективный формат обмена XML (EXI) 1.0 (второе издание)», февраль 2014 г.]

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

приложение / формат ссылки: [RFC6690]

OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON

application / merge-patch + json: [RFC7396]

OT_COAP_OPTION_CONTENT_FORMAT_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

текст / простой; 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

Блок1 (RFC7959)

OT_COAP_OPTION_BLOCK2

Block2 (RFC7959)

OT_COAP_OPTION_CONTENT_FORMAT

Контент-формат.

OT_COAP_OPTION_E_TAG

ETag.

OT_COAP_OPTION_IF_MATCH

Если-совпадение.

OT_COAP_OPTION_IF_NONE_MATCH

Если-Нет-Совпадение.

OT_COAP_OPTION_LOCATION_PATH

Местоположение-Путь.

OT_COAP_OPTION_LOCATION_QUERY

Местоположение-запрос.

OT_COAP_OPTION_MAX_AGE

Макс-возраст.

OT_COAP_OPTION_OBSERVE

Соблюдайте [RFC7641].

OT_COAP_OPTION_PROXY_SCHEME

Прокси-схема.

OT_COAP_OPTION_PROXY_URI

Прокси-Ури.

OT_COAP_OPTION_SIZE1

Размер1.

OT_COAP_OPTION_SIZE2

Размер2 (RFC7959)

OT_COAP_OPTION_URI_HOST

Ури-Хост.

OT_COAP_OPTION_URI_PATH

Ури-Путь.

OT_COAP_OPTION_URI_PORT

Ури-Порт.

OT_COAP_OPTION_URI_QUERY

Uri-Query.

otCoapType

 otCoapType

Значения типа CoAP (2-битное целое число без знака).

Характеристики
OT_COAP_TYPE_ACKNOWLEDGMENT

Подтверждение.

OT_COAP_TYPE_CONFIRMABLE

Подтверждаемый.

OT_COAP_TYPE_NON_CONFIRMABLE

Не подтверждается.

OT_COAP_TYPE_RESET

Сброс настроек.

Typedefs

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)

Этот указатель на функцию вызывается при получении запроса CoAP с заданным Uri-Path.

Подробности
Параметры
[in] aContext
Указатель на произвольную контекстную информацию.
[in] aMessage
Указатель на сообщение.
[in] aMessageInfo
Указатель на информационное сообщение для aMessage .

otCoapResource

struct otCoapResource otCoapResource

Эта структура представляет ресурс CoAP.

otCoapResponseHandler

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

Этот указатель на функцию вызывается при получении ответа CoAP или по истечении времени ожидания запроса.

Подробности
Параметры
[in] aContext
Указатель на контекст приложения.
[in] aMessage
Указатель на буфер сообщений, содержащий ответ. NULL, если ответа не было.
[in] aMessageInfo
Указатель на информационное сообщение для aMessage . NULL, если ответа не было.
[in] aResult
Результат транзакции CoAP.
Возвращаемые значения
OT_ERROR_NONE
Ответ был успешно получен.
OT_ERROR_ABORT
Транзакция CoAP была сброшена одноранговым узлом.
OT_ERROR_RESPONSE_TIMEOUT
В течение периода ожидания не получено ни ответа, ни подтверждения.

otCoapTxParameters

struct otCoapTxParameters otCoapTxParameters

Эта структура представляет параметры передачи CoAP.

otCoapType

enum otCoapType otCoapType

Значения типа CoAP (2-битное целое число без знака).

Функции

otCoapAddBlockWiseResource

void otCoapAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Эта функция добавляет блочный ресурс к серверу CoAP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aResource
Указатель на ресурс.

otCoapAddResource

void otCoapAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Эта функция добавляет ресурс к серверу CoAP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aResource
Указатель на ресурс.

otCoapBlockSizeFromExponent

uint16_t otCoapBlockSizeFromExponent(
  otCoapBlockSzx aSize
)

Эта функция преобразует поле SZX параметра блока CoAP в фактический размер блока.

Подробности
Параметры
[in] aSize
Показатель размера блока.
Возврат
Фактическое значение показателя размера.

otCoapMessageAppendBlock1Option

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

Эта функция добавляет параметр Block1.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aNum
Номер текущего блока.
[in] aMore
Логическое значение, указывающее, что нужно отправить больше блоков.
[in] aSize
Показатель размера блока.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageAppendBlock2Option

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

Эта функция добавляет параметр Block2.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aNum
Номер текущего блока.
[in] aMore
Логическое значение, указывающее, что нужно отправить больше блоков.
[in] aSize
Показатель размера блока.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageAppendContentFormatOption

otError otCoapMessageAppendContentFormatOption(
  otMessage *aMessage,
  otCoapOptionContentFormat aContentFormat
)

Эта функция добавляет Content параметр Формат COAP , как указано в https://tools.ietf.org/html/rfc7252#page-92 .

Это должно быть названо перед установкой otCoapMessageSetPayloadMarker , если полезная нагрузка должны быть включены в сообщении.

Функция представляет собой удобную оболочку для otCoapMessageAppendUintOption, и если код желаемого типа формата не указан в otCoapOptionContentFormat, вместо нее следует использовать эту базовую функцию.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aContentFormat
Один из форматов содержимого, перечисленных в otCoapOptionContentFormat выше.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageAppendMaxAgeOption

otError otCoapMessageAppendMaxAgeOption(
  otMessage *aMessage,
  uint32_t aMaxAge
)

Эта функция добавляет параметр Max-Age.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aMaxAge
Значение Max-Age.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageAppendObserveOption

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

Эта функция добавляет параметр наблюдения.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aObserve
Обратите внимание на значение поля.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции и не превышает его.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageAppendOption

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

Эта функция добавляет параметр CoAP в заголовок.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aNumber
Номер варианта CoAP.
[in] aLength
Длина опции CoAP.
[in] aValue
Указатель на значение CoAP.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageAppendProxyUriOption

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

Эта функция добавляет параметр Proxy-Uri.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aUriPath
Указатель на строку с завершающим нулем.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageAppendUintOption

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

Эта функция добавляет беззнаковое целое число , параметр COAP , как указано в https://tools.ietf.org/html/rfc7252#section-3.2 .

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aNumber
Номер варианта CoAP.
[in] aValue
Целочисленное значение параметра CoAP Option.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.
Смотрите также:
otCoapMessageGetOptionUintValue

otCoapMessageAppendUriPathOptions

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

Эта функция добавляет параметр Uri-Path.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aUriPath
Указатель на строку с завершающим нулем.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageAppendUriQueryOption

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

Эта функция добавляет одну опцию Uri-Query.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aUriQuery
Указатель на строку с завершающим NULL, которая должна содержать одну пару ключ = значение.
Возвращаемые значения
OT_ERROR_NONE
Вариант успешно добавлен.
OT_ERROR_INVALID_ARGS
Тип опции не равен последнему типу опции или не превышает ее.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

otCoapMessageCodeToString

const char * otCoapMessageCodeToString(
  const otMessage *aMessage
)

Этот метод возвращает код CoAP в виде удобочитаемой строки.

@ возвращает код CoAP в виде строки.

Подробности
Параметры
[in] aMessage
Указатель на сообщение CoAP.

otCoapMessageGenerateToken

void otCoapMessageGenerateToken(
  otMessage *aMessage,
  uint8_t aTokenLength
)

Эта функция устанавливает длину токена и рандомизирует его значение.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aTokenLength
Длина устанавливаемого токена.

otCoapMessageGetCode

otCoapCode otCoapMessageGetCode(
  const otMessage *aMessage
)

Эта функция возвращает значение кода.

Подробности
Параметры
[in] aMessage
Указатель на сообщение CoAP.
Возврат
Значение кода.

otCoapMessageGetMessageId

uint16_t otCoapMessageGetMessageId(
  const otMessage *aMessage
)

Эта функция возвращает значение идентификатора сообщения.

Подробности
Параметры
[in] aMessage
Указатель на сообщение CoAP.
Возврат
Значение идентификатора сообщения.

otCoapMessageGetToken

const uint8_t * otCoapMessageGetToken(
  const otMessage *aMessage
)

Эта функция возвращает указатель на значение токена.

Подробности
Параметры
[in] aMessage
Указатель на сообщение CoAP.
Возврат
Указатель на значение токена.

otCoapMessageGetTokenLength

uint8_t otCoapMessageGetTokenLength(
  const otMessage *aMessage
)

Эта функция возвращает длину токена.

Подробности
Параметры
[in] aMessage
Указатель на сообщение CoAP.
Возврат
Длина токена.

otCoapMessageGetType

otCoapType otCoapMessageGetType(
  const otMessage *aMessage
)

Эта функция возвращает значение типа.

Подробности
Параметры
[in] aMessage
Указатель на сообщение CoAP.
Возврат
Значение типа.

otCoapMessageInit

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

Эта функция инициализирует заголовок CoAP.

Подробности
Параметры
[in,out] aMessage
Указатель на инициализируемое сообщение CoAP.
[in] aType
Тип сообщения CoAP.
[in] aCode
Код сообщения CoAP.

otCoapMessageInitResponse

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

Эта функция инициализирует ответное сообщение.

Подробности
Параметры
[in,out] aResponse
Указатель на ответное сообщение CoAP.
[in] aRequest
Указатель на сообщение запроса CoAP.
[in] aType
Тип сообщения CoAP.
[in] aCode
Код сообщения CoAP.
Возвращаемые значения
OT_ERROR_NONE
Успешно инициализировано ответное сообщение.
OT_ERROR_NO_BUFS
Недостаточно буферов сообщений для инициализации ответного сообщения.

otCoapMessageSetPayloadMarker

otError otCoapMessageSetPayloadMarker(
  otMessage *aMessage
)

Эта функция добавляет маркер полезной нагрузки, указывающий начало полезной нагрузки, в заголовок CoAP.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
Возвращаемые значения
OT_ERROR_NONE
Маркер полезной нагрузки успешно добавлен.
OT_ERROR_NO_BUFS
Маркер полезной нагрузки заголовка превышает размер буфера.

otCoapMessageSetToken

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

Эта функция устанавливает значение и длину токена в заголовке.

Подробности
Параметры
[in,out] aMessage
Указатель на сообщение CoAP.
[in] aToken
Указатель на значение токена.
[in] aTokenLength
Длина aToken .
Возвращаемые значения
OT_ERROR_NONE
Успешно установите значение токена.
OT_ERROR_NO_BUFS
Недостаточно буферов для установки значения токена.

otCoapNewMessage

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

Эта функция создает новое сообщение CoAP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aSettings
Указатель на настройки сообщения или NULL для установки настроек по умолчанию.
Возврат
Указатель на буфер сообщения или NULL, если буферы сообщений недоступны или параметры недопустимы.

otCoapOptionIteratorGetFirstOption

const otCoapOption * otCoapOptionIteratorGetFirstOption(
  otCoapOptionIterator *aIterator
)

Эта функция возвращает указатель на первую опцию.

Подробности
Параметры
[in,out] aIterator
Указатель на итератор опций сообщения CoAP.
Возврат
Указатель на первый вариант. Если параметр не указан, возвращается ПУСТОЙ указатель.

otCoapOptionIteratorGetFirstOptionMatching

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

Эта функция возвращает указатель на первую опцию, соответствующую указанному номеру опции.

Подробности
Параметры
[in] aIterator
Указатель на итератор опций сообщения CoAP.
[in] aOption
Номер искомой опции.
Возврат
Указатель на первый вариант соответствия. Если параметр сопоставления отсутствует, возвращается NULL-указатель.

otCoapOptionIteratorGetNextOption

const otCoapOption * otCoapOptionIteratorGetNextOption(
  otCoapOptionIterator *aIterator
)

Эта функция возвращает указатель на следующую опцию.

Подробности
Параметры
[in,out] aIterator
Указатель на итератор опций сообщения CoAP.
Возврат
Указатель на следующий вариант. Если больше нет опций, возвращается NULL-указатель.

otCoapOptionIteratorGetNextOptionMatching

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

Эта функция возвращает указатель на следующую опцию, соответствующую указанному номеру опции.

Подробности
Параметры
[in] aIterator
Указатель на итератор опций сообщения CoAP.
[in] aOption
Номер искомой опции.
Возврат
Указатель на следующий вариант сопоставления. Если никакой другой опции сопоставления нет, возвращается NULL-указатель.

otCoapOptionIteratorGetOptionUintValue

otError otCoapOptionIteratorGetOptionUintValue(
  otCoapOptionIterator *aIterator,
  uint64_t *aValue
)

Эта функция заполняет текущее значение параметра в aValue предполагая , что текущее значение представляет собой целое число без знака кодируется согласно https://tools.ietf.org/html/rfc7252#section-3.2 .

Подробности
Параметры
[in,out] aIterator
Указатель на итератор опций сообщения CoAP.
[out] aValue
Указатель на целое число без знака для получения значения параметра.
Возвращаемые значения
OT_ERROR_NONE
Успешно заполненное значение.
OT_ERROR_NOT_FOUND
Текущего варианта нет.
OT_ERROR_NO_BUFS
Значение слишком длинное, чтобы поместиться в uint64_t.
Смотрите также:
otCoapMessageAppendUintOption

otCoapOptionIteratorGetOptionValue

otError otCoapOptionIteratorGetOptionValue(
  otCoapOptionIterator *aIterator,
  void *aValue
)

Эта функция заполняет текущее значение параметра в aValue .

Подробности
Параметры
[in,out] aIterator
Указатель на итератор опций сообщения CoAP.
[out] aValue
Указатель на буфер для получения значения параметра.
Возвращаемые значения
OT_ERROR_NONE
Успешно заполненное значение.
OT_ERROR_NOT_FOUND
Текущего варианта нет.

otCoapOptionIteratorInit

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

Эта функция инициализирует итератор для параметров в данном сообщении.

Подробности
Параметры
[in,out] aIterator
Указатель на итератор опций сообщения CoAP.
[in] aMessage
Указатель на сообщение CoAP.
Возвращаемые значения
OT_ERROR_NONE
Успешно инициализирован.
OT_ERROR_PARSE
Состояние сообщения несовместимо.

otCoapRemoveBlockWiseResource

void otCoapRemoveBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Эта функция удаляет блочный ресурс с сервера CoAP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aResource
Указатель на ресурс.

otCoapRemoveResource

void otCoapRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Эта функция удаляет ресурс с сервера CoAP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aResource
Указатель на ресурс.

otCoapSendRequest

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

Эта функция отправляет запрос CoAP.

Если ожидается ответ на запрос, должна быть предоставлена ​​соответствующая функция и контекстная информация. Если ответа не ожидается, эти аргументы должны быть указателями NULL.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aMessage
Указатель на сообщение для отправки.
[in] aMessageInfo
Указатель на информацию сообщения , связанную с aMessage .
[in] aHandler
Указатель функции, который должен вызываться при получении ответа или тайм-ауте.
[in] aContext
Указатель на произвольную контекстную информацию. Может иметь значение NULL, если не используется.
Возвращаемые значения
OT_ERROR_NONE
Сообщение CoAP отправлено успешно.
OT_ERROR_NO_BUFS
Не удалось выделить данные для повторной передачи.

otCoapSendRequestBlockWise

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

Эта функция отправляет запрос CoAP по блокам.

Эта функция доступна, если включена конфигурация OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

Если ожидается ответ на запрос, должна быть предоставлена ​​соответствующая функция и контекстная информация. Если ожидается, что ответ будет блочным, должна быть предоставлена ​​соответствующая функция ловушки. Если ответа не ожидается, эти аргументы должны быть указателями 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
Не удалось выделить данные для повторной передачи.

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_INVALID_ARGS
aTxParameters является недействительным.
OT_ERROR_NONE
Сообщение CoAP отправлено успешно.
OT_ERROR_NO_BUFS
Не удалось выделить данные для повторной передачи.

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.

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.

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

Минимальное время ожидания ACK в миллисекундах, поддерживаемое OpenThread.

OT_DEFAULT_COAP_PORT

 OT_DEFAULT_COAP_PORT 5683

Порт CoAP по умолчанию, как указано в RFC 7252.