While JSON serialization is quite common, it's far from the only payload (serialization) format that is commonly used. In fact, it's quite a poor format for IoT and similar data that often gets transferred over MQTT - therefore many systems use other, more compact and more performant, formats. These are generally binary formats that are not human-readable.
In light of this, it would be great to allow for other (common) binary formats to be inspected in a similar user-readable fashion inside MQTT Explorer. The most common ones are likely to be the following, split into two categories:
Schema-less
These can usually be mapped directly to JSON-like payloads via existing libraries. I.e. development effort to support should therefore be more limited:
CBOR (the one we use, and the reason I'm creating this feature; CBOR is also the only format apart from JSON that's officially supported by AWS IoT)
These can be mapped to JSON-like payloads based on schema. Given the need to register the schema in MQTT Explorer, the development effort to support these may be a bit higher:
Thrift
Protobufs and Thrift are mostly used in the context of RPC, so may be less relevant in the MQTT context, but I figured I'd add them just to give a sense of the landscape.
Either way, I thought I'd create this issue in order to gauge the interest in (and likelihood of) having this be implemented.
While JSON serialization is quite common, it's far from the only payload (serialization) format that is commonly used. In fact, it's quite a poor format for IoT and similar data that often gets transferred over MQTT - therefore many systems use other, more compact and more performant, formats. These are generally binary formats that are not human-readable.
In light of this, it would be great to allow for other (common) binary formats to be inspected in a similar user-readable fashion inside MQTT Explorer. The most common ones are likely to be the following, split into two categories:
Schema-less
These can usually be mapped directly to JSON-like payloads via existing libraries. I.e. development effort to support should therefore be more limited:
Schema-based
These can be mapped to JSON-like payloads based on schema. Given the need to register the schema in MQTT Explorer, the development effort to support these may be a bit higher:
Either way, I thought I'd create this issue in order to gauge the interest in (and likelihood of) having this be implemented.