malekfar/cmgmyr-messenger

用于 Laravel 的简单用户消息工具

2.19 2019-09-16 12:32 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 的安装说明可以在此处找到:https://github.com/cmgmyr/laravel-messenger/tree/v1

安装(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 支持 包发现

发布配置

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 为起点。