Logo Lanfrica

Mdsoln/SMSGuard

Domaine:

digital infrastructure

Type de record:

software
Créateur:
Mds
Hôte:
is an AI-powered solution designed to protect mobile money users in Tanzania — particularly users of M-Pesa, TigoPesa, and HaloPesa — from SMS-based fraud. # SMSGuard: AI-Powered SMS Spam Detection for Mobile Money Users ## Project Aim **SMSGuard** is an AI-powered solution designed to protect mobile money users in Tanzania — particularly users of **M-Pesa**, **TigoPesa**, and **HaloPesa** — from **SMS-based fraud**. The system automatically detects and filters **scam messages offline**, before they reach the user, and moves them to a separate **“Scam and Blocked”** section of the native messaging app. **Our mission**: Ensure all scam messages are detected offline and routed to the "Scam and Blocked" folder — protecting users, especially in rural areas, who lack internet access or advanced smartphones. --- ## Getting Started ### 1. Clone the Repository ```bash git clone github.com ``` This includes: ``` Spring Boot backend Python-based AI model Sample configuration files ``` ### 2. Set Up the AI Model * Use **PyCharm** or any other Python IDE. * Navigate to the `ai-model` directory. * Set up your environment and install dependencies: ```bash pip install -r requirements.txt ``` * Run the FastAPI server: ```bash uvicorn main:app --host 0.0.0.0 --port 5000 --reload ``` * Make sure the model is available at: `localhost` ### 3. ☕ Set Up the Spring Boot Backend * Open the backend project using **IntelliJ IDEA**. * Ensure **Java 21** is installed and selected. Configure your PostgreSQL database connection in `application.yml`: ```properties spring.datasource.url=jdbc:postgresql://localhost:5432/smsguard spring.datasource.username=postgres spring.datasource.password=mdsoln ``` * Run the backend application using the IDE or terminal: ```bash ./mvnw spring-boot:run or click Run in your IDEA ``` ### 4. Connect EnvayaSMS to Backend * Ensure your **Android device running EnvayaSMS** and your **backend server** (AI + Spring Boot) are on the **same local network**. #### On the EnvayaSMS app: * Set the **Server URL** to: `http:// :8080/incoming-sms/receive` * A …