lichess.org
Donate
Token is created

Как создать токен API доступа к личным данным и зачем это нужно.

Software DevelopmentLichess
https://lichess.org/account/oauth/token/create?scopes[]=challenge:write&description=Autostart

Приведенная ниже информация является пересказом официальной страницы помощи сайта https://lichess.org/account/oauth/token.

Зачем мне нужен ваш токен?

Я пишу эту инструкцию, как администратор клуба для игры в ЗАОЧНЫЕ шахматы. Одной из основных проблем в заочных шахматах является создание вызовов и старт партий. Игрок должен правильно создать вызов, вызов должен оставаться активным, пока его не примут. К счастью, сайт ЛиЧесс позволяет автоматизировать эти действия и запускать партии пользователей без их дополнительных действий. Для этого всего лишь нужно предоставить администратору клуба (т.е. мне) разрешение (токен) на отправку, принятие и отклонение вызовов. Для этого Вам будет нужно сделать буквально 3-4 клика, никаких сложных действий не потребуется.

Как создать токен?

Копируем данную ссылку полностью, до конца строки и слова Autostart.
https://lichess.org/account/oauth/token/create?scopes[]=challenge:write&description=Autostart
и открываем в новом окне. Видим такую картину: зеленым выделено одно, нужное нам, разрешение. После этого можно больше и не делать ничего, а сразу нажать кнопку внизу Создать. Можно поменять описание токена, если Autostart вам непонятно, описание должно состоять минимум из трех символов.
image

Внимание!

Если на открывшейся странице у строки "Отправка, принятие и отклонение вызовов challenge:write" движок красный, а не зеленый, значит вы скопировали ссылку не до конца. Просто нажмите мышкой на этот движок, чтобы он включился (стал зеленым). После этого проверьте, что вы ввели название токена и нажмите кнопку Создать.
Больше никаких разрешений на этой странице включать не следует. Они не понадобятся ни вам, ни мне.
После этого вы попадаете на страницу https://lichess.org/account/oauth/token и видите следующее.
image
Нужный нам токен - это строка вида "lip_двадцатьЗнаков". Вас предупреждают, что показывают его только один раз. Поэтому нужно скопировать эту строку (мышкой или выделением пальцами в Андроиде) и отправить по почте мне, т.е. https://lichess.org/inbox/NechIvVas. На форуме писать токен не нужно, все-таки, это приватная информация. Если вдруг вы закрыли эту страницу, а токен не скопировали, то придется повторить все заново. На этой же странице https://lichess.org/account/oauth/token вы можете видеть все токены, которые у вас есть и при необходимости их отменить.

Что дальше?

Дальше я проверяю токен (https://lichess.org/api#tag/OAuth/operation/tokenTest) и, если все в порядке, записываю его в специальную табличку. По умолчанию, я не сообщаю пользователю об успехе. Но если вы выписали токен без разрешения "challenge:write", то я сообщу вам об этом и вам придется все переделать.
Затем полученный токен используется для автоматического создания игр после жеребьевки (https://lichess.org/api#tag/Bulk-pairings/operation/bulkPairingCreate). В результате игроки получают письмо с текстом "Your game with @_имя_игрока is ready: #ссылка". Через небольшое время эту игру становится видно в ваших Играх по переписке.
Я считаю, что удобство от такого автоматического старта партий перевешивает возможные неудобства при создании токена. Поэтому в клуб будут приниматься ТОЛЬКО игроки, приславшие токен с разрешением "challenge:write", это ОБЯЗАТЕЛЬНОЕ условие членства в клубе. Игроки без токена не будут допускаться до жеребьевки. Игроки, отменившие работающий токен и не предоставившие новый, будут отчислены из клуба.
Задали вопрос:

Как быть, если я имею токен, но не хочу играть в каком-то турнире?

Ответ: для участия в турнире сначала необходимо записаться в него. Если вы не записывались, играть вас никто не заставит. А вот если записались и не успели сняться, то на ближайший тур ваши партии стартуют. Для длительных швейцарских турниров у нас предусматривалась возможность пропуска тура (отпуска) с потерей очков. В этом случае также необходимо заранее предупреждать о желании пропустить тур, чтобы вас не включили в жеребьёвку.

P.S.

Существуют другие методы передачи токена от пользователя к админу (авторизация через ЛиЧесс и др.). Если кто сможет объяснить мне, как это просто сделать в наших условиях - с удовольствием выслушаю. А пока работаем так, как я объяснил. Токен получаем вручную и присылаем администратору.