chrisidakwo/laravel-messages

1,695 1
Install
composer require chrisidakwo/laravel-messages
Latest Version:1.0.2
PHP:^7.1.3
License:MIT
Last Updated:May 9, 2020
Links: GitHub  ·  Packagist
Maintainer: chrisidakwo

Laravel Messages

This package will allow you to add a full user messaging system into your Laravel application.

Features

  • 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

Common uses

  • Open threads (everyone can see everything)
  • Group messaging (only participants can see their threads)
  • One to one messaging (private or direct thread)

Installation (Laravel 5.x)

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;
}

Contributing?

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 .

Security

If you discover any security related issues, please email Chris Idakwo instead of using the issue tracker.

Credits

Special Thanks

This package used cmgmyr/laravel-messenger as a starting point.

Related Packages

harshaaliaschinna/ping

Ping provides a simple and easy Messaging or Chat or Conversation system to your...

70 6
lexxyungcarter/chatmessenger

Simple one-to-one/group chat messaging tool for Laravel 5, 6, 7, 8, 9 & 10 with...

26,838 106
triggerdesign/hermes

A fully featured messaging package for Laravel.

705 16
syntaxlexx/chatmessenger

Simple one-to-one/group chat messaging tool for Laravel 5, 6, 7, 8, 9 & 10 with...

12,365 106