СУНО. Подсистема управления SMS-рассылками
Общая схема работы Web- интерфейс пользователя Sms Демон Gammu- smsd Выполняет: 1. Отправку SMS из папки Outbox. 2. Получает и размещает полученные из модема сообщения в папку inbox 3. Перемещает отправленные сообщения в папку Sent. Выполняет: 1. Отправку SMS из папки Outbox. 2. Получает и размещает полученные из модема сообщения в папку inbox 3. Перемещает отправленные сообщения в папку Sent. Выполняет: 1. Поиск сообщений в папке Inbox. 2. Внесение полученных сообщений в БД 3. Размещение по расписанию сообщений на отправку в Outbox Выполняет: 1. Поиск сообщений в папке Inbox. 2. Внесение полученных сообщений в БД 3. Размещение по расписанию сообщений на отправку в Outbox Выполняет: 1. Создание групп рассылок SMS 2. Создание расписаний рассылок SMS 3. Регистрация модемов в системе. 4. Чтение статуса модемов из БД 5. Визуализация модемов со статусами на дашборде Выполняет: 1. Создание групп рассылок SMS 2. Создание расписаний рассылок SMS 3. Регистрация модемов в системе. 4. Чтение статуса модемов из БД 5. Визуализация модемов со статусами на дашборде
Схема взаимодействия Gammu- smsd Sms Демон Web-интерфейс пользователя
Gammu-smsd Есть входящие в папке Outbox? Ответ: «Есть» Отправить сообщения модемам Есть входящие SMS сообщения в модеме? Ответ: «Есть» Считать из модема и положить в папку Inbox
SMS Daemon Есть входящие в папке Inbox? Ответ: «Есть» Внести входящие сообщения в базу данных Обновить статус модема Проверить в БД, не настало ли время отправки SMS на какое-нибудь устройство? Ответ: «Настало» Разместить SMS в папку Outbox демона Gammu- smsd, для модемов у которых настало время перезагрузки.
Дополнительные указания по эксплуатации По возможности не подключать к компьютеру внешних USB устройств в процессе работы системы. Если все-таки внешние устройства подключались, то необходимо проверить сохранился ли номер COM порта у модема. (совпадает ли номер COM-порта). Держать включенным SMS Daemon.bat (если закрыть приложение – отправка по расписанию перестанет работать)
Установочный пакет системы В установочный пакет системы входят: 1)Архив с кодами программы и демона SMS Daemon (symfony.rar). 2)Бесплатный пакет веб-сервера PHP-Apache-MySQL (xampp). 3)Дистрибутивы демона Gammu-smsd для Windows. 4)Дистрибутив Heidi-SQL для windows (удобный просмотр и редактирование БД в процессе эксплуатации, установка не обязательна). 5)Git-hub – система контроля версии. (Установка требуется в случае когда с заказчиком согласованы дальнейшие разработки системы для автоматического обновления ПО через интернет, для текущей эксплуатации git-hub не обязателен к установке).
Порядок установки системы Установить web-server и mysql сервер из пакета xampp. Установить HeidiSQL и проверить подключение к БД. Распаковать архив symfony.rar в папку xampp/htdocs/ (корневую директорию Web- сервера, чтобы путь к исходникам выглядел как например c:/xampp/htdocs/symfony/) Установить Gammu-smsd. Подключить к компьютеру 3G модем Произвести настройку системы согласно следующим слайдам.
Настройка демона Gammu-smsd Посмотреть на каком COM порту установлен 3G модем. (в примере снизу порт COM8).
Настройка демона Gammu-smsd Создать файл конфигурации gammu-smsdrc с определенным содержимым и разместить его в папке bin директории, куда установлена gammu. (Во второй строчке содержимого «выделено красным» указываем номер порта с предыдущего слайда). Пример («c:\Program Files (x86)\Gammu \bin\gammu-smsdrc»). (Содержимое файла конфигурации gammu-smsdrc для модема E-352 Huawei приведено ниже.) [gammu] device = com8 connection = at model = at [smsd] service = files LogFile = c:\gammu\gammu.log InboxPath = c:\gammu\inbox\ OutboxPath = c:\gammu\outbox\ SentSMSPath = c:\gammu\sent\ ErrorSMSPath = c:\gammu\error\
Настройка демона Gammu-smsd После этого gammu-smsd необходимо установить и запустить как службу windows: 1)Открываем командную строку ([WIN+R]): 2)Проходим в директорию bin демона gammu-smsd.
Настройка демона Gammu-smsd Выполняем команды 1) gammu-smsd –c gammu-smsdrc –i 2) gammu-smsd –c gammu-smsdrc –s Проверяем готовность в службах windows:
Проверка демона Gammu-smsd Создаем файл «OUT txt» с содержимым «Test message», где – номер телефона, на который будет отправлено тестовое сообщение и перемещаем его в папку outbox (в примере c:\gammu\outbox\). В течение минуты-двух наш файл должен пропасть из папки /outbox/ и номер должен получить тестовое SMS-сообщение. Если сообщение получено – демон Gammu-smsd настроен, можно двигаться дальше.
Настройка symfony В файле «..\symfony\config\gammu.ini» указываем директории, с которыми работает gammu. (Необходимо, чтобы web-интерфейс пользователя мог отправлять SMS через Gammu). Пример содержимого файла gammu.ini приведен ниже: inbox = "c:\gammu\inbox" outbox = "c:\gammu\outbox" sent = "c:\gammu\sent" errors = "c:\gammu\errors"
Настройка SMS Daemon Win В папке..\symfony\daemons\SmsDaemon_Win\config\ Редактируем файл config.ini следующим образом: gammupath = "c:\gammu\" dbhost = "localhost" dbname = "mmanager" dbuser = "root" dbpassword = " Здесь gammupath – путь к рабочим папкам gammu, dbhost = localhost имя или ip адрес хоста, где расположена база данных mysql; dbname=mmanager //параметр менять нельзя dbuser = root //пользователь для доступа к БД dbpassword = //пароль пользователя БД
Запуск демона SMS Daemon В папке SmsDaemon_Win запускаем «run.bat». Окно с демоном всегда должно быть открыто, иначе система не будет рассылать сообщения по расписанию, записывать входящие сообщения в БД и обновлять статус устройств в пользовательском интерфейсе.
Создание БД и запуск сервера Для создания БД после установки демонов открываем командную строку как на слайде 11, заходим в папку symfony и выполняем следующие команды: 1)php app/console doctrine:database:create 2)php app/console doctrine:schema:create 3)php app/console server:run 4) Должно появиться сообщение : server running on 5) Все, открываем браузер (предпочтительно google chrome) и проходим по адресу
Порядок работы с пользовательским интерфейсом 1. Сначала проходим на вкладку «Список групп.
Порядок работы с пользовательским интерфейсом / Создание группы Нажимаем на кнопку «добавить», система предложит указать имя новой группы (вводим название, нажимаем сохранить изменения). Новая группа добавлена. ИМЕНА ГРУПП ЛУЧШЕ ПРОДУМАТЬ СРАЗУ, Т.К. ИЗМЕНИТЬ ИХ В ПРОЦЕССЕ РАБОТЫ НЕВОЗМОЖНО, МОЖНО ТОЛЬКО СОЗДАТЬ НОВУЮ ГРУППУ И УДАЛИТЬ СТАРУЮ. //Группы нужны для того, чтобы была возможность групповой отправки SMS. Например требуется послать сигнал на выключение группы устройств, у примеру света на какой-нибудь улице, далее мы отмечаем галочкой группу модемов, и нажимаем кнопку «Отправка SMS» и всем модемам из группы будут отправлены SMS. О том как добавить в группу модем, будет рассказано далее.
Порядок работы с пользовательским интерфейсом / Создание расписания 2. Далее проходим на вкладку Расписания Нажимаем кнопку добавить, в появившемся окне вводим название расписания и нажимаем «Сохранить изменения».
Порядок работы с пользовательским интерфейсом / Создание расписания Двойным щелчком по появившемуся расписанию мы попадаем на страницу редактирования расписания. Есть два способа составления : 1) Загрузить из файла excel (Raspisanie.xls),2) Набрать расписание вручную. 1)Нажмите на кнопку «Выберите файл», и выберите файл Raspisanie.xls, через некоторое время система внесет список в расписание. 2)Выбрать в строчке со знаком «+» дату, время включения и время выключения и нажать на кнопку «+» (и так построчно составить вручную ).
Регистрация модемов в системе Проходим на вкладку «Список модемов». На этой странице мы видим всю информацию о текущем состоянии системы (статус модема (IN1 и красный фон если питание выключено, IN2 и зеленый фон, если питание включено), группу, номер телефона, серийный номер, местонахождение, привязанное расписание.) Здесь же можно отправлять SMS на конкретный модем, выделив строчку с модемом галочкой и щелкнув по кнопке «Отправить SMS».
Регистрация модемов в системе Для регистрации модема в системе нажимаем на кнопку «Добавить модем», вносим необходимую информацию и «ВНИМАНИЕ» привязываем к модему созданную нами группу и созданное нами расписание. Именно здесь модемы первично включаются в группу и к ним привязывается расписание. И ИМЕННО С МОМЕНТА СОХРАНЕНИЯ ЭТОЙ ФОРМЫ (если работает демон SMS Daemon) система начнет отправлять по расписанию SMS сообщения этому модему.
Изменение параметров модемов Предположим мы хотим изменить группу модема, или расписание, привязанное к модему, или симка осталась старая, а модем заменили на новый и у него сменился серийный номер, это можно сделать двойным кликом по строчке с модемом на вкладке «Список модемов». А ниже на этой же вкладке расположен отчет о последних состояниях модема (когда он включался/выключался последний раз, см. следующий слайд).
История состояний модема Щелкая по заголовкам всех таблиц в системе ( в примере #, Дата, Текст сообщения) строки будут сортироваться в порядке возрастания/убывания.
Просмотр списка модемов в группе Для просмотра списка модемов в группе достаточно зайти на вкладку «Список групп» и щелкнуть двойным щелчком по строчке с интересующей группой. Откроется информационное окно со списком модемов в группе.
Просмотр всех SMS сообщений, пришедших в систему