Skip to content

MQTT Commands

MQTT (Message Queuing Telemetry Transport) is a lightweight messaging protocol that allows devices to communicate in an IoT environment. Coreflux has integrated MQTT commands to make it easier for users to interact with their IoT devices and all data in our data hub.

ON MQTT_TOPIC

This command sets the script to listen to a specific MQTT topic. Once set, any message published to this topic will trigger the script.

Syntax:

ON MQTT_TOPIC <topic_name>

Example: Imagine you have a temperature sensor that sends data to the topic sensors/temperature. To listen to this topic, you would use:

ON MQTT_TOPIC sensors/temperature

PUBLISH

This command allows you to send messages to specific MQTT topics. It's useful for sending commands to devices or updating other services.

Syntax:

PUBLISH <topic_name> WITH <message>

Example: Suppose you want to turn on a smart light connected to the topic devices/smartlight. To send a command to turn the light on, you would use:

PUBLISH devices/smartlight WITH {"status": "on"}

FAQ - MQTT in Coreflux

What is MQTT and why is it important for Coreflux?

MQTT stands for Message Queuing Telemetry Transport. It's a lightweight messaging protocol designed for low-bandwidth, high-latency, or unreliable networks. In the context of Coreflux, MQTT is crucial as it enables efficient communication between IoT devices and the platform, ensuring real-time data exchange and device control.

How secure is MQTT in Coreflux?

Coreflux supports MQTT with built-in security features. Users can implement SSL/TLS for encrypted communication, and there's support for username/password authentication. Always ensure to use strong credentials and, if possible, use certificate-based authentication for enhanced security.

Can I use wildcards in MQTT topics with Coreflux?

Yes, MQTT supports the use of wildcards in topic names. The '+' wildcard can replace a single level of hierarchy, and the '#' wildcard can replace multiple levels. For example, sensors/+/temperature would listen to sensors/livingroom/temperature and sensors/kitchen/temperature, while sensors/# would listen to all subtopics under sensors.

How many MQTT topics can I subscribe to in Coreflux?

Coreflux is designed to handle a large number of concurrent MQTT topic subscriptions. The exact number depends on the server's resources and configuration. However, for most practical applications, the platform should be more than capable of handling your needs.

Is there a limit to the payload size of an MQTT message in Coreflux?

While MQTT itself allows for a significant payload size, it's always a good practice to keep the payload as small and concise as possible, especially in IoT scenarios where bandwidth might be limited. Coreflux handles typical IoT payloads efficiently, but for very large payloads, it's recommended to check the specific limitations of your setup and consider chunking the data or using a different method of transmission.

Can I integrate Coreflux's MQTT with other MQTT brokers?

Yes, Coreflux is designed to be interoperable. You can bridge Coreflux's MQTT broker with other brokers or set up configurations where Coreflux acts as a client to another broker, ensuring flexibility in diverse IoT architectures.