spatie / laravel-help-space
在您的Laravel应用程序中集成Helpspace
Requires
- php: ^8.2
- illuminate/contracts: ^10.0|^11.0
- spatie/laravel-package-tools: ^1.13.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.0|^8.0
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^8.0|^9.0
- pestphp/pest: ^2.21
- pestphp/pest-plugin-laravel: ^2.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- spatie/laravel-ray: ^1.26
This package is auto-updated.
Last update: 2024-09-08 21:46:35 UTC
README
HelpSpace是一款美观的客户服务台服务。其特色之一是可以显示一个侧边栏,其中包含有关发起工单的人的额外信息。
HelpSpace会向您的应用程序发送请求以获取填充该侧边栏的HTML内容。我们的包使得验证来自HelpSpace的请求是否有效变得容易,并允许您对其进行响应。
安装后,这样就可以响应来自HelpSpace的请求。
use Spatie\HelpSpace\Http\Requests\HelpSpaceRequest; HelpSpace::sidebar(function(HelpSpaceRequest $request) { $user = User::firstWhere('email', $request->email()) if (! $user) { return 'No user found'; } // any view of your own in which you render the html // to be displayed at HelpSpace return view('help-space.sidebar', compact('user')); })
支持我们
我们投入了大量资源来创建一流的开放源代码包。您可以通过购买我们的付费产品之一来支持我们。
我们非常感谢您从您的家乡寄给我们一张明信片,说明您正在使用我们的哪个包。您可以在我们的联系页面上找到我们的地址。我们将所有收到的明信片发布在我们的虚拟明信片墙上。
安装
您可以通过Composer安装此包
composer require spatie/laravel-help-space
要发布配置文件并在您的应用程序中创建app/Providers/HelpSpaceServiceProvider.app
类,请运行此命令。
php artisan help-space:install
这是发布在config/help-space.php
应用程序中配置文件的内容
return [ /* * The secret used to verify if the incoming HelpSpace secret is valid */ 'secret' => env('HELP_SPACE_SECRET'), /* * The package will automatically register this route to handle incoming * requests from HelpSpace. * * You can set this to `null` if you prefer to register your route manually. */ 'url' => '/help-space', /* * These middleware will be applied on the automatically registered route. */ 'middleware' => [ Spatie\HelpSpace\Http\Middleware\IsValidHelpSpaceRequest::class, 'api', ], ];
接下来,在您的.env
文件中,您必须设置一个新的环境变量HELP_SPACE_SECRET
,将其设置为随机字符串。在HelpSpace中,您必须导航到集成设置中的“自定义工单侧边栏”。在那里,您必须输入该随机字符串。此密钥将用于验证传入请求是否确实来自HelpSpace。
该包将自动在/help-space
上注册一个路由。此路由可以进行自定义。
使用方法
如果您从上面的部分运行了安装命令,那么您的应用程序在app/Providers
中有一个HelpSpaceServiceProvider.php
服务提供者。这是内容。
namespace App\Providers; use Illuminate\Support\ServiceProvider; use Spatie\HelpSpace\Facades\HelpSpace; use Spatie\HelpSpace\Http\Requests\HelpSpaceRequest; class HelpSpaceServiceProvider extends ServiceProvider { public function register() { HelpSpace::sidebar(function(HelpSpaceRequest $request) { return "HTML about {$request->email()}"; }); } }
在sidebar
中的可调用函数将在HelpSpace向您的应用程序发送请求时执行。给定的HelpSpaceRequest
的email()
方法将包含发起工单的人的电子邮件地址。
除了返回一个字符串,您还可以返回一个视图。
HelpSpace::sidebar(function(HelpSpaceRequest $request) { $user = User::firstWhere('email', $request->email()); return view('your-own-view', compact('user')); }
预览侧边栏内容
当您正在处理返回侧边栏HTML的视图时,在本地预览它可能很方便,而不是让HelpScout发送请求。
要查看给定电子邮件地址的HTML,您可以使用help-space:render-sidebar
命令。
# returns the HTML for the given email address
php artisan help-space:render-sidebar --email=john@example.com
自定义注册的路由
该包将自动在/help-space
上注册一个路由。您可以在help-space.php
配置文件中更改此值。
或者,您可以注册自己的路由。
首先,您必须在help-space.php
配置文件中将url
键设置为null
。
接下来,您必须在您的路由文件中添加此内容,最好是在routes/api.php
中,这样当来自HelpSpace的新请求到来时,您的应用程序不会启动会话。
// in a routes file, preferable in routes/api.php Route::helpSpaceSidebar('your-custom-segment');
上述路由将注册一个URL为https://yourdomain.com/api/your-custom-segment
的路由(当你在api.php路由文件中注册时。)
测试
composer test
变更日志
请参阅变更日志获取有关最近更改的更多信息。
贡献
请参阅贡献指南获取详细信息。
安全漏洞
请查看我们的安全策略了解如何报告安全漏洞。
鸣谢
许可
MIT许可(MIT)。请参阅许可文件获取更多信息。