Отправляйте push-уведомления с помощью сервиса Amazon SNS

мы разрабатываем мобильное приложение, которое отправляет push-уведомления, и мы хотели бы делать это с помощью сервиса Amazon SNS, и я хотел бы подтвердить общее представление о том, как мы планируем управлять регистрацией устройств и отправкой push-уведомлений.

Насколько я понял:

В Amazon SNS есть концепция PlatformApplication, в которой мы указываем, будет ли это Android / iPhone, а также среда (Test / Prod, ...)

Кроме того, существует концепция PlatformEndPoint «для устройства и мобильного приложения», поэтому я полагаю, что для каждого человека, который загрузил и установил приложение, необходимо создать EndPoint на соответствующей платформе в зависимости от типа устройства (Android, яблоко)

У меня вопрос, когда этот PlatformEndPoint должен создаваться каждый раз, когда человек входит в приложение, и мы должны удалять его каждый раз, когда он выходит из системы?

Затем, когда создается PlatformEndPoint и мне нужно отправить push-уведомление определенному пользователю (не всем), я буду использовать API публикации с соответствующим параметром TargetArn.

Большое спасибо за ваши комментарии и предложения


person user2902482    schedule 05.11.2014    source источник
comment
Не могли бы вы уточнить, хотите ли вы отправлять пакетные сообщения на все устройства, подписанные на одну тему, или вы хотите отправлять сообщения на отдельные конечные точки?   -  person miss.serena    schedule 25.11.2014


Ответы (1)


Прежде всего вам необходимо вручную создать конечные точки приложений через панель управления SNS (или с помощью SDK).

Здесь вы можете объявить тестовую среду для Apple (APNS-Sandbox). В других средах нет специализированных сред тестирования. (например, Google), но вам рекомендуется создавать тестовые и производственные приложения, даже если они будут использовать один и тот же поставщик сообщений.

Вы можете получить:

  1. «Яблочная постановка» с APNS-Sandbox
  2. «Яблочное производство» с APNS

Примечание: вы можете уточнить конечные точки для определенного типа устройства. «iPhone-постановка» и / или «iPad-постановка» и т. д.

Второе: после того, как у вас есть конечные точки приложения, вам понадобится код в вашей системе, который знает, какую конечную точку нужно задействовать в соответствии с системной средой. т.е. разработка и постановка могут указывать на конечную точку "Apple-staging". Производство можно было указать на «Яблочное производство».

Третье: всякий раз, когда пользователь принимает диалоговое окно push-уведомлений, вы должны создать конечную точку пользователя, которая, в свою очередь, связана с конечной точкой приложения.

  1. Пользователь говорит да П.Н.
  2. Ваш сервер получает токен, полученный телефоном от APNS, GMS и т. Д.
  3. Ваш сервер, в свою очередь, с помощью sdk Amazon создаст конечную точку.
  4. Вот и все.

Последнее. Если вы хотите отправить push-уведомление, вам нужно получить arn пользователя (или конечную точку) и использовать метод publish в Amazon sdk.

Обработка ошибок

Конечные точки пользователя автоматически отключаются, если push-уведомление не было отправлено успешно. Вам нужно решить, что с ними делать для будущих уведомлений. В этом случае вы можете использовать Amazon SQS, и реализации обработки ошибок могут отличаться.

person Alan Andrade    schedule 01.12.2014
comment
какие-либо ссылки на учебные пособия? - person Maveňツ; 06.12.2016