Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

CoAP

Este módulo incluye funciones que controlan la comunicación de CoAP.

Resumen

Las funciones de este módulo están disponibles cuando la función de la API de CoAP (OPENTHREAD_CONFIG_COAP_API_ENABLE) está habilitada.

Enumeraciones

otCoapBlockSzx Enum
Exponentes de tamaño de bloque de CoAP.
otCoapCode{
  OT_COAP_CODE_EMPTY = (((( 0 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_GET = (((( 0 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_POST = (((( 0 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_PUT = (((( 0 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_DELETE = (((( 0 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_RESPONSE_MIN = (((( 2 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_CREATED = (((( 2 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_DELETED = (((( 2 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_VALID = (((( 2 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_CHANGED = (((( 2 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_CONTENT = (((( 2 )&0x7) << 5) | (( 5 )&0x1f)),
  OT_COAP_CODE_CONTINUE = (((( 2 )&0x7) << 5) | (( 31 )&0x1f)),
  OT_COAP_CODE_BAD_REQUEST = (((( 4 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_UNAUTHORIZED = (((( 4 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_BAD_OPTION = (((( 4 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_FORBIDDEN = (((( 4 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_NOT_FOUND = (((( 4 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_METHOD_NOT_ALLOWED = (((( 4 )&0x7) << 5) | (( 5 )&0x1f)),
  OT_COAP_CODE_NOT_ACCEPTABLE = (((( 4 )&0x7) << 5) | (( 6 )&0x1f)),
  OT_COAP_CODE_REQUEST_INCOMPLETE = (((( 4 )&0x7) << 5) | (( 8 )&0x1f)),
  OT_COAP_CODE_PRECONDITION_FAILED = (((( 4 )&0x7) << 5) | (( 12 )&0x1f)),
  OT_COAP_CODE_REQUEST_TOO_LARGE = (((( 4 )&0x7) << 5) | (( 13 )&0x1f)),
  OT_COAP_CODE_UNSUPPORTED_FORMAT = (((( 4 )&0x7) << 5) | (( 15 )&0x1f)),
  OT_COAP_CODE_INTERNAL_ERROR = (((( 5 )&0x7) << 5) | (( 0 )&0x1f)),
  OT_COAP_CODE_NOT_IMPLEMENTED = (((( 5 )&0x7) << 5) | (( 1 )&0x1f)),
  OT_COAP_CODE_BAD_GATEWAY = (((( 5 )&0x7) << 5) | (( 2 )&0x1f)),
  OT_COAP_CODE_SERVICE_UNAVAILABLE = (((( 5 )&0x7) << 5) | (( 3 )&0x1f)),
  OT_COAP_CODE_GATEWAY_TIMEOUT = (((( 5 )&0x7) << 5) | (( 4 )&0x1f)),
  OT_COAP_CODE_PROXY_NOT_SUPPORTED = (((( 5 )&0x7) << 5) | (( 5 )&0x1f))
}
Enum
Valores de CoAP.
otCoapOptionContentFormat{
  OT_COAP_OPTION_CONTENT_FORMAT_TEXT_PLAIN = 0,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0 = 16,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0 = 17,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1 = 18,
  OT_COAP_OPTION_CONTENT_FORMAT_LINK_FORMAT = 40,
  OT_COAP_OPTION_CONTENT_FORMAT_XML = 41,
  OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM = 42,
  OT_COAP_OPTION_CONTENT_FORMAT_EXI = 47,
  OT_COAP_OPTION_CONTENT_FORMAT_JSON = 50,
  OT_COAP_OPTION_CONTENT_FORMAT_JSON_PATCH_JSON = 51,
  OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON = 52,
  OT_COAP_OPTION_CONTENT_FORMAT_CBOR = 60,
  OT_COAP_OPTION_CONTENT_FORMAT_CWT = 61,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT = 96,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC = 97,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN = 98,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY = 101,
  OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET = 102,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_JSON = 110,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_JSON = 111,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR = 112,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR = 113,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI = 114,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_EXI = 115,
  OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON = 256,
  OT_COAP_OPTION_CONTENT_FORMAT_SENML_XML = 310,
  OT_COAP_OPTION_CONTENT_FORMAT_SENSML_XML = 311
}
Enum
Códigos de formato de contenido de CoAP.
otCoapOptionType{
  OT_COAP_OPTION_IF_MATCH = 1,
  OT_COAP_OPTION_URI_HOST = 3,
  OT_COAP_OPTION_E_TAG = 4,
  OT_COAP_OPTION_IF_NONE_MATCH = 5,
  OT_COAP_OPTION_OBSERVE = 6,
  OT_COAP_OPTION_URI_PORT = 7,
  OT_COAP_OPTION_LOCATION_PATH = 8,
  OT_COAP_OPTION_URI_PATH = 11,
  OT_COAP_OPTION_CONTENT_FORMAT = 12,
  OT_COAP_OPTION_MAX_AGE = 14,
  OT_COAP_OPTION_URI_QUERY = 15,
  OT_COAP_OPTION_ACCEPT = 17,
  OT_COAP_OPTION_LOCATION_QUERY = 20,
  OT_COAP_OPTION_BLOCK2 = 23,
  OT_COAP_OPTION_BLOCK1 = 27,
  OT_COAP_OPTION_SIZE2 = 28,
  OT_COAP_OPTION_PROXY_URI = 35,
  OT_COAP_OPTION_PROXY_SCHEME = 39,
  OT_COAP_OPTION_SIZE1 = 60
}
Enum
Números de opción de CoAP.
otCoapType{
  OT_COAP_TYPE_CONFIRMABLE = 0,
  OT_COAP_TYPE_NON_CONFIRMABLE = 1,
  OT_COAP_TYPE_ACKNOWLEDGMENT = 2,
  OT_COAP_TYPE_RESET = 3
}
Enum
Valores de tipo CoAP (número entero de 2 bits sin firmar).

Typedefs

otCoapBlockSzx typedef
Exponentes de tamaño de bloque de CoAP.
otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength) typedef
Se llama a este puntero de función cuando se recibe un mensaje de CoAP con una opción de transferencia a nivel de bloque.
otCoapBlockwiseResource typedef
Esta estructura representa un recurso de CoAP con la transferencia en bloques.
otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore) typedef
Se llama a este puntero de función antes de que se envíe el siguiente bloque de una transferencia a nivel de bloque.
otCoapCode typedef
enum otCoapCode
Valores de CoAP.
otCoapOption typedef
struct otCoapOption
Esta estructura representa una opción de CoAP.
otCoapOptionContentFormat typedef
Códigos de formato de contenido de CoAP.
otCoapOptionIterator typedef
Esta estructura actúa como un iterador para las opciones de CoAP.
otCoapOptionType typedef
Números de opción de CoAP.
otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
void(*
Se llama a este puntero de función cuando se recibe una solicitud CoAP con una Uri-Path determinada.
otCoapResource typedef
Esta estructura representa un recurso CoAP.
otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) typedef
void(*
Se llama a este puntero de función cuando se recibe una respuesta de CoAP o en el tiempo de espera de la solicitud.
otCoapTxParameters typedef
Esta estructura representa los parámetros de transmisión de CoAP.
otCoapType typedef
enum otCoapType
Valores de tipo CoAP (número entero de 2 bits sin firmar).

Funciones

otCoapAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Esta función agrega un recurso de bloques al servidor de CoAP.
otCoapAddResource(otInstance *aInstance, otCoapResource *aResource)
void
Esta función agrega un recurso al servidor de CoAP.
otCoapBlockSizeFromExponent(otCoapBlockSzx aSize)
uint16_t
Esta función convierte un campo SZX de la opción Bloquear CoAP en el tamaño real del bloque.
otCoapMessageAppendBlock1Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
Esta función agrega una opción de Block1.
otCoapMessageAppendBlock2Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
Esta función agrega una opción de Block2.
otCoapMessageAppendContentFormatOption(otMessage *aMessage, otCoapOptionContentFormat aContentFormat)
Esta función anexa la opción de CoAP del formato de contenido como se especifica en https://tools.ietf.org/html/rfc7252#page-92.
otCoapMessageAppendMaxAgeOption(otMessage *aMessage, uint32_t aMaxAge)
Esta función agrega una opción de edad máxima.
otCoapMessageAppendObserveOption(otMessage *aMessage, uint32_t aObserve)
Esta función agrega una opción de observación.
otCoapMessageAppendOption(otMessage *aMessage, uint16_t aNumber, uint16_t aLength, const void *aValue)
Esta función agrega una opción de CoAP en un encabezado.
otCoapMessageAppendProxyUriOption(otMessage *aMessage, const char *aUriPath)
Esta función agrega una opción Proxy-Uri.
otCoapMessageAppendUintOption(otMessage *aMessage, uint16_t aNumber, uint32_t aValue)
Esta función agrega una opción CoAP de número entero sin firmar, como se especifica en https://tools.ietf.org/html/rfc7252#section-3.2.
otCoapMessageAppendUriPathOptions(otMessage *aMessage, const char *aUriPath)
Esta función agrega una opción Uri-Path.
otCoapMessageAppendUriQueryOption(otMessage *aMessage, const char *aUriQuery)
Esta función agrega una sola opción Uri-Query.
otCoapMessageCodeToString(const otMessage *aMessage)
const char *
Este método muestra el código CoAP como una string legible.
otCoapMessageGenerateToken(otMessage *aMessage, uint8_t aTokenLength)
void
Esta función establece la longitud del token y aleatoriza su valor.
otCoapMessageGetCode(const otMessage *aMessage)
Esta función muestra el valor del código.
otCoapMessageGetMessageId(const otMessage *aMessage)
uint16_t
Esta función muestra el valor del ID de mensaje.
otCoapMessageGetToken(const otMessage *aMessage)
const uint8_t *
Esta función muestra un puntero para el valor del token.
otCoapMessageGetTokenLength(const otMessage *aMessage)
uint8_t
Esta función muestra la longitud del token.
otCoapMessageGetType(const otMessage *aMessage)
Esta función muestra el valor Tipo.
otCoapMessageInit(otMessage *aMessage, otCoapType aType, otCoapCode aCode)
void
Esta función inicializa el encabezado de CoAP.
otCoapMessageInitResponse(otMessage *aResponse, const otMessage *aRequest, otCoapType aType, otCoapCode aCode)
Esta función inicializa un mensaje de respuesta.
otCoapMessageSetCode(otMessage *aMessage, otCoapCode aCode)
void
Esta función establece el valor Código.
otCoapMessageSetPayloadMarker(otMessage *aMessage)
Esta función agrega un marcador de carga útil que indica el comienzo de la carga útil al encabezado de CoAP.
otCoapMessageSetToken(otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength)
Esta función establece el valor y la longitud del token en un encabezado.
otCoapNewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
Esta función crea un mensaje CoAP nuevo.
otCoapOptionIteratorGetFirstOption(otCoapOptionIterator *aIterator)
const otCoapOption *
Esta función muestra un puntero a la primera opción.
otCoapOptionIteratorGetFirstOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Esta función muestra un puntero a la primera opción que coincide con el número de opción especificado.
otCoapOptionIteratorGetNextOption(otCoapOptionIterator *aIterator)
const otCoapOption *
Esta función muestra un puntero a la siguiente opción.
otCoapOptionIteratorGetNextOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Esta función muestra un puntero a la siguiente opción que coincide con el número de opción especificado.
otCoapOptionIteratorGetOptionUintValue(otCoapOptionIterator *aIterator, uint64_t *aValue)
Esta función llena el valor de la opción actual en aValue, suponiendo que el valor actual es un número entero sin firma codificado según https://tools.ietf.org/html/rfc7252#section-3.2.
otCoapOptionIteratorGetOptionValue(otCoapOptionIterator *aIterator, void *aValue)
Esta función rellena el valor de la opción actual en aValue.
otCoapOptionIteratorInit(otCoapOptionIterator *aIterator, const otMessage *aMessage)
Esta función inicializa un iterador para las opciones del mensaje dado.
otCoapRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Esta función quita un recurso de bloques del servidor CoAP.
otCoapRemoveResource(otInstance *aInstance, otCoapResource *aResource)
void
Esta función quita un recurso del servidor de CoAP.
otCoapSendRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext)
Esta función envía una solicitud de CoAP.
otCoapSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Esta función envía una solicitud de CoAP en bloque.
otCoapSendRequestBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Esta función envía una solicitud de CoAP en bloque con parámetros de transmisión personalizados.
otCoapSendRequestWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters)
Esta función envía una solicitud de CoAP con parámetros de transmisión personalizados.
otCoapSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
Esta función envía una respuesta de CoAP desde el servidor.
otCoapSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Esta función envía una respuesta de CoAP a nivel de bloque desde el servidor.
otCoapSendResponseBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Esta función envía una respuesta de CoAP en bloque desde el servidor con parámetros de transmisión personalizados.
otCoapSendResponseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters)
Esta función envía una respuesta de CoAP desde el servidor con parámetros de transmisión personalizados.
otCoapSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
void
Esta función establece el controlador predeterminado para las solicitudes de CoAP no controladas.
otCoapStart(otInstance *aInstance, uint16_t aPort)
Esta función inicia el servidor de CoAP.
otCoapStop(otInstance *aInstance)
Esta función detiene el servidor CoAP.

Structs

otCoapBlockwiseResource

Esta estructura representa un recurso de CoAP con la transferencia en bloques.

otCoapOption.

Esta estructura representa una opción de CoAP.

otCoapOptionIterator

Esta estructura actúa como un iterador para las opciones de CoAP.

Recurso otCoap

Esta estructura representa un recurso CoAP.

Parámetros de otCoapTx

Esta estructura representa los parámetros de transmisión de CoAP.

Enumeraciones

otCoapBlockSzx

 otCoapBlockSzx

Exponentes de tamaño de bloque de CoAP.

Código otCoap

 otCoapCode

Valores de CoAP.

Propiedades
OT_COAP_CODE_BAD_GATEWAY

La puerta de enlace es incorrecta.

OT_COAP_CODE_BAD_OPTION

Mala opción.

OT_COAP_CODE_BAD_REQUEST

Solicitud incorrecta.

OT_COAP_CODE_CHANGED

Se cambió.

OT_COAP_CODE_CONTENT

Contenido.

OT_COAP_CODE_CONTINUE

RFC7959 Continuar.

OT_COAP_CODE_CREATED

Fecha de creación.

OT_COAP_CODE_DELETE

Delete.

OT_COAP_CODE_DELETED

Eliminado

OT_COAP_CODE_EMPTY

El código del mensaje está vacío.

OT_COAP_CODE_FORBIDDEN

Prohibido.

OT_COAP_CODE_GATEWAY_TIMEOUT

Se agotó el tiempo de espera de la puerta de enlace.

OT_COAP_CODE_GET

¡Completa

OT_COAP_CODE_INTERNAL_ERROR

Error del servidor interno

OT_COAP_CODE_METHOD_NOT_ALLOWED

Método no permitido

OT_COAP_CODE_NOT_ACCEPTABLE

No aceptable.

OT_COAP_CODE_NOT_FOUND

No se encontró.

OT_COAP_CODE_NOT_IMPLEMENTED

No implementado.

OT_COAP_CODE_POST

Publicación.

OT_COAP_CODE_PRECONDITION_FAILED

Error de condición previa.

OT_COAP_CODE_PROXY_NOT_SUPPORTED

El proxy no es compatible.

OT_COAP_CODE_PUT

Pon.

OT_COAP_CODE_REQUEST_INCOMPLETE

Entidad de solicitud RFC7959 incompleta.

OT_COAP_CODE_REQUEST_TOO_LARGE

La entidad de solicitud es demasiado grande.

OT_COAP_CODE_RESPONSE_MIN

2.00

OT_COAP_CODE_SERVICE_UNAVAILABLE

Servicio no disponible

OT_COAP_CODE_UNAUTHORIZED

No autorizado.

OT_COAP_CODE_UNSUPPORTED_FORMAT

No se admite el formato del contenido.

OT_COAP_CODE_VALID

Valid.

otCoapOptionContentFormat

 otCoapOptionContentFormat

Códigos de formato de contenido de CoAP.

La lista completa está documentada en https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats

Propiedades
OT_COAP_OPTION_CONTENT_FORMAT_CBOR

aplicación/cbor: [RFC7049]

OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON

application/coap-group+json: [RFC7390].

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY

application/cose-key: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET

application/cose-key-set: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1

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

OT_COAP_OPTION_CONTENT_FORMAT_CWT

aplicación/cwt: [RFC8392]

OT_COAP_OPTION_CONTENT_FORMAT_EXI

application/exi: ["Efficient XML Interchange (EXI) Format 1.0 (Second Edition)” (febrero de 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

application/link-format: [RFC6690]

OT_COAP_OPTION_CONTENT_FORMAT_MERGE_PATCH_JSON

application/merge-patch+json: [RFC7396].

OT_COAP_OPTION_CONTENT_FORMAT_OCTET_STREAM

aplicación/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

texto/sin formato; charset=utf-8: [RFC2046][RFC3676][RFC5147]

OT_COAP_OPTION_CONTENT_FORMAT_XML

aplicación/xml: [RFC3023]

Tipo de opción otCoap

 otCoapOptionType

Números de opción de CoAP.

Propiedades
OT_COAP_OPTION_ACCEPT

Aceptar

OT_COAP_OPTION_BLOCK1

Block1 (RFC7959)

OT_COAP_OPTION_BLOCK2

Block2 (RFC7959)

OT_COAP_OPTION_CONTENT_FORMAT

Formato de contenido.

OT_COAP_OPTION_E_TAG

ETag.

OT_COAP_OPTION_IF_MATCH

Si coincide.

OT_COAP_OPTION_IF_NONE_MATCH

Si no coincide ninguno.

OT_COAP_OPTION_LOCATION_PATH

Ruta de ubicación.

OT_COAP_OPTION_LOCATION_QUERY

Ubicación y consulta.

OT_COAP_OPTION_MAX_AGE

Edad máx.

OT_COAP_OPTION_OBSERVE

Observe [RFC7641].

OT_COAP_OPTION_PROXY_SCHEME

Esquema de proxy

OT_COAP_OPTION_PROXY_URI

Proxy-Uri.

OT_COAP_OPTION_SIZE1

Tamaño1.

OT_COAP_OPTION_SIZE2

Tamaño 2 (RFC7959)

OT_COAP_OPTION_URI_HOST

Host de URI

OT_COAP_OPTION_URI_PATH

URI-Ruta.

OT_COAP_OPTION_URI_PORT

Uri-Port

OT_COAP_OPTION_URI_QUERY

Uri-Query

Tipo de otCoap

 otCoapType

Valores de tipo CoAP (número entero de 2 bits sin firmar).

Propiedades
OT_COAP_TYPE_ACKNOWLEDGMENT

Confirmación.

OT_COAP_TYPE_CONFIRMABLE

Confirmable.

OT_COAP_TYPE_NON_CONFIRMABLE

No se puede confirmar.

OT_COAP_TYPE_RESET

Restablecer.

Typedefs

otCoapBlockSzx

enum otCoapBlockSzx otCoapBlockSzx

Exponentes de tamaño de bloque de CoAP.

otCoapBlockwiseReceiveHook

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

Se llama a este puntero de función cuando se recibe un mensaje de CoAP con una opción de transferencia a nivel de bloque.

Esta función está disponible cuando se habilita la configuración de OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

Detalles
Parámetros
[in] aContext
Un puntero al contexto específico de la aplicación.
[in] aBlock
Un puntero para el segmento de bloque.
[in] aPosition
La posición de aBlock en una secuencia en bytes.
[in] aBlockLength
La longitud del segmento del bloque en bytes.
[in] aMore
Marcar si se siguen más segmentos de bloque.
[in] aTotalLength
La longitud total en bytes de la información transferida (indicada por una opción Tamaño1 o Tamaño2).
Valores de retorno
OT_ERROR_NONE
El segmento de bloque se almacenó correctamente.
OT_ERROR_NO_BUFS
No hay más memoria para almacenar bloques.
OT_ERROR_NO_FRAME_RECEIVED
Falta el segmento del bloque.

otCoapBlockwiseResource

struct otCoapBlockwiseResource otCoapBlockwiseResource

Esta estructura representa un recurso de CoAP con la transferencia en bloques.

otCoapBlockwiseTransmitHook

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

Se llama a este puntero de función antes de que se envíe el siguiente bloque de una transferencia a nivel de bloque.

Esta función está disponible cuando se habilita la configuración de OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

Cuando se cambia el valor de aBlockLength, se renegocia el tamaño de bloque de todo el intercambio. Se recomienda hacer esto después de recibir el primer bloque, ya que los cambios posteriores podrían causar problemas con otras implementaciones del CoAP.

Detalles
Parámetros
[in] aContext
Un puntero al contexto específico de la aplicación.
[in,out] aBlock
Un puntero al lugar donde se puede escribir el segmento de bloque.
[in] aPosition
Posición en la que se obtiene el segmento de bloque.
[in,out] aBlockLength
En la entrada, es la longitud máxima del segmento de bloque en bytes.
[out] aMore
Un puntero para la marca si siguen más segmentos de bloque.
Valores de retorno
OT_ERROR_NONE
No se produjo ningún error.
OT_ERROR_INVALID_ARGS
El bloqueo en aPosition no existe.

Código otCoap

enum otCoapCode otCoapCode

Valores de CoAP.

otCoapOption

struct otCoapOption otCoapOption

Esta estructura representa una opción de CoAP.

otCoapOptionContentFormat

enum otCoapOptionContentFormat otCoapOptionContentFormat

Códigos de formato de contenido de CoAP.

La lista completa está documentada en https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats

otCoapOptionIterator

struct otCoapOptionIterator otCoapOptionIterator

Esta estructura actúa como un iterador para las opciones de CoAP.

Tipo de opción otCoap

enum otCoapOptionType otCoapOptionType

Números de opción de CoAP.

otCoapRequestHandler

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

Se llama a este puntero de función cuando se recibe una solicitud CoAP con una Uri-Path determinada.

Detalles
Parámetros
[in] aContext
Un puntero a información contextual arbitraria.
[in] aMessage
Un puntero del mensaje.
[in] aMessageInfo
Un puntero a la información del mensaje para aMessage.

otCoapResource

struct otCoapResource otCoapResource

Esta estructura representa un recurso CoAP.

otCoapResponseHandler

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

Se llama a este puntero de función cuando se recibe una respuesta de CoAP o en el tiempo de espera de la solicitud.

Detalles
Parámetros
[in] aContext
Un puntero al contexto específico de la aplicación.
[in] aMessage
Un puntero al búfer de mensajes que contiene la respuesta. NULL si no se recibió ninguna respuesta.
[in] aMessageInfo
Un puntero a la información del mensaje para aMessage. NULL si no se recibió ninguna respuesta.
[in] aResult
Es el resultado de la transacción de CoAP.
Valores de retorno
OT_ERROR_NONE
Se recibió correctamente una respuesta.
OT_ERROR_ABORT
Un par restableció una transacción de CoAP.
OT_ERROR_RESPONSE_TIMEOUT
No se recibió ninguna respuesta ni confirmación durante el tiempo de espera.

otCoapTxParameters

struct otCoapTxParameters otCoapTxParameters

Esta estructura representa los parámetros de transmisión de CoAP.

Tipo de otCoap

enum otCoapType otCoapType

Valores de tipo CoAP (número entero de 2 bits sin firmar).

Funciones

otCoapAddBlockWiseResource

void otCoapAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Esta función agrega un recurso de bloques al servidor de CoAP.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aResource
Un puntero para el recurso.

otCoapAddResource

void otCoapAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Esta función agrega un recurso al servidor de CoAP.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aResource
Un puntero para el recurso.

otCoapBlockSizeFromExponent

uint16_t otCoapBlockSizeFromExponent(
  otCoapBlockSzx aSize
)

Esta función convierte un campo SZX de la opción Bloquear CoAP en el tamaño real del bloque.

Detalles
Parámetros
[in] aSize
Exponente de tamaño de bloque.
Qué muestra
El valor real del exponente de tamaño.

otCoapMessageAppendBlock1Option

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

Esta función agrega una opción de Block1.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aNum
Número de bloque actual.
[in] aMore
Booleano para indicar que se enviarán más bloques.
[in] aSize
Exponente de tamaño de bloque.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageAppendBlock2Option

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

Esta función agrega una opción de Block2.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aNum
Número de bloque actual.
[in] aMore
Booleano para indicar que se enviarán más bloques.
[in] aSize
Exponente de tamaño de bloque.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageAppendContentFormatOption

otError otCoapMessageAppendContentFormatOption(
  otMessage *aMessage,
  otCoapOptionContentFormat aContentFormat
)

Esta función anexa la opción de CoAP del formato de contenido como se especifica en https://tools.ietf.org/html/rfc7252#page-92.

Se debe llamar a este método antes de configurar otCoapMessageSetPayloadMarker si se va a incluir una carga útil en el mensaje.

La función es un wrapper de conveniencia alrededor de otCoapMessageAppendUintOption y, si el código de tipo de formato deseado no se encuentra en otCoapOptionContentFormat, se debe usar en su lugar.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aContentFormat
Uno de los formatos de contenido mencionados anteriormente en otCoapOptionContentFormat.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageAppendMaxAgeOption

otError otCoapMessageAppendMaxAgeOption(
  otMessage *aMessage,
  uint32_t aMaxAge
)

Esta función agrega una opción de edad máxima.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aMaxAge
El valor de edad máxima
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageAppendObserveOption

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

Esta función agrega una opción de observación.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aObserve
Observe el valor del campo.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageAppendOption

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

Esta función agrega una opción de CoAP en un encabezado.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aNumber
Es el número de la opción de CoAP.
[in] aLength
La longitud de la opción CoAP.
[in] aValue
Un puntero para el valor de CoAP.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageAppendProxyUriOption

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

Esta función agrega una opción Proxy-Uri.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aUriPath
Un puntero para una string terminada en NULL.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageAppendUintOption

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

Esta función agrega una opción CoAP de número entero sin firmar, como se especifica en https://tools.ietf.org/html/rfc7252#section-3.2.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aNumber
Es el número de la opción de CoAP.
[in] aValue
Valor entero sin firma de la opción CoAP.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.
Consulta también:
otCoapMessageGetOptionUintValue

otCoapMessageAppendUriPathOptions

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

Esta función agrega una opción Uri-Path.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aUriPath
Un puntero para una string terminada en NULL.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageAppendUriQueryOption

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

Esta función agrega una sola opción Uri-Query.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aUriQuery
Un puntero para una string terminada en NULL, que debe contener un solo par clave-valor.
Valores de retorno
OT_ERROR_NONE
Se agregó correctamente la opción.
OT_ERROR_INVALID_ARGS
El tipo de opción no es igual o mayor que el último tipo de opción.
OT_ERROR_NO_BUFS
La longitud de la opción supera el tamaño del búfer.

otCoapMessageCodeToString

const char * otCoapMessageCodeToString(
  const otMessage *aMessage
)

Este método muestra el código CoAP como una string legible.

@ muestra el código CoAP como una string.

Detalles
Parámetros
[in] aMessage
Un puntero al mensaje de CoAP.

otCoapMessageGenerateToken

void otCoapMessageGenerateToken(
  otMessage *aMessage,
  uint8_t aTokenLength
)

Esta función establece la longitud del token y aleatoriza su valor.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aTokenLength
La longitud de un token que se configurará.

otCoapMessageGetCode

otCoapCode otCoapMessageGetCode(
  const otMessage *aMessage
)

Esta función muestra el valor del código.

Detalles
Parámetros
[in] aMessage
Un puntero al mensaje de CoAP.
Qué muestra
El valor del código.

otCoapMessageGetMessageId

uint16_t otCoapMessageGetMessageId(
  const otMessage *aMessage
)

Esta función muestra el valor del ID de mensaje.

Detalles
Parámetros
[in] aMessage
Un puntero al mensaje de CoAP.
Qué muestra
El valor del ID de mensaje.

otCoapMessageGetToken

const uint8_t * otCoapMessageGetToken(
  const otMessage *aMessage
)

Esta función muestra un puntero para el valor del token.

Detalles
Parámetros
[in] aMessage
Un puntero al mensaje de CoAP.
Qué muestra
Un puntero para el valor del token.

otCoapMessageGetTokenLength

uint8_t otCoapMessageGetTokenLength(
  const otMessage *aMessage
)

Esta función muestra la longitud del token.

Detalles
Parámetros
[in] aMessage
Un puntero al mensaje de CoAP.
Qué muestra
La longitud del token.

otCoapMessageGetType

otCoapType otCoapMessageGetType(
  const otMessage *aMessage
)

Esta función muestra el valor Tipo.

Detalles
Parámetros
[in] aMessage
Un puntero al mensaje de CoAP.
Qué muestra
El valor Tipo.

otCoapMessageInit

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

Esta función inicializa el encabezado de CoAP.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP para inicializar.
[in] aType
Tipo de mensaje de CoAP.
[in] aCode
Código de mensaje de CoAP.

otCoapMessageInitResponse

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

Esta función inicializa un mensaje de respuesta.

Detalles
Parámetros
[in,out] aResponse
Un puntero al mensaje de respuesta de CoAP.
[in] aRequest
Un puntero al mensaje de solicitud de CoAP.
[in] aType
Tipo de mensaje de CoAP.
[in] aCode
Código de mensaje de CoAP.
Valores de retorno
OT_ERROR_NONE
Se inicializó correctamente el mensaje de respuesta.
OT_ERROR_NO_BUFS
No hay suficientes búferes de mensajes disponibles para inicializar el mensaje de respuesta.

otCoapMessageSetCode

void otCoapMessageSetCode(
  otMessage *aMessage,
  otCoapCode aCode
)

Esta función establece el valor Código.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP para inicializar.
[in] aCode
Código de mensaje de CoAP.

otCoapMessageSetPayloadMarker

otError otCoapMessageSetPayloadMarker(
  otMessage *aMessage
)

Esta función agrega un marcador de carga útil que indica el comienzo de la carga útil al encabezado de CoAP.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
Valores de retorno
OT_ERROR_NONE
El marcador de carga útil se agregó correctamente.
OT_ERROR_NO_BUFS
El marcador de la carga útil del encabezado supera el tamaño del búfer.

otCoapMessageSetToken

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

Esta función establece el valor y la longitud del token en un encabezado.

Detalles
Parámetros
[in,out] aMessage
Un puntero al mensaje de CoAP.
[in] aToken
Un puntero para el valor del token.
[in] aTokenLength
La longitud de aToken.
Valores de retorno
OT_ERROR_NONE
Se configuró correctamente el valor del token.
OT_ERROR_NO_BUFS
Búferes insuficientes para establecer el valor del token.

Nuevo mensaje de OtCoap

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

Esta función crea un mensaje CoAP nuevo.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aSettings
Un puntero para la configuración del mensaje o NULL para establecer la configuración predeterminada
Qué muestra
Un puntero al búfer de mensajes o NULL si no hay búferes de mensajes disponibles o si los parámetros no son válidos.

otCoapOptionIteratorGetFirstOption

const otCoapOption * otCoapOptionIteratorGetFirstOption(
  otCoapOptionIterator *aIterator
)

Esta función muestra un puntero a la primera opción.

Detalles
Parámetros
[in,out] aIterator
Un puntero al iterador de opciones de mensaje de CoAP.
Qué muestra
Un puntero para la primera opción. Si no hay ninguna opción, se muestra un puntero NULL.

otCoapOptionIteratorGetFirstOptionMatching

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

Esta función muestra un puntero a la primera opción que coincide con el número de opción especificado.

Detalles
Parámetros
[in] aIterator
Un puntero al iterador de opciones de mensaje de CoAP.
[in] aOption
El número de opción buscado.
Qué muestra
Un puntero para la primera opción coincidente. Si no hay ninguna opción de coincidencia presente, se muestra un puntero NULL.

otCoapOptionIteratorGetNextOption

const otCoapOption * otCoapOptionIteratorGetNextOption(
  otCoapOptionIterator *aIterator
)

Esta función muestra un puntero a la siguiente opción.

Detalles
Parámetros
[in,out] aIterator
Un puntero al iterador de opciones de mensaje de CoAP.
Qué muestra
Un puntero para la siguiente opción. Si no hay más opciones, se muestra un puntero NULL.

otCoapOptionIteratorGetNextOptionMatching

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

Esta función muestra un puntero a la siguiente opción que coincide con el número de opción especificado.

Detalles
Parámetros
[in] aIterator
Un puntero al iterador de opciones de mensaje de CoAP.
[in] aOption
El número de opción buscado.
Qué muestra
Un puntero para la siguiente opción coincidente. Si no aparece ninguna otra opción de coincidencia, se muestra un puntero NULL.

otCoapOptionIteratorGetOptionUintValue

otError otCoapOptionIteratorGetOptionUintValue(
  otCoapOptionIterator *aIterator,
  uint64_t *aValue
)

Esta función llena el valor de la opción actual en aValue, suponiendo que el valor actual es un número entero sin firma codificado según https://tools.ietf.org/html/rfc7252#section-3.2.

Detalles
Parámetros
[in,out] aIterator
Un puntero al iterador de opciones de mensaje de CoAP.
[out] aValue
Un puntero a un número entero sin firma para recibir el valor de la opción.
Valores de retorno
OT_ERROR_NONE
El valor se completó correctamente.
OT_ERROR_NOT_FOUND
No hay ninguna opción actual.
OT_ERROR_NO_BUFS
El valor es demasiado largo para caber en un uint64_t.
Consulta también:
otCoapMessageAppendUintOption

otCoapOptionIteratorGetOptionValue

otError otCoapOptionIteratorGetOptionValue(
  otCoapOptionIterator *aIterator,
  void *aValue
)

Esta función rellena el valor de la opción actual en aValue.

Detalles
Parámetros
[in,out] aIterator
Un puntero al iterador de opciones de mensaje de CoAP.
[out] aValue
Un puntero para un búfer a fin de recibir el valor de la opción.
Valores de retorno
OT_ERROR_NONE
El valor se completó correctamente.
OT_ERROR_NOT_FOUND
No hay ninguna opción actual.

otCoapOptionIteratorInit

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

Esta función inicializa un iterador para las opciones del mensaje dado.

Detalles
Parámetros
[in,out] aIterator
Un puntero al iterador de opciones de mensaje de CoAP.
[in] aMessage
Un puntero al mensaje de CoAP.
Valores de retorno
OT_ERROR_NONE
Se inicializó correctamente.
OT_ERROR_PARSE
El estado del mensaje es incoherente.

otCoapRemoveBlockWiseResource

void otCoapRemoveBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Esta función quita un recurso de bloques del servidor CoAP.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aResource
Un puntero para el recurso.

otCoapRemoveResource

void otCoapRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Esta función quita un recurso del servidor de CoAP.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aResource
Un puntero para el recurso.

otCoapSendRequest

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

Esta función envía una solicitud de CoAP.

Si se espera una respuesta a una solicitud, se debe proporcionar la información respectiva de función y contexto. Si no se espera una respuesta, estos argumentos deben ser punteros NULL.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero al mensaje que se enviará.
[in] aMessageInfo
Un puntero para la información del mensaje asociada con aMessage.
[in] aHandler
Un puntero de función que se llamará en el tiempo de espera o la recepción de respuestas.
[in] aContext
Un puntero a información contextual arbitraria. Puede no ser NULO si no se usa.
Valores de retorno
OT_ERROR_NONE
El mensaje CoAP se envió correctamente.
OT_ERROR_NO_BUFS
No se pudieron asignar los datos de retransmisión.

otCoapSendRequestBlockWise

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

Esta función envía una solicitud de CoAP en bloque.

Esta función está disponible cuando se habilita la configuración de OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

Si se espera una respuesta a una solicitud, se debe proporcionar la información respectiva de función y contexto. Si se espera que la respuesta sea en forma de bloque, se debe proporcionar una función de enlace respectiva. Si no se espera una respuesta, estos argumentos deben ser punteros NULL.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero al mensaje que se enviará.
[in] aMessageInfo
Un puntero para la información del mensaje asociada con aMessage.
[in] aHandler
Un puntero de función que se llamará en el tiempo de espera o la recepción de respuestas.
[in] aContext
Un puntero a información contextual arbitraria. Puede no ser NULO si no se usa.
[in] aTransmitHook
Un puntero a una función de enlace para la transferencia de bloques saliente.
[in] aReceiveHook
Un puntero a una función de enlace para la transferencia entrante en bloques.
Valores de retorno
OT_ERROR_NONE
El mensaje CoAP se envió correctamente.
OT_ERROR_NO_BUFS
No se pudieron asignar los datos de retransmisión.

otCoapSendRequestBlockWiseWithParameters

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

Esta función envía una solicitud de CoAP en bloque con parámetros de transmisión personalizados.

Esta función está disponible cuando se habilita la configuración de OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

Si se espera una respuesta a una solicitud, se debe proporcionar la información respectiva de función y contexto. Si se espera que la respuesta sea en forma de bloque, se debe proporcionar una función de enlace respectiva. Si no se espera una respuesta, estos argumentos deben ser punteros NULL.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero al mensaje que se enviará.
[in] aMessageInfo
Un puntero para la información del mensaje asociada con aMessage.
[in] aHandler
Un puntero de función que se llamará en el tiempo de espera o la recepción de respuestas.
[in] aContext
Un puntero a información contextual arbitraria. Puede no ser NULO si no se usa.
[in] aTxParameters
Un puntero para los parámetros de transmisión de esta solicitud. Usa NULL para los valores predeterminados.
[in] aTransmitHook
Un puntero a una función de enlace para la transferencia de bloques saliente.
[in] aReceiveHook
Un puntero a una función de enlace para la transferencia entrante en bloques.
Valores de retorno
OT_ERROR_NONE
El mensaje CoAP se envió correctamente.
OT_ERROR_NO_BUFS
No se pudieron asignar los datos de retransmisión.

otCoapSendRequestWithParameters

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

Esta función envía una solicitud de CoAP con parámetros de transmisión personalizados.

Si se espera una respuesta a una solicitud, se debe proporcionar la información respectiva de función y contexto. Si no se espera una respuesta, estos argumentos deben ser punteros NULL.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero al mensaje que se enviará.
[in] aMessageInfo
Un puntero para la información del mensaje asociada con aMessage.
[in] aHandler
Un puntero de función que se llamará en el tiempo de espera o la recepción de respuestas.
[in] aContext
Un puntero a información contextual arbitraria. Puede no ser NULO si no se usa.
[in] aTxParameters
Un puntero para los parámetros de transmisión de esta solicitud. Usa NULL para los valores predeterminados. De lo contrario, los parámetros proporcionados deben cumplir con las siguientes condiciones:
  1. mMaxRetransmit no es más que OT_COAP_MAX_RETRANSMIT.
  2. mAckRandomFactorNumerator / mAckRandomFactorDenominator no debe ser inferior a 1.0.
  3. El tiempo de vida de intercambio calculado no debe exceder el valor de uint32_t.
Valores de retorno
OT_ERROR_INVALID_ARGS
aTxParameters no es válido.
OT_ERROR_NONE
El mensaje CoAP se envió correctamente.
OT_ERROR_NO_BUFS
No se pudieron asignar los datos de retransmisión.

otCoapSendResponse

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

Esta función envía una respuesta de CoAP desde el servidor.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero para la respuesta de CoAP que se enviará.
[in] aMessageInfo
Un puntero para la información del mensaje asociada con aMessage.
Valores de retorno
OT_ERROR_NONE
El mensaje de respuesta de CoAP se puso en cola correctamente.
OT_ERROR_NO_BUFS
No hay suficientes búferes disponibles para enviar la respuesta de CoAP.

otCoapSendResponseBlockWise

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

Esta función envía una respuesta de CoAP a nivel de bloque desde el servidor.

Esta función está disponible cuando se habilita la configuración de OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero para la respuesta de CoAP que se enviará.
[in] aMessageInfo
Un puntero para la información del mensaje asociada con aMessage.
[in] aContext
Un puntero a información contextual arbitraria. Puede no ser NULO si no se usa.
[in] aTransmitHook
Un puntero a una función de enlace para la transferencia de bloques saliente.
Valores de retorno
OT_ERROR_NONE
El mensaje de respuesta de CoAP se puso en cola correctamente.
OT_ERROR_NO_BUFS
No hay suficientes búferes disponibles para enviar la respuesta de CoAP.

otCoapSendResponseBlockWiseWithParameters

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

Esta función envía una respuesta de CoAP en bloque desde el servidor con parámetros de transmisión personalizados.

Esta función está disponible cuando se habilita la configuración de OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero para la respuesta de CoAP que se enviará.
[in] aMessageInfo
Un puntero para la información del mensaje asociada con aMessage.
[in] aTxParameters
Un puntero para los parámetros de transmisión de esta respuesta. Usa NULL para los valores predeterminados.
[in] aContext
Un puntero a información contextual arbitraria. Puede no ser NULO si no se usa.
[in] aTransmitHook
Un puntero a una función de enlace para la transferencia de bloques saliente.
Valores de retorno
OT_ERROR_NONE
El mensaje de respuesta de CoAP se puso en cola correctamente.
OT_ERROR_NO_BUFS
No hay suficientes búferes disponibles para enviar la respuesta de CoAP.

otCoapSendResponseWithParameters

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

Esta función envía una respuesta de CoAP desde el servidor con parámetros de transmisión personalizados.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aMessage
Un puntero para la respuesta de CoAP que se enviará.
[in] aMessageInfo
Un puntero para la información del mensaje asociada con aMessage.
[in] aTxParameters
Un puntero para los parámetros de transmisión de esta respuesta. Usa NULL para los valores predeterminados.
Valores de retorno
OT_ERROR_NONE
El mensaje de respuesta de CoAP se puso en cola correctamente.
OT_ERROR_NO_BUFS
No hay suficientes búferes disponibles para enviar la respuesta de CoAP.

otCoapSetDefaultHandler

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

Esta función establece el controlador predeterminado para las solicitudes de CoAP no controladas.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aHandler
Un puntero de función que se llamará cuando llegue una solicitud no controlada.
[in] aContext
Un puntero a información contextual arbitraria. Puede no ser NULO si no se usa.

otCoapStart

otError otCoapStart(
  otInstance *aInstance,
  uint16_t aPort
)

Esta función inicia el servidor de CoAP.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aPort
El puerto UDP local al que se realizará la vinculación.
Valores de retorno
OT_ERROR_NONE
Se inició correctamente el servidor de CoAP.
OT_ERROR_FAILED
No se pudo iniciar el servidor de CoAP.

otCoapStop

otError otCoapStop(
  otInstance *aInstance
)

Esta función detiene el servidor CoAP.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Valores de retorno
OT_ERROR_NONE
El servidor de CoAP se detuvo correctamente.

Macros

TC_COAP_CODE

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

Macro auxiliar para definir los valores del código CoAP.

TS_COAP_DEFAULT_TOKEN_LENGTH

 OT_COAP_DEFAULT_TOKEN_LENGTH 2

Longitud predeterminada del token.

TS_COAP_MAX_RETRANSMIT

 OT_COAP_MAX_RETRANSMIT 20

La retransmisión máxima es compatible con OpenThread.

TS_COAP_MAX_TOKEN_LENGTH

 OT_COAP_MAX_TOKEN_LENGTH 8

Longitud máxima de token especificada (RFC 7252).

TS_COAP_MIN_ACK_TIMEOUT

 OT_COAP_MIN_ACK_TIMEOUT 1000

Tiempo de espera ACK mínimo en milisegundos compatible con OpenThread.

TS_DEFAULT_COAP_PORT

 OT_DEFAULT_COAP_PORT 5683

Puerto CoAP predeterminado, como se especifica en RFC 7252.

Recursos

Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o contribuir con nuestra documentación, consulta Recursos.