perchpeekmichael / zendesk-laravel
Laravel 对 zendesk/zendesk_api_client_php 包的包装,支持新的 Guzzle Psr7 调用
Requires
- php: >=5.4.0
- illuminate/support: ~5.4|^6.0|^7.0|^8.0
- perchpeekmichael/zendesk_api_client_php: 2.*
README
本包提供了与 Zendesk API 的集成。支持创建工单、检索和更新工单、删除工单等。
本包简单地提供了一个 Zendesk
外观,该外观作为 zendesk/zendesk_api_client_php 包的包装器。
注意:目前仅支持基于令牌的认证。
安装
您可以通过 Composer 安装此包:
composer require huddledigital/zendesk-laravel
您还必须安装服务提供者。
Laravel 5.5+ 用户:此步骤可以跳过,因为该包支持自动发现。
// config/app.php 'providers' => [ ... Huddle\Zendesk\Providers\ZendeskServiceProvider::class, ... ];
如果您想使用外观,也必须安装它。
// config/app.php 'aliases' => [ .. 'Zendesk' => Huddle\Zendesk\Facades\Zendesk::class, ];
配置
要发布配置文件到 app/config/zendesk-laravel.php
,请运行:
php artisan vendor:publish --provider="Huddle\Zendesk\Providers\ZendeskServiceProvider"
使用 环境变量 设置您的配置,可以在您的 .env
文件或服务器控制面板上设置
ZENDESK_SUBDOMAIN
您的 Zendesk 组织 URL 的子域名部分。
例如,http://huddledigital.zendesk.com 使用 huddledigital
ZENDESK_USERNAME
认证账户的用户名。
ZENDESK_TOKEN
API 访问令牌。您可以在: https://SUBDOMAIN.zendesk.com/agent/admin/api/settings
创建一个。
ZENDESK_DRIVER
(可选)
将其设置为 null
或 log
以防止从您的环境中直接调用 Zendesk API。
使用方法
外观
Zendesk
外观作为 Zendesk\API\Client
类的实例的包装器。此类上可用的任何方法(此处为文档)都可通过外观使用。例如
// Get all tickets Zendesk::tickets()->findAll(); // Create a new ticket Zendesk::tickets()->create([ 'subject' => 'Subject', 'comment' => [ 'body' => 'Ticket content.' ], 'priority' => 'normal' ]); // Update multiple tickets Zendesk::ticket([123, 456])->update([ 'status' => 'urgent' ]); // Delete a ticket Zendesk::ticket(123)->delete();
依赖注入
如果您不想使用外观,可以跳过将别名添加到 config/app.php
,而是将 Huddle\Zendesk\Services\ZendeskService
注入到您的类中。然后您可以使用此对象上的所有相同方法,就像使用外观一样。
<?php use Huddle\Zendesk\Services\ZendeskService; class MyClass { public function __construct(ZendeskService $zendesk_service) { $this->zendesk_service = $zendesk_service; } public function addTicket() { $this->zendesk_service->tickets()->create([ 'subject' => 'Subject', 'comment' => [ 'body' => 'Ticket content.' ], 'priority' => 'normal' ]); } }
本包采用 MIT 许可证。