КоАП

Этот модуль включает функции, управляющие связью 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-битное целое число без знака).

Определения типов

otCoapBlockSzx определение типа
Показатели размера блока CoAP.
otCoapBlockwiseReceiveHook )(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength) определение типа
Указатель вызывается, когда получено сообщение CoAP с возможностью поблочной передачи.
otCoapBlockwiseResource определение типа
Представляет ресурс CoAP с поблочной передачей.
otCoapBlockwiseTransmitHook )(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore) определение типа
Указатель вызывается перед отправкой следующего блока в поблочной передаче.
otCoapCode определение типа
Значения кода CoAP.
otCoapOption определение типа
struct otCoapOption
Представляет вариант CoAP.
otCoapOptionContentFormat определение типа
Коды формата контента CoAP.
otCoapOptionIterator определение типа
Действует как итератор для параметров CoAP.
otCoapOptionType определение типа
Номера вариантов CoAP.
otCoapRequestHandler )(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) определение типа
void(*
Указатель вызывается при получении запроса CoAP с заданным Uri-Path.
otCoapResource определение типа
Представляет ресурс CoAP.
otCoapResponseHandler )(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) определение типа
void(*
Указатель вызывается при получении ответа CoAP или по истечении времени ожидания запроса.
otCoapTxParameters определение типа
Представляет параметры передачи CoAP.
otCoapType определение типа
Значения типа 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)
Добавляет параметр CoAP формата контента, как указано в https://tools.ietf.org/html/rfc7252#page-92 .
otCoapMessageAppendMaxAgeOption ( otMessage *aMessage, uint32_t aMaxAge)
Добавляет параметр максимального возраста.
otCoapMessageAppendObserveOption ( otMessage *aMessage, uint32_t aObserve)
Добавляет опцию наблюдения.
otCoapMessageAppendOption ( otMessage *aMessage, uint16_t aNumber, uint16_t aLength, const void *aValue)
Добавляет параметр CoAP в заголовок.
otCoapMessageAppendProxyUriOption ( otMessage *aMessage, const char *aUriPath)
Добавляет параметр Proxy-Uri.
otCoapMessageAppendUintOption ( otMessage *aMessage, uint16_t aNumber, uint32_t aValue)
Добавляет параметр CoAP целого числа без знака, как указано в https://tools.ietf.org/html/rfc7252#section-3.2 .
otCoapMessageAppendUriPathOptions ( otMessage *aMessage, const char *aUriPath)
Добавляет параметр Uri-Path.
otCoapMessageAppendUriQueryOption ( otMessage *aMessage, const char *aUriQuery)
Добавляет один параметр Uri-Query.
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)
Инициализирует ответное сообщение.
otCoapMessageSetCode ( otMessage *aMessage, otCoapCode aCode)
void
Устанавливает значение кода.
otCoapMessageSetPayloadMarker ( otMessage *aMessage)
Добавляет маркер полезной нагрузки, указывающий начало полезной нагрузки, в заголовок CoAP.
otCoapMessageSetToken ( otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength)
Устанавливает значение и длину токена в заголовке.
otCoapNewMessage ( otInstance *aInstance, const otMessageSettings *aSettings)
Создает новое сообщение CoAP.
otCoapOptionIteratorGetFirstOption ( otCoapOptionIterator *aIterator)
const otCoapOption *
Возвращает указатель на первый вариант.
otCoapOptionIteratorGetFirstOptionMatching ( otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Возвращает указатель на первый параметр, соответствующий указанному номеру параметра.
otCoapOptionIteratorGetNextOption ( otCoapOptionIterator *aIterator)
const otCoapOption *
Возвращает указатель на следующий параметр.
otCoapOptionIteratorGetNextOptionMatching ( otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Возвращает указатель на следующий параметр, соответствующий указанному номеру параметра.
otCoapOptionIteratorGetOptionUintValue ( otCoapOptionIterator *aIterator, uint64_t *aValue)
Заполняет текущее значение параметра в aValue , предполагая, что текущее значение представляет собой целое число без знака, закодированное в соответствии с https://tools.ietf.org/html/rfc7252#section-3.2 .
otCoapOptionIteratorGetOptionValue ( otCoapOptionIterator *aIterator, void *aValue)
Заполняет текущее значение параметра в aValue .
otCoapOptionIteratorInit ( otCoapOptionIterator *aIterator, const otMessage *aMessage)
Инициализирует итератор для параметров в данном сообщении.
otCoapRemoveBlockWiseResource ( otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Удаляет блочный ресурс с сервера CoAP.
otCoapRemoveResource ( otInstance *aInstance, otCoapResource *aResource)
void
Удаляет ресурс с сервера CoAP.
otCoapSendRequest ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext)
Отправляет запрос CoAP.
otCoapSendRequestBlockWise ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Отправляет запрос CoAP поблочно.
otCoapSendRequestBlockWiseWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Отправляет запрос CoAP поблочно с настраиваемыми параметрами передачи.
otCoapSendRequestWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters)
Отправляет запрос CoAP с настраиваемыми параметрами передачи.
otCoapSendResponse ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
Отправляет ответ CoAP с сервера.
otCoapSendResponseBlockWise ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Отправляет ответ CoAP поблочно с сервера.
otCoapSendResponseBlockWiseWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Отправляет ответ CoAP поблочно с сервера с настраиваемыми параметрами передачи.
otCoapSendResponseWithParameters ( otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters)
Отправляет ответ CoAP с сервера с настраиваемыми параметрами передачи.
otCoapSetDefaultHandler ( otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
void
Устанавливает обработчик по умолчанию для необработанных запросов CoAP.
otCoapStart ( otInstance *aInstance, uint16_t aPort)
Запускает сервер CoAP.
otCoapStop ( otInstance *aInstance)
Останавливает сервер CoAP.

Структуры

otCoapBlockwiseResource

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

otCoapOption

Представляет вариант CoAP.

otCoapOptionIterator

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

otCoapResource

Представляет ресурс CoAP.

otCoapTxParameters

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

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

otCoapBlockSzx

 otCoapBlockSzx

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

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

Коды формата контента CoAP.

Полный список документирован по адресу https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats .

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

приложение/cbor: [RFC7049]

OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON

приложение/коап-группа+json: [RFC7390]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1

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

OT_COAP_OPTION_CONTENT_FORMAT_CWT

приложение/cwt: [RFC8392]

OT_COAP_OPTION_CONTENT_FORMAT_EXI

application/exi: ["Формат эффективного обмена XML (EXI) 1.0 (второе издание)", февраль 2014 г.]

OT_COAP_OPTION_CONTENT_FORMAT_JSON

приложение/json: [RFC7159]

OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON

приложение/json-patch+json: [RFC6902]

OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT

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

OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON

приложение/слияние-патч+json: [RFC7396]

OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM

приложение/поток октетов: [RFC2045][RFC2046]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR

приложение/senml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI

приложение/senml-exi: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_JSON

приложение/senml+json: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_XML

приложение/senml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR

приложение/sensml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_EXI

приложение/sensml-exi: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_JSON

приложение/sensml+json: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_XML

приложение/sensml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_TEXT_PLAIN

текст/обычный; набор символов = utf-8: [RFC2046][RFC3676][RFC5147]

OT_COAP_OPTION_CONTENT_FORMAT_XML

приложение/xml: [RFC3023]

откоапопционтипе

 otCoapOptionType

Номера вариантов CoAP.

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

Принимать.

OT_COAP_OPTION_BLOCK1

Блок1 (RFC7959)

OT_COAP_OPTION_BLOCK2

Блок2 (RFC7959)

OT_COAP_OPTION_CONTENT_FORMAT

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

OT_COAP_OPTION_E_TAG

ЕТаг.

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-запрос.

отКоапТип

 otCoapType

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

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

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

OT_COAP_TYPE_CONFIRMABLE

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

OT_COAP_TYPE_NON_CONFIRMABLE

Неподтверждаемо.

OT_COAP_TYPE_RESET

Перезагрузить.

Определения типов

otCoapBlockSzx

enum otCoapBlockSzx otCoapBlockSzx

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

otCoapBlockwiseReceiveHook

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

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

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

Подробности
Параметры
[in] aContext
Указатель на контекст конкретного приложения.
[in] aBlock
Указатель на сегмент блока.
[in] aPosition
Позиция aBlock в последовательности в байтах.
[in] aBlockLength
Длина сегмента блока в байтах.
[in] aMore
Отметьте, если следуют дополнительные сегменты блока.
[in] aTotalLength
Общая длина передаваемой информации в байтах (указывается опцией «Размер1» или «Размер2»).
Возвращаемые значения
OT_ERROR_NONE
Сегмент блока успешно сохранен.
OT_ERROR_NO_BUFS
Больше нет памяти для хранения блоков.
OT_ERROR_NO_FRAME_RECEIVED
Отсутствует сегмент блока.

otCoapBlockwiseResource

struct otCoapBlockwiseResource otCoapBlockwiseResource

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

otCoapBlockwiseTransmitHook

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

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

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

При изменении значения aBlockLength размер блока всего обмена согласовывается заново. Рекомендуется делать это после получения первого блока, поскольку последующие изменения могут вызвать проблемы с другими реализациями CoAP.

Подробности
Параметры
[in] aContext
Указатель на контекст конкретного приложения.
[in,out] aBlock
Указатель на то, куда можно записать сегмент блока.
[in] aPosition
Позиция в последовательности, из которой можно получить сегмент блока.
[in,out] aBlockLength
При вводе максимальная длина сегмента блока в байтах.
[out] aMore
Указатель на флаг, если последуют дополнительные сегменты блока.
Возвращаемые значения
OT_ERROR_NONE
Никакой ошибки не произошло.
OT_ERROR_INVALID_ARGS
Блок в aPosition не существует.

otCoapCode

enum otCoapCode otCoapCode

Значения кода CoAP.

otCoapOption

struct otCoapOption otCoapOption

Представляет вариант CoAP.

откоапопционконтентформат

enum otCoapOptionContentFormat otCoapOptionContentFormat

Коды формата контента CoAP.

Полный список документирован по адресу https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats .

otCoapOptionIterator

struct otCoapOptionIterator otCoapOptionIterator

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

откоапопционтипе

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.

откоапреспонсхандлер

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.

отКоапТип

enum otCoapType otCoapType

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

Функции

отКоападдблокквисересаурце

void otCoapAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Добавляет блочный ресурс на сервер CoAP.

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

отКоападдресаурс

void otCoapAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Добавляет ресурс на сервер CoAP.

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

откоапблоксизефромэкспонент

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
)

Добавляет параметр 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
)

Добавляет параметр максимального возраста.

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

откоапмессажеаппендобсервеопцион

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

Добавляет опцию наблюдения.

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

откоапмессажеаппендопцион

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
Указатель на строку, завершающуюся NULL.
Возвращаемые значения
OT_ERROR_NONE
Опция успешно добавлена.
OT_ERROR_INVALID_ARGS
Тип опции не равен или больше, чем последний тип опции.
OT_ERROR_NO_BUFS
Длина опции превышает размер буфера.

откоапмессажеаппендуинтвариант

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

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

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

отКоапмессажеаппендурипасптионтс

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
Длина опции превышает размер буфера.

откоапмессажеаппендурикуериопцион

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
Длина опции превышает размер буфера.

отКоапмессажекодетостринг

const char * otCoapMessageCodeToString(
  const otMessage *aMessage
)

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

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

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

откоапмессажегенератетокен

void otCoapMessageGenerateToken(
  otMessage *aMessage,
  uint8_t aTokenLength
)

Устанавливает длину токена и рандомизирует его значение.

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

откоапмессажежеткоде

otCoapCode otCoapMessageGetCode(
  const otMessage *aMessage
)

Возвращает значение кода.

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

откоапмессажежетмессажеид

uint16_t otCoapMessageGetMessageId(
  const otMessage *aMessage
)

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

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

откоапмессажежеттокен

const uint8_t * otCoapMessageGetToken(
  const otMessage *aMessage
)

Возвращает указатель на значение токена.

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

otCoapMessageGetTokenLength

uint8_t otCoapMessageGetTokenLength(
  const otMessage *aMessage
)

Возвращает длину токена.

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

откоапмессажежеттипе

otCoapType otCoapMessageGetType(
  const otMessage *aMessage
)

Возвращает значение типа.

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

откоапмессажеинит

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

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

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

откоапмессажеинитответ

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
Недостаточно буферов сообщений для инициализации ответного сообщения.

откоапмессажесеткоде

void otCoapMessageSetCode(
  otMessage *aMessage,
  otCoapCode aCode
)

Устанавливает значение кода.

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

откоапмессажесетпайлоадмаркер

otError otCoapMessageSetPayloadMarker(
  otMessage *aMessage
)

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

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

откоапмессажесеттокен

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

Устанавливает значение и длину токена в заголовке.

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

otCoapNewMessage

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

Создает новое сообщение CoAP.

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

otCoapOptionIteratorGetFirstOption

const otCoapOption * otCoapOptionIteratorGetFirstOption(
  otCoapOptionIterator *aIterator
)

Возвращает указатель на первый вариант.

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

otCoapOptionIteratorGetFirstOptionMatching

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

Возвращает указатель на первый параметр, соответствующий указанному номеру параметра.

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

otCoapOptionIteratorGetNextOption

const otCoapOption * otCoapOptionIteratorGetNextOption(
  otCoapOptionIterator *aIterator
)

Возвращает указатель на следующий параметр.

Подробности
Параметры
[in,out] aIterator
Указатель на итератор опции сообщения CoAP.
Возврат
Указатель на следующий вариант. Если больше нет опций, возвращается 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.
Смотрите также:
откоапмессажеаппендуинтвариант

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
Указатель на ресурс.

откоапремовересаурс

void otCoapRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Удаляет ресурс с сервера CoAP.

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

откоапсендрекуест

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
Приведены неверные аргументы.

откоапсетдефаултхандлер

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

Устанавливает обработчик по умолчанию для необработанных запросов CoAP.

Подробности
Параметры
[in] aInstance
Указатель на экземпляр OpenThread.
[in] aHandler
Указатель функции, который будет вызываться при поступлении необработанного запроса.
[in] aContext
Указатель на произвольную контекстную информацию. Может быть NULL, если не используется.

отКоапСтарт

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.

OT_DEFAULT_COAP_PORT

 OT_DEFAULT_COAP_PORT 5683

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

Ресурсы

Справочные разделы API OpenThread взяты из исходного кода, доступного на GitHub . Для получения дополнительной информации или внесения вклада в нашу документацию обратитесь к Ресурсам .