有奖捉虫:云通信与企业服务文档专题,速来> HOT

简介

本文档提供关于异步处理任务接口的相关的 API 概览以及 SDK 示例代码。
注意:
需要 COS PHP SDK v2.4.0 及以上版本。旧版本可能存在 bug,使用时建议升级到 最新版本
API
操作名
操作描述
提交文档预览任务
用于提交一个文档预览任务
查询文档预览任务
查询指定的文档预览任务
拉取文档预览任务
拉取符合条件的文档预览任务

提交文档预览任务

功能说明

CreateDocProcessJobs 接口用于提交一个文档预览任务。
注意:
使用此接口前,请确保已打开官网控制台中数据处理下的文档处理开关,否则会报错 doc bucket unbinded, bucket's host is unavailable
如需使用文档转 HTML 功能,可直接将请求参数置于 URL 后方,SDK 仅负责签名计算操作。

示例代码

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'scheme' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->createDocProcessJobs(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Tag' => 'DocProcess', //任务的 Tag:DocProcess 固定值
// 'QueueId' => 'pd8e422a2ea134165a92f2012ea43****', //任务所在的队列 ID
'Input' => array(
'Object' => 'Append功能测试.pdf' //待操作的文件对象
),
'Operation' => array(
'DocProcess' => array(
'SrcType' => 'pdf', //源数据的后缀类型
'TgtType' => 'png', //转换输出目标文件类型
'SheetId' => 0, //表格文件参数,转换第 X 个表,默认为1
'StartPage' => 1, //从第 X 页开始转换,默认为1
'EndPage' => 3, //转换至第 X 页,默认为-1,即转换全部页
'ImageParams' => '', //转换后的图片处理参数
'DocPassword' => '', //Office 文档的打开密码
'Comments' => 0, //是否隐藏批注和应用修订,默认为 0
'PaperDirection' => 0, //表格文件转换纸张方向,默认为0
'Quality' => 100, //生成预览图的图片质量,取值范围 [1-100],默认值100
'Zoom' => 100, //预览图片的缩放参数,取值范围[10-200], 默认值100
),
'Output' => array(
'Region' => $region, //存储桶的地域
'Bucket' => 'examplebucket-1250000000', //存储结果的存储桶
'Object' => 'pic-${Page}.jpg', //输出文件路径
),
),
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
参数名称
类型
描述
是否必填
Bucket
String
存储桶名称,格式:BucketName-APPID
Operation
Array
操作规则
Tag
String
创建任务的 Tag,目前仅支持:DocProcess
Input
Array
待操作的文件对象
QueueId
String
任务所在的 队列 ID
Input 中的具体数据描述如下:
参数名称
类型
描述
是否必填
Object
String
文件在 COS 上的文件路径,Bucket 由 Host 指定
Operation 中的具体数据描述如下:
参数名称
类型
描述
是否必填
DocProcess
Array
当 Tag 为 DocProcess 时有效,指定该任务的参数
Output
Array
结果输出地址
DocProcess 中的具体数据描述如下:
参数名称
类型
描述
是否必填
srcType
String
源数据的后缀类型,当前文档转换根据 cos 对象的后缀名来确定源数据类型,当 cos 对象没有后缀名时,可以设置该值
tgtType
String
转换输出目标文件类型:
jpg,转成 jpg 格式的图片文件;如果传入的格式未能识别,默认使用 jpg 格式;
png,转成 png 格式的图片文件 pdf,转成 pdf 格式文件(暂不支持指定页数)
sheetId
Integer
表格文件参数,转换第 X 个表,默认为1;设置 SheetId 为0,即转换文档中全部表
startPage
Integer
从第 X 页开始转换;在表格文件中,一张表可能分割为多页转换,生成多张图片。StartPage 表示从指定 SheetId 的第 X 页开始转换。默认为1
endPage
Integer
转换至第 X 页;在表格文件中,一张表可能分割为多页转换,生成多张图片。EndPage 表示转换至指定 SheetId 的第 X 页。默认为-1,即转换全部页
imageParams
String
转换后的图片处理参数,支持 基础图片处理 所有处理参数,多个处理参数可通过 管道操作符 分隔,从而实现在一次访问中按顺序对图片进行不同处理
docPassword
String
Office 文档的打开密码,如果需要转换有密码的文档,请设置该字段
comments
Integer
是否隐藏批注和应用修订,默认为 0;
0:隐藏批注,应用修订;
1:显示批注和修订
paperDirection
Integer
表格文件转换纸张方向,0代表垂直方向,非0代表水平方向,默认为0
quality
Integer
生成预览图的图片质量,取值范围 [1-100],默认值100。 例:值为100,代表生成图片质量为100%
zoom
Integer
预览图片的缩放参数,取值范围[10-200], 默认值100。 例:值为200,代表图片缩放比例为200% 即放大两倍
Output 中的具体数据描述如下:
参数名称
类型
描述
是否必填
Region
String
存储桶的地域
Bucket
String
存储结果的存储桶
Object
String
输出文件路径

返回参数说明

参数名称
类型
描述
Code
String
错误码,只有 State 为 Failed 时有意义
Message
String
错误描述,只有 State 为 Failed 时有意义
JobId
String
新创建任务的 ID
Tag
String
新创建任务的 Tag:DocProcess
State
String
任务的状态,为 Submitted、Running、Success、Failed、Pause、Cancel 其中一个
CreationTime
String
任务的创建时间
QueueId
String
任务所属的队列 ID
Input
Array
该任务的输入文件路径
Operation
Array
该任务的规则

查询文档预览任务

功能说明

DescribeDocProcessJob 用于查询指定的文档预览任务。

示例代码

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'scheme' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->describeDocProcessJob(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Key' => 'examplejobid', // JobId
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

参数名称
类型
描述
Bucket
COS 存储桶名称
String
Key
创建任务的 ID
String

返回参数说明

参数名称
类型
描述
jobsDetail
记录任务的详细信息
Array

拉取文档预览任务

功能说明

DescribeDocProcessJobs 用于拉取符合条件的文档预览任务。

示例代码

<?php

require dirname(__FILE__) . '/../vendor/autoload.php';

$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\\Cos\\Client(
array(
'region' => $region,
'scheme' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
$result = $cosClient->getDescribeDocProcessJobs(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'QueueId' => 'pd8e422a2ea134165a92f2012ea43****', //拉取该队列 ID 下的任务
'Tag' => 'DocProcess', //任务的 Tag:DocProcess 固定值
// 'NextToken' => '143486', //请求的上下文,用于翻页。上次返回的值
// 'OrderByTime' => 'Desc', //Desc 或者 Asc。默认为 Desc
// 'Size' => 2, //拉取的最大任务数。默认为10。最大为100
// 'States' => 'All', //拉取该状态的任务,以,分割,支持多状态:All、Submitted、Running、Success、Failed、Pause、Cancel。默认为 All。
// 'StartCreationTime' => '2021-10-10T16:20:07+0800', //拉取创建时间大于该时间的任务
// 'EndCreationTime' => '2021-10-10T16:20:07+0800', //拉取创建时间小于该时间的任务
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

参数名称
类型
描述
是否必填
Bucket
String
COS 存储桶名称
QueueId
String
拉取该 队列 ID 下的任务
Tag
String
任务的 Tag:DocProcess
OrderByTime
String
Desc 或者 Asc,默认为 Desc
NextToken
String
请求的上下文,用于翻页,设置为上次返回的值
Size
Integer
拉取的最大任务数,默认为10,最大为100
States
String
拉取该状态的任务,以,分割,支持多状态:All、Submitted、Running、Success、Failed、Pause、Cancel,默认为 All
StartCreationTime
String
拉取创建时间大于该时间的任务,格式为:%Y-%m-%dT%H:%m:%S%z
EndCreationTime
String
拉取创建时间小于该时间的任务,格式为:%Y-%m-%dT%H:%m:%S%z

返回参数说明

参数名称
类型
描述
JobDetail
Array
记录任务列表
nextToken
String
翻页的上下文 Token