Skip to content

Welcome to the SMS Broadcaster/Transceiver application! This Flutter app, a part of the FORUS initiative, ensures reliable people-to-people communication without the need for an internet connection. By utilizing SMS, it provides a robust API-like service for data transmission over 2G networks.

Notifications You must be signed in to change notification settings

BlackEmpir7199/Forus-Sms-Broadcaster

Repository files navigation

image

📲 SMS Broadcaster/Transceiver

Seamless Communication Without Internet

Welcome to the SMS Broadcaster/Transceiver application! This Flutter app, a part of the FORUS initiative, ensures reliable people-to-people communication without the need for an internet connection. By utilizing SMS, it provides a robust API-like service for data transmission over 2G networks, making it viable in situations where internet connectivity is unavailable.

🌟 Features

  • 📨 SMS Broadcasting: Automatically forwards received messages to a list of predefined numbers.
  • 📱 Phone Number Management: Add, delete, and manage phone numbers for broadcasting.
  • 📂 Message Logging: Keep track of all sent and received messages.
  • 🚀 Background Processing: Continuously listens and processes SMS messages even when the app is not running.

📋 Table of Contents

  1. Installation
  2. Usage
  3. Screens
  4. Database
  5. Contributing
  6. License

🚀 Installation

  1. Clone the repository:

    git clone https://github.com/yourusername/sms-broadcaster-transceiver.git
  2. Navigate to the project directory:

    cd sms-broadcaster-transceiver
  3. Install dependencies:

    flutter pub get
  4. Run the app:

    flutter run

📖 Usage

  1. Grant SMS permissions: Ensure the app has the necessary SMS permissions to send and receive messages.

  2. Add Phone Numbers: Add phone numbers to the broadcasting list using the Users screen.

  3. Receive and Broadcast Messages: Incoming messages from listed numbers will be automatically forwarded to other numbers in the list.

  4. View Logs: Check message logs for detailed information on sent and received messages.

🖥️ Screens

Users Screen

Manage the list of phone numbers.

import 'package:flutter/material.dart';
import 'database_helper.dart';
import 'phone_number_log_screen.dart';

class UsersScreen extends StatefulWidget { ... }

class _UsersScreenState extends State<UsersScreen> { ... }

Read SMS Screen

Listen for and process incoming SMS messages.

import 'package:flutter/material.dart';
import 'package:telephony/telephony.dart';
import 'database_helper.dart';

class ReadSmsScreen extends StatefulWidget { ... }

class _ReadSmsScreenState extends State<ReadSmsScreen> { ... }

Phone Number Log Screen

View logs for a specific phone number.

import 'package:flutter/material.dart';
import 'database_helper.dart';

class PhoneNumberLogScreen extends StatelessWidget { ... }

🗃️ Database

The app uses SQLite for local data storage.

  • phone_numbers table: Stores the list of phone numbers.
  • broadcast_requests table: Logs of all broadcasted messages.

Database Helper

import 'package:sqflite/sqflite.dart';
import 'package:path/path.dart';

class DatabaseHelper { ... }

📹 Demo

Here are some of the snaps of the Application.

Screen Image
Home Screen Home Screen
Users Screen Users Screen

🤝 Contributing

Contributions are welcome! Please fork the repository and submit a pull request.

  1. Fork the repository
  2. Create a new branch
  3. Make your changes
  4. Submit a pull request

Made with ❤️ by Team FORUS.

Flutter Dart SQLite


Feel free to explore, use, and contribute to make communication easier and more accessible for everyone! 🌐📡

About

Welcome to the SMS Broadcaster/Transceiver application! This Flutter app, a part of the FORUS initiative, ensures reliable people-to-people communication without the need for an internet connection. By utilizing SMS, it provides a robust API-like service for data transmission over 2G networks.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published