The goal of this project is to make SMS API to send SMS via your own android phone. It can be used for SMS auth codes, newsletters. It contains server and client. The server was builded in node js with express, the client is android app with kotlin.
The server maintain queue of sms to be send. The client app makes get requests to the server and sends message. To add message to queue make post request to the server's endpoint /api/sms with body:
{
"phoneNumber": "123123123",
"message": "test message"
}
- Download files or clone git repo.
- Change folder to SmsServer and run command
npm installto install dependiencies - Copy .env.template file and rename it as .env
- Edit .env file to set PORT of your server
- Run command
npm startin SmsServer folder to start server - Open port in firewall
- Download and install SmsClient.apk on Android phone.
- Open app.
- Give app permission by clicking button on the app's main screen.
- Fill in server ip address with port and click save.
- You can close the app.
❗ By default, Android will check to make sure you haven't sent more than 30 SMS messages to anyone within a span of 30 minutes. However, we can manually change both of these values (the number of messages and the time frame) so that we aren't bothered by Android's default SMS limit restrictions.
- Install ADB
- Change Android's SMS Limit
- Restart phone
- Add option to store queue in database
- Add API authentication
- Add field to change delay of client request to server