Show the users online in your Laravel application
install directly via composer, (*1)
composer require tusharthe/online-users-laravel
After composer command, register service prodiver in app/config/app.php
under providers:, (*2)
tusharthe\OnlineUsers\OnlineUsersServiceProvider::class,
After this, add new middleware in app/Http/Kernel.php
:, (*3)
\tusharthe\OnlineUsers\Middleware\UsersOnline::class,
After this, add the Library (trait) in your model User in app/User.php
:, (*4)
class User extends Authenticatable { use \tusharthe\OnlineUsers\Library\OnlineUsers; ... }
After this, add the event in your EventServiceProvider in app/Providers/EventServiceProvider.php
under 'protected $listen = '
:, (*5)
'Illuminate\Auth\Events\Logout' => [ 'tusharthe\OnlineUsers\Listeners\LogoutListener', ],
php artisan vendor:publish
for add the namespaces & select appropriate Provider tusharthe\OnlineUsers\OnlineUsersServiceProvider
., (*6)
To get all Online Users just use the method allOnline()
Like below:, (*7)
$user = new User; $user->allOnline();
Or if you want to check if a specific user is online or not use the method isOnline()
:, (*8)
$user = User::find($id); $user->isOnline();
You Can also able to to set timming of user in app/config/OnlineUser.php
Default 3 min is set., (*9)
5.4 or above