Qt CoAP

Constrained Application Protocol(CoAP)は、モノのインターネット(IoT)における制約のあるノードや制約のあるネットワークで使用するためのマシン・ツー・マシン(M2M)ウェブ転送プロトコルです。マルチキャストのサポート、非常に低いオーバーヘッド、制約された環境でのシンプルさといった特殊な要件を満たしながら、ウェブとの統合のために HTTP と簡単にインターフェースできるように設計されています。

Qt CoAPモジュールは、RFC 7252で定義されたCoAPのクライアント側を実装しています。一般的にCoAPはUDPのようなデータグラム指向のトランスポートを使うように設計されているので、現在のトランスポートの実装はUDPに基づいています。しかし、TCP や WebSocket などに基づいたカスタム・トランスポートを実装することも可能です。

Qt CoAPモジュールは以下をサポートしています:

  • UDP 上の Datagram TLS (DTLS) に基づくセキュリティ
  • RFC 7390で定義されたグループ通信
  • RFC 7959で定義されたブロックワイズ転送
  • RFC 7641で定義されたリソース観測
  • リソース発見(マルチキャストおよび単一サーバー)

モジュールの使用

Qt モジュールを使用するには、モジュールライブラリを直接、または他の依存関係を通してリンクする必要があります。CMakeや qmakeなど、いくつかのビルドツールはこのための専用サポートを持っています。

CMake でのビルド

find_package() コマンドを使って、Qt6 パッケージの中から必要なモジュールコンポーネントを探します:

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

CMakeによるビルドの概要も参照してください。

qmakeでビルドする

qmakeでビルドするようにモジュールを設定するには、プロジェクトの.proファイルにQT 変数の値としてモジュールを追加します:

QT += coap

記事とガイド

サンプル

リファレンス

ライセンスと帰属

Qt CoAP はThe Qt Company の商用ライセンスの下で利用可能です。また、GNU General Public License, version 3 の下でも利用可能です。

また、Qt CoAP は GNU General Public License, version 3 で提供されています 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。