As with MQTT 3.1 there is no indication a client could send to the server which dialect it want to "speak", we need another way to distinguish what the client wants. A simple way would be to simply create additional endpoints which serve one dialect each.
The downside is, that we already have 3 variants (MQTT with client certs, MQTT over WS with client certs, MQTT over WS without client certs). Each of them has a dedicated deployment. So having 4 different dialects, we would end up with 12 different services/deployments.
Currently the MQTT endpoint serves a Drogue Cloud specific MQTT dialect.
However, we also agree that we want to serve other dialects too:
As with MQTT 3.1 there is no indication a client could send to the server which dialect it want to "speak", we need another way to distinguish what the client wants. A simple way would be to simply create additional endpoints which serve one dialect each.
The downside is, that we already have 3 variants (MQTT with client certs, MQTT over WS with client certs, MQTT over WS without client certs). Each of them has a dedicated deployment. So having 4 different dialects, we would end up with 12 different services/deployments.
So, we do need a different way to solve this.