Поддерживаемые платформы

Android - Google Cloud Messaging (GCM)

iOS - Apple Push Notification Service (APNS)

WinPhone - Microsoft Push Notification Service (WPNS)

Веб-браузеры (WebSocket и Push API)

Наличие реализованных и задокументированных библиотек

Наличие реализованных и задокументированных библиотек, осуществляющих сервис приема push-сообщений на стороне клиента, для всех поддерживаемых платформ:

  • Android
  • iOS
  • WinPhone
  • Веб-браузеры

Возможность получать push-сообщения от других поставщиков. Наличие демонстрационных приложений с исходными кодами для всех платформ и тестового окружения для них на push-сервере.

Различные схемы регистраций мобильных и веб приложений

  • Автоматическая регистрация по уникальному идентификатору устройства
  • Привязка номера телефона с подтверждением и без подтверждения его владельцем посредством SMS
  • Привязка идентификатора клиента к зарегистрированному устройству

Использование любого из зарегистрированных идентификаторов при отправке push-сообщений. Возможность отправки push-сообщений на все приложения с указанным идентификатором или на последнее зарегистрированное.

Доставка контента

Базовые сервисы по доставке push-сообщений не дают гарантии доставки. Наш вариант реализации предусматривает защиту от потери сообщений и гарантирует 100% доставку.

Система доставки

Возможность доставки произвольного контента любого размера и типа: текст произвольной длины, изображения, звук, видео. Реализация на уровне библиотек функции загрузки файлов неограниченного размера с отображением прогресса загрузки.

Подтверждение

Поддержка статусов доставки и прочтения push-сообщений. Хранение всей истории изменения статусов доставки.

Резервирование
  • Резервирование канала доставки push-сообщений посредством канала доставки SMS с наличием реализованных сложных политик переключения между каналами: статистика доставки, настройки различных таймаутов для разных типов сообщений.
  • Возможность резервирования другими каналами доставки push-сообщений (Viber, Telegram).
LBS-сервисы
  • Наличие технологии сбора гео-данных о местоположении получателей и использование гео-признака для таргетирования push-сообщений
  • Возможность создавать собственные POI и регионы
Организация интерактивного взаимодействия
  • Возможность получения сообщений от пользователей мобильного и веб приложения для организации чата с клиентом
  • Группировка входящих и исходящих сообщений в диалоги
  • Хранение всей истории общения отдельно по каждому клиенту
  • Поддержка на уровне серверного API отправки уведомлений о получении сообщения от пользователя

Протоколы взаимодействия

мы также разрабатываем подключения под требования заказчика

HTTP REST API

JMS

Бинарный протокол на базе Protocol Buffers

Технология трансформации сообщений, отправленных через канал доставки SMS в push-сообщения (SMS2PUSH)

Параметры сервиса

Производительность сервиса

Производительность сервиса ограничена только имеющимся оборудованием и может быть увеличена путем добавления дополнительных аппаратных ресурсов.
Требования к оборудованию из расчета 20 000 000 активных устройств и производительности в 2000 push-сообщений в секунду:

  • Сервер приложений - 2 х ProLiant DL585 G7, AMD Opteron 4x2.5GHz 12cores, 130gb RAM. Дисковая система: 15k rpm x 8
  • Сервер базы данных -1 x ProLiant DL385 G7, AMD Opteron 2x2.3GHz 16cores, 130gb RAM. Дисковая система: 1Tb 15k rpm x 48

Высокая доступность сервиса доставки push-сообщений

Уровень доступности сервиса не ниже, чем 99%. Несколько географически разнесенных точек предоставления сервиса, все точки входа и ключевые узлы зарезервированы.

Поддержка резервирования посредством сторонних push-сервисов.

Подключение к сети Интернет осуществляется посредством использования нескольких присоединяющих операторов с наличием автономной системы с реализацией протокола динамической маршрутизации BGP full view.

Безопасность
  • Поддержка сложных политик безопасности доставки push-сообщений
  • Доставка контента push-сообщений с использованием одноразовых сессионных ключей
  • Возможность получения уведомлений о смене push-адреса у клиента и его автоматической блокировки на push-сервере
  • Использование протоколов с шифрование передаваемых данных
Мониторинг и логирование
  • Встроенная система мониторинга с возможностью интеграции по протоколу SNMP и JMX
  • Мониторинг загруженности CPU, используемой памяти, размеров очередей сообщений, количества активных устройств, каналов передачи данных и т.д.
  • Настраиваемые параметры логирования с возможностью ротации и архивирования
  • Встроенные возможности по анализу логов

Дополнительные возможности

  • Поддержка доставки push-сообщений в интернет браузеры по протоколу WebSocket или с использованием Push API
  • Отправка poll-сообщений в активное приложение без отправки push-уведомлений. Поддержка их отображения на уровне библиотек для мобильных платформ и веб-приложений
  • Наличие невидимых служебных push-уведомлений
  • Отправка простых push-уведомлений без поддержки статусов доставки и прочтения, когда контент передается в самом уведомлении
  • Поддержка технологии Deep Linking

Веб-интерфейс для управления сервисом

  • Управление параметрами отправки push-сообщений, настройка таймаутов доставки, способов резервирования типов сообщений и т.п.;
  • Создание таргетированных рассылок на основе последних гео-данных, сведений об операционной системе, информации о типе устройства, пола, возраста и других данных о владельце мобильного приложения;
  • Статистика, отчетность.