dedyyyy/messenger

Laravel的简单用户消息工具

2.19 2019-03-17 11:23 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;
}

示例

示例项目

贡献?

在创建拉取请求之前,请格式化您的代码。这将格式化所有文件,如.php_cs中指定的。

vendor/bin/php-cs-fixer fix .

安全性

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

致谢

特别感谢

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