Skip to content

Commit 215ae94

Browse files
committed
feat: 补充ci智能语音和云查毒接口
1 parent 6a3caa7 commit 215ae94

File tree

1 file changed

+325
-0
lines changed

1 file changed

+325
-0
lines changed

demo/demo.js

+325
Original file line numberDiff line numberDiff line change
@@ -2401,6 +2401,56 @@ function getLiveAuditingResult() {
24012401
);
24022402
}
24032403

2404+
// 提交直播审核任务
2405+
function postLiveAuditing() {
2406+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com';
2407+
var url = 'https://' + host + '/video/auditing';
2408+
var body = COS.util.json2xml({
2409+
Request: {
2410+
Type: 'live_video',
2411+
Input: {
2412+
Url: 'rtmp://example.com/live/123', // 需要审核的直播流播放地址
2413+
// DataId: '',
2414+
// UserInfo: {},
2415+
},
2416+
Conf: {
2417+
BizType: '766d07a7af937c26216c51db29793ea6',
2418+
// Callback: 'https://callback.com', // 回调地址,非必须
2419+
// CallbackType: 1, // 回调片段类型,非必须
2420+
}
2421+
}
2422+
});
2423+
cos.request({
2424+
Bucket: config.Bucket,
2425+
Region: config.Region,
2426+
Method: 'POST',
2427+
Url: url,
2428+
Key: '/video/auditing',
2429+
ContentType: 'application/xml',
2430+
Body: body
2431+
},
2432+
function(err, data){
2433+
logger.log(err || data);
2434+
});
2435+
}
2436+
2437+
// 查询直播审核任务结果
2438+
function getLiveAuditingResult() {
2439+
var jobId = 'av0ca69557bd6111ed904c5254009411xx'; // jobId可以通过提交直播审核任务返回
2440+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com';
2441+
var url = 'https://' + host + '/video/auditing/' + jobId;
2442+
cos.request({
2443+
Bucket: config.Bucket,
2444+
Region: config.Region,
2445+
Method: 'GET',
2446+
Key: '/video/auditing/' + jobId,
2447+
Url: url,
2448+
},
2449+
function(err, data){
2450+
logger.log(err || data);
2451+
});
2452+
}
2453+
24042454
// 查询已经开通文档预览的存储桶
24052455
function describeDocProcessBuckets() {
24062456
var host = 'ci.' + config.Region + '.myqcloud.com/docbucket';
@@ -3738,6 +3788,281 @@ function postSnapshot() {
37383788
},
37393789
);
37403790
}
3791+
// 提交病毒检测任务
3792+
function postVirusDetect() {
3793+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/virus/detect';
3794+
var url = 'https://' + host;
3795+
var body = COS.util.json2xml({
3796+
Request: {
3797+
Input: {
3798+
Object: 'test/1.png', // 文件名,取值为文件在当前存储桶中的完整名称,与Url参数二选一
3799+
// Url: 'http://examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/virus.doc', // 病毒文件的链接地址,与Object参数二选一
3800+
},
3801+
Conf: {
3802+
DetectType: 'Virus', // 检测的病毒类型,当前固定为:Virus
3803+
// CallBack: 'http://callback.demo.com', // 任务回调的地址
3804+
},
3805+
}
3806+
});
3807+
cos.request({
3808+
Method: 'POST',
3809+
Key: 'virus/detect',
3810+
Url: url,
3811+
Body: body,
3812+
ContentType: 'application/xml',
3813+
},
3814+
function(err, data){
3815+
logger.log(err || data);
3816+
});
3817+
}
3818+
3819+
// 查询病毒检测任务结果
3820+
function getVirusDetectResult() {
3821+
var jobId = 'ssdb2dab23bcdb11ed9efb5254009411xx'; // 提交病毒检测任务后会返回当前任务的jobId
3822+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/virus/detect/' + jobId;
3823+
var url = 'https://' + host;
3824+
cos.request({
3825+
Method: 'GET',
3826+
Key: 'virus/detect/' + jobId,
3827+
Url: url,
3828+
},
3829+
function(err, data){
3830+
logger.log(err || data);
3831+
});
3832+
}
3833+
3834+
// 提交音频降噪任务
3835+
function postNoiseReduction() {
3836+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/jobs';
3837+
var url = 'https://' + host;
3838+
var body = COS.util.json2xml({
3839+
Request: {
3840+
Tag: 'NoiseReduction',
3841+
Input: {
3842+
Object: 'ci/music.mp3', // 文件名,取值为文件在当前存储桶中的完整名称
3843+
},
3844+
Operation: {
3845+
Output: {
3846+
Bucket: config.Bucket, // 输出的存储桶
3847+
Region: config.Region, // 输出的存储桶的地域
3848+
Object: 'ci/out.mp3', // 输出的文件Key
3849+
},
3850+
},
3851+
// QueueId: '', // 任务所在的队列 ID,非必须
3852+
// CallBackFormat: '', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式,非必须
3853+
// CallBackType: '', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型,非必须
3854+
// CallBack: '', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调,非必须
3855+
// CallBackMqConfig: '', // 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填,非必须
3856+
}
3857+
});
3858+
cos.request({
3859+
Method: 'POST',
3860+
Key: 'jobs',
3861+
Url: url,
3862+
Body: body,
3863+
ContentType: 'application/xml',
3864+
},
3865+
function(err, data){
3866+
logger.log(err || data);
3867+
});
3868+
}
3869+
3870+
// 提交人声分离任务
3871+
function postVoiceSeparate() {
3872+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/jobs';
3873+
var url = 'https://' + host;
3874+
var body = COS.util.json2xml({
3875+
Request: {
3876+
Tag: 'VoiceSeparate',
3877+
Input: {
3878+
Object: 'ci/music.mp3', // 文件名,取值为文件在当前存储桶中的完整名称
3879+
},
3880+
Operation: {
3881+
// VoiceSeparate: {}, // 指定转码模板参数,非必须
3882+
TemplateId: 't13fca82ad97e84878a22cd81bd2e5652c', // 指定的模板 ID,必须
3883+
// JobLevel: 0, // 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0,非必须
3884+
Output: {
3885+
Bucket: config.Bucket, // 输出的存储桶
3886+
Region: config.Region, // 输出的存储桶的地域
3887+
Object: 'ci/out/background.mp3', // 输出的文件Key,背景音结果文件名,不能与 AuObject 同时为空
3888+
AuObject: 'ci/out/audio.mp3',
3889+
},
3890+
},
3891+
// QueueId: '', // 任务所在的队列 ID,非必须
3892+
// CallBackFormat: '', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式,非必须
3893+
// CallBackType: '', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型,非必须
3894+
// CallBack: '', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调,非必须
3895+
// CallBackMqConfig: '', // 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填,非必须
3896+
}
3897+
});
3898+
cos.request({
3899+
Method: 'POST',
3900+
Key: 'jobs',
3901+
Url: url,
3902+
Body: body,
3903+
ContentType: 'application/xml',
3904+
},
3905+
function(err, data){
3906+
logger.log(err || data);
3907+
});
3908+
}
3909+
3910+
// 提交语音合成任务
3911+
function postTts() {
3912+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/jobs';
3913+
var url = 'https://' + host;
3914+
var body = COS.util.json2xml({
3915+
Request: {
3916+
Tag: 'Tts',
3917+
Operation: {
3918+
// VoiceSeparate: {}, // 指定转码模板参数,非必须
3919+
TemplateId: 't192931b3564084168a3f50ebfea59acb3', // 指定的模板 ID,必须
3920+
// JobLevel: 0, // 任务优先级,级别限制:0 、1 、2。级别越大任务优先级越高,默认为0,非必须
3921+
TtsConfig: {
3922+
InputType: 'Text',
3923+
Input: '床前明月光,疑是地上霜',
3924+
},
3925+
Output: {
3926+
Bucket: config.Bucket, // 输出的存储桶
3927+
Region: config.Region, // 输出的存储桶的地域
3928+
Object: 'ci/out/tts.mp3', // 输出的文件Key
3929+
},
3930+
},
3931+
// QueueId: '', // 任务所在的队列 ID,非必须
3932+
// CallBackFormat: '', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式,非必须
3933+
// CallBackType: '', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型,非必须
3934+
// CallBack: '', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调,非必须
3935+
// CallBackMqConfig: '', // 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填,非必须
3936+
}
3937+
});
3938+
cos.request({
3939+
Method: 'POST',
3940+
Key: 'jobs',
3941+
Url: url,
3942+
Body: body,
3943+
ContentType: 'application/xml',
3944+
},
3945+
function(err, data){
3946+
logger.log(err || data);
3947+
});
3948+
}
3949+
3950+
// 提交语音识别任务
3951+
function postSpeechRecognition() {
3952+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/asr_jobs';
3953+
var url = 'https://' + host;
3954+
var body = COS.util.json2xml({
3955+
Request: {
3956+
Tag: 'SpeechRecognition',
3957+
Input: {
3958+
Object: 'ci/music.mp3', // 文件名,取值为文件在当前存储桶中的完整名称,与Url参数二选一
3959+
// Url: 'http://examplebucket-1250000000.cos.ap-shanghai.myqcloud.com/music.mp3', // 病毒文件的链接地址,与Object参数二选一
3960+
},
3961+
Operation: {
3962+
SpeechRecognition: {
3963+
EngineModelType: '16k_zh_video', // 引擎模型类型
3964+
ChannelNum: 1, // 语音声道数
3965+
ResTextFormat: 0, // 识别结果返回形式
3966+
FilterDirty: 1, // 是否过滤脏词(目前支持中文普通话引擎)
3967+
FilterModal: 1, // 是否过语气词(目前支持中文普通话引擎)
3968+
ConvertNumMode: 0, // 是否进行阿拉伯数字智能转换(目前支持中文普通话引擎)
3969+
},
3970+
Output: {
3971+
Bucket: config.Bucket, // 输出的存储桶
3972+
Region: config.Region, // 输出的存储桶的地域
3973+
Object: 'ci/out/SpeechRecognition.mp3', // 输出的文件Key
3974+
},
3975+
},
3976+
// QueueId: '', // 任务所在的队列 ID,非必须
3977+
// CallBackFormat: '', // 任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式,非必须
3978+
// CallBackType: '', // 任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型,非必须
3979+
// CallBack: '', // 任务回调地址,优先级高于队列的回调地址。设置为 no 时,表示队列的回调地址不产生回调,非必须
3980+
// CallBackMqConfig: '', // 任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填,非必须
3981+
}
3982+
});
3983+
cos.request({
3984+
Method: 'POST',
3985+
Key: 'asr_jobs',
3986+
Url: url,
3987+
Body: body,
3988+
ContentType: 'application/xml',
3989+
},
3990+
function(err, data){
3991+
logger.log(err || data);
3992+
});
3993+
}
3994+
3995+
// 查询语音识别队列
3996+
function getAsrQueue() {
3997+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/asrqueue';
3998+
var url = 'https://' + host;
3999+
cos.request({
4000+
Method: 'GET',
4001+
Key: 'asrqueue',
4002+
Url: url,
4003+
Query: {
4004+
// queueIds: '', /* 非必须,队列 ID,以“,”符号分割字符串 */
4005+
// state: '', /* 非必须,1=Active,2=Paused */
4006+
// pageNumber: 1, /* 非必须,第几页 */
4007+
// pageSize: 2, /* 非必须,每页个数 */
4008+
},
4009+
},
4010+
function(err, data){
4011+
logger.log(err || data);
4012+
});
4013+
}
4014+
4015+
// 更新语音识别队列
4016+
function putAsrQueue() {
4017+
var queueId = 'pcc77499e85c311edb9865254008618d9';
4018+
var host = config.Bucket + '.ci.' + config.Region + '.myqcloud.com/asrqueue/' + queueId;
4019+
var url = 'https://' + host;
4020+
var body = COS.util.json2xml({
4021+
Request: {
4022+
Name: 'queue-doc-process-1',
4023+
QueueID: queueId,
4024+
State: 'Paused',
4025+
NotifyConfig: {
4026+
// Url: '',
4027+
// Type: 'Url',
4028+
// Event: '',
4029+
State: 'Off',
4030+
},
4031+
}
4032+
});
4033+
cos.request({
4034+
Method: 'PUT',
4035+
Key: 'asrqueue/' + queueId,
4036+
Url: url,
4037+
Body: body,
4038+
ContentType: 'application/xml',
4039+
},
4040+
function(err, data){
4041+
logger.log(err || data);
4042+
});
4043+
}
4044+
4045+
// 查询语音识别开通状态
4046+
function getAsrBucket() {
4047+
var host = 'ci.' + config.Region + '.myqcloud.com/asrbucket';
4048+
var url = 'https://' + host;
4049+
cos.request({
4050+
Method: 'GET',
4051+
Key: 'asrbucket',
4052+
Url: url,
4053+
Query: {
4054+
// regions: '', /* 非必须,地域信息,以“,”分隔字符串,支持 All、ap-shanghai、ap-beijing */
4055+
// bucketNames: '', /* 非必须,存储桶名称,以“,”分隔,支持多个存储桶,精确搜索 */
4056+
// bucketName: '', /* 非必须,存储桶名称前缀,前缀搜索 */
4057+
// pageNumber: 1, /* 非必须,第几页 */
4058+
// pageSize: 10, /* 非必须,每页个数 */
4059+
},
4060+
},
4061+
function(err, data){
4062+
logger.log(err || data);
4063+
});
4064+
}
4065+
37414066

37424067
(function () {
37434068
var list = [

0 commit comments

Comments
 (0)