ayles-software/laravel-zoho-desk

用于 Zoho Desk 的 Laravel 包装器

1.3.0 2022-02-20 02:23 UTC

This package is auto-updated.

Last update: 2024-09-20 08:00:34 UTC


README

Zoho Desk Laravel 为 Zoho Desk API 提供了一个 oauth2 客户端和 SDK。

要求

  • Laravel 6+
  • PHP 7.2.5+

安装

使用 composer 安装

composer require ayles-software/laravel-zoho-desk

设置

发布配置。

php artisan vendor:publish --provider="AylesSoftware\ZohoDesk\ServiceProvider"

现在您需要填充 config/zoho-desk.php 文件以包含您的 Zoho 集成凭据。您可以在 这里 创建新的 API 密钥。将以下变量添加到您的 .env 文件中。

ZOHO_DESK_REDIRECT_URL=
ZOHO_DESK_CLIENT_ID=
ZOHO_DESK_CLIENT_SECRET=
ZOHO_DESK_ACCESS_TYPE=
ZOHO_DESK_ORGANISATION_ID=
ZOHO_DESK_BASE_URL=

配置文件还包含 Zoho 的作用域。要获取新的访问令牌,需要 access_type=offiline 作用域。访问令牌 60 分钟后过期。有关作用域的更多信息,请参阅 文档

迁移

此包使用 ZohoDeskAccess 模型来管理访问令牌。运行迁移以创建此表。

php artisan migrate

OAuth 流

首先,您必须授权应用程序,这需要设置控制器和路由。一旦应用程序被授权,Zoho 的访问将在此包中自行管理。一旦访问令牌过期,将根据需要请求新的令牌。

ZohoOAuth::class 将提供 OAuth 流和访问令牌的再生。

授权控制器的示例。

<?php

namespace App\Http\Controllers;

use AylesSoftware\ZohoDesk\ZohoOAuth;

class ZohoOAuthController extends Controller
{
    public function __invoke(ZohoOAuth $zohoOAuth)
    {
        return $zohoOAuth->flow();
    }
}

用法

use AylesSoftware\ZohoDesk\Facades\ZohoDesk;

# create a ticket
# for more options see https://desk.zoho.com.au/support/APIDocument.do#Tickets#Tickets_Createaticket
$response = ZohoDesk::createTicket([
    'subject' => 'Support message - Test user',
    'description' => 'This is the body of the ticket',
    'departmentId' => '0000000000000000', // this can be found within ZohoDesk
    'email' => 'contact@email.com',
    'contact' => [
        'email' => 'contact@email.com',
        'firstName' => 'Benjamin',
    ],
]);

有关更多信息,请参阅 API 文档

许可

Zoho Desk Laravel 是开源软件,根据 MIT 许可 许可。