agencedoit/zohoconnector

Zoho Creator API 连接器 for Laravel

1.2.0 2024-10-01 08:03 UTC

This package is auto-updated.

Last update: 2024-10-01 08:04:19 UTC


README

目录

通用

Laravel 包用于管理 Zoho Creator API 的连接

需求

要使用此服务并与 Zoho API 交互,您需要在 Zoho API 控制台 获取一个 client_id 和一个 client_secret。

  • 点击右上角的 "添加客户端"。
  • 使用 "基于服务器的应用程序"。
  • 填写信息
    • 客户端名称:您的应用名称
    • 主页 URL:您的应用 URL
    • 授权重定向 URI:--APP_URL--/zoho/request-code-response <= 重要
  • 您将获得所需的 client_id 和 client_secret。

  • PHP 必须安装 zip 扩展。对于 Linux 系统,只需使用正确的 php 版本输入。

    sudo apt-get install php8.2-zip
    

基础

创建者

要与 Zoho Creator 交互,所有操作都基于报表。

Zoho API 文档可在 这里 查找。

Zoho API 的版本是 v2.1。

CRM

即将推出。

配置

环境变量

标识符必需描述可用值注释
ZOHO_ACCOUNT_DOMAIN您的 Zoho 账户注册的 Zoho 域名eu, com, jp, in, com.au ...默认值:eu
ZOHO_CLIENT_ID来自 https://api-console.zoho 的客户端 ID。-默认值:1000.8cb99dxxxxxxxxxxxxx9be93
ZOHO_CLIENT_SECRET来自 https://api-console.zoho 的客户端密钥。-默认值:9b8xxxxxxxxxxxxxxxf
ZOHO_SCOPE客户端的作用域ZohoCreator.report.ALL, ZohoCreator.report.READ,ZohoCreator.bulk.CREATE ... 请参阅 API 文档默认值:ZohoCreator.report.READ
ZOHO_USER您的 Zoho 用户名-默认值:jason18
ZOHO_APP_NAME您的 Zoho 应用标识符-默认值:zylker-store
ZOHO_TOKENS_TABLE令牌表名称-默认值:zoho_connector_tokens
-------------------------------
ZOHO_BULK_DOWNLOAD_PATH批量文件加载的路径-默认值:storage_path("zohoconnector")
ZOHO_BULKS_TABLE批量处理表名称-默认值:zoho_connector_bulk_history
ZOHO_BULK_QUEUE批量处理的队列名称-默认值:default

初始化

  • 请确保已设置 APP_URL 环境变量。
  • 从 ZOHO 获取 client_id 和 client_secret => 需求
  • 按照 环境变量 中的说明填写。
  • 在开发环境中,您可以在 --APP_URL--/zoho/test 上检查所有环境是否已准备就绪。然后点击 "请求代码页面" 链接以在开发环境中激活。
  • 如果服务已就绪,您现在可以 使用此服务

您可以使用/zoho/reset-tokens路由或通过点击/zoho/test页面上的重置按钮来重置服务。

在生产环境上

/zoho/test页面不可用。

转到/zoho/request-code以激活服务(显然一旦参数设置)。

/zoho/reset-tokens也不可用。要重置令牌,截断ZOHO_TOKENS_TABLE。

使用方法

基本示例

use ZohoCreatorApi;

public static function test() {
  return ZohoCreatorApi::get("my_report");
}

可用函数

从报表获取

ZohoCreatorApi::get(<report_name>,<criterias>="",&<cursor>="");

将找到的记录作为数组返回。

此函数有1000条记录的限制。如果记录数更多,则cursor变量将被填充。

查看ZohoCreatorApi::getAll()代码函数,了解如何处理游标和循环。

查看Zoho的标准。.

从报表获取所有

ZohoCreatorApi::getAll(<report_name>,<criterias>="");

将找到的记录作为数组返回。

此函数可能非常长。查看函数以了解谁在使用它。

查看Zoho的标准。.

按 ID 获取

ZohoCreatorApi::getByID(<report_name>,<object_id>);

将找到的记录作为数组返回。

field_config设置为"all"。

创建

ZohoCreatorApi::create(<form_name>,<attributes>,<additional_fields>=[]);

使用给定的属性在表单中添加记录。

更新

ZohoCreatorApi::update(<report_name>,<id>,<attributes>,<additional_fields>=[]);

使用给定的属性更新记录。

批量操作

使用Zoho获取信息的批量操作是一个3步骤的过程。

  • 创建批量
  • 读取状态。
  • 下载结果。此功能在此包中可用,或通过逐步过程或完全自动化使用Laravel Jobs。

自动管理

整个批量过程在一个函数中。结果是JSON文件。此函数需要PHP的zip扩展。

  • zip扩展 of PHP。
  • Laravel的队列处理器
     php artisan queue:work
    

    附加选项:--tries=3 > 失败时多次尝试 --queue=secondary > 选择您的队列。别忘了更改ZOHO_BULK_QUEUE环境变量。

只需使用该函数

  ZohoCreatorApi::getWithBulk(<report_name>, <call_back_url>, <criterias>="")

这会启动一个Laravel任务,并通过参数json_location发送到callback_url,该参数是下载、提取、转换报告数据的JSON位置。下载的ZIP文件和提取的CSV文件在处理过程中被删除以优化存储。

创建批量

  ZohoCreatorApi::createBulk(<report_name>,<criterias>="");

创建批量请求。

查看Zoho的标准。.

读取批量信息

  ZohoCreatorApi::readBulk(<report_name>,<bulk_id>="");

将批量请求信息作为数组返回。

下载批量

  ZohoCreatorApi::downloadBulk(<report_name>,<bulk_id>="");

在ZOHO_BULK_DOWNLOAD_PATH下载批量请求结果。

待办事项

  • 创建测试函数。
  • 完整的注释。
  • 添加删除函数。
  • 查看过滤器简化器。