Qt CoAP

约束应用程序协议 ( CoAP ) 是 M2M (机器对机器) Web 传输协议,用于 IoT (物联网) 中的受约束节点和受约束网络。它旨在为集成 Web 轻松接口 HTTP,同时满足特定要求,譬如:多点播送支持、非常低的开销及受约束环境的简单性。

Qt CoAP 模块实现的 CoAP 客户端侧定义通过 RFC 7252 。一般,CoAP 旨在使用面向数据报的传输 (譬如 UDP),因此目前实现的传输基于 UDP (用户数据报协议)。不管怎样,实现基于 TCP、WebSocket 等的自定义传输也是可能的。

Qt CoAP 模块支持:

  • 安全性基于 UDP 之上的 DTLS (安全数据报传输层)
  • 组通信定义通过 RFC 7390
  • 按块传输定义通过 RFC 7959
  • 资源观察定义通过 RFC 7641
  • 资源探索 (多点播送和单服务器)

使用模块

使用 Qt 模块要求直接或透过其它依赖链接到模块库。一些构建工具为此有贡献支持,包括 CMake and qmake .

构建采用 CMake

使用 find_package() 命令去定位所需模块组件,在 Qt6 包:

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

另请参阅 构建采用 CMake 概述。

采用 qmake 构建

要配置采用 qmake 构建模块,添加模块作为值为 QT 变量在工程的 .pro 文件:

QT += coap
					

文章和指南

范例

参考

许可和归属

Qt CoAP 在商业许可下是可用的来自 Qt 公司 。此外,它是可用的根据 GNU GPL (一般公共许可) 第 3 版 .