About SMPP Gateway
The story behind the modern Java SMPP library
The Problem
For years, Cloudhopper was the de facto standard for SMPP in Java. But it was abandoned in 2015, leaving the Java ecosystem without an actively maintained SMPP library. The codebase was stuck on Java 8, used mutable objects, and lacked modern features like virtual threads.
As SMS continues to be critical infrastructure for authentication, notifications, and messaging, developers needed a modern alternative.
The Solution
SMPP Gateway is a clean-room implementation of the SMPP 3.4 protocol, built from the ground up with modern Java practices:
- Java 21 LTS - Virtual threads, records, sealed classes, pattern matching
- Immutable PDUs - Thread-safe by design with fluent builders
- Netty Transport - Zero-copy buffers for maximum performance
- Clean API - Intuitive, well-documented, easy to use
- Production Ready - Auto-reconnect, windowing, TLS, comprehensive error handling
Projects
SMPP Gateway consists of two main projects:
- smpp-core - The core SMPP library with PDUs, codecs, server, and client implementations. Available on Maven Central.
- smpp-kafka-producer - A production-ready SMPP-to-Kafka bridge with HTTP/2 REST API, Docker, and Kubernetes support.
Author
SMPP Gateway is created and maintained by Subhadip Mitra, a software engineer with experience in telecommunications and distributed systems.
The project is open source under the Apache 2.0 license. Contributions, bug reports, and feature requests are welcome on GitHub.
Contact
For questions, support, or collaboration opportunities:
- Email: contact@smppgateway.io
- GitHub Issues: smpp-core issues
- Author Website: subhadipmitra.com