You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Dejan Bosanac (JIRA)" <ji...@apache.org> on 2015/10/05 13:08:26 UTC
[jira] [Resolved] (AMQ-5997) MQTT legacy client support
[ https://issues.apache.org/jira/browse/AMQ-5997?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dejan Bosanac resolved AMQ-5997.
--------------------------------
Resolution: Fixed
Fixed mqtt client and released 1.12. Upgraded the broker and added a check on unsubscribe method to support this behaviour only if client is 3.1 and transport.publishDollarTopic=true (another legacy option is still used).
> MQTT legacy client support
> --------------------------
>
> Key: AMQ-5997
> URL: https://issues.apache.org/jira/browse/AMQ-5997
> Project: ActiveMQ
> Issue Type: Improvement
> Affects Versions: 5.12.0
> Reporter: Dejan Bosanac
> Assignee: Dejan Bosanac
> Fix For: 5.13.0
>
>
> MQTT 3.1.1 spec defines that UNSUBSCRIBE packet needs to define AT_LEAST_ONCE (01) for fixed header QoS bits. But older clients might set those to some different value, like AT_MOST_ONCE. At the moment, the mqtt-client lib will try to have this case differently and we'll get
> {code}ProtocolException: Invalid message encoding{code}
> error.
> The solution is to make mqtt client parse these other values regularly and introduce the necessary checks for 3.1.1 spec version in the broker.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)