SDK справка
Уведомления, приглашения и лобби
Копировать страницу
Lia.requestNotifications, Lia.inviteFriend, Lia.inviteLink, Lia.share и Lia.lobby.
#Уведомления
Ваш сервер отправляет уведомления с помощью POST /notifications. Ваша страница запрашивает разрешение. См. Уведомления.
#Lia.requestNotifications()
Спрашивает человека в Lia'свою платежную ведомость, чтобы ваше приложение могло отправлять им уведомления. Если они уже сделали это, оно отвечает сразу, не спрашивая.
const { allowed } = await Lia.requestNotifications();Решается с { allowed }. Lia.notificationsAllowed тоже обновляется.
| Ошибка | Когда |
|---|---|
notifications_off | Ваше приложение не может отправлять уведомления (команда Lia отключила их для него). |
busy | Еще один из Lia'ваш экраны открыт. |
#Приглашения
Смотреть Приглашения и ссылки.
#Lia.inviteFriend(options)
Открывает Lia'выбор друга. Каждый выбранный друг получает карточку в их Lia чате, которая открывает ваше приложение с вашим startParam. Вкладка также позволяет человеку делиться вашей ссылкой для приглашения в любом месте.
const { invited } = await Lia.inviteFriend({ startParam: "room-k3x9" });| Опция | Тип | |
|---|---|---|
startParam | строка | Необязательно. 1 до 64 букв, цифр, _ и -. |
idempotencyKey | строка | Необязательно (SDK 1.5). С тем же ключом, каждый друг получает это приглашение'карту один раз. См. Ключи идемпотентности. |
Решается с { invited }: true когда кто-либо был приглашен или ссылка была поделена. Ваше приложение никогда не узнает, кто.
Ошибки: bad_start_param, bad_idempotency_key, busy.
#Lia.inviteLink(startParam)
Ваше приложение'с брендированием lialabs.app ссылка для запуска, с необязательным startParam. Ее может открыть любой: с Lia она открывает ваше приложение с startParam; без нее — ссылка в App Store. Вызывайте ее после Lia.init().
const link = Lia.inviteLink("room-k3x9");
// "https://your-app.lialabs.app/play?start=room-k3x9"Возвращает строку (не промис). Выбрасывает not_ready до init() ответил, и bad_start_param для startParam, который не'не помещается.
#Lia.share(text)
Открывает телефон'доля, с вашим текстом, для любого приложения на телефоне. Возвращает null когда лист закрывается.
await Lia.share("I scored 1280 in Tilt Runner. Beat me: " + Lia.inviteLink());| Параметр | Тип | |
|---|---|---|
text | строка | До 500 символов. |
Ошибки: bad_text.
#Лобби
Публичные таблицы, которые любой на Lia может найти (SDK 1.6). Ваш сервер перечисляет их и рассаживает; см. Публичные таблицы.
#Lia.lobby
#Lia.lobby.tables(options)
Открытые таблицы в вашем приложении, новые первыми. Никогда не игрок'свои таблицы, полные или истекшие, или те, что у кого-то, кого они заблокировали, или кто их заблокировал.
const { tables, next } = await Lia.lobby.tables({ stake: 5 });
// [{ id: "t8k2d", game: "your-app", host: { name: "amara" }, seats: 2, taken: 1, title: "Quick game", stake: 5, pot: 0, createdAt, expiresAt }]
const more = next ? await Lia.lobby.tables({ stake: 5, cursor: next }) : null;| Опция | Тип | |
|---|---|---|
stake | число | Необязательно. Только таблицы на этом ставке, в LIA (0 для бесплатных). |
cursor | строка | Необязательно. next с предыдущей страницы. |
limit | число | Необязательно. 1 до 50, 20 по умолчанию. |
Решается с { tables, next }: next является курсором для получения дополнительной информации, или null. Каждая таблица:
| Поле | Тип | |
|---|---|---|
id | строка | Таблица'id, как указано вашим сервером. |
game | строка | Ваше приложение'id. |
host | объект | { name }: хост's Lia имя пользователя. |
seats, taken | число | Всего мест, и занятых (ведущий'включено). |
title | строка или null | До 40 символов. |
stake, pot | число | В LIA, как указано на вашем сервере (для просмотра). |
createdAt, expiresAt | число | Миллисекунды с 1970. |
Чтобы сесть, отправьте стол's id на ваш сервер, который рассаживает игрока с POST /lobby/tables/:id/sit. Кто-то, кто выбрал вашу таблицу в Lia'свое лобби приходит с Lia.startParam установлено на lobby-<table id>: разместите их одинаковым образом.
Ошибки: bad_stake, bad_cursor, bad_session (сессия не't быть обновлено), not_in_lia.
#Lia.lobby.report(playerId, reason, options)
Сообщает о игроке команде Lia. Они'также блокируются для человека, который сообщает, поэтому ни один из них не видит другого'таблицы снова.
await Lia.lobby.report("p_3f9c0a6d1b2e4f5a6b7c", "unfair", { tableId: "t8k2d", note: "Left every game when losing" });| Параметр | Тип | |
|---|---|---|
playerId | строка | Игрок'id в вашем приложении. |
reason | строка | "name", "unfair", "abuse" или "other". |
options.tableId | строка | Необязательно. Стол, на котором это произошло. |
options.note | строка | Необязательно, до 300 символов. |
Решается с { reported: true }. Ошибки: bad_reason, unknown_player, slow_down (более 20 отчетов в день), bad_note, bad_tableId.
Автоматически переведено. Английский — источник истины. Читать на английском