Hello @Red255 this relates with your previous question: https://learn.microsoft.com/en-us/answers/questions/707773/mqtt-message-structure.html
As far as I can see there are two options (1) running a MQTT broker or (2) Protocol Gateway. Have I missed any other possibilities?
That is correct. Azure IoT protocol gateway or Using the MQTT broker in IoT Edge are the recommendations.
Update: ** Though since Using the MQTT broker in IoT Edge is still in **preview, if you will use IoT Edge the recommendation for production is to deploy an OSS MQTT broker like Mosquitto as a module. This is a good example you can follow for your implementation: Azure IoT Edge Identity Translation Lite: Sample on implementing Identity Translation at the edge
If I consider a MQTT broker what is the best way to implement this in Azure how should I host it how does it fit in with IoT hub?
You can leverage Azure IoT Edge acting as an MQTT broker. The How-To guide Publish and subscribe with Azure IoT Edge (preview) will help you get started.
If I consider protocol Gateway can this effectively replace the MQTT topics in a received message with one in the correct format?
Yes, it will work.
"The Azure IoT protocol gateway is a framework for protocol adaptation that is designed for high-scale, bidirectional device communication with IoT Hub. You can deploy the protocol gateway in Azure in a highly scalable way by using Azure Service Fabric, Azure Cloud Services worker roles, or Windows Virtual Machines."
Despite "the protocol gateway can be deployed in on-premises environments, such as field gateways" I would recommend that you use the MQTT broker in IoT Edge instead.
Remember:
- Please accept an answer if correct. Original posters help the community find answers faster by identifying the correct answer. Here is how.
- Want a reminder to come back and check responses? Here is how to subscribe to a notification.