PHP code example of omnia / oalivechat

1. Go to this page and download the library: Download omnia/oalivechat library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

omnia / oalivechat example snippets


composer 

"providers": { 
  ... 
  Omnia\Oalivechat\LiveChatServiceProvider::class, 
}

php artisan vendor:publish --tag=public --force 

php artisan migrate

php artisan migrate --path=vendor/omnia/oalivechat/src/database/migrations

php artisan make:middleware CheckAdminRole 

use Illuminate\Http\Request; 
use Illuminate\Support\Facades\Auth; 

public function handle(Request $request, Closure $next) 
{ 
  if (Auth::check()) { 
    view()->share('loggedInUser', Auth::user()); 
    view()->share('adminRole', Auth::user()->role_for_messages === 'admin'); 
  } 

  return $next($request);
}

protected $middlewareGroups = [ 
  'web' => [ 
    // ... 
    \App\Http\Middleware\CheckAdminRole::class, 
  ], 
];

php artisan make:middleware AdminMessages

use Illuminate\Http\Request; 
use Illuminate\Support\Facades\Auth; 

public function handle(Request $request, Closure $next) 
{ 
  if (Auth::check() && Auth::user()->role_for_messages === 'admin') { 
    return $next($request); 
  } 

  return redirect('/'); 
}

protected $middlewareAliases = [ 
  // ... 
  'adminMessages' => \App\Http\Middleware\AdminMessages::class, 
  'adminRole' => \App\Http\Middleware\CheckAdminRole::class, 
]; 

use Illuminate\Http\Request; 
use Illuminate\Support\Facades\Auth; 
use App\Models\User; 

public function authenticated(Request $request, $user) 
{
    $user->status_for_messages = 'online';
    $user->save();
    return redirect()->intended($this->redirectPath());
}
public function logout(Request $request) 
{
  $user = Auth::user();
  if ($user) { 
      $userModel = User::find($user->id);
      $userModel->status_for_messages = 'offline';
      $userModel->save();
  }
  Auth::logout();
  // Additional logout logic... 
  return redirect('/'); 
}

<a href=" {{ route('admin.chat') }} ">Messages</a>

<script src="{{ asset('/liveChat/tools/chat/js/msg_counter.js') }}"></script> 
<script>
    window.onload = function() { 
      var routeUrl = "{{ route('fetchNewMessages') }}"; 
      fetchNewMessages(routeUrl,'id_name'); 
    }; 
</script> 

@php
    $websiteName = "your website name";
    $websiteColor = "your color";
@endphp

@auth 
  @if (Auth::user()->role_for_messages != 'admin') 
      @