QMqttServerConnectionProperties Class
QMqttServerConnectionProperties クラスは、QMqttClient が接続しているサーバーの設定オプションを表します。詳細...
Header: | #include <QMqttServerConnectionProperties> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Mqtt) target_link_libraries(mytarget PRIVATE Qt6::Mqtt) |
qmake: | QT += mqtt |
Inherits: | 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
この enum 型は、接続確立後にサーバーまたはクライアントが設定する利用可能なプロパティを指定します。
定数 | 値 | 説明 |
---|---|---|
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 レベルを、サポート可能な値に制限するべきである。
デフォルト値は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
サーバーがキープアライブとして要求した秒数を返します。これは、クライアント側で設定されている keep alive を上書きします。
QMqttClient::setKeepAlive()も参照 。
QString QMqttServerConnectionProperties::serverReference() const
クライアントが代替接続先として使用できるサーバのアドレスを返します。通常、これは理由コード0x9c
(Use another server)または0x9c
(Server moved)とともに使用される。
bool QMqttServerConnectionProperties::sharedSubscriptionSupported() const
サーバが共有サブスクリプションを受け入れる場合はtrue
を返します。既定値はtrue
です。
bool QMqttServerConnectionProperties::subscriptionIdentifierSupported() const
サーバーがサブスクリプション識別子を受け付ける場合はtrue
を返す。サブスクリプション識別子は、新規サブスクリプションを作成する際にサーバーに渡すことができます。
デフォルト値はtrue
である。
QMqttSubscriptionProperties::setSubscriptionIdentifier()も参照のこと 。
bool QMqttServerConnectionProperties::wildcardSupported() const
サーバーがワイルドカードを含むサブスクリプションを受け付ける場合はtrue
を返す。デフォルト値はtrue
です。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。