Cómo enviar y recibir mensajes con mosquitto_sub y mosquitto_pub a MyQttHub.com


#1

1. Conectar con Mosquitto sin usar TLS

Sigue las siguientes notas para conectar con mosquitto_sub y mosquitto_pub con MyQttHub.com:

  1. Crea unas credenciales de conexión si no las tienes todavía (mira el siguiente enlace: Cómo crear y gestionar dispositivos MQTT con MyQttHub.com).

  2. Deberás crear dos credenciales: una para enviar y otra para recibir. Si quieres usar las mismas credenciales, mira: Cómo evitar el reemplazo de conexión MQTT para reusar credenciales

  3. Ahora, para conectar (sin usar TLS), ejecuta el siguiente comando (reemplazado , y con los datos concretos de tu caso):

    >> mosquitto_sub -h node02.myqtthub.com -i <client-id> -u <username-> -P '<password>' -t message/topic/to/subscribe -q 2

  4. Ahora, el comando anterior se suscribe y va imprimiendo los mensajes enviados. Ahora, en otro terminal, y sin parar el comando anterior, para enviar mensajes, ejecuta:

    >> mosquitto_pub -h node02.myqtthub.com -i <client2-id> -u <username2> -P '<password2>' -t message/topic/to/subscribe -m "hello world"

Si ha ido todo bien, verás los mensajes enviados aparecer en el terminal ejecutando mosquitto_sub.

2. Conectar con Mosquitto usando TLS

Ahora, para conectar con MyQtthu.com usando TLS y mosquitto_sub o mosquitto_pub tendrás que añadir las opciones -p 8883 y --capath /etc/ssl/certs del siguiente modo:

`>> mosquitto_sub -h node02.myqtthub.com -p 8883 --capath /etc/ssl/certs -i <client-id> -u <username-> -P '<password>' -t message/topic/to/subscribe -q 2`

Estas opciones son:

  1. -p 8883 indica a mosquitto que se conecte al puerto 8883 TLS.
  2. --capath indica a mosquitto donde localizar los certificados raíz para completar la cadena de confianza en la validación TLS/SSL.
  3. Estas opciones (-p y --capath) tienen que ser configuradas tanto para el comando mosquitto_sub como el comando mosquitto_pub si se quiere usar TLS/SSL