Skip to content
This repository has been archived by the owner on Jan 26, 2023. It is now read-only.

GoogleCloudPlatform/cloud-pubsub-mqtt-proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This repository is archived, and no further development is expected. If you need a solution to integrate a MQTT broker with Cloud Pub/Sub, refer to https://github.com/GoogleCloudPlatform/mqtt-cloud-pubsub-connector

What is MQTT Cloud Pub/Sub Proxy?

The MQTT Cloud Pub/Sub proxy provides a solution for utilizing Cloud Pub/Sub with IoT client devices through an MQTT interface.

MQTT is a lightweight protocol commonly used among IoT devices. The source depends on the [Moquette broker] 2 and the [Eclipse Paho MQTT Client library] 3.

The current version of the proxy utilizes Google Cloud Pub/Sub as the backend Pub/Sub service. If you're planning on running multiple instances of the proxy for scalability, you must avoid running multiple instances on the same host.

If you will be using Google Cloud Pub/Sub, you must set the GCLOUD_PUBSUB_PROJECT_ID environment variable equal to your project ID.

Building from source

Clone the repository and go into the source. Execute mvn clean package. The jar files will be located in the target directory.

Running the server

After going into the target directory execute the following: java -cp mqtt-cloud-pubsub-proxy-1.0-SNAPSHOT-jar-with-dependencies.jar com.google.cloud.pubsub.proxy.moquette.Server

Known Issues

  1. Wildcard subscriptions are not supported in this version.
  2. Clients may receive certain messages that were published before they subscribed.
  3. The proxy server only supports QoS 1. Each message will be delivered at least once. It is possible to receive duplicate messages.
  4. Advanced MQTT features, namely retainable messages and last will messages, are not supported for the multiple server setup.

About

A proxy between Cloud Pub/Sub and MQTT

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages