====== Система нотификаций ====== Предназначена для рассылки уведомлений и проведения рассылок по email и sms. Сообщения формируются клиентскими приложениями и рассылаются путем вызова метода единой Web службы рассылки. Все клиентские приложения в том числе и клиентский центр производят рассылку вызовом этой службы. Куда передается сформированное сообщение. [[devpark:req:notifications|Требования к системе нотификаций]] {{:devpark:dev:notificationdeployment.png|}} Для того, чтобы приложение могло взаимодействовать с системой рассылки в него необходимо добавить библиотеку Devpark.Cloud.dll - содержащую пакет Notifications, классы которого реализуют формирование, отправку сообщений в службу рассылки. ===== Сценарий 1. Отправка уведомления о регистрации клиента. ===== Данный сценарий рассматривает пример отправки административных уведомлений. Сценарий на любое действие требующее уведомление клиента или персонала о событиях в системе. - Клиент регистрируется в Клиент Центре. - Процедура регистрации (ПР) создает Сообщение типа Email, на основе шаблона сообщения о регистрации для Клиента. - ПР сохраняет сообщение с датой отправки сейчас и вызывает метод отправки сообщения через Службу Рассылки Девпарк. - Процедура регистрации (ПР) создает Сообщение типа Email, на основе шаблона сообщения о регистрации для Администратора. - Аналогично шагу 3 происходит отправка сообщения всем пользователям Роли Администратор данного приложения. {{:devpark:dev:notificationsystemadminnotification.png}} Общее для всех уведомлений: - Отправляются сразу после генерации. - Существуют вне рассылок. - Генерируются системой при выполнении предопределенных действий пользователей (клиентов и Администраторов). - ==== Сценарий 2. Рассылка об акции. ==== - Клиент заходит в Девпарк Фитнес. - Клиент Создает Рассылку, указывает список клиентов. Создание рассылки возможно из любого списка клиентов. Должна быть возможность «Разослать всем» при этом в список клиентов не нужно добавлять Клиентов. Т.е. не имеет смысл добавлять всех клиентов, если выбрано «Разослать всем». - Клиент выбирает тип доставки SMS/Email. - Клиент вводит текст рассылки, либо выбирает шаблон. - При выборе шаблона заполняется текст рассылки из шаблона. Рассылка.Текст = Шаблон.Текст. - После выбора типа рассылки, списка клиентов, текста сообщения рассылки. Происходит подсчет стоимости. Пока не реализуем подсчет, так как непонятно откуда брать тарифы. - Клиент указывает дату и время рассылки. - Клиент сохраняет рассылку. - В заданное время ПОТОК СКАНИРОВАНИЯ РАССЫЛОК (ПСР), находит, что есть рассылка на это время и по ней еще не проводилась рассылка. Реализация ПСР относится к Модулю Управления автоматических задач. - ПСР Активирует рассылку. Генерирует письма, заменяя значения в тексте рассылки на реальные значения. - ПСР отправляет рассылает письма через Сервис Рассылки Девпарк. {{:devpark:dev:notificationsystem.vsd|UML Диаграммы, структуры классов}}