keithbrink / helpscout-app-spark
一个用于 Laravel Spark 的 Helpscout 集成包,允许您添加关于由 Helpscout 中的客户创建的工单的信息。
Requires
- helpscout/api-laravel: ~1.0
- helpscout/apps: 1.1.*
README
一个用于 Laravel Spark 的 Helpscout 集成包,允许您添加关于在 Helpscout 中创建的工单的信息。
它包含两个独立的功能
- 它为 Helpscout Dynamic App 添加了一个端点,以显示用户的计费计划和历史数据。
- 它接受来自 Helpscout 的 webhooks,并根据您设置的规则处理它们。默认情况下,它将使用用户的当前计费计划标记每个新的工单。
安装
此版本需要 PHP 7,并支持 Laravel 5.5+ 和 Spark 5+。
要获取最新版本,只需使用 Composer 需求项目
$ composer require keithbrink/helpscout-app-spark
配置 - 自定义应用
在 Helpscout 中创建一个自定义应用,并将回调 URL 指向您的应用 URL + 以下端点
/helpscout-spark-app/custom-app
在您的 .env 文件中添加自定义应用的密钥
HS_SPARK_CUSTOM_APP_SECRET=xxxxxx
配置 - Webhook 规则
在 Helpscout 中创建一个新的应用(在我的应用下),并在您的 .env 文件中添加以下密钥
HS_AUTH_TYPE=client_credentials
HS_APP_ID=xxx
HS_APP_SECRET=xxx
然后,为端点创建一个新的 webhook
/helpscout-spark-app/webhooks
并在您的 .env 文件中添加您的密钥
HS_SPARK_WEBHOOK_SECRET=xxx
使用方法
默认情况下,您将有一个自定义应用,其中包含用户当前的计费计划和每个工单上的其他客户数据,并且 webhook 将为创建的每个工单添加一个标记,表示用户的当前计费计划。
将您自己的信息添加到自定义应用或新规则以处理 Helpscout webhooks 非常简单。
添加自定义应用项目
要向自定义应用添加更多项目,只需复制 KeithBrink/HelpscoutSpark/CustomAppData/Items/Plan
,包括扩展 BaseItem
并实现 ItemContract
。
将 getValue
和 getName
函数更改为您想要的任何内容。
然后,在您的 AppServiceProvider
的 register 函数中添加您的规则
\KeithBrink\HelpscoutSpark\CustomAppData\Items::$items[] = YourItem::class;
添加 Webhook 规则
要添加另一个 webhook 规则,只需复制 KeithBrink/HelpscoutSpark/WebhookRules/Rules/TagConversationWithPlan
,包括扩展 BaseRule 并实现 RuleContract。
parseWebhook
函数接受 webhook,在这里您应设置从 webhook 需要的任何属性。
然后,在 handle
函数中处理 webhook,包括(如果需要)与 Helpscout API 交互。
然后,在您的 AppServiceProvider
的 register 函数中添加您的规则
\KeithBrink\HelpscoutSpark\WebhookRules\Rules::$rules[] = YourRule::class;
许可
HelpscoutSpark 在 MIT 许可证 (MIT) 下授权。