tccli 3.0.847.1__py2.py3-none-any.whl → 3.0.849.1__py2.py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- tccli/__init__.py +1 -1
- tccli/services/__init__.py +1 -0
- tccli/services/billing/v20180709/api.json +1 -9
- tccli/services/billing/v20180709/examples.json +1 -1
- tccli/services/bma/v20221115/api.json +9 -0
- tccli/services/bma/v20221115/examples.json +1 -1
- tccli/services/cdn/v20180606/api.json +0 -14
- tccli/services/cdn/v20180606/examples.json +2 -2
- tccli/services/cfs/v20190719/api.json +2 -2
- tccli/services/ckafka/ckafka_client.py +61 -8
- tccli/services/ckafka/v20190819/api.json +78 -15
- tccli/services/ckafka/v20190819/examples.json +11 -3
- tccli/services/cwp/cwp_client.py +61 -8
- tccli/services/cwp/v20180228/api.json +361 -117
- tccli/services/cwp/v20180228/examples.json +25 -17
- tccli/services/dcdb/v20180411/api.json +8 -50
- tccli/services/dcdb/v20180411/examples.json +3 -3
- tccli/services/dlc/v20210125/api.json +1 -1
- tccli/services/ess/v20201111/api.json +51 -2
- tccli/services/ess/v20201111/examples.json +1 -1
- tccli/services/live/v20180801/api.json +0 -4
- tccli/services/live/v20180801/examples.json +1 -1
- tccli/services/mariadb/v20170312/api.json +8 -55
- tccli/services/mariadb/v20170312/examples.json +3 -3
- tccli/services/mongodb/v20190725/api.json +5 -20
- tccli/services/mongodb/v20190725/examples.json +5 -5
- tccli/services/monitor/v20180724/api.json +2 -32
- tccli/services/ocr/v20181119/api.json +20 -1
- tccli/services/ocr/v20181119/examples.json +1 -1
- tccli/services/region/v20220627/api.json +16 -6
- tccli/services/region/v20220627/examples.json +7 -7
- tccli/services/ssl/v20191205/api.json +18 -53
- tccli/services/ssl/v20191205/examples.json +6 -6
- tccli/services/tcb/v20180608/api.json +16 -137
- tccli/services/tcb/v20180608/examples.json +10 -10
- tccli/services/tcr/v20190924/api.json +4 -4
- tccli/services/tdmq/v20200217/api.json +0 -2
- tccli/services/tdmq/v20200217/examples.json +2 -2
- tccli/services/thpc/thpc_client.py +13 -8
- tccli/services/thpc/v20230321/api.json +2414 -0
- tccli/services/thpc/v20230321/examples.json +125 -0
- tccli/services/tiw/tiw_client.py +53 -0
- tccli/services/tiw/v20190919/api.json +216 -0
- tccli/services/tiw/v20190919/examples.json +8 -0
- tccli/services/trtc/v20190722/api.json +5 -17
- tccli/services/tse/v20201207/api.json +45 -2
- tccli/services/tts/v20190823/api.json +10 -21
- tccli/services/tts/v20190823/examples.json +1 -1
- tccli/services/vod/v20180717/api.json +20 -12
- tccli/services/vod/v20180717/examples.json +1 -1
- tccli/services/vpc/v20170312/api.json +6 -5
- tccli/services/vpc/v20170312/examples.json +2 -2
- {tccli-3.0.847.1.dist-info → tccli-3.0.849.1.dist-info}/METADATA +2 -2
- {tccli-3.0.847.1.dist-info → tccli-3.0.849.1.dist-info}/RECORD +58 -56
- {tccli-3.0.847.1.dist-info → tccli-3.0.849.1.dist-info}/LICENSE +0 -0
- {tccli-3.0.847.1.dist-info → tccli-3.0.849.1.dist-info}/WHEEL +0 -0
- {tccli-3.0.847.1.dist-info → tccli-3.0.849.1.dist-info}/entry_points.txt +0 -0
- {tccli-3.0.847.1.dist-info → tccli-3.0.849.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,125 @@
|
|
1
|
+
{
|
2
|
+
"actions": {
|
3
|
+
"AddClusterStorageOption": [
|
4
|
+
{
|
5
|
+
"document": "集群添加CFS挂载选项。",
|
6
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: AddClusterStorageOption\n<公共请求参数>\n\n{\n \"ClusterId\": \"hpc-eq97tf4u\",\n \"StorageOption\": {\n \"CFSOptions\": [\n {\n \"LocalPath\": \"/data/\",\n \"RemotePath\": \"172.30.3.90:/\",\n \"Protocol\": \"NFS 4.0\",\n \"StorageType\": \"SD\"\n },\n {\n \"LocalPath\": \"/tmp/\",\n \"RemotePath\": \"172.30.2.180@tcp0:/4fe1839b/cfs\",\n \"Protocol\": \"TURBO\",\n \"StorageType\": \"TB\"\n }\n ]\n }\n}",
|
7
|
+
"output": "{\n \"Response\": {\n \"RequestId\": \"b2ac2379-6453-4eab-8f63-7ade00cb67b0\"\n }\n}",
|
8
|
+
"title": "添加集群存储选项"
|
9
|
+
}
|
10
|
+
],
|
11
|
+
"AddNodes": [
|
12
|
+
{
|
13
|
+
"document": "往集群ID为hpc-52nkfau6的集群的compute队列增加一个计算节点。",
|
14
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: AddNodes\n<公共请求参数>\n\n{\n \"Count\": \"1\",\n \"VirtualPrivateCloud\": {\n \"SubnetId\": \"subnet-r0zpktaa\",\n \"VpcId\": \"vpc-r9jw2jzr\"\n },\n \"Placement\": {\n \"Zone\": \"ap-guangzhou-2\"\n },\n \"ClusterId\": \"hpc-52nkfau6\",\n \"ImageId\": \"img-3la7wgnt\",\n \"InstanceChargeType\": \"SPOTPAID\",\n \"InstanceType\": \"S2.SMALL2\",\n \"NodeRole\": \"Compute\",\n \"QueueName\": \"compute\"\n}",
|
15
|
+
"output": "{\n \"Response\": {\n \"RequestId\": \"b2ac2379-6453-4eab-8f63-7ade00cb67b0\"\n }\n}",
|
16
|
+
"title": "添加节点"
|
17
|
+
}
|
18
|
+
],
|
19
|
+
"AddQueue": [
|
20
|
+
{
|
21
|
+
"document": "往指定集群添加队列。",
|
22
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: AddQueue\n<公共请求参数>\n\n{\n \"ClusterId\": \"hpc-prkxbd7c\",\n \"QueueName\": \"gpu\"\n}",
|
23
|
+
"output": "{\n \"Response\": {\n \"RequestId\": \"13ee84a5-7846-4682-8877-1c8f94962dd6\"\n }\n}",
|
24
|
+
"title": "添加队列"
|
25
|
+
}
|
26
|
+
],
|
27
|
+
"CreateCluster": [
|
28
|
+
{
|
29
|
+
"document": "创建一个管控节点和两个计算节点的集群。调度器为:SLURM。",
|
30
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: CreateCluster\n<公共请求参数>\n\n{\n \"ManagerNodeCount\": \"1\",\n \"Placement\": {\n \"Zone\": \"ap-guangzhou-2\"\n },\n \"SchedulerType\": \"SLURM\",\n \"ImageId\": \"img-3la7wgnt\",\n \"ComputeNode\": {\n \"InstanceChargeType\": \"SPOTPAID\",\n \"InstanceType\": \"S2.SMALL2\"\n },\n \"ComputeNodeCount\": \"2\",\n \"ManagerNode\": {\n \"InstanceType\": \"S2.SMALL2\"\n }\n}",
|
31
|
+
"output": "{\n \"Response\": {\n \"ClusterId\": \"hpc-5lyv94lq\",\n \"RequestId\": \"b2ac2379-6453-4eab-8f63-7ade00cb67b0\"\n }\n}",
|
32
|
+
"title": "创建集群"
|
33
|
+
}
|
34
|
+
],
|
35
|
+
"DeleteCluster": [
|
36
|
+
{
|
37
|
+
"document": "删除指定集群。",
|
38
|
+
"input": "https://thpc.tencentcloudapi.com/?Action=DeleteCluster\n&ClusterId=hpc-5lyv94lq\n&<公共请求参数>",
|
39
|
+
"output": "{\n \"Response\": {\n \"RequestId\": \"8b71050a-55c1-4f3b-bf66-5e4f8510a5a0\"\n }\n}",
|
40
|
+
"title": "删除集群"
|
41
|
+
}
|
42
|
+
],
|
43
|
+
"DeleteClusterStorageOption": [
|
44
|
+
{
|
45
|
+
"document": "删除本地挂载点为/data/的存储选项信息。",
|
46
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DeleteClusterStorageOption\n<公共请求参数>\n\n{\n \"ClusterId\": \"hpc-5lyv94lq\",\n \"LocalPath\": \"/data/\"\n}",
|
47
|
+
"output": "{\n \"Response\": {\n \"RequestId\": \"2aeaea7e-9fc4-4c17-8a9b-50343b711003\"\n }\n}",
|
48
|
+
"title": "删除集群存储选项信息。"
|
49
|
+
}
|
50
|
+
],
|
51
|
+
"DeleteNodes": [
|
52
|
+
{
|
53
|
+
"document": "批量删除节点。",
|
54
|
+
"input": "https://thpc.tencentcloudapi.com/?Action=DeleteNodes\n&ClusterId=hpc-5lyv94lq\n&NodeIds.0=ins-jhf9c1gi\n&NodeIds.1=ins-qmzlqk70\n&<公共请求参数>",
|
55
|
+
"output": "{\n \"Response\": {\n \"RequestId\": \"f4d90874-f565-463d-ba1d-c707517eeaa1\"\n }\n}",
|
56
|
+
"title": "删除节点"
|
57
|
+
}
|
58
|
+
],
|
59
|
+
"DeleteQueue": [
|
60
|
+
{
|
61
|
+
"document": "从集群删除指定队列。",
|
62
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DeleteQueue\n<公共请求参数>\n\n{\n \"ClusterId\": \"hpc-prkxbd7c\",\n \"QueueName\": \"compute\"\n}",
|
63
|
+
"output": "{\n \"Response\": {\n \"RequestId\": \"13ee84a5-7846-4682-8877-1c8f94962d10\"\n }\n}",
|
64
|
+
"title": "删除队列"
|
65
|
+
}
|
66
|
+
],
|
67
|
+
"DescribeAutoScalingConfiguration": [
|
68
|
+
{
|
69
|
+
"document": "查询集群ID为hpc-rv7hahw2的集群弹性伸缩配置信息。",
|
70
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeAutoScalingConfiguration\n<公共请求参数>\n\n{\n \"ClusterId\": \"hpc-rv7hahw2\"\n}",
|
71
|
+
"output": "{\n \"Response\": {\n \"ClusterId\": \"hpc-rv7hahw2\",\n \"ExpansionBusyTime\": 120,\n \"ShrinkIdleTime\": 300,\n \"QueueConfigs\": [\n {\n \"QueueName\": \"compute\",\n \"MinSize\": 0,\n \"MaxSize\": 10,\n \"EnableAutoExpansion\": false,\n \"EnableAutoShrink\": false,\n \"ExpansionNodeConfigs\": [\n {\n \"InstanceType\": \"M5.SMALL8\",\n \"Placement\": {\n \"Zone\": \"ap-chongqing-1\"\n },\n \"InstanceChargeType\": \"POSTPAID_BY_HOUR\",\n \"InstanceChargePrepaid\": null,\n \"VirtualPrivateCloud\": {\n \"VpcId\": \"vpc-r9jw2jzv\",\n \"SubnetId\": \"subnet-r0zpktae\"\n },\n \"ImageId\": \"img-l8og963d\",\n \"InternetAccessible\": {\n \"InternetChargeType\": \"TRAFFIC_POSTPAID_BY_HOUR\",\n \"InternetMaxBandwidthOut\": 0\n },\n \"SystemDisk\": {\n \"DiskType\": \"CLOUD_BSSD\",\n \"DiskSize\": 50\n },\n \"DataDisks\": null\n }\n ]\n }\n ],\n \"RequestId\": \"935760b6-2a63-480d-9124-c5f5b9d4218b\"\n }\n}",
|
72
|
+
"title": "查询扩缩容策略配置"
|
73
|
+
}
|
74
|
+
],
|
75
|
+
"DescribeClusterActivities": [
|
76
|
+
{
|
77
|
+
"document": "根据集群ID查询集群活动历史记录。",
|
78
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeClusterActivities\n<公共请求参数>\n\n{\n \"ClusterId\": \"hpc-0yd8fqsc\",\n \"Limit\": \"1\",\n \"Offset\": \"0\"\n}",
|
79
|
+
"output": "{\n \"Response\": {\n \"ClusterActivitySet\": [\n {\n \"ClusterId\": \"hpc-myd8fgsc\",\n \"ActivityId\": \"cha-gvzj0zbd\",\n \"ActivityType\": \"TerminateNodes\",\n \"ActivityStatus\": \"SUCCESSFUL\",\n \"ActivityStatusCode\": \"ActivitySuccess\",\n \"ResultDetail\": \"Activity success.\",\n \"Cause\": \"DeleteCluster\",\n \"Description\": \"删除指定集群,销毁实例,销毁所有节点。\",\n \"RelatedNodeActivitySet\": [\n {\n \"NodeInstanceId\": \"ins-1zll2of0\",\n \"NodeActivityStatus\": \"SUCCESSFUL\",\n \"NodeActivityStatusCode\": \"ActivitySuccess\",\n \"NodeActivityStatusReason\": \"Activity success.\"\n },\n {\n \"NodeInstanceId\": \"ins-ig2bew40\",\n \"NodeActivityStatus\": \"SUCCESSFUL\",\n \"NodeActivityStatusCode\": \"ActivitySuccess\",\n \"NodeActivityStatusReason\": \"Activity success.\"\n }\n ],\n \"StartTime\": \"2021-11-01T02:17:20Z\",\n \"EndTime\": \"2021-11-01T02:17:38Z\"\n }\n ],\n \"TotalCount\": 1,\n \"RequestId\": \"7fa864e6-cf1a-4962-8aa9-f68abfa31a00\"\n }\n}",
|
80
|
+
"title": "查询集群活动历史记录"
|
81
|
+
}
|
82
|
+
],
|
83
|
+
"DescribeClusterStorageOption": [
|
84
|
+
{
|
85
|
+
"document": "查询集群ID为hpc-5lyv94lq的集群存储选项信息。",
|
86
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeClusterStorageOption\n<公共请求参数>\n\n{\n \"ClusterId\": \"hpc-5lyv94lq\"\n}",
|
87
|
+
"output": "{\n \"Response\": {\n \"StorageOption\": {\n \"CFSOptions\": [\n {\n \"LocalPath\": \"/opt/\",\n \"RemotePath\": \"172.30.3.90:/j25ey5tz/hpc-kjddsnfa/opt/\",\n \"Protocol\": \"NFS 3.0\",\n \"StorageType\": \"SD\"\n }\n ],\n \"GooseFSOptions\": [\n {\n \"LocalPath\": \"/data/\",\n \"RemotePath\": \"/\",\n \"Masters\": [\n \"172.30.4.63:9202\",\n \"172.30.0.128:9202\"\n ]\n }\n ]\n },\n \"RequestId\": \"2aeaea7e-9fc4-4c17-8a9b-50343b712993\"\n }\n}",
|
88
|
+
"title": "查询集群存储选项"
|
89
|
+
}
|
90
|
+
],
|
91
|
+
"DescribeClusters": [
|
92
|
+
{
|
93
|
+
"document": "查询集群列表。",
|
94
|
+
"input": "https://thpc.tencentcloudapi.com/?Action=DescribeClusters\n&Offset=0\n&Limit=1\n&<公共请求参数>",
|
95
|
+
"output": "{\n \"Response\": {\n \"ClusterSet\": [\n {\n \"ClusterId\": \"hpc-qrb7ybn0\",\n \"ClusterName\": \"unnamed\",\n \"ClusterStatus\": \"RUNNING\",\n \"Placement\": {\n \"Zone\": \"ap-guangzhou-2\"\n },\n \"CreateTime\": \"2021-12-07T03:29:09Z\",\n \"SchedulerType\": \"SGE\",\n \"VpcId\": \"vpc-xxxxxxxx\",\n \"ComputeNodeCount\": 1,\n \"LoginNodeSet\": [\n {\n \"NodeId\": \"ins-jehc407m\"\n }\n ],\n \"LoginNodeCount\": 1,\n \"ComputeNodeSet\": [\n {\n \"NodeId\": \"ins-jfhc307q\"\n }\n ],\n \"ManagerNodeCount\": 1,\n \"ManagerNodeSet\": [\n {\n \"NodeId\": \"ins-cv6ygpkq\"\n }\n ]\n }\n ],\n \"TotalCount\": 1,\n \"RequestId\": \"8a39c8e3-129b-4628-b763-ef96caaa2f4d\"\n }\n}",
|
96
|
+
"title": "查询集群列表"
|
97
|
+
}
|
98
|
+
],
|
99
|
+
"DescribeNodes": [
|
100
|
+
{
|
101
|
+
"document": "查询指定集群节点概览信息,集群ID为hpc-ggaqjyax。",
|
102
|
+
"input": "https://thpc.tencentcloudapi.com/?Action=DescribeNodes\n&ClusterId=hpc-ggaqjyax\n&Offset=0\n&Limit=1\n&<公共请求参数>",
|
103
|
+
"output": "{\n \"Response\": {\n \"NodeSet\": [\n {\n \"InstanceId\": \"ins-j3n6kiae\",\n \"Zone\": \"ap-chongqing-1\",\n \"NodeState\": \"RUNNING\",\n \"ImageId\": \"img-l8og963d\",\n \"QueueName\": \"compute\",\n \"NodeRole\": \"Compute\",\n \"NodeType\": \"DYNAMIC\"\n }\n ],\n \"TotalCount\": 3,\n \"RequestId\": \"6793673e-3bce-4fbb-adea-923a82267da2\"\n }\n}",
|
104
|
+
"title": "查询指定集群节点概览信息。"
|
105
|
+
}
|
106
|
+
],
|
107
|
+
"DescribeQueues": [
|
108
|
+
{
|
109
|
+
"document": "查询集群队列概览信息列表。",
|
110
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: DescribeQueues\n<公共请求参数>\n\n{\n \"ClusterId\": \"hpc-prkxbd7c\",\n \"Offset\": 0,\n \"Limit\": 20\n}",
|
111
|
+
"output": "{\n \"Response\": {\n \"QueueSet\": [\n {\n \"QueueName\": \"compute\"\n }\n ],\n \"TotalCount\": 1,\n \"RequestId\": \"13ee84a5-7846-4682-8877-1c8f94962dd5\"\n }\n}",
|
112
|
+
"title": "查询集群队列概览信息列表"
|
113
|
+
}
|
114
|
+
],
|
115
|
+
"SetAutoScalingConfiguration": [
|
116
|
+
{
|
117
|
+
"document": "集群配置弹性伸缩策略信息。",
|
118
|
+
"input": "POST / HTTP/1.1\nHost: thpc.tencentcloudapi.com\nContent-Type: application/json\nX-TC-Action: SetAutoScalingConfiguration\n<公共请求参数>\n\n{\n \"DryRun\": \"false\",\n \"ShrinkIdleTime\": \"300\",\n \"ExpansionBusyTime\": \"120\",\n \"ClusterId\": \"hpc-5lyv94lq\"\n}",
|
119
|
+
"output": "{\n \"Response\": {\n \"RequestId\": \"d1d90874-f565-463d-ba1d-c707517eece1\"\n }\n}",
|
120
|
+
"title": "设置弹性伸缩配置"
|
121
|
+
}
|
122
|
+
]
|
123
|
+
},
|
124
|
+
"version": "1.0"
|
125
|
+
}
|
tccli/services/tiw/tiw_client.py
CHANGED
@@ -277,6 +277,58 @@ def doSetVideoGenerationTaskCallback(args, parsed_globals):
|
|
277
277
|
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
278
278
|
|
279
279
|
|
280
|
+
def doDescribeRecordSearch(args, parsed_globals):
|
281
|
+
g_param = parse_global_arg(parsed_globals)
|
282
|
+
|
283
|
+
if g_param[OptionsDefine.UseCVMRole.replace('-', '_')]:
|
284
|
+
cred = credential.CVMRoleCredential()
|
285
|
+
elif g_param[OptionsDefine.RoleArn.replace('-', '_')] and g_param[OptionsDefine.RoleSessionName.replace('-', '_')]:
|
286
|
+
cred = credential.STSAssumeRoleCredential(
|
287
|
+
g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.RoleArn.replace('-', '_')],
|
288
|
+
g_param[OptionsDefine.RoleSessionName.replace('-', '_')]
|
289
|
+
)
|
290
|
+
elif os.getenv(OptionsDefine.ENV_TKE_REGION) and os.getenv(OptionsDefine.ENV_TKE_PROVIDER_ID) and os.getenv(OptionsDefine.ENV_TKE_IDENTITY_TOKEN_FILE) and os.getenv(OptionsDefine.ENV_TKE_ROLE_ARN):
|
291
|
+
cred = credential.DefaultTkeOIDCRoleArnProvider().get_credentials()
|
292
|
+
else:
|
293
|
+
cred = credential.Credential(
|
294
|
+
g_param[OptionsDefine.SecretId], g_param[OptionsDefine.SecretKey], g_param[OptionsDefine.Token]
|
295
|
+
)
|
296
|
+
http_profile = HttpProfile(
|
297
|
+
reqTimeout=60 if g_param[OptionsDefine.Timeout] is None else int(g_param[OptionsDefine.Timeout]),
|
298
|
+
reqMethod="POST",
|
299
|
+
endpoint=g_param[OptionsDefine.Endpoint],
|
300
|
+
proxy=g_param[OptionsDefine.HttpsProxy.replace('-', '_')]
|
301
|
+
)
|
302
|
+
profile = ClientProfile(httpProfile=http_profile, signMethod="HmacSHA256")
|
303
|
+
if g_param[OptionsDefine.Language]:
|
304
|
+
profile.language = g_param[OptionsDefine.Language]
|
305
|
+
mod = CLIENT_MAP[g_param[OptionsDefine.Version]]
|
306
|
+
client = mod.TiwClient(cred, g_param[OptionsDefine.Region], profile)
|
307
|
+
client._sdkVersion += ("_CLI_" + __version__)
|
308
|
+
models = MODELS_MAP[g_param[OptionsDefine.Version]]
|
309
|
+
model = models.DescribeRecordSearchRequest()
|
310
|
+
model.from_json_string(json.dumps(args))
|
311
|
+
start_time = time.time()
|
312
|
+
while True:
|
313
|
+
rsp = client.DescribeRecordSearch(model)
|
314
|
+
result = rsp.to_json_string()
|
315
|
+
try:
|
316
|
+
json_obj = json.loads(result)
|
317
|
+
except TypeError as e:
|
318
|
+
json_obj = json.loads(result.decode('utf-8')) # python3.3
|
319
|
+
if not g_param[OptionsDefine.Waiter] or search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj) == g_param['OptionsDefine.WaiterInfo']['to']:
|
320
|
+
break
|
321
|
+
cur_time = time.time()
|
322
|
+
if cur_time - start_time >= g_param['OptionsDefine.WaiterInfo']['timeout']:
|
323
|
+
raise ClientError('Request timeout, wait `%s` to `%s` timeout, last request is %s' %
|
324
|
+
(g_param['OptionsDefine.WaiterInfo']['expr'], g_param['OptionsDefine.WaiterInfo']['to'],
|
325
|
+
search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj)))
|
326
|
+
else:
|
327
|
+
print('Inquiry result is %s.' % search(g_param['OptionsDefine.WaiterInfo']['expr'], json_obj))
|
328
|
+
time.sleep(g_param['OptionsDefine.WaiterInfo']['interval'])
|
329
|
+
FormatOutput.output("action", json_obj, g_param[OptionsDefine.Output], g_param[OptionsDefine.Filter])
|
330
|
+
|
331
|
+
|
280
332
|
def doCreateVideoGenerationTask(args, parsed_globals):
|
281
333
|
g_param = parse_global_arg(parsed_globals)
|
282
334
|
|
@@ -2841,6 +2893,7 @@ ACTION_MAP = {
|
|
2841
2893
|
"DescribeBoardSDKLog": doDescribeBoardSDKLog,
|
2842
2894
|
"DescribeUserList": doDescribeUserList,
|
2843
2895
|
"SetVideoGenerationTaskCallback": doSetVideoGenerationTaskCallback,
|
2896
|
+
"DescribeRecordSearch": doDescribeRecordSearch,
|
2844
2897
|
"CreateVideoGenerationTask": doCreateVideoGenerationTask,
|
2845
2898
|
"StopOnlineRecord": doStopOnlineRecord,
|
2846
2899
|
"DescribeWhiteboardApplicationConfig": doDescribeWhiteboardApplicationConfig,
|
@@ -119,6 +119,13 @@
|
|
119
119
|
"output": "DescribeQualityMetricsResponse",
|
120
120
|
"status": "online"
|
121
121
|
},
|
122
|
+
"DescribeRecordSearch": {
|
123
|
+
"document": "根据房间号搜索实时录制任务",
|
124
|
+
"input": "DescribeRecordSearchRequest",
|
125
|
+
"name": "搜索实时录制任务",
|
126
|
+
"output": "DescribeRecordSearchResponse",
|
127
|
+
"status": "online"
|
128
|
+
},
|
122
129
|
"DescribeRoomList": {
|
123
130
|
"document": "查询白板房间列表",
|
124
131
|
"input": "DescribeRoomListRequest",
|
@@ -1684,6 +1691,41 @@
|
|
1684
1691
|
],
|
1685
1692
|
"type": "object"
|
1686
1693
|
},
|
1694
|
+
"DescribeRecordSearchRequest": {
|
1695
|
+
"document": "DescribeRecordSearch请求参数结构体",
|
1696
|
+
"members": [],
|
1697
|
+
"type": "object"
|
1698
|
+
},
|
1699
|
+
"DescribeRecordSearchResponse": {
|
1700
|
+
"document": "DescribeRecordSearch返回参数结构体",
|
1701
|
+
"members": [
|
1702
|
+
{
|
1703
|
+
"document": "录制任务搜索结果集合",
|
1704
|
+
"example": "无",
|
1705
|
+
"member": "RecordTaskSearchResult",
|
1706
|
+
"name": "RecordTaskSet",
|
1707
|
+
"required": true,
|
1708
|
+
"type": "list",
|
1709
|
+
"value_allowed_null": false
|
1710
|
+
},
|
1711
|
+
{
|
1712
|
+
"document": "录制总任务数",
|
1713
|
+
"example": "151",
|
1714
|
+
"member": "int64",
|
1715
|
+
"name": "TotalCount",
|
1716
|
+
"required": true,
|
1717
|
+
"type": "int",
|
1718
|
+
"value_allowed_null": false
|
1719
|
+
},
|
1720
|
+
{
|
1721
|
+
"document": "唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。",
|
1722
|
+
"member": "string",
|
1723
|
+
"name": "RequestId",
|
1724
|
+
"type": "string"
|
1725
|
+
}
|
1726
|
+
],
|
1727
|
+
"type": "object"
|
1728
|
+
},
|
1687
1729
|
"DescribeRoomListRequest": {
|
1688
1730
|
"document": "DescribeRoomList请求参数结构体",
|
1689
1731
|
"members": [
|
@@ -3279,6 +3321,180 @@
|
|
3279
3321
|
],
|
3280
3322
|
"usage": "in"
|
3281
3323
|
},
|
3324
|
+
"RecordTaskResult": {
|
3325
|
+
"document": "实时录制结果",
|
3326
|
+
"members": [
|
3327
|
+
{
|
3328
|
+
"default": "",
|
3329
|
+
"document": "AUTO - 自动停止录制, USER_CALL - 用户主动调用停止录制",
|
3330
|
+
"member": "string",
|
3331
|
+
"name": "FinishReason",
|
3332
|
+
"required": true,
|
3333
|
+
"type": "string",
|
3334
|
+
"value_allowed_null": false
|
3335
|
+
},
|
3336
|
+
{
|
3337
|
+
"default": "",
|
3338
|
+
"document": "异常数",
|
3339
|
+
"member": "int64",
|
3340
|
+
"name": "ExceptionCnt",
|
3341
|
+
"required": true,
|
3342
|
+
"type": "int",
|
3343
|
+
"value_allowed_null": false
|
3344
|
+
},
|
3345
|
+
{
|
3346
|
+
"default": "",
|
3347
|
+
"document": "房间号",
|
3348
|
+
"member": "int64",
|
3349
|
+
"name": "RoomId",
|
3350
|
+
"required": true,
|
3351
|
+
"type": "int",
|
3352
|
+
"value_allowed_null": false
|
3353
|
+
},
|
3354
|
+
{
|
3355
|
+
"default": "",
|
3356
|
+
"document": "分组",
|
3357
|
+
"member": "string",
|
3358
|
+
"name": "GroupId",
|
3359
|
+
"required": true,
|
3360
|
+
"type": "string",
|
3361
|
+
"value_allowed_null": false
|
3362
|
+
},
|
3363
|
+
{
|
3364
|
+
"default": "",
|
3365
|
+
"document": "录制真实开始时间",
|
3366
|
+
"member": "int64",
|
3367
|
+
"name": "RecordStartTime",
|
3368
|
+
"required": true,
|
3369
|
+
"type": "int",
|
3370
|
+
"value_allowed_null": false
|
3371
|
+
},
|
3372
|
+
{
|
3373
|
+
"default": "",
|
3374
|
+
"document": "录制结束时间",
|
3375
|
+
"member": "int64",
|
3376
|
+
"name": "RecordStopTime",
|
3377
|
+
"required": true,
|
3378
|
+
"type": "int",
|
3379
|
+
"value_allowed_null": false
|
3380
|
+
},
|
3381
|
+
{
|
3382
|
+
"default": "",
|
3383
|
+
"document": "录制总时长",
|
3384
|
+
"member": "int64",
|
3385
|
+
"name": "TotalTime",
|
3386
|
+
"required": true,
|
3387
|
+
"type": "int",
|
3388
|
+
"value_allowed_null": false
|
3389
|
+
},
|
3390
|
+
{
|
3391
|
+
"default": "",
|
3392
|
+
"document": "视频信息列表",
|
3393
|
+
"member": "VideoInfo",
|
3394
|
+
"name": "VideoInfos",
|
3395
|
+
"required": true,
|
3396
|
+
"type": "list",
|
3397
|
+
"value_allowed_null": false
|
3398
|
+
},
|
3399
|
+
{
|
3400
|
+
"default": "",
|
3401
|
+
"document": "被忽略的视频时间段",
|
3402
|
+
"member": "OmittedDuration",
|
3403
|
+
"name": "OmittedDurations",
|
3404
|
+
"required": true,
|
3405
|
+
"type": "list",
|
3406
|
+
"value_allowed_null": false
|
3407
|
+
},
|
3408
|
+
{
|
3409
|
+
"default": "",
|
3410
|
+
"document": "详情",
|
3411
|
+
"member": "string",
|
3412
|
+
"name": "Details",
|
3413
|
+
"required": true,
|
3414
|
+
"type": "string",
|
3415
|
+
"value_allowed_null": false
|
3416
|
+
},
|
3417
|
+
{
|
3418
|
+
"default": "",
|
3419
|
+
"document": "任务失败错误码",
|
3420
|
+
"member": "int64",
|
3421
|
+
"name": "ErrorCode",
|
3422
|
+
"required": true,
|
3423
|
+
"type": "int",
|
3424
|
+
"value_allowed_null": false
|
3425
|
+
},
|
3426
|
+
{
|
3427
|
+
"default": "",
|
3428
|
+
"document": "错误信息",
|
3429
|
+
"member": "string",
|
3430
|
+
"name": "ErrorMsg",
|
3431
|
+
"required": true,
|
3432
|
+
"type": "string",
|
3433
|
+
"value_allowed_null": false
|
3434
|
+
}
|
3435
|
+
],
|
3436
|
+
"usage": "out"
|
3437
|
+
},
|
3438
|
+
"RecordTaskSearchResult": {
|
3439
|
+
"document": "实时录制任务搜索结果",
|
3440
|
+
"members": [
|
3441
|
+
{
|
3442
|
+
"default": "",
|
3443
|
+
"document": "任务唯一ID",
|
3444
|
+
"member": "string",
|
3445
|
+
"name": "TaskId",
|
3446
|
+
"required": true,
|
3447
|
+
"type": "string",
|
3448
|
+
"value_allowed_null": false
|
3449
|
+
},
|
3450
|
+
{
|
3451
|
+
"default": "",
|
3452
|
+
"document": "实时录制任务状态\n- PAUSED: 录制已暂停\n- PREPARED: 录制在准备阶段\n- RECORDING: 正在录制\n- STOPPED:录制已停止\n- FINISHED: 录制已结束",
|
3453
|
+
"member": "string",
|
3454
|
+
"name": "Status",
|
3455
|
+
"required": true,
|
3456
|
+
"type": "string",
|
3457
|
+
"value_allowed_null": false
|
3458
|
+
},
|
3459
|
+
{
|
3460
|
+
"default": "",
|
3461
|
+
"document": "实时录制房间号",
|
3462
|
+
"member": "int64",
|
3463
|
+
"name": "RoomId",
|
3464
|
+
"required": true,
|
3465
|
+
"type": "int",
|
3466
|
+
"value_allowed_null": false
|
3467
|
+
},
|
3468
|
+
{
|
3469
|
+
"default": "",
|
3470
|
+
"document": "任务创建时间",
|
3471
|
+
"member": "datetime_iso",
|
3472
|
+
"name": "CreateTime",
|
3473
|
+
"required": true,
|
3474
|
+
"type": "string",
|
3475
|
+
"value_allowed_null": false
|
3476
|
+
},
|
3477
|
+
{
|
3478
|
+
"default": "",
|
3479
|
+
"document": "用户应用SdkAppId",
|
3480
|
+
"member": "int64",
|
3481
|
+
"name": "SdkAppId",
|
3482
|
+
"required": true,
|
3483
|
+
"type": "int",
|
3484
|
+
"value_allowed_null": false
|
3485
|
+
},
|
3486
|
+
{
|
3487
|
+
"default": "",
|
3488
|
+
"document": "实时录制结果",
|
3489
|
+
"member": "RecordTaskResult",
|
3490
|
+
"name": "Result",
|
3491
|
+
"required": true,
|
3492
|
+
"type": "object",
|
3493
|
+
"value_allowed_null": false
|
3494
|
+
}
|
3495
|
+
],
|
3496
|
+
"usage": "out"
|
3497
|
+
},
|
3282
3498
|
"ResumeOnlineRecordRequest": {
|
3283
3499
|
"document": "ResumeOnlineRecord请求参数结构体",
|
3284
3500
|
"members": [
|
@@ -148,6 +148,14 @@
|
|
148
148
|
"title": "查询白板图片加载失败统计"
|
149
149
|
}
|
150
150
|
],
|
151
|
+
"DescribeRecordSearch": [
|
152
|
+
{
|
153
|
+
"document": "",
|
154
|
+
"input": "https://tiw.tencentcloudapi.com/?Action=DescribeRecordSearch\n&Offset=0\n&Limit=1\n&RoomId=880528\n&<公共请求参数>",
|
155
|
+
"output": "{\n \"Response\": {\n \"RecordTaskSet\": [\n {\n \"CreateTime\": \"2020-08-24T21:53:56+08:00\",\n \"RoomId\": 880528,\n \"TaskId\": \"gvft1qbrvs2331tcs1tb\",\n \"Status\": \"FINISHED\",\n \"SdkAppId\": 1400127140,\n \"Result\": {\n \"FinishReason\": \"USER_CALL\",\n \"ExceptionCnt\": 0,\n \"RoomId\": 880528,\n \"GroupId\": \"880528\",\n \"RecordStartTime\": 1598277240,\n \"RecordStopTime\": 1598277614,\n \"TotalTime\": 368433,\n \"VideoInfos\": [\n {\n \"VideoDuration\": 368332,\n \"UserId\": \"\",\n \"VideoSize\": 10731806,\n \"VideoUrl\": \"http://whiteboard-cam-test-1257307760.cos.ap-nanjing.myqcloud.com/video/gvft1qbrvs2331tcs1tb/0cf156ea197a8012073e6b690f44e530.mp4\",\n \"VideoType\": 2,\n \"VideoPlayTime\": 0,\n \"VideoFormat\": \"mp4\",\n \"VideoId\": \"0cf156ea197a8012073e6b690f44e530\",\n \"Width\": 1280,\n \"Height\": 960\n },\n {\n \"VideoDuration\": 368325,\n \"UserId\": \"tic_mixstream_880528_custom\",\n \"VideoSize\": 12276476,\n \"VideoUrl\": \"http://whiteboard-cam-test-1257307760.cos.ap-nanjing.myqcloud.com/video/gvft1qbrvs2331tcs1tb/ae62799da16a83ab9eb3da0bb37ef89f.mp4\",\n \"VideoType\": 3,\n \"VideoPlayTime\": 108,\n \"VideoFormat\": \"mp4\",\n \"VideoId\": \"ae62799da16a83ab9eb3da0bb37ef89f\",\n \"Width\": 1624,\n \"Height\": 1000\n },\n {\n \"VideoDuration\": 181102,\n \"UserId\": \"tic_mixstream_880528_101\",\n \"VideoSize\": 3743450,\n \"VideoUrl\": \"http://whiteboard-cam-test-1257307760.cos.ap-nanjing.myqcloud.com/video/gvft1qbrvs2331tcs1tb/54797f6b83940a708c7b7aecc2f1d1a9.mp4\",\n \"VideoType\": 3,\n \"VideoPlayTime\": 28918,\n \"VideoFormat\": \"mp4\",\n \"VideoId\": \"54797f6b83940a708c7b7aecc2f1d1a9\",\n \"Width\": 496,\n \"Height\": 368\n },\n {\n \"VideoDuration\": 35405,\n \"UserId\": \"tiw_web_736\",\n \"VideoSize\": 3001045,\n \"VideoUrl\": \"http://whiteboard-cam-test-1257307760.cos.ap-nanjing.myqcloud.com/video/gvft1qbrvs2331tcs1tb/7e562e9d513d12a2e03bea1514cc40fc.mp4\",\n \"VideoType\": 0,\n \"VideoPlayTime\": 29475,\n \"VideoFormat\": \"mp4\",\n \"VideoId\": \"7e562e9d513d12a2e03bea1514cc40fc\",\n \"Width\": 1280,\n \"Height\": 720\n },\n {\n \"VideoDuration\": 161885,\n \"UserId\": \"tiw_web_310\",\n \"VideoSize\": 9974368,\n \"VideoUrl\": \"http://whiteboard-cam-test-1257307760.cos.ap-nanjing.myqcloud.com/video/gvft1qbrvs2331tcs1tb/9ba564cba92925a02a88ef3ee874b586.mp4\",\n \"VideoType\": 0,\n \"VideoPlayTime\": 47535,\n \"VideoFormat\": \"mp4\",\n \"VideoId\": \"9ba564cba92925a02a88ef3ee874b586\",\n \"Width\": 1280,\n \"Height\": 720\n },\n {\n \"VideoDuration\": 6085,\n \"UserId\": \"tiw_web_736\",\n \"VideoSize\": 283329,\n \"VideoUrl\": \"http://whiteboard-cam-test-1257307760.cos.ap-nanjing.myqcloud.com/video/gvft1qbrvs2331tcs1tb/9517ed0696f910865ecaf22a07be4c0f.mp4\",\n \"VideoType\": 0,\n \"VideoPlayTime\": 64903,\n \"VideoFormat\": \"mp4\",\n \"VideoId\": \"9517ed0696f910865ecaf22a07be4c0f\",\n \"Width\": 960,\n \"Height\": 540\n },\n {\n \"VideoDuration\": 96787,\n \"UserId\": \"tiw_web_736\",\n \"VideoSize\": 5604352,\n \"VideoUrl\": \"http://whiteboard-cam-test-1257307760.cos.ap-nanjing.myqcloud.com/video/gvft1qbrvs2331tcs1tb/cdda0043fb734600d14324c4364213e2.mp4\",\n \"VideoType\": 0,\n \"VideoPlayTime\": 115401,\n \"VideoFormat\": \"mp4\",\n \"VideoId\": \"cdda0043fb734600d14324c4364213e2\",\n \"Width\": 1280,\n \"Height\": 720\n }\n ],\n \"OmittedDurations\": [],\n \"Details\": \"\",\n \"ErrorCode\": 0,\n \"ErrorMsg\": \"\"\n }\n }\n ],\n \"TotalCount\": 151,\n \"RequestId\": \"bc309eaa-6d64-11e8-a7fe-5254000b4175\"\n }\n}",
|
156
|
+
"title": "成功"
|
157
|
+
}
|
158
|
+
],
|
151
159
|
"DescribeRoomList": [
|
152
160
|
{
|
153
161
|
"document": "",
|
@@ -211,21 +211,21 @@
|
|
211
211
|
"status": "online"
|
212
212
|
},
|
213
213
|
"StartMCUMixTranscode": {
|
214
|
-
"document": "接口说明:启动云端混流,并指定混流画面中各路画面的布局位置。\n\nTRTC 的一个房间中可能会同时存在多路音视频流,您可以通过此 API 接口,通知腾讯云服务端将多路视频画面合成一路,并指定每一路画面的位置,同时将多路声音进行混音,最终形成一路音视频流,以便用于录制和直播观看。房间销毁后混流自动结束。\n\n您可以通过此接口实现如下目标:\n- 设置最终直播流的画质和音质,包括视频分辨率、视频码率、视频帧率、以及声音质量等。\n- 设置各路画面的位置和布局,您只需要在启动时设置一次,排版引擎会自动完成后续的画面排布。\n- 设置录制文件名,用于二次回放。\n- 设置 CDN 直播流 ID,用于在 CDN 进行直播观看。\n\n目前已经支持了如下几种布局模板:\n- 悬浮模板:第一个进入房间的用户的视频画面会铺满整个屏幕,其他用户的视频画面从左下角依次水平排列,显示为小画面,最多4行,每行4个,小画面悬浮于大画面之上。最多支持1个大画面和15个小画面,如果用户只发送音频,仍然会占用画面位置。\n- 九宫格模板:所有用户的视频画面大小一致,平分整个屏幕,人数越多,每个画面的尺寸越小。最多支持16个画面,如果用户只发送音频,仍然会占用画面位置。\n- 屏幕分享模板:适合视频会议和在线教育场景的布局,屏幕分享(或者主讲的摄像头)始终占据屏幕左侧的大画面位置,其他用户依次垂直排列于右侧,最多两列,每列最多8个小画面。最多支持1个大画面和15个小画面。若上行分辨率宽高比与画面输出宽高比不一致时,左侧大画面为了保持内容的完整性采用缩放方式处理,右侧小画面采用裁剪方式处理。\n- 画中画模板:适用于混合大小两路视频画面和其他用户混音,或者混合一路大画面和其他用户混音的场景。小画面悬浮于大画面之上,可以指定大小画面的用户以及小画面的显示位置,最多支持2个画面。\n-
|
214
|
+
"document": "接口说明:启动云端混流,并指定混流画面中各路画面的布局位置。\n\nTRTC 的一个房间中可能会同时存在多路音视频流,您可以通过此 API 接口,通知腾讯云服务端将多路视频画面合成一路,并指定每一路画面的位置,同时将多路声音进行混音,最终形成一路音视频流,以便用于录制和直播观看。房间销毁后混流自动结束。\n\n您可以通过此接口实现如下目标:\n- 设置最终直播流的画质和音质,包括视频分辨率、视频码率、视频帧率、以及声音质量等。\n- 设置各路画面的位置和布局,您只需要在启动时设置一次,排版引擎会自动完成后续的画面排布。\n- 设置录制文件名,用于二次回放。\n- 设置 CDN 直播流 ID,用于在 CDN 进行直播观看。\n\n目前已经支持了如下几种布局模板:\n- 悬浮模板:第一个进入房间的用户的视频画面会铺满整个屏幕,其他用户的视频画面从左下角依次水平排列,显示为小画面,最多4行,每行4个,小画面悬浮于大画面之上。最多支持1个大画面和15个小画面,如果用户只发送音频,仍然会占用画面位置。\n- 九宫格模板:所有用户的视频画面大小一致,平分整个屏幕,人数越多,每个画面的尺寸越小。最多支持16个画面,如果用户只发送音频,仍然会占用画面位置。\n- 屏幕分享模板:适合视频会议和在线教育场景的布局,屏幕分享(或者主讲的摄像头)始终占据屏幕左侧的大画面位置,其他用户依次垂直排列于右侧,最多两列,每列最多8个小画面。最多支持1个大画面和15个小画面。若上行分辨率宽高比与画面输出宽高比不一致时,左侧大画面为了保持内容的完整性采用缩放方式处理,右侧小画面采用裁剪方式处理。\n- 画中画模板:适用于混合大小两路视频画面和其他用户混音,或者混合一路大画面和其他用户混音的场景。小画面悬浮于大画面之上,可以指定大小画面的用户以及小画面的显示位置,最多支持2个画面。\n- 自定义模板:适用于在混流中指定用户的画面位置,或者预设视频画面位置的场景。当预设位置指定用户时,排版引擎会为该用户预留位置;当预设位置未指定用户时,排版引擎会根据进房间顺序自动填充。预设位置填满时,不再混合其他用户的画面和声音。自定义模板启用占位图功能时(LayoutParams中的PlaceHolderMode设置成1),在预设位置的用户没有上行视频时可显示对应的占位图(PlaceImageId)。\n\n注意:\n1、**混流转码为收费功能,调用接口将产生云端混流转码费用,详见[云端混流转码计费说明](https://cloud.tencent.com/document/product/647/49446)。**\n2、2020年1月9号及以后创建的应用才能直接调用此接口。2020年1月9日之前创建的应用默认使用云直播的云端混流,如需切换至MCU混流,请[提交工单](https://console.cloud.tencent.com/workorder/category)寻求帮助。\n3、客户端混流和服务端混流不能混用。",
|
215
215
|
"input": "StartMCUMixTranscodeRequest",
|
216
216
|
"name": "启动云端混流(旧)",
|
217
217
|
"output": "StartMCUMixTranscodeResponse",
|
218
218
|
"status": "online"
|
219
219
|
},
|
220
220
|
"StartMCUMixTranscodeByStrRoomId": {
|
221
|
-
"document": "接口说明:启动云端混流,并指定混流画面中各路画面的布局位置。\n\nTRTC 的一个房间中可能会同时存在多路音视频流,您可以通过此 API 接口,通知腾讯云服务端将多路视频画面合成一路,并指定每一路画面的位置,同时将多路声音进行混音,最终形成一路音视频流,以便用于录制和直播观看。\n\n您可以通过此接口实现如下目标:\n- 设置最终直播流的画质和音质,包括视频分辨率、视频码率、视频帧率、以及声音质量等。\n- 设置各路画面的位置和布局,您只需要在启动时设置一次,排版引擎会自动完成后续的画面排布。\n- 设置录制文件名,用于二次回放。\n- 设置 CDN 直播流 ID,用于在 CDN 进行直播观看。\n\n目前已经支持了如下几种布局模板:\n- 悬浮模板:第一个进入房间的用户的视频画面会铺满整个屏幕,其他用户的视频画面从左下角依次水平排列,显示为小画面,最多4行,每行4个,小画面悬浮于大画面之上。最多支持1个大画面和15个小画面,如果用户只发送音频,仍然会占用画面位置。\n- 九宫格模板:所有用户的视频画面大小一致,平分整个屏幕,人数越多,每个画面的尺寸越小。最多支持16个画面,如果用户只发送音频,仍然会占用画面位置。\n- 屏幕分享模板:适合视频会议和在线教育场景的布局,屏幕分享(或者主讲的摄像头)始终占据屏幕左侧的大画面位置,其他用户依次垂直排列于右侧,最多两列,每列最多8个小画面。最多支持1个大画面和15个小画面。若上行分辨率宽高比与画面输出宽高比不一致时,左侧大画面为了保持内容的完整性采用缩放方式处理,右侧小画面采用裁剪方式处理。\n- 画中画模板:适用于混合大小两路视频画面和其他用户混音,或者混合一路大画面和其他用户混音的场景。小画面悬浮于大画面之上,可以指定大小画面的用户以及小画面的显示位置。\n-
|
221
|
+
"document": "接口说明:启动云端混流,并指定混流画面中各路画面的布局位置。\n\nTRTC 的一个房间中可能会同时存在多路音视频流,您可以通过此 API 接口,通知腾讯云服务端将多路视频画面合成一路,并指定每一路画面的位置,同时将多路声音进行混音,最终形成一路音视频流,以便用于录制和直播观看。\n\n您可以通过此接口实现如下目标:\n- 设置最终直播流的画质和音质,包括视频分辨率、视频码率、视频帧率、以及声音质量等。\n- 设置各路画面的位置和布局,您只需要在启动时设置一次,排版引擎会自动完成后续的画面排布。\n- 设置录制文件名,用于二次回放。\n- 设置 CDN 直播流 ID,用于在 CDN 进行直播观看。\n\n目前已经支持了如下几种布局模板:\n- 悬浮模板:第一个进入房间的用户的视频画面会铺满整个屏幕,其他用户的视频画面从左下角依次水平排列,显示为小画面,最多4行,每行4个,小画面悬浮于大画面之上。最多支持1个大画面和15个小画面,如果用户只发送音频,仍然会占用画面位置。\n- 九宫格模板:所有用户的视频画面大小一致,平分整个屏幕,人数越多,每个画面的尺寸越小。最多支持16个画面,如果用户只发送音频,仍然会占用画面位置。\n- 屏幕分享模板:适合视频会议和在线教育场景的布局,屏幕分享(或者主讲的摄像头)始终占据屏幕左侧的大画面位置,其他用户依次垂直排列于右侧,最多两列,每列最多8个小画面。最多支持1个大画面和15个小画面。若上行分辨率宽高比与画面输出宽高比不一致时,左侧大画面为了保持内容的完整性采用缩放方式处理,右侧小画面采用裁剪方式处理。\n- 画中画模板:适用于混合大小两路视频画面和其他用户混音,或者混合一路大画面和其他用户混音的场景。小画面悬浮于大画面之上,可以指定大小画面的用户以及小画面的显示位置。\n- 自定义模板:适用于在混流中指定用户的画面位置,或者预设视频画面位置的场景。当预设位置指定用户时,排版引擎会为该用户预留位置;当预设位置未指定用户时,排版引擎会根据进房间顺序自动填充。预设位置填满时,不再混合其他用户的画面和声音。自定义模板启用占位图功能时(LayoutParams中的PlaceHolderMode设置成1),在预设位置的用户没有上行视频时可显示对应的占位图(PlaceImageId)。\n\n注意:\n1、**混流转码为收费功能,调用接口将产生云端混流转码费用,详见[云端混流转码计费说明](https://cloud.tencent.com/document/product/647/49446)。**\n2、2020年1月9号及以后创建的应用才能直接调用此接口。2020年1月9日之前创建的应用默认使用云直播的云端混流,如需切换至MCU混流,请[提交工单](https://console.cloud.tencent.com/workorder/category)寻求帮助。\n3、客户端混流和服务端混流不能混用。",
|
222
222
|
"input": "StartMCUMixTranscodeByStrRoomIdRequest",
|
223
|
-
"name": "
|
223
|
+
"name": "启动云端混流(字符串房间号)(旧)",
|
224
224
|
"output": "StartMCUMixTranscodeByStrRoomIdResponse",
|
225
225
|
"status": "online"
|
226
226
|
},
|
227
227
|
"StartPublishCdnStream": {
|
228
|
-
"document": "接口说明:启动旁路以及混流转推任务。TRTC 的房间中可能会同时存在多路音视频流,您可以通过此API接口,实现以下几种效果:\n1、支持将单个主播的音视频流发布(也称作“转推”)到直播CDN上,请参考示例2(发起单流音视频旁路转推)和示例3(发起单流纯音频旁路转推)。\n2、支持将同个房间多个主播或者不同房间多个主播的音视频混合成1路后再发布到直播CDN上,您可以通过AudioParams.SubscribeAudioList和VideoParams.LayoutParams调整参与混音的用户列表以及指定各路混流画面的布局位置。请参考示例1(发起混流转推)。\n3、支持预先设置一个房间的混流模板,将该房间中的多个音视频混合成1路发布到直播CDN,腾讯云后台实时监控TRTC房间中的主播变化,自动按照混流模板调整布局。目前已经支持了如下几种混流预设模板:\n - 悬浮模板:第一个进入房间的用户的视频画面会铺满整个屏幕,其他用户的视频画面从左下角依次水平排列,显示为小画面,最多4行,每行4个,小画面悬浮于大画面之上。最多支持1个大画面和15个小画面。\n - 九宫格模板:所有用户的视频画面大小一致,平分整个屏幕,人数越多,每个画面的尺寸越小,最多支持16个画面。\n - 屏幕分享模板:适合视频会议和在线教育场景的布局,屏幕分享(或者主讲的摄像头)始终占据屏幕左侧的大画面位置,其他用户依次垂直排列于右侧,最多两列,每列最多8个小画面。最多支持1个大画面和15个小画面。若上行分辨率宽高比与画面输出宽高比不一致时,左侧大画面为了保持内容的完整性采用缩放方式处理,右侧小画面采用裁剪方式处理。\n4、支持同时将音视频流发布到最多10个直播CDN上。您可以通过PublishCdnParams.PublishCdnUrl指定转推CDN的url,如果您想转推到腾讯云CDN,PublishCdnParams.IsTencentCdn填为1。\n5、支持通过配置服务端回调,实时将转推状态以HTTP/HTTPS POST 请求发送给您的服务器,如果您需要接入转推事件回调,请联系腾讯云技术支持。\n6、云API调用支持广州、上海、北京、香港四个地域,如果您想转推海外,请选择香港地域。\n7、国内站默认只支持转推腾讯云CDN,如您有转推第三方CDN的需求,请联系腾讯云技术支持,由后台进行评估。\n注意:\n1、**混流转码为收费功能,调用接口将产生云端混流转码费用,详见[云端混流转推计费说明](https://cloud.tencent.com/document/product/647/49446)。**\n2、**转推非腾讯云CDN将产生云端转推费用,详见[云端混流转推计费说明](https://cloud.tencent.com/document/product/647/82155)。**\n\n其他使用说明如下:\n1、使用混流转推接口时,您需要先调用启动转推任务接口(StartPublishCdnStream),获取启动转推任务响应中的任务ID标识(TaskId)。后续传入任务ID标识(TaskId)来更新转推任务(UpdatePublishCdnStream)和停止转推任务(StopPublishCdnStream)。\n2、为了确保转推链接的稳定,同一个转推任务不支持纯音频、音视频、纯视频之间的切换。\n3、为了确保转推链接的稳定,更新转推任务接口(UpdatePublishCdnStream
|
228
|
+
"document": "接口说明:启动旁路以及混流转推任务。TRTC 的房间中可能会同时存在多路音视频流,您可以通过此API接口,实现以下几种效果:\n1、支持将单个主播的音视频流发布(也称作“转推”)到直播CDN上,请参考示例2(发起单流音视频旁路转推)和示例3(发起单流纯音频旁路转推)。\n2、支持将同个房间多个主播或者不同房间多个主播的音视频混合成1路后再发布到直播CDN上,您可以通过AudioParams.SubscribeAudioList和VideoParams.LayoutParams调整参与混音的用户列表以及指定各路混流画面的布局位置。请参考示例1(发起混流转推)。\n3、支持预先设置一个房间的混流模板,将该房间中的多个音视频混合成1路发布到直播CDN,腾讯云后台实时监控TRTC房间中的主播变化,自动按照混流模板调整布局。目前已经支持了如下几种混流预设模板:\n - 悬浮模板:第一个进入房间的用户的视频画面会铺满整个屏幕,其他用户的视频画面从左下角依次水平排列,显示为小画面,最多4行,每行4个,小画面悬浮于大画面之上。最多支持1个大画面和15个小画面。\n - 九宫格模板:所有用户的视频画面大小一致,平分整个屏幕,人数越多,每个画面的尺寸越小,最多支持16个画面。\n - 屏幕分享模板:适合视频会议和在线教育场景的布局,屏幕分享(或者主讲的摄像头)始终占据屏幕左侧的大画面位置,其他用户依次垂直排列于右侧,最多两列,每列最多8个小画面。最多支持1个大画面和15个小画面。若上行分辨率宽高比与画面输出宽高比不一致时,左侧大画面为了保持内容的完整性采用缩放方式处理,右侧小画面采用裁剪方式处理。\n4、支持同时将音视频流发布到最多10个直播CDN上。您可以通过PublishCdnParams.PublishCdnUrl指定转推CDN的url,如果您想转推到腾讯云CDN,PublishCdnParams.IsTencentCdn填为1。\n5、支持通过配置服务端回调,实时将转推状态以HTTP/HTTPS POST 请求发送给您的服务器,如果您需要接入转推事件回调,请联系腾讯云技术支持。\n6、云API调用支持广州、上海、北京、香港四个地域,如果您想转推海外,请选择香港地域。\n7、国内站默认只支持转推腾讯云CDN,如您有转推第三方CDN的需求,请联系腾讯云技术支持,由后台进行评估。\n注意:\n1、**混流转码为收费功能,调用接口将产生云端混流转码费用,详见[云端混流转推计费说明](https://cloud.tencent.com/document/product/647/49446)。**\n2、**转推非腾讯云CDN将产生云端转推费用,详见[云端混流转推计费说明](https://cloud.tencent.com/document/product/647/82155)。**\n\n其他使用说明如下:\n1、使用混流转推接口时,您需要先调用启动转推任务接口(StartPublishCdnStream),获取启动转推任务响应中的任务ID标识(TaskId)。后续传入任务ID标识(TaskId)来更新转推任务(UpdatePublishCdnStream)和停止转推任务(StopPublishCdnStream)。\n2、为了确保转推链接的稳定,同一个转推任务不支持纯音频、音视频、纯视频之间的切换。\n3、为了确保转推链接的稳定,更新转推任务接口(UpdatePublishCdnStream)时不支持更改视频参数(codec)和音频参数(codec、采样率、码率、声道数),其余参数建议全量带齐,如您有转码/非转码切换,其余参数则必须全量带齐。\n4、发起单流旁路任务时,AudioParams和VideoParams都填写表示音视频旁路,如果仅填写AudioParams表示纯音频旁路,任务进行过程中不支持纯音频到音视频的切换。音视频旁路时,VideoParams中的Width、Height、Fps、BitRate、Gop需要按照真实上行参数填写。\n5、更新转推任务(UpdatePublishCdnStream)必须携带SequenceNumber参数,用于防止请求乱序。客户保证对同一个任务更新时的SequenceNumber参数递增:腾讯云返回InternalError错误码时,需重试请求(不换SequenceNumber);腾讯云返回FailedOperation.OutdateRequest过期错误码时,无需处理即可。\n6、您可以在主播进房前,提前创建转推任务,结束转推任务时需要主动调用停止接口。如果您没有调用停止转推任务接口时,腾讯云后台会按照所有参与混流的用户没有任何数据上行的时间算起,直到超过启动转推任务时设置的超时时间(AgentParams.MaxIdleTime)为止,自动停止混流转推任务。",
|
229
229
|
"input": "StartPublishCdnStreamRequest",
|
230
230
|
"name": "启动转推任务",
|
231
231
|
"output": "StartPublishCdnStreamResponse",
|
@@ -2591,7 +2591,7 @@
|
|
2591
2591
|
"value_allowed_null": false
|
2592
2592
|
},
|
2593
2593
|
{
|
2594
|
-
"document": "屏幕分享模板、悬浮模板、九宫格模板、画中画模版有效,画面在输出时的显示模式:0为裁剪,1为缩放,2
|
2594
|
+
"document": "屏幕分享模板、悬浮模板、九宫格模板、画中画模版有效,画面在输出时的显示模式:0为裁剪,1为缩放,2为缩放并显示黑底,不填采用后台的默认渲染方式(屏幕分享大画面为缩放,其他为裁剪)。若此参数不生效,请请提交工单寻求帮助。",
|
2595
2595
|
"example": "0",
|
2596
2596
|
"member": "uint64",
|
2597
2597
|
"name": "RenderMode",
|
@@ -4575,7 +4575,6 @@
|
|
4575
4575
|
"document": "StartMCUMixTranscodeByStrRoomId请求参数结构体",
|
4576
4576
|
"members": [
|
4577
4577
|
{
|
4578
|
-
"default": "",
|
4579
4578
|
"document": "TRTC的SDKAppId。",
|
4580
4579
|
"example": "1400188366",
|
4581
4580
|
"member": "uint64",
|
@@ -4584,7 +4583,6 @@
|
|
4584
4583
|
"type": "int"
|
4585
4584
|
},
|
4586
4585
|
{
|
4587
|
-
"default": "",
|
4588
4586
|
"document": "字符串房间号。",
|
4589
4587
|
"example": "3560",
|
4590
4588
|
"member": "string",
|
@@ -4593,7 +4591,6 @@
|
|
4593
4591
|
"type": "string"
|
4594
4592
|
},
|
4595
4593
|
{
|
4596
|
-
"default": "",
|
4597
4594
|
"document": "混流输出控制参数。",
|
4598
4595
|
"example": "OutputParams",
|
4599
4596
|
"member": "OutputParams",
|
@@ -4602,7 +4599,6 @@
|
|
4602
4599
|
"type": "object"
|
4603
4600
|
},
|
4604
4601
|
{
|
4605
|
-
"default": "",
|
4606
4602
|
"document": "混流输出编码参数。",
|
4607
4603
|
"example": "EncodeParams",
|
4608
4604
|
"member": "EncodeParams",
|
@@ -4611,7 +4607,6 @@
|
|
4611
4607
|
"type": "object"
|
4612
4608
|
},
|
4613
4609
|
{
|
4614
|
-
"default": "",
|
4615
4610
|
"document": "混流输出布局参数。",
|
4616
4611
|
"example": "LayoutParams",
|
4617
4612
|
"member": "LayoutParams",
|
@@ -4620,7 +4615,6 @@
|
|
4620
4615
|
"type": "object"
|
4621
4616
|
},
|
4622
4617
|
{
|
4623
|
-
"default": "",
|
4624
4618
|
"document": "第三方CDN转推参数。",
|
4625
4619
|
"example": "PublishCdnParams",
|
4626
4620
|
"member": "PublishCdnParams",
|
@@ -4647,7 +4641,6 @@
|
|
4647
4641
|
"document": "StartMCUMixTranscode请求参数结构体",
|
4648
4642
|
"members": [
|
4649
4643
|
{
|
4650
|
-
"default": "",
|
4651
4644
|
"document": "TRTC的SDKAppId。",
|
4652
4645
|
"example": "1400188366",
|
4653
4646
|
"member": "uint64",
|
@@ -4656,7 +4649,6 @@
|
|
4656
4649
|
"type": "int"
|
4657
4650
|
},
|
4658
4651
|
{
|
4659
|
-
"default": "",
|
4660
4652
|
"document": "房间号。",
|
4661
4653
|
"example": "3560",
|
4662
4654
|
"member": "uint64",
|
@@ -4665,7 +4657,6 @@
|
|
4665
4657
|
"type": "int"
|
4666
4658
|
},
|
4667
4659
|
{
|
4668
|
-
"default": "",
|
4669
4660
|
"document": "混流输出控制参数。",
|
4670
4661
|
"example": "OutputParams",
|
4671
4662
|
"member": "OutputParams",
|
@@ -4674,7 +4665,6 @@
|
|
4674
4665
|
"type": "object"
|
4675
4666
|
},
|
4676
4667
|
{
|
4677
|
-
"default": "",
|
4678
4668
|
"document": "混流输出编码参数。",
|
4679
4669
|
"example": "EncodeParams",
|
4680
4670
|
"member": "EncodeParams",
|
@@ -4683,7 +4673,6 @@
|
|
4683
4673
|
"type": "object"
|
4684
4674
|
},
|
4685
4675
|
{
|
4686
|
-
"default": "",
|
4687
4676
|
"document": "混流输出布局参数。",
|
4688
4677
|
"example": "LayoutParams",
|
4689
4678
|
"member": "LayoutParams",
|
@@ -4692,7 +4681,6 @@
|
|
4692
4681
|
"type": "object"
|
4693
4682
|
},
|
4694
4683
|
{
|
4695
|
-
"default": "",
|
4696
4684
|
"document": "第三方CDN转推参数。",
|
4697
4685
|
"example": "PublishCdnParams",
|
4698
4686
|
"member": "PublishCdnParams",
|