aurawindsurfing/messenger

一个超级简单的用于Laravel应用程序中的1对1消息系统。

1.0.3 2019-09-16 16:01 UTC

This package is auto-updated.

Last update: 2024-09-17 04:39:26 UTC


README

Travis Status Coverage Status Scrutinizer Code Quality Github Issues

Packagist Packagist Release Packagist Downloads

此包允许您在Laravel应用程序中创建简单的用户到用户消息系统。它包含所有视图,甚至还有一个简单的管理员面板。目前不支持群组对话以及不支持编辑消息。它只是一个发送和接收消息的系统。

Messenger Dashboard

功能

易于设置和配置。

  • 用户之间的1对1消息
  • 每个用户多个对话(线程)
  • 返回与用户关联的所有消息
  • 返回用户的未读消息数
  • 良好的文档和IDE友好。
  • 经过充分测试,代码质量高。
  • 支持Laravel 5.75.8
  • 用❤️和☕制作。

Laravel版本

安装

您可以通过composer安装此包

composer require aurawindsurfing/messenger

或者在composer.json中手动放置

"require": {
    "aurawindsurfing/messenger": "~1.0"
}

运行

composer update

除了标准配置和迁移文件外,此包还包括控制器、视图、工厂和命令行工具。

要发布所有资产,请运行

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

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

迁移您的数据库

php artisan migrate

编辑配置

config/messenger.php

此包允许您在用户之间创建模拟消息,以便您可以更容易地构建视图。要查看模拟消息,您必须以某个用户登录,否则您将收到404错误。要选择为哪些用户创建消息,请编辑您的配置文件

'firstUserId'  => 1,
'secondUserId' => 2,

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

use Aurawindsurfing\Messenger\Messagable;

class User extends Authenticatable {

    use Messagable;

使用方法

使用模拟数据填充您的消息表,以便您可以看到一些消息显示。为此,请运行

php artisan messenger:generate

以配置文件中指定的用户之一登录,并访问

https://yourapp.test/messages/1

查看第一用户收到的消息线程

要清除所有模拟数据,请在您的控制台中运行以下命令。请注意,此命令将删除消息表中包括真实消息在内的所有数据(如果存在!)

php artisan messenger:deleteAllData

自定义

控制器

(可选) 此包使用自己的MessagesController,您可以选择覆盖它。为此,您需要将其从

/vendor/aurawindsurfing/messenger/src/Http/Controllers

复制到

/App/Http/Controllers

编辑您的配置文件和复制的控制器,以修改控制器命名空间

'controller_namespace' => 'App\Http\Controllers',

此控制器使用3个方法,indexcreatestore,您可以根据需要将它们重命名为您自己的应用程序中的任何名称。

编辑您的配置文件并修改方法名称

// customise controller method names if you choose to overwrite default controller
'controller_index'  => 'index',
'controller_create' => 'create',
'controller_store'  => 'store',

视图

php artisan vendor:publish --tag=views --provider="Aurawindsurfing\Messenger\MessengerServiceProvider"

它们将放置在

resources/views/vendor/messenger

迁移

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

命令和工厂

包工厂和命令将可用于您的Laravel应用程序,并自动加载。您可以将它们复制到相关位置,并在需要时覆盖它们。

测试

composer test

更新日志

有关最近更改的更多信息,请参阅更新日志

贡献

有关详细信息,请参阅贡献

安全

如果您发现任何安全相关的问题,请通过电子邮件tom@gazeta.ie报告,而不是使用问题跟踪器。

致谢

许可

麻省理工学院许可证(MIT)。有关更多信息,请参阅许可文件