Skip to content

mattoz0/laravel-messenger

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status Code Climate Latest Version Total Downloads Software License

Laravel Messenger

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, or all message associated to the user with new/unread messages
  • Return the users unread message count easily
  • Very flexible usage so you can implement your own acess 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 4.x)

Installation instructions for Laravel 4 can be found here.

Installation (Laravel 5.x)

In composer.json:

"require": {
    "cmgmyr/messenger": "~2.0"
}

Run:

composer update

Add the service provider to config/app.php under providers:

'providers' => [
    'Cmgmyr\Messenger\MessengerServiceProvider'
]

Publish Assets

php artisan vendor:publish --provider="Cmgmyr\Messenger\MessengerServiceProvider"

Update config file to reference your User Model:

config/messenger.php

Create a users table if you do not have one already. If you need one, simply use this example as a starting point, then migrate.

Note: if you already have a users table and run into any issues with foreign keys, you may have to make the id unsigned.

Migrate your database:

php artisan migrate

Add the trait to your user model:

use Cmgmyr\Messenger\Traits\Messagable;

class User extends Model {
	use Messagable;
}

Examples

Note: These examples use the illuminate/html package that is no longer included in Laravel 5 out of the box. Make sure you require this dependency in your composer.json file if you intend to use the example files.

Contributing?

Please format your code before creating a pull-request:

vendor/bin/php-cs-fixer fix --level psr2 .

Special Thanks

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

About

Simple user messaging package for Laravel

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%