This package will allow you to add a full user messaging system into your Laravel application.
- Multiple conversations per user
- Optionally loop in additional users with each new message
- View the last message for each thread available
- Returns either all messages in the system, all messages associated to the user
- Return the users unread message count easily
- Very flexible usage so you can implement your own access control
- Open threads (everyone can see everything)
- Group messaging (only participants can see their threads)
- One to one messaging (private or direct thread)
composer require chrisidakwo/laravel-messages
Or place manually in composer.json:
"require": {
"chrisidakwo/laravel-messages": "~1.0"
}
Run:
composer update
Add the service provider to config/app.php
under providers
:
'providers' => [
ChrisIdakwo\Messages\MessagesServiceProvider::class,
],
Note: If you are using Laravel 5.5, this step is unnecessary. Laravel Messages supports Package Discovery.
Publish config:
php artisan vendor:publish --provider="ChrisIdakwo\Messages\MessagesServiceProvider" --tag="config"
Update config file to reference your User Model:
config/messages.php
Publish migrations:
php artisan vendor:publish --provider="ChrisIdakwo\Messages\MessagesServiceProvider" --tag="migrations"
Migrate your database:
php artisan migrate
Add the trait to your user model:
use ChrisIdakwo\Messages\Traits\HasMessages;
class User extends Authenticatable {
use HasMessages;
}
Please format your code before creating a pull-request. This will format all files as specified in .php_cs
:
vendor/bin/php-cs-fixer fix .
If you discover any security related issues, please email Chris Idakwo instead of using the issue tracker.
This package used cmgmyr/laravel-messenger as a starting point.