This project is a minimal Short Message Service Center (SMSC) implementation that aims to facilitate the development of External Short Message Entities (ESME) when there is no available SMSC's to connect with.
The simulator accepts a connection generated by a client by means of a bind_transceiver
request, recieves SMS's to be delivered (submit_sm
), and after a couple of seconds it simulates a response (deliver_sm
), as shown in the diagram below:
Requirements:
- Docker >= v18.0
- Docker Compose >= v1.29.2 (optional)
To start the server run:
docker run -p 2775:2775 damiangallo/smsc-simulator:latest
or:
docker-compose up
The container can be configured by using the following environment variables:
- PORT: the port where the server will listen to (default to 2775)
- SYSTEM_ID: the system_id used to authenticate incoming connections (default to "admin")
- PASSWORD: the password used to authenticate incoming connections (default to "secret")
To compile the project you can run the development Docker Compose file:
docker-compose -f docker-compose.dev.yml up --build
You only need run this command once while editing the code since the project is configured with nodemon so any change will trigger a re-compilation.