Sur cette page

Qt CoAP

Le protocole CoAP(Constrained Application Protocol) est un protocole de transfert Web de type machine-à-machine (M2M) destiné à être utilisé avec des nœuds et des réseaux aux ressources limitées dans l'Internet des objets (IoT). Il est conçu pour s'interfacer facilement avec HTTP en vue d'une intégration au Web, tout en répondant à des exigences spécifiques telles que la prise en charge de la multidiffusion, une surcharge très faible et une simplicité d'utilisation adaptée aux environnements aux ressources limitées.

Le module Qt CoAP implémente la partie client du CoAP telle que définie par la RFC 7252. En règle générale, le CoAP est conçu pour utiliser un transport orienté datagrammes tel que l'UDP ; l'implémentation actuelle du transport repose donc sur l'UDP. Il est toutefois possible d'implémenter des transports personnalisés basés sur le TCP, les WebSockets, etc.

Le module Qt CoAP prend en charge :

  • La sécurité basée sur Datagram TLS (DTLS) sur UDP
  • La communication de groupe définie par la RFC 7390
  • Les transferts par blocs définis par la RFC 7959
  • L’observation des ressources telle que définie par la RFC 7641
  • La découverte de ressources (multidiffusion et serveur unique)

Remarque : la sécurité est optionnelle : QCoapClient utilise par défaut le protocole QtCoap::NoSecurity et doit être configuré en mode sécurisé pour activer le DTLS. Voir la section Sécurité.

Utilisation du module

L'utilisation d'un module Qt nécessite une liaison avec la bibliothèque du module, soit directement, soit via d'autres dépendances. Plusieurs outils de compilation prennent cela en charge, notamment CMake et qmake.

Compilation avec CMake

Utilisez la commande ` find_package() ` pour localiser les composants du module nécessaires dans le paquet ` Qt6 ` :

find_package(Qt6 REQUIRED COMPONENTS Coap)
target_link_libraries(mytarget PRIVATE Qt6::Coap)

Voir également la présentation de la compilation avec CMake.

Compilation avec qmake

Pour configurer le module en vue d'une compilation avec qmake, ajoutez le module en tant que valeur de la variable QT dans le fichier .pro du projet :

QT += coap

Articles et guides

Exemples

Référence

Licences et mentions de copyright

Qt CoAP est disponible sous licence commerciale auprès de The Qt Company. Il est également disponible sous la licence publique générale GNU, version 3.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.