Промышленный SMS-шлюз на стороне банка
Сегодня на рынке присутствует значительное количество SMS-провайдеров, предлагающих свои услуги по доставке SMS-сообщений на телефоны абонентов. Однако на стороне SMS-провайдеров нередко случаются разрывы связи, время доставки сообщений может увеличиться до нескольких часов, шлюзы провайдеров не всегда справляются с пиковыми нагрузками.
При этом у банков есть критичные сообщения, для которых недопустима задержка доставки. Поэтому для обеспечения требуемого уровня работы SMS-сервисов необходимо проводить ряд мероприятий:
- отслеживать уровень качества SMS-провайдеров и получать уведомления в случае проблем;
- иметь резервные каналы передачи сообщений и в случае проблем автоматически переключаться на них;
- выбирать канал в зависимости от приоритета сообщения;
- балансировать нагрузку между различными каналами.
Решением может служить внедрение собственного программного SMS-шлюза в инфраструктуру банка. SMS-шлюз на базе платформы WINGS выступает единой точкой, гарантирующей надежную работу с SMS-сообщениями для всех информационных систем банка. Он легко интегрируется в инфраструктуру банка и не требует изменения существующих информационных систем и приложений.

Для интеграции с банковскими приложениями и legacy-системами предоставляется множество интерфейсов:
- HTTP(S);
- Веб сервисы, включая SOAP, REST, XML RPC, XML over HTTP(S);
- Email: SMTP, POP3. Например, шлюз принимает электронное письмо и запускает SMS рассылку;
- файловый интерфейс (через директорию);
- JMS - подключение к шине данных (Enterprise Service Bus);
- JAVA, .NET;
- DB API - интеграция на уровне СУБД (вызов хранимых процедур банковских систем и т.п.);
- SMPP (SMS-шлюз выступает в качестве SMPP-сервера, банковские системы – в качестве SMPP-клиентов) и т.п.
Возможна интеграция с процессинговыми системами по протоколу ISO 8583.
Основные характеристики:
- гибкая маршрутизация сообщений – автоматическое распределение SMS по различным каналам;
- многопользовательский портал SMS рассылок (в том числе, разные уровни доступа и квоты на отправку сообщений для различных банковских подразделений и информационных систем);
- единый интерфейс для просмотра статистики, управления пользователями, запуска рассылок;
- приоритет сообщений (например, отправка одноразовых паролей и сообщений SMS-банкинга имеют больший приоритет перед информационными рассылками);
- failover (в случае неудачной отправки, сообщение автоматически переотправляется по альтернативному каналу, балансировка нагрузки и многое другое);
- горизонтальное масштабирование, увеличение производительности, мониторинг.
- для подключения к операторам и SMS-провайдерам решение поддерживает следующие протоколы: SMPP, UCP, CIMD, SS7/MAP, HTTP(S), SMTP;
- блокировка повторных сообщений одному абоненту;
- поддержка рассылки персонифицированных сообщений;
- поддержка WAP-push и Flash-SMS;
- регулировка скорости, как для канала, так и для отдельной рассылки;
- возможность использования двусторонних коммуникаций (входящие и исходящие SMS);
- наличие «черных списков» – списков абонентов, которые автоматически исключаются из рассылок;
- интуитивно понятный мастер для создания и запуска рассылок через WEB интерфейс;
- полный перечень онлайн отчетов:
- графики по каждой рассылке;
- детальная статистика по отправленным сообщениям;
- итоговые отчеты по общему количеству и стоимости отправленных SMS, распределению SMS-трафика по времени и многое другое;
- финансовая статистика;
- экспорт отчетов через WEB-интерфейс.
Надежность и производительность решения
Решение построено на базе промышленной платформы WINGS и отличается высокой производительностью и отказоустойчивостью. Платформа построена по архитектуре SOA и состоит из независимых агентов (модулей), которые взаимодействуют друг с другом через очереди сообщений.
Такая архитектура позволяет:
- обрабатывать сообщения конвейерно: модуль системы забирает сообщение из входной очереди, обрабатывает его, помещает в выходную очередь, и, не дожидаясь ответа от адресата, продолжает обработку следующего сообщения;
- поддерживать работоспособность всей системы при отказе одного или нескольких модулей (сообщения сохраняются во входной очереди модуля и могут обрабатываться другими экземплярами модуля);
- обновлять и добавлять модули системы без остановки работы системы в целом;
- масштабировать систему путем добавления экземпляров модулей для обработки сообщений из одной входной очереди;
- размещать экземпляры модулей на разных серверах.
