异步服务和队列配置

最近更新时间:2023-08-08 17:34:01

我的收藏

简介

本文档提供关于异步服务和队列配置接口的 API 概览和 SDK 示例代码。
注意
旧版本可能存在 bug,使用时建议升级到 最新版本
API
操作描述
开通 AI 内容识别服务并生成队列
查询 AI 内容识别服务状态
搜索 AI 内容识别队列
更新 AI 内容识别队列

开通AI 内容识别(异步)服务

功能说明

开通 AI 内容识别服务并生成队列。

方法原型

public Guzzle\\Service\\Resource\\Model openAiService(array $args = array());

请求示例

<?php

require dirname(__FILE__, 2) . '/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,
'schema' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// 开通 AI 内容识别 https://cloud.tencent.com/document/product/460/79593
$result = $cosClient->openAiService(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
));
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
参数名称
类型
描述
是否必填
Bucket
String
存储桶名称,格式:BucketName-APPID

返回结果示例

GuzzleHttp\\Command\\Result Object
(
[RequestId] => NjRjMjIxODBfMzUxNGSIOJOIDAJOIDg=
[ContentType] => application/xml
[ContentLength] => 336
[AiBucket] => Array
(
[BucketId] => examplebucket-1250000000
[Name] => examplebucket-1250000000
[Region] => ap-guangzhou
[CreateTime] => 2023-07-28T11:05:49+0800
)

[Bucket] => examplebucket-1250000000
[Location] => examplebucket-1250000000.ci.ap-guangzhou.myqcloud.com/ai_bucket
)

查询AI 内容识别(异步)服务

功能说明

查询 AI 内容识别服务状态。

方法原型

public Guzzle\\Service\\Resource\\Model getAiBucketList(array $args = array());

请求示例

<?php

require dirname(__FILE__, 2) . '/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,
'schema' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// 查询 AI 内容识别服务状态 https://cloud.tencent.com/document/product/460/79594
$result = $cosClient->getAiBucketList(array(
// 'Regions' => '', // 可选 地域信息,例如 ap-shanghai、ap-beijing,若查询多个地域以“,”分隔字符串
// 'BucketNames' => '', // 可选 存储桶名称,以“,”分隔,支持多个存储桶,精确搜索
// 'BucketName' => '', // 可选 存储桶名称前缀,前缀搜索
// 'PageNumber' => 1, // 可选 第几页
// 'PageSize' => 20, // 可选 每页个数
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
名称
描述
类型
是否必选
Regions
地域信息,例如 ap-shanghai、ap-beijing,若查询多个地域以“,”分隔字符串,支持中国大陆地域,详情请参见 地域与域名
string
BucketNames
存储桶名称,以“,”分隔,支持多个存储桶,精确搜索
string
BucketName
存储桶名称前缀,前缀搜索
string
PageNumber
第几页,默认值1
String
PageSize
每页个数,默认值10
String

返回结果示例

GuzzleHttp\\Command\\Result Object
(
[RequestId] => NjRjMjIxODBfMzUxNGSIOJOIDAJOIDg=
[ContentType] => application/xml
[ContentLength] => 861
[TotalCount] => 40
[PageNumber] => 1
[PageSize] => 3
[AiBucketList] => Array
(
[0] => Array
(

[BucketId] => examplebucket-1250000000
[Name] => examplebucket-1250000000
[Region] => ap-chongqing
[CreateTime] => 2023-07-04T15:33:37+0800
)

[1] => Array
(
[BucketId] => examplebucket-1250000000
[Name] => examplebucket-1250000000
[Region] => ap-chongqing
[CreateTime] => 2023-06-29T19:35:43+0800
)

[2] => Array
(

[BucketId] => examplebucket-1250000000
[Name] => examplebucket-1250000000
[Region] => ap-guangzhou
[CreateTime] => 2023-06-26T11:20:13+0800
)

)

[Location] => ci.ap-guangzhou.myqcloud.com/ai_bucket
)

查询AI 内容识别(异步)队列

功能说明

搜索 AI 内容识别队列。

方法原型

public Guzzle\\Service\\Resource\\Model getAiQueueList(array $args = array());

请求示例

<?php

require dirname(__FILE__, 2) . '/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,
'schema' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// 搜索 AI 内容识别队列 https://cloud.tencent.com/document/product/460/79394
$result = $cosClient->getAiQueueList(array(
'Bucket' => 'examplebucket-1250000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
// 'QueueIds' => 'xxx', // 队列 ID,以“,”符号分割字符串
// 'State' => 'Active', // Active 表示队列内的作业会被媒体处理服务调度执行, Paused 表示队列暂停,作业不再会被媒体处理调度执行,队列内的所有作业状态维持在暂停状态,已经执行中的任务不受影响
// 'PageNumber' => '1', // 第几页
// 'PageSize' => '10', // 每页个数
));
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
参数名称(关键字)
描述
类型
是否必选
QueueIds
队列 ID,以“,”符号分割字符串
String
State
1. Active 表示队列内的作业会被媒体处理服务调度执行
2. Paused 表示队列暂停,作业不再会被媒体处理调度执行,队列内的所有作业状态维持在暂停状态,已经执行中的任务不受影响
String
PageNumber
第几页,默认值1
String
PageSize
每页个数,默认值10
String

返回结果示例

GuzzleHttp\\Command\\Result Object
(
[RequestId] => NjRjMjIxODBfMzUxNGSIOJOIDAJOIDg=
[ContentType] => application/xml
[ContentLength] => 760
[TotalCount] => 1
[PageNumber] => 1
[PageSize] => 10
[QueueList] => Array
(
[0] => Array
(
[BucketId] => examplebucket-1250000000
[QueueId] => pc7a00f19asf798sd7f89s7f2e646
[Name] => queue-ai-process
[State] => Active
[MaxSize] => 10000
[MaxConcurrent] => 10
[Category] => AIProcess
[UpdateTime] => 2023-06-26T14:45:41+0800
[CreateTime] => 2023-06-26T11:20:13+0800
[NotifyConfig] => Array
(
[Url] =>
[State] => Off
[Type] =>
[Event] =>
[ResultFormat] => XML
[MqMode] =>
[MqRegion] =>
[MqName] =>
)

)

)

[Bucket] => examplebucket-1250000000
[Location] => examplebucket-1250000000.ci.ap-guangzhou.myqcloud.com/ai_queue
)

更新AI 内容识别(异步)队列

功能说明

更新 AI 内容识别队列。

方法原型

public Guzzle\\Service\\Resource\\Model updateAiQueue(array $args = array());

请求示例

<?php

require dirname(__FILE__, 2) . '/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,
'schema' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// 更新 AI 内容识别队列 https://cloud.tencent.com/document/product/460/79397
$result = $cosClient->updateAiQueue(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Key' => '', // queueId
'Name' => 'queue-ai-process',
'State' => 'Active',
'NotifyConfig' => array(
'State' => 'Off',
// 'Event' => '',
// 'ResultFormat' => '',
// 'Type' => '',
// 'Url' => '',
// 'MqMode' => '',
// 'MqRegion' => '',
// 'MqName' => '',
),
));
// 请求成功
print_r($result);
} catch (\\Exception $e) {
// 请求失败
echo($e);
}

参数说明

Request 中的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
默认值
限制
Key
Request
待更新队列的 队列 ID
String
Name
Request
队列名称,长度不超过128
String
State
Request
1. Active 表示队列内的作业会被媒体处理服务调度执行;
2. Paused 表示队列暂停,作业不再会被媒体处理调度执行,队列内的所有作业状态维持在暂停状态,已经执行中的任务不受影响。
String
NotifyConfig
Request
回调配置
Container
Container 节点 NotifyConfig 的内容:
节点名称(关键字)
父节点
描述
类型
是否必选
默认值
限制
State
Request.NotifyConfig
回调开关,Off/On
String
Off
On/Off
Event
Request.NotifyConfig
回调事件
String
当 State=On 时,必选
任务完成:TaskFinish;工作流完成:WorkflowFinish
ResultFormat
Request.NotifyConfig
回调格式
String
XML
JSON/XML
Type
Request.NotifyConfig
回调类型
String
当 State=On 时,必选
Url 或 TDMQ
Url
Request.NotifyConfig
回调地址
String
当 State=On,且 Type=Url 时,必选
不能为内网地址
MqMode
Request.NotifyConfig
TDMQ 使用模式
String
当 State=On,且 Type=TDMQ 时,必选
Queue
主题订阅:Topic
队列服务: Queue
MqRegion
Request.NotifyConfig
TDMQ 所属园区
String
当 State=On,且 Type=TDMQ 时,必选
目前支持园区 sh(上海)、bj(北京)、gz(广州)、cd(成都)、hk(中国香港)
MqName
Request.NotifyConfig
TDMQ 主题名称
String
当 State=On,且 Type=TDMQ 时,必选

返回结果示例

GuzzleHttp\\Command\\Result Object
(
[RequestId] => NjRjMNjRjMjIxODBfMzUxNGSIOJOIDAJOIDg=
[ContentType] => application/xml
[ContentLength] => 671
[Queue] => Array
(
[BucketId] => examplebucket-1250000000
[QueueId] => pc7a00f19asf798sd7f89s7f2e646
[Name] => queue-ai-process-3
[State] => Active
[MaxSize] => 10000
[MaxConcurrent] => 10
[Category] => AIProcess
[UpdateTime] => 2023-07-28T11:21:37+0800
[CreateTime] => 2023-06-26T11:20:13+0800
[NotifyConfig] => Array
(
[State] => Off
[Event] =>
[ResultFormat] => XML
[Type] =>
[Url] =>
[MqMode] =>
[MqRegion] =>
[MqName] =>
)

)

[Key] => pc7a00f19asf798sd7f89s7f2e646
[Bucket] => examplebucket-1250000000
[Location] => examplebucket-1250000000.ci.ap-guangzhou.myqcloud.com/ai_queue/pc7a00f19asf798sd7f89s7f2e646
)