Skip to content

This project is a system designed to send emergency notifications: SMS to your phone, email, and telegram. Users can add other people's contact details, create message templates, and send them to all recipients with a single button.

Notifications You must be signed in to change notification settings

web-inwall/emergency-notification-system

Repository files navigation

emergency-notification-system

Система для отправки нотификаций о чрезвычайных ситуациях.

Описание

Этот проект представляет собой систему, предназначенную для отправки уведомлений о чрезвычайных ситуациях: sms на телефон, на почту и в telegram. Пользователи могут добавлять контактные данные других людей, создавать шаблоны сообщений и отправлять их всем получателям с помощью одной кнопки. Уведомление будет отправлено на те устройства, которые пользователи указали в контактной информации. Система позволяет отслеживать статусы отправки сообщений для каждого пользователя.

Ссылка на сервис: https://emergencynotificationsystem.tw1.su/

Функциональность

  • Загрузка пользователей с контактными данными через CSV-файл: Пользователи могут быть добавлены в систему через загрузку CSV-файла.
  • Создание шаблонов нотификаций и конфигурация получателей: Пользователи могут создавать шаблоны сообщений и настраивать, кто будет получателем этих сообщений.
  • Автоматическая отправка нотификаций на различные устройства: Нотификации отправляются автоматически на указанные устройства получателей.
  • Интеграция с внешними сервисами:
    1. Для SMS используется Twilio.
    2. Для электронных писем используется Google SMTP.
    3. Для Telegram используется библиотека laravel-notification-channels/telegram.

Технологии и зависимости

  • Фреймворк: Laravel
  • Внешние сервисы: Twilio, Google SMTP, Telegram (через laravel-notification-channels/telegram)
  • Интерфейсы и репозитории: Реализованы интерфейсы для чтения файлов, управления пользователями, нотификациями и отправкой уведомлений.

Пример использования

  • Добавление пользователей через CSV:

      1. Загрузите CSV-файл с контактными данными пользователей. Контактные данные должны быть вида, пример:
        • Горбунова Екатерина Константиновна,gmail,asjagkk2124@gmaildotcom
        • Михайленко Светлана Евгеньевна,sms,+79956125642
        • Козлов Михаил Павлович,telegram,@inwall_ch
      1. Система автоматически добавит пользователей и их контактные данные.
  • Создание шаблона нотификации:

      1. Введите название шаблона и текст сообщения.
  • Отправка нотификации:

      1. Нажмите кнопку отправки, чтобы отправить нотификацию всем настроенным получателям.

Демонстрация

Screenshot_4

main

Screenshot_5

result

templates

final.mp4

Установка и запуск

  1. Клонирование репозитория: git clone https://github.com/web-inwall/emergency-notification-system.git

  2. Установка зависимостей: composer install

  3. Настройка окружения: Создайте файл .env и настройте переменные окружения (например, ключи API для Twilio и Google SMTP).

  4. Запуск миграций: php artisan migrate

  5. Запуск приложения: php artisan serve

Контактная информация

https://github.com/web-inwall/ https://t.me/inwall_ch

About

This project is a system designed to send emergency notifications: SMS to your phone, email, and telegram. Users can add other people's contact details, create message templates, and send them to all recipients with a single button.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published