Понятия
Уведомления
Копировать страницу
Игроки выбирают, может ли ваше приложение уведомлять их. Ваш сервер отправляет каждое уведомление в пределах ограничений Lia, чтобы те, кто согласился, оставались довольны.
#Как они работают
- Человек разрешает имВаша страница вызывает
Lia.requestNotifications()в хорошее время, и Lia спрашивает в своем листе. Люди также могут включать или выключать уведомления вашего приложения из меню ⋯. - Ваш сервер отправляет одно
POST /notificationsс id игрока, текстом и необязательнымstartParam. - Он достигает их телефонаПод названием вашего приложения, как уведомление и в Lia колокольчике. Нажатие на него открывает ваше приложение с вашим
startParam.
#Спрашивает
Спросите, когда уведомление явно поможет человеку: их ход в игре, доставка, друг присоединяется. Не't задать момент, когда ваше приложение открывается.
if (!Lia.notificationsAllowed) {
const { allowed } = await Lia.requestNotifications();
if (allowed) tellYourServer(); // so it knows it may notify this player
}- Если они уже разрешили их,
requestNotifications()ответы{ allowed: true }без вопросов. - Если ваше приложение не может отправлять уведомления вообще (команда Lia отключила их), оно завершается с ошибкой
notifications_off. Lia.notificationsAllowedговорит, где дела обстоят, иnotificationsChangedсобытие срабатывает, когда человек меняет его, из вашего запроса или из меню ⋯.
Lia не может'не говорить вашему серверу, когда кто-то разрешает или останавливает уведомления. Скажите это сами, или просто отправьте и обработайте not_allowed.
#Отправка
{ "playerId": "p_3f9c0a6d1b2e4f5a6b7c", "text": "It's your move against @amara.", "startParam": "match-8k2d" }Смотреть POST /notifications для каждого поля и ответа.
#Лимиты
Уведомления — это привилегия, которую люди дают вашему приложению, поэтому Lia держит их немного:
| Лимит | В режиме реального времени | Тест |
|---|---|---|
| Кто | Игроки, разрешившие ваше приложение'уведомления | Ваши тестеры, которые разрешили им |
| День, от вашего приложения к одному человеку | Ваше приложение'дневное количество, 3 если команда Lia изменила его | Это число, и не менее 20 |
| Отдельно, от вашей приложения до одного человека | 1 час | 30 секунд |
| День, от всех приложений вместе к одному человеку | 6 | Не учитывается |
| Текст | 1 до 180 символов, пробелы и новые строки становятся одними пробелами | Тот же |
| Не разрешено в тексте | Ссылки, номера телефонов и слова, используемые в мошенничестве (как в Lia'чаты) | Тот же |
Когда достигнут лимит, POST /notifications ответы 429 rate_limited. Для вашего приложения'свои ограничения также говорит, когда вы можете попробовать снова, как retryAt (миллисекунды с 1970).
"День" является последним 24 часами для вашего приложения'лимиты, и человек'календарный день для общего объема со всех приложений.
#Открытие вашего приложения с одного
Уведомление открывает ваше приложение с его startParam (от 1 до 64 букв, цифр, _ и -), который ваша страница читает из Lia.startParam. Если ваше приложение уже открыто, когда человек касается его, ваша страница слышит startParam событие вместо.
function route(param) {
if (param && param.startsWith("match-")) openMatch(param);
}
Lia.init().then(function () { route(Lia.startParam); Lia.ready(); });
Lia.on("startParam", function (data) { route(data.startParam); });#Уведомления и колокольчик
Каждое уведомление отправляется в Lia'колокольчик. Это's также отправляется человеку'ваш телефон, когда у них есть Lia'ваше включение; POST /notifications ответы pushed: false когда это достигло только колокольчика.
Автоматически переведено. Английский — источник истины. Читать на английском