Отправка тестовых push-уведомлений в мобильное приложение на базе DSS SDK
Опубликовано Андрей Солдатов on 2021-09-07 13:21

Предварительные условия:

1. Направить запрос на получение ключей доступа к push-серверам Apple, Google, Huawei на электронную почту: dsssupport@cryptopro.ru

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

2. Выполнить настройку сервиса взаимодействия с DSS SDK, в соответствие с примером.

3. Выполнить настройку Push-уведомлений, в соответствие с руководством.

4. При использовании сервиса Pushproxy - выполнить настройку, в соответствие с руководством.

5. Выполнить регистрацию мобильного устройства (анонимно/с использованием QR-кода).

Запрос адреса мобильного устройства:

Необходимо выполнить следующий SQL-запрос:

USE [IdentityServiceDB]
SELECT
JSON_VALUE (ur.[Parameters],'$.PushAddress') AS PushAddress
FROM [dbo].[AspNetUserLogins] AS ul
LEFT OUTER JOIN [dbo].[AuthnTokens] AS ur
on ur.[UserId] = ul.[UserId]
where [TokenType] = 'mydss' and [ProviderKey] = 'Логин пользователя'

В [ProviderKey] указывается логин пользователя, для которого регистрировалось мобильное устройство в п. 5 предварительных условий.

Результатом выполнения запроса будет адрес мобильного устройства в колонке "PushAddress".

Отправка тестового Push-уведомления:

Запрос на отправку тестового Push-уведомления выполняется из Powershell сервера DSS, путем выполнения следующих командлетов:

$notifier= Get-DssInternalNotifier|where {$_.Settings["MyDssSystemId"] -eq "Идентификатор системы myDSS"}

Примечание: регистрация системы myDSS выполняется в п. 3 предварительных условий. Узнать идентификатор зарегистрированной системы можно путем выполнения командлета: Get-MyDssSystem

Test-DssInternalNotifier -NotifierID $notifier.id -Address "Адрес мобильного устройства" -AddressType MyDssPushAddress -PushType FCM - для Android-устройств

Test-DssInternalNotifier -NotifierID $notifier.id -Address "Адрес мобильного устройства" -AddressType MyDssPushAddress -PushType APN - для iOS-устройств

Test-DssInternalNotifier -NotifierID $notifier.id -Address "Адрес мобильного устройства" -AddressType MyDssPushAddress -PushType HMS - для устройств Huawei

Если тестовое Push-уведомление не дошло до мобильного устройства:
1. Убедитесь, что с сервера, где развернут DSS (или с сервиса Pushproxy, при его использовании), настроена сетевая доступность до Push-серверов, в соответствие с руководством.
2. Убедитесь, что при запросе адреса мобильного устройства был указан логин именно того пользователя, для которого регистрировалось мобильное устройство.
3. Убедитесь, что при выполнении командлета для отправки тестового Push-уведомления был указан корректный адрес и тип мобильного устройства.

(2 плюсик(ов))
Класс!
Не очень :(