TsgcWSPClient_MQTT › Properties › MQTTVersion
选择 CONNECT 数据包中通告的 MQTT 协议级别(3.1.1 或 5.0)。
property MQTTVersion: TwsMQTTVersion read FMQTTVersion write SetMQTTVersion;
mqtt311
接受 mqtt311(协议级别 4,默认值,支持最广泛)或 mqtt5(协议级别 5)。MQTT 5.0 与 3.1.1 在线路层面不兼容:它新增了原因码、用户属性、会话过期、主题别名、共享订阅、增强认证及服务器主动 DISCONNECT 功能。当 MQTTVersion = mqtt311 时,分配给 ConnectProperties、LastWillTestament.WillProperties 以及 Publish、Subscribe、Unsubscribe、Disconnect 和 Auth 上各 *Properties 参数的值将被静默忽略。请在激活连接之前设置 MQTTVersion;连接建立后更改此值,须等到下次 CONNECT 时才会生效。
MQTT.MQTTVersion := mqtt5;
MQTT.ConnectProperties.Enabled := True;
MQTT.ConnectProperties.SessionExpiryInterval := 300;