mesprovider/messenger

为 Laravel 设计的简单用户消息工具

dev-main 2023-02-24 16:05 UTC

This package is auto-updated.

Last update: 2024-09-24 19:25:38 UTC


README

SQLite Tests MySQL Tests PostgreSQL Tests

Latest Version Total Downloads Software License

Laravel 消息者

此包允许您将完整的用户消息系统添加到您的 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 支持 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;
}

示例

示例项目

贡献

有关详细信息,请参阅 CONTRIBUTING

安全漏洞

请查阅我们的安全策略了解如何报告安全漏洞:https://github.com/NikKosvel/messenger-them-6533/blob/HEAD/../../security/policy

致谢

特别感谢

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