๐น๏ธ Simulator Environmentยถ
๐ฆ Project Summary: smsc-java-applet-simulator & applet-simulator-serviceยถ
smsc-java-applet-simulatorยถ
A Java-based SMPP SMSC simulator designed for testing and development of SMS messaging systems.
- Features:
- Listens on configurable ports for SMPP messages and responds with OK.
- Supports multiple ports and detailed real-time traffic statistics via JMX.
- Delivery receipt simulation: sends receipts after configurable delay.
- Segmented message support for MO/MT flows, including UDH-based segmentation.
- JMX commands for controlling message streams and simulator behavior.
- Usage:
- Run with:
java -Xms32m -Xmx1024m -jar smscsim.jar -ll INFO -p 34567 34568 34569 - Configuration via Spring XML (
context.xml). - Unit tests available for delivery receipt logic.
- Build and run using Maven and Java 23.
- Supports containerization and deployment via Docker and CI/CD workflows.
- Tech Stack:
Cloudhopper SMPP, Spring Framework, Google Guava, JCommander.
applet-simulator-serviceยถ
A Java service for simulating applet behavior and interactions, typically used for testing SIM card applets and related backend flows.
- Features:
- Modular structure for applet simulation, key material management, and toolkit operations.
- Includes service interfaces and verticle architecture for scalable deployments.
- Supports integration with external libraries (e.g., jcardsim, uicc-api).
- Configuration via JSON and properties files.
- Includes user guides and block diagrams for reference.
- Usage:
- Build and run using Maven and Java 21.
- Supports containerization and deployment via Docker and CI/CD workflows.
- Test suite for polling applet scenarios.
Both projects are designed to facilitate robust testing and simulation of SMS and SIM applet flows, supporting modern Java, containerization, and integration with telecom and cloud
SMS-Service Integration:ยถ
{
"id": "cellcom",
"smscAddressCode": "0000",
"secret": "xyz",
"smscs": [
{
"name": "simulator",
"ipAddress": "smsc-applet-simulator-service.simulator.svc.cluster.local",
"port": 2775,
"systemId": "systemId",
"password": "password",
"systemType": "SMPP",
"source": {
"npi": 0,
"ton": 0
},
"destination": {
"npi": 1,
"ton": 1
}
}
]
}