Исходный код вики Push-токены


Скрыть последних авторов
Анастасия Занина 3.1 1 (% class="lead" %)
Анастасия Занина 26.2 2 Для отправки клиенту push-уведомления необходим push-токен — уникальный идентификатор мобильного устройства.
Анастасия Занина 1.2 3
Анастасия Лозинская 77.3 4 Когда клиент [[устанавливает Мобильное приложение>>doc:Main.Using.Mobile_application.Typical_processes.mobile_app_installation.WebHome]] и открывает его в первый раз на своём мобильном устройстве, он видит диалоговое окно, запрашивающее разрешение на push-уведомления (см. пример справа). Если клиент дает своё разрешение, то приложение [[может принимать push-уведомления>>doc:Main.Using.Mobile_application.Typical_processes.mobile_app_installation.Push_availability.WebHome]].
Анастасия Занина 1.11 5
Анастасия Занина 57.1 6 |(% style="border-color:white; width:1377px" %)(((
Анастасия Занина 26.2 7 Push-уведомления доставляются клиенту через специальный сервис отправки push-уведомлений.
Анастасия Занина 1.11 8
Анастасия Занина 15.2 9 На схеме ниже представлено взаимодействие приложения и сервисов отправки уведомлений.
Анастасия Занина 3.3 10
Анастасия Занина 49.1 11 * Приложение запрашивает в этом сервисе отправки push-уведомлений временный уникальный идентификатор для push-уведомлений — push-токен ([[image:one_pink.png||height="25" width="25"]], [[image:one_yellow.png||height="25" width="25"]], [[image:one_green.png||height="25" width="25"]]).
Анастасия Занина 15.2 12
Анастасия Занина 49.1 13 (% class="box infomessage" %)
14 (((
Анастасия Лозинская 77.3 15 Сервис отправки push-уведомлений, в котором запрашивается push-токен, зависит от платформы и от настроек самого мобильного приложения. Android отправляет запрос в [[Google Firebase Cloud Messaging Service (FCM)>>doc:Main.Installation_and_configuration.Extra_modules.Gateaway_and_proxy.Push_gateways_FCM.WebHome]], а iOS — в [[Apple Push Notification service (APNs)>>doc:Main.Installation_and_configuration.Extra_modules.Gateaway_and_proxy.Push_gateways_FCM.WebHome]] или FCM (в зависимости от настроек МП). Сервис, получивший запрос на push-токен, отправляет этот уникальный идентификатор Мобильному приложению.
Анастасия Занина 49.1 16 )))
17
18 * Мобильное приложение перенаправляет push-токен в серверную часть (Backend), где он сохраняется и используется при необходимости отправки клиенту push-уведомления ([[image:two.png||height="25" width="25"]]).
19 * Для отправки push-уведомления серверная часть приложения обращается к соответствующему сервису отправки уведомлений, используя push-токен для обращения к приложению конкретного клиента ([[image:three.png||height="25" width="25"]]).
20
Анастасия Лозинская 77.3 21 (% class="box infomessage" %)
22 (((
Анастасия Лозинская 81.1 23 В случае, если переданный push-токен не валиден или передан с ошибкой, сервис FCM передаёт в параметре ##status## или ##errorCode## значение ##UNREGISTERED##. После получения такой [[ошибки>>https://firebase.google.com/docs/cloud-messaging/send-message?hl=ru#rest-error]] статус мобильного устройства в БД меняется на **Не активно**. В разделе [[Контакты>>doc:Main.Using.MMP.CRM.Clients.Customer_profile.Contacts.WebHome]] карточки клиента данное мобильное устройство также будет указано как неактивное. Push-токен не изменит свой статус, если устройство отмечено как неактивное или было удалено. В этом случае push-токен будет перенесён в архив.
Анастасия Лозинская 77.3 24 )))
25
Анастасия Занина 3.3 26 ==== Центр уведомлений Azure ====
Анастасия Занина 1.11 27
Анастасия Занина 26.2 28 Для отправки push-уведомлений в качестве прослойки иногда используется облачная платформа [[Azure>>https://azure.microsoft.com/ru-ru/products/notification-hubs/#overview]]. Azure — это возможность создавать центр уведомлений, который будет обеспечивать отправку push-уведомлений на любую платформу (iOS, Android) c любой серверной части.
Анастасия Занина 1.11 29
Анастасия Занина 49.1 30 * Если используется Центр уведомлений Azure, то серверная часть отправляет в Azure полученный от FCM или APNs push-токен ([[image:four.png||height="25" width="25"]]).
31 * Далее Azure взаимодействует с сервисами FCM или APNs, используя полученный токен ([[image:five.png||height="25" width="25"]]). FCM или APNs, в свою очередь, отправляет push-уведомления клиенту.
Анастасия Занина 59.1 32 )))|(% style="border-color:white; text-align:center; width:272px" %){{lightbox image="screen.png" width="200"/}}
Анастасия Занина 1.11 33
Анастасия Занина 19.1 34 (% style="text-align:center" %)
Анастасия Лозинская 77.3 35 [[~[~[image:tokens5.png~|~|data-xwiki-image-style-alignment="center"~]~]>>path:/xwiki/bin/download/Main/Using/Mobile_application/Push_token/WebHome/tokens5.png||rel="lightbox"]]
Анастасия Занина 19.1 36
Анастасия Занина 74.1 37
38
Анастасия Занина 19.1 39 (% class="box infomessage" %)
Анастасия Занина 3.3 40 (((
Анастасия Занина 60.1 41 **Примечания:**
42
Анастасия Занина 69.1 43 * При смене шлюза необходимо учесть, что токены, хранимые на серверной стороне, будут отличаться от токенов, хранимых на сервере сервиса отправки уведомлений.
Анастасия Лозинская 77.3 44 * Так как push-уведомления зависят от сервисов отправки уведомлений сторонних поставщиков (APNs и FCM), Azure не гарантирует доставку этих сообщений. После того, как Центр уведомлений передаст пакеты системам отправки уведомлений платформы, непосредственная доставка push-уведомлений возлагается на эти системы. Однако подавляющая часть рush-уведомлений доставляется на устройства в течение нескольких минут (как правило, в диапазоне 10 минут) с момента их отправки в центр уведомлений. Для отправки нескольких уведомлений может потребоваться больше времени.
Анастасия Занина 3.3 45 )))
Анастасия Занина 3.2 46
Анастасия Занина 12.1 47 Подробная инструкция настройки отправки push-уведомлений из системы Loymax в Мобильные приложения Android и iOS через центр уведомлений Microsoft Azure представлена в [[отдельной статье>>doc:Main.Installation_and_configuration.Extra_modules.Gateaway_and_proxy.Push_gateways.Configuration_push_with_azure.WebHome]].
Анастасия Занина 1.11 48
Анастасия Занина 4.1 49 (% class="box" %)
50 (((
Анастасия Занина 2.1 51 **Читайте также:**
Анастасия Занина 4.2 52
Анастасия Занина 2.1 53 * [[Шлюзы для push-уведомлений через Firebase Cloud Messaging (FCM) и Apple Push Notification service (APNs)>>doc:Main.Installation_and_configuration.Extra_modules.Gateaway_and_proxy.Push_gateways_FCM.WebHome]]
54 * [[Шлюз Azure для push-уведомлений>>doc:Main.Installation_and_configuration.Extra_modules.Gateaway_and_proxy.Push_gateways.WebHome]]
Анастасия Занина 76.1 55 * (((
Александр Залогов 77.2 56 [[Особенности учёта доступности push-уведомлений для клиента в системе Loymax>>doc:Main.Using.Mobile_application.Typical_processes.mobile_app_installation.Push_availability.WebHome]]
Анастасия Занина 4.1 57 )))
Анастасия Занина 76.1 58 )))

Новости
Обновления
Облако тегов
Словарь
Наш блог
YouTube и Rutube
Telegram