QMqttServerConnectionProperties 类

QMqttServerConnectionProperties 类表示一个 QMqttClient 连接到的服务器的配置选项。 更多...

头文件 #include <QMqttServerConnectionProperties>
CMakefind_package(Qt6 REQUIRED COMPONENTS Mqtt)
target_link_libraries(mytarget PRIVATE Qt6::Mqtt)
qmakeQT += mqtt
继承 QMqttConnectionProperties

公共类型

枚举ServerPropertyDetail { None, SessionExpiryInterval, MaximumReceive, MaximumQoS, RetainAvailable, …, AuthenticationData }
标志ServerPropertyDetails

公共函数

QMqttServerConnectionProperties::ServerPropertyDetailsavailableProperties() const
boolclientIdAssigned() const
boolisValid() const
quint8maximumQoS() const
QStringreason() const
QMqtt::ReasonCodereasonCode() const
QStringresponseInformation() const
boolretainAvailable() const
quint16serverKeepAlive() const
QStringserverReference() const
boolsharedSubscriptionSupported() const
boolsubscriptionIdentifierSupported() const
boolwildcardSupported() 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类型是ServerPropertyDetailQFlags<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级别发布消息。

默认值是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

© 2024 Qt 公司。此处包含的文档贡献的版权属于各自的所有者。此处提供的文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 的条款许可的。Qt 和相关商标是芬兰的 Qt 公司或其他国家/地区的商标。