Laravel: Web Api, как узнать, подключен ли пользователь (приложение)? - PullRequest
2 голосов
/ 18 января 2020

Я создаю веб-сервис для мобильного приложения по Laravel 5.8. Мне нужно узнать местоположение онлайн-пользователей, выполнить поиск по некоторым свойствам и отправить им уведомление.

Проблема в том, что я не могу узнать, подключен ли пользователь к сети. Мое решение состояло в том, чтобы продолжать посылать / получать сообщения приложениям каждые 10 секунд после их первого подключения. Очевидно, что этот подход имеет огромную перегрузку на сервере и не практичен.

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

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 18 января 2020

Похоже, вы можете использовать соединения в реальном времени, такие как Pusher

. Вам понадобятся каналы присутствия, чтобы увидеть, кто находится в сети в JS, это работает больше от клиента к клиенту. вместо того, чтобы сервер Laravel знал, кто в сети.

Вы подписываете пользователей на канал, а затем можете видеть, кто еще находится на этом канале.

https://laravel.com/docs/5.8/broadcasting#presence -каналы

0 голосов
/ 18 января 2020

Почему бы не сделать столбец для вашей пользовательской таблицы, а именно 'is_online'? То есть каждый раз, когда пользователь заходил в систему, устанавливали для этого поля значение true? и когда они вышли из системы или неактивны в течение определенного c времени, вы установите его в значение false?

...