nikservik/simple-support

为 Laravel 提供简单支持

安装次数: 42

依赖者: 0

建议者: 0

安全: 0

星标: 1

关注者: 1

分支: 0

开放问题: 0

类型:laravel-package

2.04 2023-11-26 23:15 UTC

README

该包实现了与用户对话和向所有用户发送通知的功能。

安装

将以下内容添加到 composer.json

    "require": {
        ...
        "nikservik/simple-support": "^2.0",
        ...
    },
    "config": {
        ...
        "github-oauth": {
            "github.com": "токен доступа (создается в настройках)"
        }
    },
    "repositories" : [
        {
            "type": "vcs",
            "url" : "git@github.com:nikservik/simple-support.git"
        }
    ]

之后执行以下操作

composer update

迁移

可以发布迁移

php artisan vendor:publish --tag="simple-support-migrations"

或者取消注释配置中的 autoload-migrations 功能。

执行迁移

php artisan migrate

配置

发布配置文件

php artisan vendor:publish --tag="simple-support-config"

默认配置文件内容

    // чтобы отключить любую возможность, достаточно ее закомментировать
    'features' => [
        'user-can-send-message',
        'user-can-update-message',
        'user-can-delete-message',
        'send-notifications-to-telegram',
//        'register-api-routes',
//        'autoload-migrations',
    ],

    // без / в начале и в конце
    'route' => 'support',

    // сколько сообщений загружается одним запросом
    'messages-per-page' => 20,

    // метод подсчета непрочитанных сообщений
    // fast - одним запросом с тремя вложенными
    // simple - тремя запросами
    'unread-count' => 'simple',

    // настройки для отправки уведомлений о новых сообщениях от пользователей
    'telegram' => [
        'url' => 'https://api.telegram.org/bot',
        'token' => env('SUPPORT_BOT_TOKEN'),
        'chat' => env('SUPPORT_BOT_CHAT'),
    ],

.env 文件中添加以下两项设置:机器人标识符和将发送通知的聊天标识符。

SUPPORT_BOT_TOKEN=
SUPPORT_BOT_CHAT=

变更日志

2.03

  • 从选择中排除了注册用户之前创建的消息和通知

2.02

  • 优化 countUnread

2.01

  • 在 Actions 中移出了 jsonResponse 方法
  • asController 返回一个可以在 view 中使用的值
  • 可以继承 Actions 并添加自定义的 htmlResponse

2.0

  • 向用户聊天中添加了通用通知
  • 可以回复消息
  • 可配置关闭的功能
  • 管理部分已移至 admin-support 包
  • 完全使用 OpenAPI 标准描述了 API
  • 添加了工厂
  • 所有操作都基于 laravel-actions 重写
  • 全面测试和独立测试
  • 安装说明