このページでは

QMqttServerConnectionProperties Class

QMqttServerConnectionProperties クラスは、QMqttClient が接続されているサーバーの設定オプションを表します。詳細...

ヘッダー: #include <QMqttServerConnectionProperties>
CMake: find_package(Qt6 REQUIRED COMPONENTS Mqtt)
target_link_libraries(mytarget PRIVATE Qt6::Mqtt)
qmake: QT += mqtt
継承元: QMqttConnectionProperties

パブリック型

enum ServerPropertyDetail { None, SessionExpiryInterval, MaximumReceive, MaximumQoS, RetainAvailable, …, AuthenticationData }
flags ServerPropertyDetails

パブリック関数

QMqttServerConnectionProperties::ServerPropertyDetails availableProperties() const
bool clientIdAssigned() const
bool isValid() const
quint8 maximumQoS() const
QString reason() const
QMqtt::ReasonCode reasonCode() const
QString responseInformation() const
bool retainAvailable() const
quint16 serverKeepAlive() const
QString serverReference() const
bool sharedSubscriptionSupported() const
bool subscriptionIdentifierSupported() const
bool wildcardSupported() const

詳細な説明

接続が確立されると、サーバーは接続プロパティに関する追加情報を送信する場合があります。availableProperties() を使用して、サーバーによって設定されたプロパティを特定します。プロパティがサーバーによって設定されていない場合、デフォルト値が想定され、このインスタンスのアクセス関数を呼び出すことで取得できます。

注:接続 プロパティはMQTT 5.0仕様の一部であり、それより低いプロトコルレベルで接続する場合は使用できません。詳細については、QMqttClient::ProtocolVersion を参照してください。

メンバ型のドキュメント

enum QMqttServerConnectionProperties::ServerPropertyDetail
flags QMqttServerConnectionProperties::ServerPropertyDetails

この列挙型は、接続確立後にサーバーまたはクライアントによって設定される利用可能なプロパティを指定します。

定数値説明
QMqttServerConnectionProperties::None0x00000000プロパティは指定されていません。
QMqttServerConnectionProperties::SessionExpiryInterval0x00000001切断後、サーバーがセッションを保持する秒数。
QMqttServerConnectionProperties::MaximumReceive0x00000002サーバーが同時に管理できる QoS 1 および 2 メッセージの最大数。
QMqttServerConnectionProperties::MaximumQoS0x00000004サーバーが認識できる最大の QoS レベル。
QMqttServerConnectionProperties::RetainAvailable0x00000010保持メッセージがサポートされているかどうかを指定します。
QMqttServerConnectionProperties::MaximumPacketSize0x00000020メッセージヘッダーおよびプロパティを含む、パケットの最大サイズを指定します。
QMqttServerConnectionProperties::AssignedClientId0x00000040サーバーがクライアント識別子を割り当てるかどうかを指定します。
QMqttServerConnectionProperties::MaximumTopicAlias0x00000080トピックエイリアスの最大数を指定します。
QMqttServerConnectionProperties::ReasonString0x00000100接続状態に関する詳細情報を示す文字列を指定します。
QMqttServerConnectionProperties::UserProperty0x00000200追加のユーザープロパティを指定します。
QMqttServerConnectionProperties::WildCardSupported0x00000400サーバーがワイルドカード・サブスクリプションをサポートしているかどうかを指定します。
QMqttServerConnectionProperties::SubscriptionIdentifierSupport0x00000800サーバーがサブスクリプション識別子をサポートしているかどうかを指定します。
QMqttServerConnectionProperties::SharedSubscriptionSupport0x00001000サーバーが共有サブスクリプションをサポートしているかどうかを指定します。
QMqttServerConnectionProperties::ServerKeepAlive0x00002000サーバーがクライアントからのキープアライブパケットを待機する秒数を指定します。
QMqttServerConnectionProperties::ResponseInformation0x00004000応答情報を指定します。
QMqttServerConnectionProperties::ServerReference0x00008000クライアントが接続するための代替サーバーアドレスを指定します。
QMqttServerConnectionProperties::AuthenticationMethod0x00010000認証方法を指定します。
QMqttServerConnectionProperties::AuthenticationData0x00020000認証データを指定します。

ServerPropertyDetails 型は、QFlags<ServerPropertyDetail> の typedef です。これは、ServerPropertyDetail 値の OR 組み合わせを格納します。

メンバ関数のドキュメント

QMqttServerConnectionProperties::ServerPropertyDetails QMqttServerConnectionProperties::availableProperties() const

サーバーで指定された利用可能なプロパティを返します。

bool QMqttServerConnectionProperties::clientIdAssigned() const

サーバーがクライアントに新しいクライアント識別子を割り当てた場合、true を返します。

QMqttClient::clientId()も参照してください 。

bool QMqttServerConnectionProperties::isValid() const

サーバーが接続確認の一部としてプロパティを提供した場合、true を返します。プロパティが提供されていない場合は、false を返します。

quint8 QMqttServerConnectionProperties::maximumQoS() const

サーバーがメッセージのパブリッシュに対してサポートする最大QoSレベルを返します。サーバーが報告した最大QoSレベルを超えるQoSレベルでメッセージをパブリッシュすることは、プロトコル違反となります。

クライアントが QoS 1 または QoS 2 をサポートする必要がない場合は、サブスクリプションにおける最大 QoS レベルを、自身がサポート可能な値に制限する必要があります。その場合、サーバーは、サポートされている QoS レベルと制限された QoS レベルのいずれか高い方でメッセージを配信します。

デフォルト値は `2` です。

QMqttClient::publish() およびQMqttClient::subscribe()も参照してください 。

QString QMqttServerConnectionProperties::reason() const

このレスポンスに関連付けられた理由の文字列を返します。

QMqtt::ReasonCode QMqttServerConnectionProperties::reasonCode() const

このレスポンスに関連付けられた理由コードを返します。

QString QMqttServerConnectionProperties::responseInformation() const

レスポンス情報を返します。

bool QMqttServerConnectionProperties::retainAvailable() const

サーバーがリテインされたメッセージを受け入れる場合、true を返します。デフォルト値はtrue です。

quint16 QMqttServerConnectionProperties::serverKeepAlive() const

サーバーがキープアライブとして要求した秒数を返します。これにより、クライアント側で設定されているキープアライブ値が上書きされます。

QMqttClient::setKeepAlive()も参照してください 。

QString QMqttServerConnectionProperties::serverReference() const

クライアントが代わりに接続に使用できるサーバーのアドレスを返します。通常、これは理由コード「0x9c (別のサーバーを使用)」または「0x9c (サーバーが移動しました)」と組み合わせて使用されます。

bool QMqttServerConnectionProperties::sharedSubscriptionSupported() const

サーバーが共有サブスクリプションを受け入れる場合、true を返します。デフォルト値はtrue です。

bool QMqttServerConnectionProperties::subscriptionIdentifierSupported() const

サーバーがサブスクリプション識別子を受け入れる場合、true を返します。サブスクリプション識別子は、新しいサブスクリプションを作成する際にサーバーに渡すことができます。

デフォルト値はtrue です。

QMqttSubscriptionProperties::setSubscriptionIdentifier()も参照してください 。

bool QMqttServerConnectionProperties::wildcardSupported() const

サーバーがワイルドカードを含むサブスクリプションを受け入れる場合、true を返します。デフォルト値はtrue です。

© 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.