hocvt/messenger

Laravel的简单用户消息工具

v6.0.2 2019-09-09 08:49 UTC

README

Build Status Scrutinizer Scrutinizer Coverage Latest Version Total Downloads Software License Get help on Codementor

Laravel Messenger

此包允许您将完整用户消息系统添加到您的Laravel应用程序中。

留下一些反馈

您如何使用laravel-messenger?

功能

  • 每个用户可以有多个会话
  • 可选地,在每条新消息中循环添加其他用户
  • 查看每个线程的最后一条消息
  • 返回系统中的所有消息,与用户关联的所有消息,或与用户关联的新/未读消息
  • 轻松返回用户未读消息数量
  • 非常灵活,您可以实现自己的访问控制

常见用法

  • 公开线程(每个人都可以看到一切)
  • 群组消息(只有参与者可以查看他们的线程)
  • 一对一消息(私密或直接线程)

Laravel版本

安装(Laravel 4.x - 已停止积极支持)

Laravel 4的安装说明可以在这里找到

安装(Laravel 5.x)

composer require cmgmyr/messenger

或手动在composer.json中放置

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

运行

composer update

将服务提供者添加到config/app.php下的providers

'providers' => [
    Cmgmyr\Messenger\MessengerServiceProvider::class,
],

注意:如果您使用的是Laravel 5.5,此步骤是多余的。Laravel Messenger支持Package Discovery

发布配置

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

更新配置文件以引用您的用户模型

config/messenger.php

如果您还没有,创建一个users表。如果您需要,默认的Laravel迁移将令人满意。

(可选)如果不想使用默认的数据库表,在包配置文件中定义数据库表名

'messages_table' => 'messenger_messages',
'participants_table' => 'messenger_participants',
'threads_table' => 'messenger_threads',

发布迁移

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

迁移您的数据库

php artisan migrate

将特性添加到您的用户模型中

use Cmgmyr\Messenger\Traits\Messagable;

class User extends Authenticatable {
    use Messagable;
}

示例

示例项目

贡献?

在创建pull-request之前请格式化您的代码。这将根据.php_cs中指定的格式格式化所有文件。

vendor/bin/php-cs-fixer fix .

安全

如果您发现任何安全相关的问题,请通过电子邮件Chris Gmyr联系,而不是使用问题跟踪器。

致谢

特别感谢

此包以AndreasHeiberg/laravel-messenger为起点。