MQTT-based Connection


A device can be connected directly or through the edge to EnOS via the MQTT protocol. MQTT is a lightweight open-source IoT protocol based on TCP/IP. EnOS’ MQTT protocol supports the following features:

  • Topic-based subscription and publish of data and communication resources are segregated by topic to prevent devices from accessing unauthorized data.

  • Revert-RPC (RRPC)

MQTT Ports


Domain

Port

Protocol

Supports Certificate-Based Two-Way Authentication

mqtt-{env}

11883

TCP

No

mqtt-{env}

18883

TCP + TLS

Yes

Where, “{env}” is the domain name of the EnOS environment. For example, if your logged-in EnOS domain is “app-portal-cn5.envisioniot.com”, the domain name will be “mqtt-cn5.envisioniot.com”.

MQTT Protocol Versions

The MQTT version that EnOS supports is:

  • MQTT v3.1.1 on port 11883 if you use the secret-based one-way authentication.

  • MQTT v3.1.1 over SSL/TLS on port 18883 if you use the certificate-based two-way authentication.

How to Connect via the MQTT Protocol

The typical procedure to enable a device to connect to EnOS Cloud via the MQTT protocol is:

  1. Register the device to obtain its ProductKey, DeviceKey, and DeviceSecret for authentication.

  2. Develop the device-end program to enable devices to connect to EnOS Cloud and transmit data. EnOS provides the following SDKs for you to develop your device-end programs.

    For a comparison of the functions available in different device SDKs, see Using EnOS Device SDKs for Device Development.

  3. Activate the device using the authentication keys obtained in step 1 and start to transmit data.

Next Step

Quick Start: Connecting a Smart Device to EnOS Cloud through MQTT