SMSHub Connect
- Type : Android app [FOSS]
- Licence : MIT
- Language : Kotlin
- Git repository : github.com/tserumula/smshubconnect
SMSHub Connect is an SMS Gateway application for Android devices, developed in Kotlin using Android Studio. The application connects to a server via HTTP to periodically retrieve SMS messages in JSON format that need to be sent. It handles message dispatch, tracks delivery status, and provides notifications for incoming messages.
Screenshots :
Functionality
The primary function of SMSHub Connect is to connect to a specified server at regular intervals to retrieve SMS messages that need to be sent. These messages are provided in JSON format, and the application handles the dispatch process directly from the Android device.
In addition to sending messages, SMSHub Connect tracks the delivery status of each message and provides notifications for any incoming SMS messages. The application runs in the background, using the Alarm Manager to manage the SMS retrieval process efficiently without interrupting the user’s phone usage.
Key Enhancements
SMSHub Connect is a modified version of the original SMSHub by Juan Crescente. Significant changes have been made to enhance the app’s functionality:
- Background Service Integration: The SMS retrieval process is now managed as a background service, improving efficiency and reliability.
- Device Health Information: The application now includes additional data, such as the battery level and signal strength of the Android device, in its HTTP requests to the server.
- Updated Codebase: The project has been upgraded to use Android Gradle Plugin (AGP) version 8.7, ensuring compatibility with the latest Android development standards.
- Interface and Permission Adjustments: Location permissions have been removed, and the user interface has been simplified to improve usability.
Rationale Behind the Project
Commercial SMS APIs often involve significant costs, which can be prohibitive for many users. SMSHub Connect offers an alternative by enabling users to utilize their own phone lines for SMS communication. This solution is designed to be straightforward and free from commercial dependencies, addressing a gap identified at the project’s inception.
Operational Overview
Sending SMS
The application operates by connecting to a specified server at regular intervals. It retrieves messages in JSON format, which include the content of the SMS, the recipient’s number, and a unique message ID. Once retrieved, the application sends the SMS and updates the server with the status of the message, whether it has been sent, delivered, or if the process failed.
Receiving SMS
Upon receiving an SMS, the application immediately notifies the server by sending the sender’s number and the message content. This process allows for real-time tracking of incoming messages.
Conclusion
SMSHub Connect is designed to offer an efficient, cost-effective solution for managing SMS communications via an Android device. The application’s ability to operate without commercial dependencies and its customizable features make it a practical choice for those seeking to implement SMS functionality within their systems.