@DKostin85

Как реализовать отправку push-сообщений из собственной CMS?

Добрый день! В настоящий момент собираемся реализовать схему в CMS по описанному ниже алгоритму, но реального опыта по рассылке нет. Будет ли рассылка работать по данному алгоритму? Сможем ли мы добавить к пуш сообщению любое интересующее нас поле, помимо текста?

Процесс отправки push-уведомления для cистемы iOS следующий:
1. Приложение регистрируется в APNS (Apple push notification service) для получения уникального токена устройства (device token).
2. APNS выдает приложению device token.
3. Приложение передает CMS device token.
4. CMS отправляет push уведомление в APNS. Фактически мы можем добавить помимо текста уведомления любое интересующее нас поле.
5. После отправки уведомления мы получаем у APNS статус принятия сообщения APNS:
a. Сообщение принято APNS;
b. Сообщение не принято APNS, Пользователь МУ отклонил возможность принятия push-уведомлений, для нашего Приложения (такая возможность есть для платформы iOS).
6. Если сообщение принято APNS, то APNS осуществляет доставку push уведомления до устройства пользователя.
7. При наступлении события доставки уведомления и соответствующем действии Пользователя срабатывает одно из событий:
a. didReceiveRemoteNotification – если Приложение функционирует в приоритетном или фоновом режиме;
b. didFinishLaunchingWithOptions с передачей ключа UIApplicationLaunchOptionsRemoteNotificationKey – если Приложение не запущено;
8. Оба вышеперечисленных события содержат коллекцию типа NSDictionary, в коллекции содержится сформированные поля push уведомления.
  • Вопрос задан
  • 704 просмотра
Пригласить эксперта
Ответы на вопрос 1
@overfl0w
Да, вместе с сообщением можно передать произвольные данные. Главное, чтобы длина сообщения, передаваемого APNS не превышала 2 кб.

Алгоритм работать будет (это, фактически, стандартный алгоритм передачи пушей). Единственное, на что следует обратить внимание - п.5: APNS не передает статус доставки сообщения. APNS предоставляет Feedback Service, с помощью которого раз в сутки (так рекомендуют Apple) можно запросить список токенов, доставка по которым более невозможна (если пользователь отключил пуш сообщения для вашего приложения). Если пользователь вновь включит пуш сообщения, данный токен может вновь стать валидным.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы