hutsi/yii2-zendesk

Yii2 zendesk 插件

安装次数: 1,240

依赖项: 0

建议者: 0

安全: 0

星星: 6

关注者: 4

分支: 3

开放性问题: 1

类型:扩展

v3.4 2017-01-08 13:53 UTC

This package is not auto-updated.

Last update: 2024-09-28 17:43:56 UTC


README

为zendesk服务支持(https://www.zendesk.com)的Yii2插件

使用方法

将以下行添加到 composer.json 的 require 部分

"require": {
    "hutsi/yii2-zendesk": ">=3.3",
} 

将组件添加到您的 main.php 配置文件中

'components' =>
    'zendesk' => [
        'class' => 'hutsi\zendesk\Client',
        'apiKey' => 'YOUR_API_KEY',
        'user' => 'YOUR_USER',
        'baseUrl' => 'https://SUBDOMAIN.zendesk.com/api/v2',
        'password' => 'YOUR_PASSWORD',
        'authType' => 'basic'
    ]
]

最简单的示例是:创建一个Zendesk客户端实例

$client = new hutsi\zendesk\Client();

执行

$results = $client->execute('GET', '/users.json', []);

或者

$results = $client->get('/users.json', []);

另一种变体是使用内置插件函数来操作用户、票据、搜索、附件实例。在您的表单处理程序中使用

use yii\helpers\StringHelper;
use hutsi\zendesk\Attachment;
use hutsi\zendesk\Search;
use hutsi\zendesk\Ticket;
use hutsi\zendesk\User;
use Yii;
use yii\web\UploadedFile;

如果您想使用上传,应该使用已知的 \yii\web\UploadedFile 实例

$uploadedFile = new UploadedFile(['tempName' => 'YOUR_FILE_TEMPNAME', 'name' => 'YOUR_FILE_NAME]);

然后 - 从UploadedFile创建并保存zendesk附件实例

$zAttachment = new Attachment(['uploadedFile' => $uploadedFile]);
$token = $zAttachment->save();

您还可以使用zendesk搜索API来查找您zendesk账户中的现有用户。如果没有这样的用户 - 让我们创建一个

$search = new Search(['query' => ['email' => '"user@example.com"']]);
if ($zUsers = $search->users()) {
    $zUser = $zUsers[0];
} else {
    $zUser = new User(['email' => 'user@example.com');
    $zUser->save();
}

最后,是时候创建票据实例了

$zTicket = new Ticket([
    'requester_id' => $zUser->id,
    'requester' => [
        'email' => $zUser->email
    ],
    'subject' => StringHelper::truncate('Problem: Authorization', 100),
    'comment' => [
        'body' => 'Authorization not works!'
    ],
]);

如果有上传,请将其附加到票据评论字段

$zTicket->comment['uploads'] = isset($token) && $token ? [$token] : null;
$zTicket->save();

这就完成了。