Skip to main content

Key Features

Courier provides a mechanism for creating long running connection on mobile applications and backend services using MQTT protocol

Quality of Service

Supports three QoS delivery levels: 0 (atmost once), 1 (atleast once) and 2 (exactly once)

Clean API

Provides clean API for connect / disconnect, subscribe / unsubscribe and publish / receive functionalities

Automatic Reconnect

Automatically reconnects in case of network or other unexpected failures

Observability

Provides events for tracking end-to-end delivery

Flexible Encoder/Decoder support

Converts message payload to and from any custom message type

Open Source

Open-source client libraries for GoLang, Android, iOS, & Flutter

Courier-GO

Go package for creating long running connections using MQTT protocol

Documentation

Courier-Android

Android library for creating long running connections using MQTT protocol

Documentation

Courier-iOS

iOS library for creating long running connections using MQTT protocol

Documentation

Courier-flutter

Dart Flutter library for creating long running connections using MQTT protocol

Documentation
Gojek's VerneMQ fork

Gojek's VerneMQ fork

Gojek's fork of VerneMQ as broker for handling long running connections using MQTT protocol

Documentation