FPC

Ce module comprend des fonctions qui contrôlent la communication CoAP.

Résumé

Les fonctions de ce module sont disponibles lorsque la fonctionnalité de l'API CoAP (OPENTHREAD_CONFIG_COAP_API_ENABLE) est activée.

Énumérations

otCoapBlockSzx enum
Exposants de taille de bloc 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
Valeurs du code 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
Codes de format de contenu 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
Numéros d'option CoAP.
otCoapType{
  OT_COAP_TYPE_CONFIRMABLE = 0,
  OT_COAP_TYPE_NON_CONFIRMABLE = 1,
  OT_COAP_TYPE_ACKNOWLEDGMENT = 2,
  OT_COAP_TYPE_RESET = 3
}
enum
Valeurs de type CoAP (entier non signé de 2 bits).

Typedefs

otCoapBlockSzx typedef
Exposants de taille de bloc CoAP.
otCoapBlockwiseReceiveHook)(void *aContext, const uint8_t *aBlock, uint32_t aPosition, uint16_t aBlockLength, bool aMore, uint32_t aTotalLength) typedef
Le pointeur est appelé lorsqu'un message CoAP avec une option de transfert par bloc est reçu.
otCoapBlockwiseResource typedef
Représente une ressource CoAP avec transfert bloc par bloc.
otCoapBlockwiseTransmitHook)(void *aContext, uint8_t *aBlock, uint32_t aPosition, uint16_t *aBlockLength, bool *aMore) typedef
Le pointeur est appelé avant l'envoi du prochain bloc d'une correspondance dans le bloc.
otCoapCode typedef
enum otCoapCode
Valeurs du code CoAP.
otCoapOption typedef
struct otCoapOption
Représente une option CoAP.
otCoapOptionContentFormat typedef
Codes de format de contenu CoAP.
otCoapOptionIterator typedef
Sert d'itérateur pour les options CoAP.
otCoapOptionType typedef
Numéros d'option CoAP.
otCoapRequestHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo) typedef
void(*
Le pointeur est appelé lorsqu'une requête CoAP comportant un URI-Path donné est reçue.
otCoapResource typedef
Représente une ressource CoAP.
otCoapResponseHandler)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, otError aResult) typedef
void(*
Le pointeur est appelé lorsqu'une réponse CoAP est reçue ou lorsque la requête expire.
otCoapTxParameters typedef
Représente les paramètres de transmission CoAP.
otCoapType typedef
enum otCoapType
Valeurs de type CoAP (entier non signé de 2 bits).

Fonctions

otCoapAddBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Ajoute une ressource par bloc au serveur CoAP.
otCoapAddResource(otInstance *aInstance, otCoapResource *aResource)
void
Ajoute une ressource au serveur CoAP.
otCoapBlockSizeFromExponent(otCoapBlockSzx aSize)
uint16_t
Convertit un champ SZX d'option de bloc CoAP en la taille de bloc réelle.
otCoapMessageAppendBlock1Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
Ajoute une option Block1.
otCoapMessageAppendBlock2Option(otMessage *aMessage, uint32_t aNum, bool aMore, otCoapBlockSzx aSize)
Ajoute une option Bloc2.
otCoapMessageAppendContentFormatOption(otMessage *aMessage, otCoapOptionContentFormat aContentFormat)
Ajoute l'option CoAP Format de contenu, comme spécifié dans https://tools.ietf.org/html/rfc7252#page-92.
otCoapMessageAppendMaxAgeOption(otMessage *aMessage, uint32_t aMaxAge)
Ajoute une option "Âge maximal".
otCoapMessageAppendObserveOption(otMessage *aMessage, uint32_t aObserve)
Ajoute une option "Observer".
otCoapMessageAppendOption(otMessage *aMessage, uint16_t aNumber, uint16_t aLength, const void *aValue)
Ajoute une option CoAP dans un en-tête.
otCoapMessageAppendProxyUriOption(otMessage *aMessage, const char *aUriPath)
Ajoute une option Proxy-Uri.
otCoapMessageAppendUintOption(otMessage *aMessage, uint16_t aNumber, uint32_t aValue)
Ajoute une option CoAP entière non signée, comme spécifié dans https://tools.ietf.org/html/rfc7252#section-3.2.
otCoapMessageAppendUriPathOptions(otMessage *aMessage, const char *aUriPath)
Ajoute une option URI-Path.
otCoapMessageAppendUriQueryOption(otMessage *aMessage, const char *aUriQuery)
Ajoute une seule option de requête URI.
otCoapMessageCodeToString(const otMessage *aMessage)
const char *
Renvoie le code CoAP sous forme de chaîne lisible.
otCoapMessageGenerateToken(otMessage *aMessage, uint8_t aTokenLength)
void
Définit la longueur du jeton et rend sa valeur aléatoire.
otCoapMessageGetCode(const otMessage *aMessage)
Renvoie la valeur Code.
otCoapMessageGetMessageId(const otMessage *aMessage)
uint16_t
Renvoie la valeur "Message ID" (ID du message).
otCoapMessageGetToken(const otMessage *aMessage)
const uint8_t *
Renvoie un pointeur vers la valeur du jeton.
otCoapMessageGetTokenLength(const otMessage *aMessage)
uint8_t
Renvoie la longueur du jeton.
otCoapMessageGetType(const otMessage *aMessage)
Renvoie la valeur Type.
otCoapMessageInit(otMessage *aMessage, otCoapType aType, otCoapCode aCode)
void
Initialise l'en-tête CoAP.
otCoapMessageInitResponse(otMessage *aResponse, const otMessage *aRequest, otCoapType aType, otCoapCode aCode)
Initialise un message de réponse.
otCoapMessageSetCode(otMessage *aMessage, otCoapCode aCode)
void
Définit la valeur Code.
otCoapMessageSetPayloadMarker(otMessage *aMessage)
Ajout d'un repère de charge utile indiquant le début de la charge utile à l'en-tête CoAP.
otCoapMessageSetToken(otMessage *aMessage, const uint8_t *aToken, uint8_t aTokenLength)
Définit la valeur et la longueur du jeton dans un en-tête.
otCoapNewMessage(otInstance *aInstance, const otMessageSettings *aSettings)
Crée un message CoAP.
otCoapOptionIteratorGetFirstOption(otCoapOptionIterator *aIterator)
const otCoapOption *
Renvoie un pointeur vers la première option.
otCoapOptionIteratorGetFirstOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Renvoie un pointeur vers la première option correspondant au numéro d'option spécifié.
otCoapOptionIteratorGetNextOption(otCoapOptionIterator *aIterator)
const otCoapOption *
Renvoie un pointeur vers l'option suivante.
otCoapOptionIteratorGetNextOptionMatching(otCoapOptionIterator *aIterator, uint16_t aOption)
const otCoapOption *
Renvoie un pointeur vers l'option suivante correspondant au numéro d'option spécifié.
otCoapOptionIteratorGetOptionUintValue(otCoapOptionIterator *aIterator, uint64_t *aValue)
Insère la valeur d'option actuelle dans aValue en supposant qu'elle est un entier non signé encodé conformément à https://tools.ietf.org/html/rfc7252#section-3.2.
otCoapOptionIteratorGetOptionValue(otCoapOptionIterator *aIterator, void *aValue)
Remplit la valeur d'option actuelle dans aValue.
otCoapOptionIteratorInit(otCoapOptionIterator *aIterator, const otMessage *aMessage)
Initialise un itérateur pour les options du message donné.
otCoapRemoveBlockWiseResource(otInstance *aInstance, otCoapBlockwiseResource *aResource)
void
Supprime une ressource par bloc du serveur CoAP.
otCoapRemoveResource(otInstance *aInstance, otCoapResource *aResource)
void
Supprime une ressource du serveur CoAP.
otCoapSendRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext)
Envoie une demande CoAP.
otCoapSendRequestBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Envoie une requête CoAP par bloc.
otCoapSendRequestBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters, otCoapBlockwiseTransmitHook aTransmitHook, otCoapBlockwiseReceiveHook aReceiveHook)
Envoie une requête CoAP par bloc avec des paramètres de transmission personnalisés.
otCoapSendRequestWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, otCoapResponseHandler aHandler, void *aContext, const otCoapTxParameters *aTxParameters)
Envoie une requête CoAP avec des paramètres de transmission personnalisés.
otCoapSendResponse(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo)
Envoie une réponse CoAP à partir du serveur.
otCoapSendResponseBlockWise(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Envoie une réponse CoAP par bloc à partir du serveur.
otCoapSendResponseBlockWiseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters, void *aContext, otCoapBlockwiseTransmitHook aTransmitHook)
Envoie une réponse CoAP par bloc depuis le serveur avec des paramètres de transmission personnalisés.
otCoapSendResponseWithParameters(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otCoapTxParameters *aTxParameters)
Envoie une réponse CoAP à partir du serveur avec des paramètres de transmission personnalisés.
otCoapSetDefaultHandler(otInstance *aInstance, otCoapRequestHandler aHandler, void *aContext)
void
Définit le gestionnaire par défaut des requêtes CoAP non gérées.
otCoapStart(otInstance *aInstance, uint16_t aPort)
Démarre le serveur CoAP.
otCoapStop(otInstance *aInstance)
Arrête le serveur CoAP.

Structs

otCoapBlockwiseResource

Représente une ressource CoAP avec transfert bloc par bloc.

OTCoapOption

Représente une option CoAP.

otCoapOptionIterator

Sert d'itérateur pour les options CoAP.

otCoapResource

Représente une ressource CoAP.

otCoapTxParameters

Représente les paramètres de transmission CoAP.

Énumérations

OTCoapBlockSzx

 otCoapBlockSzx

Exposants de taille de bloc CoAP.

OTCoapCode

 otCoapCode

Valeurs du code CoAP.

Propriétés
OT_COAP_CODE_BAD_GATEWAY

Passerelle incorrecte.

OT_COAP_CODE_BAD_OPTION

Mauvaise option.

OT_COAP_CODE_BAD_REQUEST

Requête incorrecte.

OT_COAP_CODE_CHANGED

Modifié.

OT_COAP_CODE_CONTENT

Contenu.

OT_COAP_CODE_CONTINUE

RFC7959 (suite).

OT_COAP_CODE_CREATED

Création terminée

OT_COAP_CODE_DELETE

Supprimer.

OT_COAP_CODE_DELETED

Suppression effectuée.

OT_COAP_CODE_EMPTY

Code du message vide.

OT_COAP_CODE_FORBIDDEN

Accès refusé.

OT_COAP_CODE_GATEWAY_TIMEOUT

Expiration du délai de la passerelle.

OT_COAP_CODE_GET

OT_COAP_CODE_INTERNAL_ERROR

Erreur serveur interne

OT_COAP_CODE_METHOD_NOT_ALLOWED

Méthode non autorisée.

OT_COAP_CODE_NOT_ACCEPTABLE

Non accepté.

OT_COAP_CODE_NOT_FOUND

Introuvable.

OT_COAP_CODE_NOT_IMPLEMENTED

Non mis en œuvre.

OT_COAP_CODE_POST

Post.

OT_COAP_CODE_PRECONDITION_FAILED

Échec de la condition préalable.

OT_COAP_CODE_PROXY_NOT_SUPPORTED

Proxy non pris en charge.

OT_COAP_CODE_PUT

Eh bien,

OT_COAP_CODE_REQUEST_INCOMPLETE

RFC7959 Request Entity Gesture (Entité de requête incomplète).

OT_COAP_CODE_REQUEST_TOO_LARGE

Entité de requête trop volumineuse.

OT_COAP_CODE_RESPONSE_MIN

2,00

OT_COAP_CODE_SERVICE_UNAVAILABLE

Service indisponible.

OT_COAP_CODE_UNAUTHORIZED

Non autorisé.

OT_COAP_CODE_UNSUPPORTED_FORMAT

Format de contenu non accepté.

OT_COAP_CODE_VALID

Valide.

otCoapOptionContentFormat

 otCoapOptionContentFormat

Codes de format de contenu CoAP.

La liste complète est disponible à l'adresse https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats.

Propriétés
OT_COAP_OPTION_CONTENT_FORMAT_CBOR

application/cbor: [RFC7049]

OT_COAP_OPTION_CONTENT_FORMAT_COAP_GROUP_JSON

application/coap-group+json: [RFC7390]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_ENCRYPT0

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY

application/cose-key: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_KEY_SET

application/cose-key-set: [RFC8152]

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_MAC0

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN

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

OT_COAP_OPTION_CONTENT_FORMAT_COSE_SIGN1

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

OT_COAP_OPTION_CONTENT_FORMAT_CWT

application/cwt: [RFC8392]

OT_COAP_OPTION_CONTENT_FORMAT_EXI

application/exi: ["Effective XML Interchange (EXI) Format 1.0 (Second Edition)", février 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

application/octet-stream: [RFC2045][RFC2046]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_CBOR

application/senml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_EXI

application/senml-exi: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_JSON

application/senml+json: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENML_XML

application/senml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_CBOR

application/sensml+cbor: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_EXI

application/sensml-exi: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_JSON

application/sensml+json: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_SENSML_XML

application/sensml+xml: [RFC8428]

OT_COAP_OPTION_CONTENT_FORMAT_TEXT_PLAIN

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

OT_COAP_OPTION_CONTENT_FORMAT_XML

application/xml: [RFC3023]

Type d'option otCoap

 otCoapOptionType

Numéros d'option CoAP.

Propriétés
OT_COAP_OPTION_ACCEPT

Acceptez-les.

OT_COAP_OPTION_BLOCK1

Block1 (RFC7959)

OT_COAP_OPTION_BLOCK2

Block2 (RFC7959)

OT_COAP_OPTION_CONTENT_FORMAT

Contenu et format

OT_COAP_OPTION_E_TAG

ETag.

OT_COAP_OPTION_IF_MATCH

Si la correspondance est établie.

OT_COAP_OPTION_IF_NONE_MATCH

If-None-Match.

OT_COAP_OPTION_LOCATION_PATH

Location-Path.

OT_COAP_OPTION_LOCATION_QUERY

Requête de lieu.

OT_COAP_OPTION_MAX_AGE

Âge maximal.

OT_COAP_OPTION_OBSERVE

Respectez la norme [RFC7641].

OT_COAP_OPTION_PROXY_SCHEME

Schéma de proxy.

OT_COAP_OPTION_PROXY_URI

Proxy-URI.

OT_COAP_OPTION_SIZE1

Taille1.

OT_COAP_OPTION_SIZE2

Taille 2 (RFC7959)

OT_COAP_OPTION_URI_HOST

URI-Host.

OT_COAP_OPTION_URI_PATH

URI-Path.

OT_COAP_OPTION_URI_PORT

URI-Port

OT_COAP_OPTION_URI_QUERY

Requête URI.

Type otCoap

 otCoapType

Valeurs de type CoAP (entier non signé de 2 bits).

Propriétés
OT_COAP_TYPE_ACKNOWLEDGMENT

Reconnaissance.

OT_COAP_TYPE_CONFIRMABLE

Confirmable.

OT_COAP_TYPE_NON_CONFIRMABLE

Non confirmé.

OT_COAP_TYPE_RESET

Réinitialiser.

Typedefs

OTCoapBlockSzx

enum otCoapBlockSzx otCoapBlockSzx

Exposants de taille de bloc CoAP.

otCoapBlockwiseReceiveHook

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

Le pointeur est appelé lorsqu'un message CoAP avec une option de transfert par bloc est reçu.

Est disponible lorsque la configuration OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE est activée.

Détails
Paramètres
[in] aContext
Un pointeur vers un contexte spécifique à l'application.
[in] aBlock
Un pointeur vers le segment de bloc.
[in] aPosition
Position de aBlock dans une séquence en octets.
[in] aBlockLength
Longueur du segment de bloc en octets.
[in] aMore
Indique si d'autres segments bloqués suivent.
[in] aTotalLength
Longueur totale en octets des informations transférées (indiquée par une option Size1 ou Size2).
Valeurs de retour
OT_ERROR_NONE
Le segment de bloc a bien été stocké.
OT_ERROR_NO_BUFS
Plus de mémoire pour stocker les blocs.
OT_ERROR_NO_FRAME_RECEIVED
Segment de bloc manquant.

otCoapBlockwiseResource

struct otCoapBlockwiseResource otCoapBlockwiseResource

Représente une ressource CoAP avec transfert bloc par bloc.

otCoapBlockwiseTransmitHook

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

Le pointeur est appelé avant l'envoi du prochain bloc d'une correspondance dans le bloc.

Est disponible lorsque la configuration OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE est activée.

La modification de la valeur de aBlockLength permet de renégocier la taille de bloc de l'ensemble de l'échange. Il est recommandé de le faire après la réception du premier bloc, car des modifications ultérieures pourraient causer des problèmes avec d'autres implémentations CoAP.

Détails
Paramètres
[in] aContext
Un pointeur vers un contexte spécifique à l'application.
[in,out] aBlock
Un pointeur vers l'endroit où le segment de bloc peut être écrit.
[in] aPosition
Position à partir de laquelle le segment de volume doit être obtenu dans une séquence.
[in,out] aBlockLength
À l'entrée, longueur maximale du segment de bloc en octets.
[out] aMore
Un pointeur vers l'indicateur si d'autres segments de bloc suivront.
Valeurs de retour
OT_ERROR_NONE
Aucune erreur.
OT_ERROR_INVALID_ARGS
Le bloc à aPosition n'existe pas.

OTCoapCode

enum otCoapCode otCoapCode

Valeurs du code CoAP.

Option OTCoap

struct otCoapOption otCoapOption

Représente une option CoAP.

otCoapOptionContentFormat

enum otCoapOptionContentFormat otCoapOptionContentFormat

Codes de format de contenu CoAP.

La liste complète est disponible à l'adresse https://www.iana.org/assignments/core-parameters/core-parameters.xhtml#content-formats.

otCoapOptionIterator

struct otCoapOptionIterator otCoapOptionIterator

Sert d'itérateur pour les options CoAP.

Type d'option otCoap

enum otCoapOptionType otCoapOptionType

Numéros d'option CoAP.

otCoapRequestHandler

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

Le pointeur est appelé lorsqu'une requête CoAP comportant un URI-Path donné est reçue.

Détails
Paramètres
[in] aContext
Un pointeur vers des informations de contexte arbitraires.
[in] aMessage
Pointeur vers le message.
[in] aMessageInfo
Pointeur vers les informations du message pour aMessage.

OTCoapResource

struct otCoapResource otCoapResource

Représente une ressource CoAP.

otCoapResponseHandler

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

Le pointeur est appelé lorsqu'une réponse CoAP est reçue ou lorsque la requête expire.

Détails
Paramètres
[in] aContext
Un pointeur vers un contexte spécifique à l'application.
[in] aMessage
Un pointeur vers le tampon du message contenant la réponse. NULL si aucune réponse n'a été reçue.
[in] aMessageInfo
Pointeur vers les informations du message pour aMessage. NULL si aucune réponse n'a été reçue.
[in] aResult
Résultat de la transaction CoAP.
Valeurs de retour
OT_ERROR_NONE
Une réponse a bien été reçue.
OT_ERROR_ABORT
Une transaction CoAP a été réinitialisée par un pair.
OT_ERROR_RESPONSE_TIMEOUT
Aucune réponse ou accusé de réception reçu pendant le délai avant expiration.

otCoapTxParameters

struct otCoapTxParameters otCoapTxParameters

Représente les paramètres de transmission CoAP.

Type otCoap

enum otCoapType otCoapType

Valeurs de type CoAP (entier non signé de 2 bits).

Fonctions

OTCoapAddBlockWiseResource

void otCoapAddBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Ajoute une ressource par bloc au serveur CoAP.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aResource
Un pointeur vers la ressource.

OTCoapAddResource

void otCoapAddResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Ajoute une ressource au serveur CoAP.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aResource
Un pointeur vers la ressource.

otCoapBlockSizeFromExponent

uint16_t otCoapBlockSizeFromExponent(
  otCoapBlockSzx aSize
)

Convertit un champ SZX d'option de bloc CoAP en la taille de bloc réelle.

Détails
Paramètres
[in] aSize
Exposant de taille de bloc.
Renvoie
Valeur de l'exposant de taille réelle.

otCoapMessageAppendBlock1Option

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

Ajoute une option Block1.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aNum
Numéro de blocage actuel.
[in] aMore
Booléen pour indiquer que davantage de blocs doivent être envoyés.
[in] aSize
Exposant de taille de bloc.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageAppendBlock2Option

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

Ajoute une option Bloc2.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aNum
Numéro de blocage actuel.
[in] aMore
Booléen pour indiquer que davantage de blocs doivent être envoyés.
[in] aSize
Exposant de taille de bloc.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageAppendContentFormatOption

otError otCoapMessageAppendContentFormatOption(
  otMessage *aMessage,
  otCoapOptionContentFormat aContentFormat
)

Ajoute l'option CoAP Format de contenu, comme spécifié dans https://tools.ietf.org/html/rfc7252#page-92.

Cette méthode doit être appelée avant de définir otCoapMessageSetPayloadMarker si une charge utile doit être incluse dans le message.

Cette fonction est un wrapper pratique pour otCoapMessageAppendUintOption. Si le code du type de format souhaité n'est pas répertorié dans otCoapOptionContentFormat, utilisez cette fonction de base à la place.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aContentFormat
L'un des formats de contenu répertoriés dans otCoapOptionContentFormat ci-dessus.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageAjouterMaxAgeOption

otError otCoapMessageAppendMaxAgeOption(
  otMessage *aMessage,
  uint32_t aMaxAge
)

Ajoute une option "Âge maximal".

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aMaxAge
Valeur de l'âge maximal.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageAppendObserveOption

otError otCoapMessageAppendObserveOption(
  otMessage *aMessage,
  uint32_t aObserve
)

Ajoute une option "Observer".

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aObserve
Observez la valeur du champ.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageAppendOption

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

Ajoute une option CoAP dans un en-tête.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aNumber
Numéro d'option CoAP.
[in] aLength
Longueur de l'option CoAP.
[in] aValue
Un pointeur vers la valeur CoAP.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageAjouterProxyUriOption

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

Ajoute une option Proxy-Uri.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aUriPath
Un pointeur vers une chaîne se terminant par une valeur NULL.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageAppendUintOption

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

Ajoute une option CoAP entière non signée, comme spécifié dans https://tools.ietf.org/html/rfc7252#section-3.2.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aNumber
Numéro d'option CoAP.
[in] aValue
Valeur entière non signée de l'option CoAP.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.
Voir aussi:
otCoapMessageGetOptionUintValue

otCoapMessageAppendUriPathOptions

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

Ajoute une option URI-Path.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aUriPath
Un pointeur vers une chaîne se terminant par une valeur NULL.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageAppendUriQueryOption (Option)

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

Ajoute une seule option de requête URI.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aUriQuery
Un pointeur vers une chaîne se terminant par une valeur NULL, qui doit contenir une seule paire clé=valeur.
Valeurs de retour
OT_ERROR_NONE
L'option a bien été ajoutée.
OT_ERROR_INVALID_ARGS
Le type d'option n'est pas égal ou supérieur à celui du dernier type d'option.
OT_ERROR_NO_BUFS
La longueur de l'option dépasse la taille de la mémoire tampon.

otCoapMessageCodeToString

const char * otCoapMessageCodeToString(
  const otMessage *aMessage
)

Renvoie le code CoAP sous forme de chaîne lisible.

@ renvoie le code CoAP sous forme de chaîne.

Détails
Paramètres
[in] aMessage
Un pointeur vers le message CoAP.

otCoapMessageGenerateToken

void otCoapMessageGenerateToken(
  otMessage *aMessage,
  uint8_t aTokenLength
)

Définit la longueur du jeton et rend sa valeur aléatoire.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aTokenLength
Longueur d'un jeton à définir.

OTCoapMessageGetCode

otCoapCode otCoapMessageGetCode(
  const otMessage *aMessage
)

Renvoie la valeur Code.

Détails
Paramètres
[in] aMessage
Un pointeur vers le message CoAP.
Renvoie
Valeur Code.

otCoapMessageGetMessageId

uint16_t otCoapMessageGetMessageId(
  const otMessage *aMessage
)

Renvoie la valeur "Message ID" (ID du message).

Détails
Paramètres
[in] aMessage
Un pointeur vers le message CoAP.
Renvoie
Valeur de l'ID du message.

otCoapMessageGetToken

const uint8_t * otCoapMessageGetToken(
  const otMessage *aMessage
)

Renvoie un pointeur vers la valeur du jeton.

Détails
Paramètres
[in] aMessage
Un pointeur vers le message CoAP.
Renvoie
Pointeur vers la valeur du jeton.

otCoapMessageGetTokenLength

uint8_t otCoapMessageGetTokenLength(
  const otMessage *aMessage
)

Renvoie la longueur du jeton.

Détails
Paramètres
[in] aMessage
Un pointeur vers le message CoAP.
Renvoie
Longueur du jeton.

otCoapMessageGetType

otCoapType otCoapMessageGetType(
  const otMessage *aMessage
)

Renvoie la valeur Type.

Détails
Paramètres
[in] aMessage
Un pointeur vers le message CoAP.
Renvoie
Valeur Type.

OTCoapMessageInit

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

Initialise l'en-tête CoAP.

Détails
Paramètres
[in,out] aMessage
Pointeur vers le message CoAP à initialiser.
[in] aType
Type de message CoAP.
[in] aCode
Code du message COAP.

otCoapMessageInitResponse

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

Initialise un message de réponse.

Détails
Paramètres
[in,out] aResponse
Un pointeur vers le message de réponse CoAP.
[in] aRequest
Un pointeur vers le message de requête CoAP.
[in] aType
Type de message CoAP.
[in] aCode
Code du message COAP.
Valeurs de retour
OT_ERROR_NONE
Le message de réponse a bien été initialisé.
OT_ERROR_NO_BUFS
Tampons de message insuffisants disponibles pour initialiser le message de réponse.

OTCoapMessageSetCode

void otCoapMessageSetCode(
  otMessage *aMessage,
  otCoapCode aCode
)

Définit la valeur Code.

Détails
Paramètres
[in,out] aMessage
Pointeur vers le message CoAP à initialiser.
[in] aCode
Code du message COAP.

otCoapMessageSetPayloadMarker

otError otCoapMessageSetPayloadMarker(
  otMessage *aMessage
)

Ajout d'un repère de charge utile indiquant le début de la charge utile à l'en-tête CoAP.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
Valeurs de retour
OT_ERROR_NONE
Le repère de charge utile a bien été ajouté.
OT_ERROR_NO_BUFS
Le repère de charge utile de l'en-tête dépasse la taille de la mémoire tampon.

otCoapMessageSetToken

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

Définit la valeur et la longueur du jeton dans un en-tête.

Détails
Paramètres
[in,out] aMessage
Un pointeur vers le message CoAP.
[in] aToken
Pointeur vers la valeur du jeton.
[in] aTokenLength
La longueur de aToken.
Valeurs de retour
OT_ERROR_NONE
La valeur du jeton a bien été définie.
OT_ERROR_NO_BUFS
Tampons insuffisants pour définir la valeur du jeton.

NouveauMessage

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

Crée un message CoAP.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aSettings
Un pointeur vers les paramètres du message ou la valeur NULL pour définir les paramètres par défaut.
Renvoie
Pointeur vers le tampon du message ou valeur NULL si aucun tampon de message n'est disponible ou si les paramètres ne sont pas valides.

otCoapOptionIteratorGetFirstOption

const otCoapOption * otCoapOptionIteratorGetFirstOption(
  otCoapOptionIterator *aIterator
)

Renvoie un pointeur vers la première option.

Détails
Paramètres
[in,out] aIterator
Pointeur vers l'itérateur d'options de message CoAP.
Renvoie
Pointeur vers la première option. Si aucune option n'est présente, un pointeur NULL est renvoyé.

otCoapOptionIteratorGetFirstOptionMatching

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

Renvoie un pointeur vers la première option correspondant au numéro d'option spécifié.

Détails
Paramètres
[in] aIterator
Pointeur vers l'itérateur d'options de message CoAP.
[in] aOption
Numéro d'option recherché.
Renvoie
Pointeur vers la première option de correspondance. Si aucune option de correspondance n'est présente, le pointeur NULL est renvoyé.

otCoapOptionIteratorGetNextOption

const otCoapOption * otCoapOptionIteratorGetNextOption(
  otCoapOptionIterator *aIterator
)

Renvoie un pointeur vers l'option suivante.

Détails
Paramètres
[in,out] aIterator
Pointeur vers l'itérateur d'options de message CoAP.
Renvoie
Pointeur vers l'option suivante. Si plus aucune option n'est présente, le pointeur NULL est renvoyé.

otCoapOptionIteratorGetNextOptionMatching

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

Renvoie un pointeur vers l'option suivante correspondant au numéro d'option spécifié.

Détails
Paramètres
[in] aIterator
Pointeur vers l'itérateur d'options de message CoAP.
[in] aOption
Numéro d'option recherché.
Renvoie
Pointeur vers l'option de correspondance suivante. Si aucune autre option de correspondance n'est présente, le pointeur NULL est renvoyé.

otCoapOptionIteratorGetOptionUintValue

otError otCoapOptionIteratorGetOptionUintValue(
  otCoapOptionIterator *aIterator,
  uint64_t *aValue
)

Insère la valeur d'option actuelle dans aValue en supposant qu'elle est un entier non signé encodé conformément à https://tools.ietf.org/html/rfc7252#section-3.2.

Détails
Paramètres
[in,out] aIterator
Pointeur vers l'itérateur d'options de message CoAP.
[out] aValue
Pointeur vers un entier non signé pour recevoir la valeur de l'option.
Valeurs de retour
OT_ERROR_NONE
La valeur a bien été renseignée.
OT_ERROR_NOT_FOUND
Aucune option actuelle.
OT_ERROR_NO_BUFS
La valeur est trop longue pour tenir dans un uint64_t.
Voir aussi:
otCoapMessageAppendUintOption

otCoapOptionIteratorGetOptionValue

otError otCoapOptionIteratorGetOptionValue(
  otCoapOptionIterator *aIterator,
  void *aValue
)

Remplit la valeur d'option actuelle dans aValue.

Détails
Paramètres
[in,out] aIterator
Pointeur vers l'itérateur d'options de message CoAP.
[out] aValue
Un pointeur vers un tampon pour recevoir la valeur de l'option.
Valeurs de retour
OT_ERROR_NONE
La valeur a bien été renseignée.
OT_ERROR_NOT_FOUND
Aucune option actuelle.

otCoapOptionIteratorInit

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

Initialise un itérateur pour les options du message donné.

Détails
Paramètres
[in,out] aIterator
Pointeur vers l'itérateur d'options de message CoAP.
[in] aMessage
Un pointeur vers le message CoAP.
Valeurs de retour
OT_ERROR_NONE
Initialisation réussie.
OT_ERROR_PARSE
L'état du message est incohérent.

otCoapRemoveBlockWiseResource

void otCoapRemoveBlockWiseResource(
  otInstance *aInstance,
  otCoapBlockwiseResource *aResource
)

Supprime une ressource par bloc du serveur CoAP.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aResource
Un pointeur vers la ressource.

otCoapRemoveResource

void otCoapRemoveResource(
  otInstance *aInstance,
  otCoapResource *aResource
)

Supprime une ressource du serveur CoAP.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aResource
Un pointeur vers la ressource.

OTCoapSendRequest

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

Envoie une demande CoAP.

Si une réponse à une requête est attendue, les informations de fonction et de contexte correspondantes doivent être fournies. Si aucune réponse n'est attendue, ces arguments doivent être des pointeurs NULL.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMessage
Pointeur vers le message à envoyer.
[in] aMessageInfo
Pointeur vers les informations du message associées à aMessage.
[in] aHandler
Un pointeur de fonction qui sera appelé à la réception ou au délai d'inactivité de la réponse.
[in] aContext
Un pointeur vers des informations de contexte arbitraires. Peut être NULL si elle n'est pas utilisée.
Valeurs de retour
OT_ERROR_NONE
Le message CoAP a bien été envoyé.
OT_ERROR_NO_BUFS
Échec de l'allocation des données de retransmission.

otCoapSendRequestBlockWise

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

Envoie une requête CoAP par bloc.

Est disponible lorsque la configuration OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE est activée.

Si une réponse à une requête est attendue, les informations de fonction et de contexte correspondantes doivent être fournies. Si la réponse doit être au niveau du bloc, une fonction de hook correspondante doit être fournie. Si aucune réponse n'est attendue, ces arguments doivent être des pointeurs NULL.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMessage
Pointeur vers le message à envoyer.
[in] aMessageInfo
Pointeur vers les informations du message associées à aMessage.
[in] aHandler
Un pointeur de fonction qui sera appelé à la réception ou au délai d'inactivité de la réponse.
[in] aContext
Un pointeur vers des informations de contexte arbitraires. Peut être NULL si elle n'est pas utilisée.
[in] aTransmitHook
Pointeur vers une fonction de hook pour le transfert sortant par bloc.
[in] aReceiveHook
Pointeur vers une fonction de hook pour la correspondance entrante par bloc.
Valeurs de retour
OT_ERROR_NONE
Le message CoAP a bien été envoyé.
OT_ERROR_NO_BUFS
Échec de l'allocation des données de retransmission.

otCoapSendRequestBlockWiseWithParameters

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

Envoie une requête CoAP par bloc avec des paramètres de transmission personnalisés.

Est disponible lorsque la configuration OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE est activée.

Si une réponse à une requête est attendue, les informations de fonction et de contexte correspondantes doivent être fournies. Si la réponse doit être au niveau du bloc, une fonction de hook correspondante doit être fournie. Si aucune réponse n'est attendue, ces arguments doivent être des pointeurs NULL.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMessage
Pointeur vers le message à envoyer.
[in] aMessageInfo
Pointeur vers les informations du message associées à aMessage.
[in] aHandler
Un pointeur de fonction qui sera appelé à la réception ou au délai d'inactivité de la réponse.
[in] aContext
Un pointeur vers des informations de contexte arbitraires. Peut être NULL si elle n'est pas utilisée.
[in] aTxParameters
Un pointeur vers des paramètres de transmission pour cette requête. Utilisez NULL pour les valeurs par défaut.
[in] aTransmitHook
Pointeur vers une fonction de hook pour le transfert sortant par bloc.
[in] aReceiveHook
Pointeur vers une fonction de hook pour la correspondance entrante par bloc.
Valeurs de retour
OT_ERROR_NONE
Le message CoAP a bien été envoyé.
OT_ERROR_NO_BUFS
Échec de l'allocation des données de retransmission.
OT_ERROR_INVALID_ARGS
Des arguments non valides sont fournis.

otCoapSendRequestWithParameters

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

Envoie une requête CoAP avec des paramètres de transmission personnalisés.

Si une réponse à une requête est attendue, les informations de fonction et de contexte correspondantes doivent être fournies. Si aucune réponse n'est attendue, ces arguments doivent être des pointeurs NULL.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMessage
Pointeur vers le message à envoyer.
[in] aMessageInfo
Pointeur vers les informations du message associées à aMessage.
[in] aHandler
Un pointeur de fonction qui sera appelé à la réception ou au délai d'inactivité de la réponse.
[in] aContext
Un pointeur vers des informations de contexte arbitraires. Peut être NULL si elle n'est pas utilisée.
[in] aTxParameters
Un pointeur vers des paramètres de transmission pour cette requête. Utilisez NULL pour les valeurs par défaut. Sinon, les paramètres indiqués doivent remplir les conditions suivantes:
  1. La valeur mMaxRetransmit n'est pas supérieure à OT_COAP_MAX_RETRANSMIT.
  2. mAckRandomFactorNumerator / mAckRandomFactorDenominator ne doit pas être inférieur à 1.0.
  3. La durée de vie de l'échange calculée ne doit pas dépasser uint32_t.
Valeurs de retour
OT_ERROR_NONE
Le message CoAP a bien été envoyé.
OT_ERROR_NO_BUFS
Échec de l'allocation des données de retransmission.
OT_ERROR_INVALID_ARGS
Des arguments non valides sont fournis.

otCoapSendResponse

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

Envoie une réponse CoAP à partir du serveur.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMessage
Un pointeur vers la réponse CoAP à envoyer.
[in] aMessageInfo
Pointeur vers les informations du message associées à aMessage.
Valeurs de retour
OT_ERROR_NONE
Le message de réponse CoAP a bien été placé en file d'attente.
OT_ERROR_NO_BUFS
Tampons disponibles insuffisants pour envoyer la réponse CoAP.

otCoapSendResponseBlockWise

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

Envoie une réponse CoAP par bloc à partir du serveur.

Est disponible lorsque la configuration OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE est activée.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMessage
Un pointeur vers la réponse CoAP à envoyer.
[in] aMessageInfo
Pointeur vers les informations du message associées à aMessage.
[in] aContext
Un pointeur vers des informations de contexte arbitraires. Peut être NULL si elle n'est pas utilisée.
[in] aTransmitHook
Pointeur vers une fonction de hook pour le transfert sortant par bloc.
Valeurs de retour
OT_ERROR_NONE
Le message de réponse CoAP a bien été placé en file d'attente.
OT_ERROR_NO_BUFS
Tampons disponibles insuffisants pour envoyer la réponse CoAP.

otCoapSendResponseBlockWiseWithParameters

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

Envoie une réponse CoAP par bloc depuis le serveur avec des paramètres de transmission personnalisés.

Est disponible lorsque la configuration OPENTHREAD_CONFIG_COAP_BLOCKWISE_TRANSFER_ENABLE est activée.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMessage
Un pointeur vers la réponse CoAP à envoyer.
[in] aMessageInfo
Pointeur vers les informations du message associées à aMessage.
[in] aTxParameters
Un pointeur vers des paramètres de transmission pour cette réponse. Utilisez NULL pour les valeurs par défaut.
[in] aContext
Un pointeur vers des informations de contexte arbitraires. Peut être NULL si elle n'est pas utilisée.
[in] aTransmitHook
Pointeur vers une fonction de hook pour le transfert sortant par bloc.
Valeurs de retour
OT_ERROR_NONE
Le message de réponse CoAP a bien été placé en file d'attente.
OT_ERROR_NO_BUFS
Tampons disponibles insuffisants pour envoyer la réponse CoAP.
OT_ERROR_INVALID_ARGS
Des arguments non valides sont fournis.

otCoapSendResponseWithParameters

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

Envoie une réponse CoAP à partir du serveur avec des paramètres de transmission personnalisés.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aMessage
Un pointeur vers la réponse CoAP à envoyer.
[in] aMessageInfo
Pointeur vers les informations du message associées à aMessage.
[in] aTxParameters
Un pointeur vers des paramètres de transmission pour cette réponse. Utilisez NULL pour les valeurs par défaut.
Valeurs de retour
OT_ERROR_NONE
Le message de réponse CoAP a bien été placé en file d'attente.
OT_ERROR_NO_BUFS
Tampons disponibles insuffisants pour envoyer la réponse CoAP.
OT_ERROR_INVALID_ARGS
Des arguments non valides sont fournis.

otCoapSetDefaultHandler

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

Définit le gestionnaire par défaut des requêtes CoAP non gérées.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aHandler
Pointeur de fonction qui doit être appelé lorsqu'une requête non gérée arrive.
[in] aContext
Un pointeur vers des informations de contexte arbitraires. Peut être NULL si elle n'est pas utilisée.

OTCoapStart

otError otCoapStart(
  otInstance *aInstance,
  uint16_t aPort
)

Démarre le serveur CoAP.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
[in] aPort
Port UDP local auquel établir la liaison.
Valeurs de retour
OT_ERROR_NONE
Le serveur CoAP a bien été démarré.
OT_ERROR_FAILED
Échec du démarrage du serveur CoAP.

OTCoapStop

otError otCoapStop(
  otInstance *aInstance
)

Arrête le serveur CoAP.

Détails
Paramètres
[in] aInstance
Un pointeur vers une instance OpenThread.
Valeurs de retour
OT_ERROR_NONE
Le serveur CoAP a bien été arrêté.

Macros

OT_COAP_CODE

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

Macro d'assistance permettant de définir des valeurs de code CoAP.

OT_COAP_DEFAULT_TOKEN_LENGTH

 OT_COAP_DEFAULT_TOKEN_LENGTH 2

Longueur de jeton par défaut.

RETRANSMIT_MAX_COAP_OT

 OT_COAP_MAX_RETRANSMIT 20

Retransmission maximale prise en charge par OpenThread.

OT_COAP_MAX_TOKEN_LENGTH

 OT_COAP_MAX_TOKEN_LENGTH 8

Longueur maximale du jeton, tel que spécifié (RFC 7252).

PROLONG. : COAP_MIN_ACK_TIMEOUT

 OT_COAP_MIN_ACK_TIMEOUT 1000

Délai ACK minimal en millisecondes pris en charge par OpenThread.

OT_DEFAULT_COAP_PORT

 OT_DEFAULT_COAP_PORT 5683

Port CoAP par défaut, tel que spécifié dans la norme RFC 7252.

Ressources

Les rubriques de référence de l'API OpenThread proviennent du code source, disponible sur GitHub. Pour en savoir plus ou pour contribuer à notre documentation, consultez Ressources.