mqttv4l2loopback

loopback-next how do I integrate with MQTT


I am new to using loopback, and I'm using loopback4 (which I think is referred to as loopback-next)

I have set up my controllers, models & respositories in order to be able to support CRUD operations to mysql, and that is all fine.

I want my loopback application to also connect to an MQTT server, so that I can subscribe to messages from MQTT, and react to those messages by creating entities in my repositories. In addition, I want to be able to have existing controller methods drop messages onto the MQTT (publish)

I am struggling to understand the right way to do this in the loopback eco-system.

I don't think I want to create a Server - because the documentation describes a server as including a listen port. I don't want my loopback application to be a MQTT server. I just want it to interact with one.

Similarly, I don't think this would be an MQTT bridge, or a datasource.

I suspect, what I want is a service. But I'm not certain.

I would appreciate any advice on how to achieve this integration.

Thanks


Solution

  • LB4 is highly extensible and a very good choice for such integrations. What you need in this case is to have a MQTT connector component. You can refer to the documentation for how to create a component in LB4 here and here.

    You can refer to an example component implementation for authorization as well for quicker understanding.