Дата последнего изменения: 29.10.2021
Для каждого сервиса логика отправки уведомлений разная, поэтому механизм отправки нужно реализовать самостоятельно. Для отправки уведомлений используется класс CPushManager модуля Push&Pull.
Пример кода отправки:
if (CModule::IncludeModule("pull")) { $arMessages = array(); $message = Array( "USER_ID" => 2, //Идентификатор пользователя "TITLE" => "Title", //заголовок, только для Android "APP_ID" => "MyAppID", //Идентификатор приложения "MESSAGE" => “У нас сегодня акция! Не пропусти!”, "EXPIRY" => 0, //время жизни уведомления на сервере Apple и Google "PARAMS"=>array("PARAMS"=>array("tst"=>"1")), "BADGE" => 1 //счетчик на иконке приложения ); $arMessages[] = $message; $manager = new CPushManager(); $manager->SendMessage($arMessages); }
Важным является ключ PARAMS. Данные по этому ключу помогут обработать открытие уведомления пользователем.
USER_ID
этого пользователя. Выполнить отправку на какое то определенное устройство по его device_token нет возможности.После получения уведомления на свое устройство пользователь может проигнорировать его, а может перейти по нему в приложение, в этом случае вы можете обработать этот переход. Например, можно открыть пользователю нужную страницу или показать определенное сообщение, зафиксировать переход по уведомлению у себя на сервере и многое другое.
На стартовой странице нужно разместить javascript-код следующего вида:
var lastNotification = BXMobileApp.PushManager.getLastNotification();
В переменной lastNotification будет объект данных уведомления, по которому пользователь перешел в приложение. В объекте будет ключ params, который вы отправляли через метод CPushManager::SendMessage().