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::None | 0x00000000 | プロパティは指定されていません。 |
QMqttServerConnectionProperties::SessionExpiryInterval | 0x00000001 | 切断後、サーバーがセッションを保持する秒数。 |
QMqttServerConnectionProperties::MaximumReceive | 0x00000002 | サーバーが同時に管理できる QoS 1 および 2 メッセージの最大数。 |
QMqttServerConnectionProperties::MaximumQoS | 0x00000004 | サーバーが認識できる最大の QoS レベル。 |
QMqttServerConnectionProperties::RetainAvailable | 0x00000010 | 保持メッセージがサポートされているかどうかを指定します。 |
QMqttServerConnectionProperties::MaximumPacketSize | 0x00000020 | メッセージヘッダーおよびプロパティを含む、パケットの最大サイズを指定します。 |
QMqttServerConnectionProperties::AssignedClientId | 0x00000040 | サーバーがクライアント識別子を割り当てるかどうかを指定します。 |
QMqttServerConnectionProperties::MaximumTopicAlias | 0x00000080 | トピックエイリアスの最大数を指定します。 |
QMqttServerConnectionProperties::ReasonString | 0x00000100 | 接続状態に関する詳細情報を示す文字列を指定します。 |
QMqttServerConnectionProperties::UserProperty | 0x00000200 | 追加のユーザープロパティを指定します。 |
QMqttServerConnectionProperties::WildCardSupported | 0x00000400 | サーバーがワイルドカード・サブスクリプションをサポートしているかどうかを指定します。 |
QMqttServerConnectionProperties::SubscriptionIdentifierSupport | 0x00000800 | サーバーがサブスクリプション識別子をサポートしているかどうかを指定します。 |
QMqttServerConnectionProperties::SharedSubscriptionSupport | 0x00001000 | サーバーが共有サブスクリプションをサポートしているかどうかを指定します。 |
QMqttServerConnectionProperties::ServerKeepAlive | 0x00002000 | サーバーがクライアントからのキープアライブパケットを待機する秒数を指定します。 |
QMqttServerConnectionProperties::ResponseInformation | 0x00004000 | 応答情報を指定します。 |
QMqttServerConnectionProperties::ServerReference | 0x00008000 | クライアントが接続するための代替サーバーアドレスを指定します。 |
QMqttServerConnectionProperties::AuthenticationMethod | 0x00010000 | 認証方法を指定します。 |
QMqttServerConnectionProperties::AuthenticationData | 0x00020000 | 認証データを指定します。 |
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.