Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 22.12.2017 20:23:27

Авторизация на сайте через бота Telegram (как на storebot.me)

Привет. Буду признателен за подсказку, как реализовать схему авторизации на сайте через бота Telegram , как это сделано на storebot.me. В данный момент основная сложность с тем, что не знаю, как привязать к сессии неавторизованного пользователя , например, принудительный вызов авторизации юзера по айди,  который вызывается в обработке команды боту :

\Illuminate\Support\Facades\Auth::loginUsingId(1);

Чтобы после того, как юзер отправит боту команду (например /start ), он мог вернуться на сайт, и оказаться уже залогиненым  под пользователем, для которого вызывалась принудительная авторизация по айди в обработке команды боту.
P.S. https://telepass.me пожалуйста не предлагайте - в данный момент он не работает, не удается даже в их системе авторизоваться.

Буду благодарен за любую помощь или примеры реализации.

Изменено Ivan_Garbera (22.12.2017 20:28:08)

Не в сети

#2 23.12.2017 00:23:50

Re: Авторизация на сайте через бота Telegram (как на storebot.me)

Не знаю насколько правильная схема реализации получилась, но сделал по следующему принципу, возможно кому то пригодится: 

На странице логина происходит постоянный опрос бекенда ajax-запросами на предмет наличия в кеше ключа, который сохраняется в кеш в момент обработки сообщения о логине телеграм-боту при обработке веб-хука. В свою очередь, в контроллере который обрабатывает ajax-запросы от страницы логина, и происходит принудительная авторизация с помощью Auth::loginUsingId. После авторизации контроллер возвращает ответ, который говорит JS-скрипту обновить страницу и прекратить опрос, таким образом получаем схему работы, полностью аналогичную  storebot.me. Код не привожу так как пока не все дописал, но по данному принципу реализовать будет не сложно.
Тем не менее, вопрос касательно других вариантов реализации, возможно более правильных, остается актуальным.

Не в сети

Подвал раздела