tencentcloud-sdk-nodejs-intl-en 3.0.829 → 3.0.830

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tencentcloud-sdk-nodejs-intl-en",
3
- "version": "3.0.829",
3
+ "version": "3.0.830",
4
4
  "description": "腾讯云 API NODEJS SDK",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1,2 +1,2 @@
1
- const sdkVersion = "3.0.829";
1
+ const sdkVersion = "3.0.830";
2
2
  module.exports = sdkVersion
@@ -858,6 +858,62 @@ class AgentParams extends AbstractModel {
858
858
  }
859
859
  }
860
860
 
861
+ /**
862
+ * Video transcoding parameters
863
+ * @class
864
+ */
865
+ class VideoEncodeParams extends AbstractModel {
866
+ constructor(){
867
+ super();
868
+
869
+ /**
870
+ * Width. Value range [0,1920], unit is pixel value.
871
+ * @type {number || null}
872
+ */
873
+ this.Width = null;
874
+
875
+ /**
876
+ * Height. Value range [0,1080], unit is pixel value.
877
+ * @type {number || null}
878
+ */
879
+ this.Height = null;
880
+
881
+ /**
882
+ * Frame Rate. Value range [1,60], indicating that the frame rate can be selected from 1 to 60fps.
883
+ * @type {number || null}
884
+ */
885
+ this.Fps = null;
886
+
887
+ /**
888
+ * Bitrate. Value range [1,10000], unit is kbps.
889
+ * @type {number || null}
890
+ */
891
+ this.BitRate = null;
892
+
893
+ /**
894
+ * Gop. Value range [1,2], unit is second.
895
+ * @type {number || null}
896
+ */
897
+ this.Gop = null;
898
+
899
+ }
900
+
901
+ /**
902
+ * @private
903
+ */
904
+ deserialize(params) {
905
+ if (!params) {
906
+ return;
907
+ }
908
+ this.Width = 'Width' in params ? params.Width : null;
909
+ this.Height = 'Height' in params ? params.Height : null;
910
+ this.Fps = 'Fps' in params ? params.Fps : null;
911
+ this.BitRate = 'BitRate' in params ? params.BitRate : null;
912
+ this.Gop = 'Gop' in params ? params.Gop : null;
913
+
914
+ }
915
+ }
916
+
861
917
  /**
862
918
  * DescribeUserEvent response structure.
863
919
  * @class
@@ -1128,6 +1184,48 @@ Array length: 1-100.
1128
1184
  }
1129
1185
  }
1130
1186
 
1187
+ /**
1188
+ * Audio transcoding parameters
1189
+ * @class
1190
+ */
1191
+ class AudioEncodeParams extends AbstractModel {
1192
+ constructor(){
1193
+ super();
1194
+
1195
+ /**
1196
+ * Audio Sample rate, Value range [48000, 44100], unit is Hz.
1197
+ * @type {number || null}
1198
+ */
1199
+ this.SampleRate = null;
1200
+
1201
+ /**
1202
+ * Audio Channel number, Value range [1,2], 1 means Audio is Mono-channel, 2 means Audio is Dual-channel.
1203
+ * @type {number || null}
1204
+ */
1205
+ this.Channel = null;
1206
+
1207
+ /**
1208
+ * Audio Bitrate, Value range [8,500], unit is kbps.
1209
+ * @type {number || null}
1210
+ */
1211
+ this.BitRate = null;
1212
+
1213
+ }
1214
+
1215
+ /**
1216
+ * @private
1217
+ */
1218
+ deserialize(params) {
1219
+ if (!params) {
1220
+ return;
1221
+ }
1222
+ this.SampleRate = 'SampleRate' in params ? params.SampleRate : null;
1223
+ this.Channel = 'Channel' in params ? params.Channel : null;
1224
+ this.BitRate = 'BitRate' in params ? params.BitRate : null;
1225
+
1226
+ }
1227
+ }
1228
+
1131
1229
  /**
1132
1230
  * The cloud storage information.
1133
1231
  * @class
@@ -1676,6 +1774,41 @@ The period queried per request cannot be longer than 31 days.
1676
1774
  }
1677
1775
  }
1678
1776
 
1777
+ /**
1778
+ * DescribeStreamIngest response structure.
1779
+ * @class
1780
+ */
1781
+ class DescribeStreamIngestResponse extends AbstractModel {
1782
+ constructor(){
1783
+ super();
1784
+
1785
+ /**
1786
+ * Task status information. InProgress: Indicates that the current task is in progress. NotExist: Indicates that the current task does not exist. Example value: InProgress
1787
+ * @type {string || null}
1788
+ */
1789
+ this.Status = null;
1790
+
1791
+ /**
1792
+ * The unique request ID, which is returned for each request. RequestId is required for locating a problem.
1793
+ * @type {string || null}
1794
+ */
1795
+ this.RequestId = null;
1796
+
1797
+ }
1798
+
1799
+ /**
1800
+ * @private
1801
+ */
1802
+ deserialize(params) {
1803
+ if (!params) {
1804
+ return;
1805
+ }
1806
+ this.Status = 'Status' in params ? params.Status : null;
1807
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
1808
+
1809
+ }
1810
+ }
1811
+
1679
1812
  /**
1680
1813
  * The audio and video parameters for recording.
1681
1814
  * @class
@@ -1721,6 +1854,41 @@ class MixTranscodeParams extends AbstractModel {
1721
1854
  }
1722
1855
  }
1723
1856
 
1857
+ /**
1858
+ * StopStreamIngest request structure.
1859
+ * @class
1860
+ */
1861
+ class StopStreamIngestRequest extends AbstractModel {
1862
+ constructor(){
1863
+ super();
1864
+
1865
+ /**
1866
+ * The SDKAppId of TRTC, which is the same as the SDKAppId corresponding to the task's room.
1867
+ * @type {number || null}
1868
+ */
1869
+ this.SdkAppId = null;
1870
+
1871
+ /**
1872
+ * The unique Task ID, which will be returned after the task is successfully started.
1873
+ * @type {string || null}
1874
+ */
1875
+ this.TaskId = null;
1876
+
1877
+ }
1878
+
1879
+ /**
1880
+ * @private
1881
+ */
1882
+ deserialize(params) {
1883
+ if (!params) {
1884
+ return;
1885
+ }
1886
+ this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null;
1887
+ this.TaskId = 'TaskId' in params ? params.TaskId : null;
1888
+
1889
+ }
1890
+ }
1891
+
1724
1892
  /**
1725
1893
  * The subscription allowlist/blocklist. You cannot specify an allowlist and a blocklist for audio/video subscription at the same time. The maximum number of streams one can receive at the same time is 25. When streams are mixed, up to 24 videos are supported. You can use `.*$` to specify user IDs with the same prefix, but make sure there aren’t users whose IDs contain ".*$" and are exactly the same as the prefix you pass in. If there are, TRTC will only allow or block those users.
1726
1894
  * @class
@@ -2105,66 +2273,67 @@ class McuLayoutParams extends AbstractModel {
2105
2273
  }
2106
2274
 
2107
2275
  /**
2108
- * The on-cloud recording parameters.
2276
+ * StartStreamIngest request structure.
2109
2277
  * @class
2110
2278
  */
2111
- class RecordParams extends AbstractModel {
2279
+ class StartStreamIngestRequest extends AbstractModel {
2112
2280
  constructor(){
2113
2281
  super();
2114
2282
 
2115
2283
  /**
2116
- * The recording mode.
2117
- 1: Single-stream recording. Records the audio and video of each subscribed user (`UserId`) in a room and saves the recording files to the cloud.
2118
- 2: Mixed-stream recording. Mixes the audios and videos of subscribed users (`UserId`) in a room, records the mixed stream, and saves the recording files to the cloud.
2284
+ * TRTC's [SdkAppId](https://intl.cloud.tencent.com/document/product/647/46351?from_cn_redirect=1#sdkappid), the same as the SdkAppId corresponding to the Record room.
2119
2285
  * @type {number || null}
2120
2286
  */
2121
- this.RecordMode = null;
2287
+ this.SdkAppId = null;
2122
2288
 
2123
2289
  /**
2124
- * The time period (seconds) to wait to automatically stop recording after there are no anchors (users who publish streams) in a room. Value range: 5-86400 (max 24 hours). Default value: 30.
2125
- * @type {number || null}
2290
+ * TRTC's [RoomId](https://intl.cloud.tencent.com/document/product/647/46351?from_cn_redirect=1#roomid), the RoomId corresponding to the Record TRTC room.
2291
+ * @type {string || null}
2126
2292
  */
2127
- this.MaxIdleTime = null;
2293
+ this.RoomId = null;
2128
2294
 
2129
2295
  /**
2130
- * The media type of the streams to record.
2131
- 0: Audio and video streams (default)
2132
- 1: Audio streams only
2133
- 2: Video streams only
2296
+ * Type of TRTC RoomId. 【*Note】Must be the same as the RoomId type corresponding to the Record room: 0: String type RoomId 1: 32-bit Integer type RoomId (default)
2134
2297
  * @type {number || null}
2135
2298
  */
2136
- this.StreamType = null;
2299
+ this.RoomIdType = null;
2137
2300
 
2138
2301
  /**
2139
- * The allowlist/blocklist for stream subscription.
2140
- * @type {SubscribeStreamUserIds || null}
2302
+ * UserId of the Pull stream Relay Robot, used to enter the room and initiate the Pull stream Relay Task.
2303
+ * @type {string || null}
2141
2304
  */
2142
- this.SubscribeStreamUserIds = null;
2305
+ this.UserId = null;
2143
2306
 
2144
2307
  /**
2145
- * The output format. `0` (default): HLS; `1`: HLS + MP4; `2`: HLS + AAC; `3` : MP4, `4` : AAC. This parameter is invalid if you save recording files to VOD. To specify the format of files saved to VOD, use `MediaType` of `TencentVod`.
2146
- * @type {number || null}
2308
+ * UserSig corresponding to the Pull stream Relay Robot UserId, i.e., UserId and UserSig are equivalent to the Robot's Login password for entering the room. For the specific Calculation method, please refer to the TRTC [UserSig](https://intl.cloud.tencent.com/document/product/647/45910?from_cn_redirect=1#UserSig) Scheme.
2309
+ * @type {string || null}
2147
2310
  */
2148
- this.OutputFormat = null;
2311
+ this.UserSig = null;
2149
2312
 
2150
2313
  /**
2151
- * Whether to merge the audio and video of a user in the single-stream recording mode. 0 (default): Do not mix the audio and video; 1: Mix the audio and video into one TS file. You don’t need to specify this parameter for mixed-stream recording, which merges audios and videos by default.
2152
- * @type {number || null}
2314
+ *
2315
+ Source URL. Example value: https://a.b/test.mp4
2316
+ * @type {Array.<string> || null}
2153
2317
  */
2154
- this.AvMerge = null;
2318
+ this.SourceUrl = null;
2155
2319
 
2156
2320
  /**
2157
- * The maximum file duration allowed (minutes). If the output format is AAC or MP4, and the maximum file duration is exceeded, the file will be segmented. Value range: 1-1440. Default value: 1440 (24 hours). The maximum file size allowed is 2 GB. If the file size exceeds 2 GB, or the file duration exceeds 24 hours, the file will also be segmented.
2158
- This parameter is invalid if the output format is HLS.
2159
- * @type {number || null}
2321
+ * TRTC room permission Encryption ticket, only needed when advanced permission control is enabled in the Console. After enabling advanced permission control in the TRTC Console, TRTC's backend service system will verify a so-called [PrivateMapKey] 'Permission ticket', which contains an encrypted RoomId and an encrypted 'Permission bit list'. Since PrivateMapKey contains RoomId, providing only UserSig without PrivateMapKey does not allow entry into the specified room.
2322
+ * @type {string || null}
2160
2323
  */
2161
- this.MaxMediaFileDuration = null;
2324
+ this.PrivateMapKey = null;
2162
2325
 
2163
2326
  /**
2164
- * The type of stream to record. `0` (default): The primary stream and substream; `1`: The primary stream; `2`: The substream.
2165
- * @type {number || null}
2327
+ * Video Codec Parameters. Optional, if not filled, Keep original stream Parameters.
2328
+ * @type {VideoEncodeParams || null}
2166
2329
  */
2167
- this.MediaId = null;
2330
+ this.VideoEncodeParams = null;
2331
+
2332
+ /**
2333
+ * Audio Codec Parameters. Optional, if not filled, Keep original stream Parameters.
2334
+ * @type {AudioEncodeParams || null}
2335
+ */
2336
+ this.AudioEncodeParams = null;
2168
2337
 
2169
2338
  }
2170
2339
 
@@ -2175,19 +2344,25 @@ This parameter is invalid if the output format is HLS.
2175
2344
  if (!params) {
2176
2345
  return;
2177
2346
  }
2178
- this.RecordMode = 'RecordMode' in params ? params.RecordMode : null;
2179
- this.MaxIdleTime = 'MaxIdleTime' in params ? params.MaxIdleTime : null;
2180
- this.StreamType = 'StreamType' in params ? params.StreamType : null;
2347
+ this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null;
2348
+ this.RoomId = 'RoomId' in params ? params.RoomId : null;
2349
+ this.RoomIdType = 'RoomIdType' in params ? params.RoomIdType : null;
2350
+ this.UserId = 'UserId' in params ? params.UserId : null;
2351
+ this.UserSig = 'UserSig' in params ? params.UserSig : null;
2352
+ this.SourceUrl = 'SourceUrl' in params ? params.SourceUrl : null;
2353
+ this.PrivateMapKey = 'PrivateMapKey' in params ? params.PrivateMapKey : null;
2181
2354
 
2182
- if (params.SubscribeStreamUserIds) {
2183
- let obj = new SubscribeStreamUserIds();
2184
- obj.deserialize(params.SubscribeStreamUserIds)
2185
- this.SubscribeStreamUserIds = obj;
2355
+ if (params.VideoEncodeParams) {
2356
+ let obj = new VideoEncodeParams();
2357
+ obj.deserialize(params.VideoEncodeParams)
2358
+ this.VideoEncodeParams = obj;
2359
+ }
2360
+
2361
+ if (params.AudioEncodeParams) {
2362
+ let obj = new AudioEncodeParams();
2363
+ obj.deserialize(params.AudioEncodeParams)
2364
+ this.AudioEncodeParams = obj;
2186
2365
  }
2187
- this.OutputFormat = 'OutputFormat' in params ? params.OutputFormat : null;
2188
- this.AvMerge = 'AvMerge' in params ? params.AvMerge : null;
2189
- this.MaxMediaFileDuration = 'MaxMediaFileDuration' in params ? params.MaxMediaFileDuration : null;
2190
- this.MediaId = 'MediaId' in params ? params.MediaId : null;
2191
2366
 
2192
2367
  }
2193
2368
  }
@@ -3847,6 +4022,41 @@ class DismissRoomByStrRoomIdRequest extends AbstractModel {
3847
4022
  }
3848
4023
  }
3849
4024
 
4025
+ /**
4026
+ * StartStreamIngest response structure.
4027
+ * @class
4028
+ */
4029
+ class StartStreamIngestResponse extends AbstractModel {
4030
+ constructor(){
4031
+ super();
4032
+
4033
+ /**
4034
+ * The Task ID of the Pull stream Relay. The Task ID is a unique identifier for a Pull stream Relay lifecycle process, and it loses its meaning when the task ends. The Task ID needs to be saved by the business as a parameter for the next operation on this task.
4035
+ * @type {string || null}
4036
+ */
4037
+ this.TaskId = null;
4038
+
4039
+ /**
4040
+ * The unique request ID, which is returned for each request. RequestId is required for locating a problem.
4041
+ * @type {string || null}
4042
+ */
4043
+ this.RequestId = null;
4044
+
4045
+ }
4046
+
4047
+ /**
4048
+ * @private
4049
+ */
4050
+ deserialize(params) {
4051
+ if (!params) {
4052
+ return;
4053
+ }
4054
+ this.TaskId = 'TaskId' in params ? params.TaskId : null;
4055
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
4056
+
4057
+ }
4058
+ }
4059
+
3850
4060
  /**
3851
4061
  * DeleteCloudRecording request structure.
3852
4062
  * @class
@@ -4270,24 +4480,52 @@ Note: This field may return `null`, indicating that no valid values can be obtai
4270
4480
  }
4271
4481
 
4272
4482
  /**
4273
- * The user information.
4483
+ * StopStreamIngest response structure.
4274
4484
  * @class
4275
4485
  */
4276
- class MixUserInfo extends AbstractModel {
4486
+ class StopStreamIngestResponse extends AbstractModel {
4277
4487
  constructor(){
4278
4488
  super();
4279
4489
 
4280
4490
  /**
4281
- * User ID.
4491
+ * The unique request ID, which is returned for each request. RequestId is required for locating a problem.
4282
4492
  * @type {string || null}
4283
4493
  */
4284
- this.UserId = null;
4494
+ this.RequestId = null;
4285
4495
 
4286
- /**
4287
- * If a dynamic layout is used, the value of this parameter should be the ID of the main room. If a custom layout is used, the value of this parameter should be the same as the room ID in `MixLayoutList`.
4288
- * @type {string || null}
4289
- */
4290
- this.RoomId = null;
4496
+ }
4497
+
4498
+ /**
4499
+ * @private
4500
+ */
4501
+ deserialize(params) {
4502
+ if (!params) {
4503
+ return;
4504
+ }
4505
+ this.RequestId = 'RequestId' in params ? params.RequestId : null;
4506
+
4507
+ }
4508
+ }
4509
+
4510
+ /**
4511
+ * The user information.
4512
+ * @class
4513
+ */
4514
+ class MixUserInfo extends AbstractModel {
4515
+ constructor(){
4516
+ super();
4517
+
4518
+ /**
4519
+ * User ID.
4520
+ * @type {string || null}
4521
+ */
4522
+ this.UserId = null;
4523
+
4524
+ /**
4525
+ * If a dynamic layout is used, the value of this parameter should be the ID of the main room. If a custom layout is used, the value of this parameter should be the same as the room ID in `MixLayoutList`.
4526
+ * @type {string || null}
4527
+ */
4528
+ this.RoomId = null;
4291
4529
 
4292
4530
  /**
4293
4531
  * The type of the `RoomId` parameter. 0: integer; 1: string.
@@ -4339,6 +4577,133 @@ class DismissRoomResponse extends AbstractModel {
4339
4577
  }
4340
4578
  }
4341
4579
 
4580
+ /**
4581
+ * UpdatePublishCdnStream request structure.
4582
+ * @class
4583
+ */
4584
+ class UpdatePublishCdnStreamRequest extends AbstractModel {
4585
+ constructor(){
4586
+ super();
4587
+
4588
+ /**
4589
+ * The [SDKAppID](https://intl.cloud.tencent.com/document/product/647/37714) of the TRTC room whose streams are relayed.
4590
+ * @type {number || null}
4591
+ */
4592
+ this.SdkAppId = null;
4593
+
4594
+ /**
4595
+ * The task ID.
4596
+ * @type {string || null}
4597
+ */
4598
+ this.TaskId = null;
4599
+
4600
+ /**
4601
+ * The sequence of a request. This parameter ensures the requests to change the parameters of the same relaying task are in the correct order. It increases each time a new request is made.
4602
+ * @type {number || null}
4603
+ */
4604
+ this.SequenceNumber = null;
4605
+
4606
+ /**
4607
+ * Whether to transcode the streams. 0: No; 1: Yes.
4608
+ * @type {number || null}
4609
+ */
4610
+ this.WithTranscoding = null;
4611
+
4612
+ /**
4613
+ * Pass this parameter to change the users whose audios are mixed. If you do not pass this parameter, no changes will be made.
4614
+ * @type {McuAudioParams || null}
4615
+ */
4616
+ this.AudioParams = null;
4617
+
4618
+ /**
4619
+ * Pass this parameter to change video parameters other than the codec, including the video layout, background image, background color, and watermark information. This parameter is valid only if streams are transcoded. If you do not pass it, no changes will be made.
4620
+ * @type {McuVideoParams || null}
4621
+ */
4622
+ this.VideoParams = null;
4623
+
4624
+ /**
4625
+ * Pass this parameter to change the single stream that is relayed. This parameter is valid only if streams are not transcoded. If you do not pass this parameter, no changes will be made.
4626
+ * @type {SingleSubscribeParams || null}
4627
+ */
4628
+ this.SingleSubscribeParams = null;
4629
+
4630
+ /**
4631
+ * Pass this parameter to change the CDNs to relay to. If you do not pass this parameter, no changes will be made.
4632
+ * @type {Array.<McuPublishCdnParam> || null}
4633
+ */
4634
+ this.PublishCdnParams = null;
4635
+
4636
+ /**
4637
+ * The stream mixing SEI parameters.
4638
+ * @type {McuSeiParams || null}
4639
+ */
4640
+ this.SeiParams = null;
4641
+
4642
+ /**
4643
+ * The information of the room to which streams are relayed.
4644
+ * @type {Array.<McuFeedBackRoomParams> || null}
4645
+ */
4646
+ this.FeedBackRoomParams = null;
4647
+
4648
+ }
4649
+
4650
+ /**
4651
+ * @private
4652
+ */
4653
+ deserialize(params) {
4654
+ if (!params) {
4655
+ return;
4656
+ }
4657
+ this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null;
4658
+ this.TaskId = 'TaskId' in params ? params.TaskId : null;
4659
+ this.SequenceNumber = 'SequenceNumber' in params ? params.SequenceNumber : null;
4660
+ this.WithTranscoding = 'WithTranscoding' in params ? params.WithTranscoding : null;
4661
+
4662
+ if (params.AudioParams) {
4663
+ let obj = new McuAudioParams();
4664
+ obj.deserialize(params.AudioParams)
4665
+ this.AudioParams = obj;
4666
+ }
4667
+
4668
+ if (params.VideoParams) {
4669
+ let obj = new McuVideoParams();
4670
+ obj.deserialize(params.VideoParams)
4671
+ this.VideoParams = obj;
4672
+ }
4673
+
4674
+ if (params.SingleSubscribeParams) {
4675
+ let obj = new SingleSubscribeParams();
4676
+ obj.deserialize(params.SingleSubscribeParams)
4677
+ this.SingleSubscribeParams = obj;
4678
+ }
4679
+
4680
+ if (params.PublishCdnParams) {
4681
+ this.PublishCdnParams = new Array();
4682
+ for (let z in params.PublishCdnParams) {
4683
+ let obj = new McuPublishCdnParam();
4684
+ obj.deserialize(params.PublishCdnParams[z]);
4685
+ this.PublishCdnParams.push(obj);
4686
+ }
4687
+ }
4688
+
4689
+ if (params.SeiParams) {
4690
+ let obj = new McuSeiParams();
4691
+ obj.deserialize(params.SeiParams)
4692
+ this.SeiParams = obj;
4693
+ }
4694
+
4695
+ if (params.FeedBackRoomParams) {
4696
+ this.FeedBackRoomParams = new Array();
4697
+ for (let z in params.FeedBackRoomParams) {
4698
+ let obj = new McuFeedBackRoomParams();
4699
+ obj.deserialize(params.FeedBackRoomParams[z]);
4700
+ this.FeedBackRoomParams.push(obj);
4701
+ }
4702
+ }
4703
+
4704
+ }
4705
+ }
4706
+
4342
4707
  /**
4343
4708
  * The information of the large video in screen sharing or floating layout mode.
4344
4709
  * @class
@@ -4572,72 +4937,66 @@ class RemoveUserByStrRoomIdRequest extends AbstractModel {
4572
4937
  }
4573
4938
 
4574
4939
  /**
4575
- * UpdatePublishCdnStream request structure.
4940
+ * The on-cloud recording parameters.
4576
4941
  * @class
4577
4942
  */
4578
- class UpdatePublishCdnStreamRequest extends AbstractModel {
4943
+ class RecordParams extends AbstractModel {
4579
4944
  constructor(){
4580
4945
  super();
4581
4946
 
4582
4947
  /**
4583
- * The [SDKAppID](https://intl.cloud.tencent.com/document/product/647/37714) of the TRTC room whose streams are relayed.
4948
+ * The recording mode.
4949
+ 1: Single-stream recording. Records the audio and video of each subscribed user (`UserId`) in a room and saves the recording files to the cloud.
4950
+ 2: Mixed-stream recording. Mixes the audios and videos of subscribed users (`UserId`) in a room, records the mixed stream, and saves the recording files to the cloud.
4584
4951
  * @type {number || null}
4585
4952
  */
4586
- this.SdkAppId = null;
4587
-
4588
- /**
4589
- * The task ID.
4590
- * @type {string || null}
4591
- */
4592
- this.TaskId = null;
4953
+ this.RecordMode = null;
4593
4954
 
4594
4955
  /**
4595
- * The sequence of a request. This parameter ensures the requests to change the parameters of the same relaying task are in the correct order. It increases each time a new request is made.
4956
+ * The time period (seconds) to wait to automatically stop recording after there are no anchors (users who publish streams) in a room. Value range: 5-86400 (max 24 hours). Default value: 30.
4596
4957
  * @type {number || null}
4597
4958
  */
4598
- this.SequenceNumber = null;
4959
+ this.MaxIdleTime = null;
4599
4960
 
4600
4961
  /**
4601
- * Whether to transcode the streams. 0: No; 1: Yes.
4962
+ * The media type of the streams to record.
4963
+ 0: Audio and video streams (default)
4964
+ 1: Audio streams only
4965
+ 2: Video streams only
4602
4966
  * @type {number || null}
4603
4967
  */
4604
- this.WithTranscoding = null;
4605
-
4606
- /**
4607
- * Pass this parameter to change the users whose audios are mixed. If you do not pass this parameter, no changes will be made.
4608
- * @type {McuAudioParams || null}
4609
- */
4610
- this.AudioParams = null;
4968
+ this.StreamType = null;
4611
4969
 
4612
4970
  /**
4613
- * Pass this parameter to change video parameters other than the codec, including the video layout, background image, background color, and watermark information. This parameter is valid only if streams are transcoded. If you do not pass it, no changes will be made.
4614
- * @type {McuVideoParams || null}
4971
+ * The allowlist/blocklist for stream subscription.
4972
+ * @type {SubscribeStreamUserIds || null}
4615
4973
  */
4616
- this.VideoParams = null;
4974
+ this.SubscribeStreamUserIds = null;
4617
4975
 
4618
4976
  /**
4619
- * Pass this parameter to change the single stream that is relayed. This parameter is valid only if streams are not transcoded. If you do not pass this parameter, no changes will be made.
4620
- * @type {SingleSubscribeParams || null}
4977
+ * The output format. `0` (default): HLS; `1`: HLS + MP4; `2`: HLS + AAC; `3` : MP4, `4` : AAC. This parameter is invalid if you save recording files to VOD. To specify the format of files saved to VOD, use `MediaType` of `TencentVod`.
4978
+ * @type {number || null}
4621
4979
  */
4622
- this.SingleSubscribeParams = null;
4980
+ this.OutputFormat = null;
4623
4981
 
4624
4982
  /**
4625
- * Pass this parameter to change the CDNs to relay to. If you do not pass this parameter, no changes will be made.
4626
- * @type {Array.<McuPublishCdnParam> || null}
4983
+ * Whether to merge the audio and video of a user in the single-stream recording mode. 0 (default): Do not mix the audio and video; 1: Mix the audio and video into one TS file. You don’t need to specify this parameter for mixed-stream recording, which merges audios and videos by default.
4984
+ * @type {number || null}
4627
4985
  */
4628
- this.PublishCdnParams = null;
4986
+ this.AvMerge = null;
4629
4987
 
4630
4988
  /**
4631
- * The stream mixing SEI parameters.
4632
- * @type {McuSeiParams || null}
4989
+ * The maximum file duration allowed (minutes). If the output format is AAC or MP4, and the maximum file duration is exceeded, the file will be segmented. Value range: 1-1440. Default value: 1440 (24 hours). The maximum file size allowed is 2 GB. If the file size exceeds 2 GB, or the file duration exceeds 24 hours, the file will also be segmented.
4990
+ This parameter is invalid if the output format is HLS.
4991
+ * @type {number || null}
4633
4992
  */
4634
- this.SeiParams = null;
4993
+ this.MaxMediaFileDuration = null;
4635
4994
 
4636
4995
  /**
4637
- * The information of the room to which streams are relayed.
4638
- * @type {Array.<McuFeedBackRoomParams> || null}
4996
+ * The type of stream to record. `0` (default): The primary stream and substream; `1`: The primary stream; `2`: The substream.
4997
+ * @type {number || null}
4639
4998
  */
4640
- this.FeedBackRoomParams = null;
4999
+ this.MediaId = null;
4641
5000
 
4642
5001
  }
4643
5002
 
@@ -4648,52 +5007,54 @@ class UpdatePublishCdnStreamRequest extends AbstractModel {
4648
5007
  if (!params) {
4649
5008
  return;
4650
5009
  }
4651
- this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null;
4652
- this.TaskId = 'TaskId' in params ? params.TaskId : null;
4653
- this.SequenceNumber = 'SequenceNumber' in params ? params.SequenceNumber : null;
4654
- this.WithTranscoding = 'WithTranscoding' in params ? params.WithTranscoding : null;
5010
+ this.RecordMode = 'RecordMode' in params ? params.RecordMode : null;
5011
+ this.MaxIdleTime = 'MaxIdleTime' in params ? params.MaxIdleTime : null;
5012
+ this.StreamType = 'StreamType' in params ? params.StreamType : null;
4655
5013
 
4656
- if (params.AudioParams) {
4657
- let obj = new McuAudioParams();
4658
- obj.deserialize(params.AudioParams)
4659
- this.AudioParams = obj;
5014
+ if (params.SubscribeStreamUserIds) {
5015
+ let obj = new SubscribeStreamUserIds();
5016
+ obj.deserialize(params.SubscribeStreamUserIds)
5017
+ this.SubscribeStreamUserIds = obj;
4660
5018
  }
5019
+ this.OutputFormat = 'OutputFormat' in params ? params.OutputFormat : null;
5020
+ this.AvMerge = 'AvMerge' in params ? params.AvMerge : null;
5021
+ this.MaxMediaFileDuration = 'MaxMediaFileDuration' in params ? params.MaxMediaFileDuration : null;
5022
+ this.MediaId = 'MediaId' in params ? params.MediaId : null;
4661
5023
 
4662
- if (params.VideoParams) {
4663
- let obj = new McuVideoParams();
4664
- obj.deserialize(params.VideoParams)
4665
- this.VideoParams = obj;
4666
- }
5024
+ }
5025
+ }
4667
5026
 
4668
- if (params.SingleSubscribeParams) {
4669
- let obj = new SingleSubscribeParams();
4670
- obj.deserialize(params.SingleSubscribeParams)
4671
- this.SingleSubscribeParams = obj;
4672
- }
5027
+ /**
5028
+ * DescribeStreamIngest request structure.
5029
+ * @class
5030
+ */
5031
+ class DescribeStreamIngestRequest extends AbstractModel {
5032
+ constructor(){
5033
+ super();
4673
5034
 
4674
- if (params.PublishCdnParams) {
4675
- this.PublishCdnParams = new Array();
4676
- for (let z in params.PublishCdnParams) {
4677
- let obj = new McuPublishCdnParam();
4678
- obj.deserialize(params.PublishCdnParams[z]);
4679
- this.PublishCdnParams.push(obj);
4680
- }
4681
- }
5035
+ /**
5036
+ * The SDKAppId of TRTC should be the same as the SDKAppId corresponding to the task room.
5037
+ * @type {number || null}
5038
+ */
5039
+ this.SdkAppId = null;
4682
5040
 
4683
- if (params.SeiParams) {
4684
- let obj = new McuSeiParams();
4685
- obj.deserialize(params.SeiParams)
4686
- this.SeiParams = obj;
4687
- }
5041
+ /**
5042
+ * The unique Id of the task, will return after successfully starting the task.
5043
+ * @type {string || null}
5044
+ */
5045
+ this.TaskId = null;
4688
5046
 
4689
- if (params.FeedBackRoomParams) {
4690
- this.FeedBackRoomParams = new Array();
4691
- for (let z in params.FeedBackRoomParams) {
4692
- let obj = new McuFeedBackRoomParams();
4693
- obj.deserialize(params.FeedBackRoomParams[z]);
4694
- this.FeedBackRoomParams.push(obj);
4695
- }
5047
+ }
5048
+
5049
+ /**
5050
+ * @private
5051
+ */
5052
+ deserialize(params) {
5053
+ if (!params) {
5054
+ return;
4696
5055
  }
5056
+ this.SdkAppId = 'SdkAppId' in params ? params.SdkAppId : null;
5057
+ this.TaskId = 'TaskId' in params ? params.TaskId : null;
4697
5058
 
4698
5059
  }
4699
5060
  }
@@ -5136,10 +5497,12 @@ module.exports = {
5136
5497
  AbnormalEvent: AbnormalEvent,
5137
5498
  ScaleInfomation: ScaleInfomation,
5138
5499
  AgentParams: AgentParams,
5500
+ VideoEncodeParams: VideoEncodeParams,
5139
5501
  DescribeUserEventResponse: DescribeUserEventResponse,
5140
5502
  VideoEncode: VideoEncode,
5141
5503
  DescribeCallDetailInfoRequest: DescribeCallDetailInfoRequest,
5142
5504
  DescribeUserInfoRequest: DescribeUserInfoRequest,
5505
+ AudioEncodeParams: AudioEncodeParams,
5143
5506
  CloudStorage: CloudStorage,
5144
5507
  DescribeTrtcUsageResponse: DescribeTrtcUsageResponse,
5145
5508
  TimeValue: TimeValue,
@@ -5151,7 +5514,9 @@ module.exports = {
5151
5514
  DescribeCallDetailInfoResponse: DescribeCallDetailInfoResponse,
5152
5515
  McuCustomCrop: McuCustomCrop,
5153
5516
  DescribeMixTranscodingUsageRequest: DescribeMixTranscodingUsageRequest,
5517
+ DescribeStreamIngestResponse: DescribeStreamIngestResponse,
5154
5518
  MixTranscodeParams: MixTranscodeParams,
5519
+ StopStreamIngestRequest: StopStreamIngestRequest,
5155
5520
  SubscribeStreamUserIds: SubscribeStreamUserIds,
5156
5521
  WaterMarkImage: WaterMarkImage,
5157
5522
  McuUserInfoParams: McuUserInfoParams,
@@ -5160,7 +5525,7 @@ module.exports = {
5160
5525
  DescribeTrtcUsageRequest: DescribeTrtcUsageRequest,
5161
5526
  DescribeRoomInfoResponse: DescribeRoomInfoResponse,
5162
5527
  McuLayoutParams: McuLayoutParams,
5163
- RecordParams: RecordParams,
5528
+ StartStreamIngestRequest: StartStreamIngestRequest,
5164
5529
  DescribeUserInfoResponse: DescribeUserInfoResponse,
5165
5530
  McuWaterMarkImage: McuWaterMarkImage,
5166
5531
  StartPublishCdnStreamResponse: StartPublishCdnStreamResponse,
@@ -5190,6 +5555,7 @@ module.exports = {
5190
5555
  VideoParams: VideoParams,
5191
5556
  StartPublishCdnStreamRequest: StartPublishCdnStreamRequest,
5192
5557
  DismissRoomByStrRoomIdRequest: DismissRoomByStrRoomIdRequest,
5558
+ StartStreamIngestResponse: StartStreamIngestResponse,
5193
5559
  DeleteCloudRecordingRequest: DeleteCloudRecordingRequest,
5194
5560
  SetUserBlockedByStrRoomIdRequest: SetUserBlockedByStrRoomIdRequest,
5195
5561
  DescribeTrtcRoomUsageRequest: DescribeTrtcRoomUsageRequest,
@@ -5199,14 +5565,17 @@ module.exports = {
5199
5565
  DescribeUnusualEventResponse: DescribeUnusualEventResponse,
5200
5566
  ModifyCloudRecordingResponse: ModifyCloudRecordingResponse,
5201
5567
  DescribeCloudRecordingResponse: DescribeCloudRecordingResponse,
5568
+ StopStreamIngestResponse: StopStreamIngestResponse,
5202
5569
  MixUserInfo: MixUserInfo,
5203
5570
  DismissRoomResponse: DismissRoomResponse,
5571
+ UpdatePublishCdnStreamRequest: UpdatePublishCdnStreamRequest,
5204
5572
  MaxVideoUser: MaxVideoUser,
5205
5573
  McuSeiParams: McuSeiParams,
5206
5574
  UpdatePublishCdnStreamResponse: UpdatePublishCdnStreamResponse,
5207
5575
  McuWaterMarkText: McuWaterMarkText,
5208
5576
  RemoveUserByStrRoomIdRequest: RemoveUserByStrRoomIdRequest,
5209
- UpdatePublishCdnStreamRequest: UpdatePublishCdnStreamRequest,
5577
+ RecordParams: RecordParams,
5578
+ DescribeStreamIngestRequest: DescribeStreamIngestRequest,
5210
5579
  McuAudioParams: McuAudioParams,
5211
5580
  McuPublishCdnParam: McuPublishCdnParam,
5212
5581
  AudioParams: AudioParams,
@@ -31,10 +31,12 @@ const StopPublishCdnStreamResponse = models.StopPublishCdnStreamResponse;
31
31
  const AbnormalEvent = models.AbnormalEvent;
32
32
  const ScaleInfomation = models.ScaleInfomation;
33
33
  const AgentParams = models.AgentParams;
34
+ const VideoEncodeParams = models.VideoEncodeParams;
34
35
  const DescribeUserEventResponse = models.DescribeUserEventResponse;
35
36
  const VideoEncode = models.VideoEncode;
36
37
  const DescribeCallDetailInfoRequest = models.DescribeCallDetailInfoRequest;
37
38
  const DescribeUserInfoRequest = models.DescribeUserInfoRequest;
39
+ const AudioEncodeParams = models.AudioEncodeParams;
38
40
  const CloudStorage = models.CloudStorage;
39
41
  const DescribeTrtcUsageResponse = models.DescribeTrtcUsageResponse;
40
42
  const TimeValue = models.TimeValue;
@@ -46,7 +48,9 @@ const CloudVod = models.CloudVod;
46
48
  const DescribeCallDetailInfoResponse = models.DescribeCallDetailInfoResponse;
47
49
  const McuCustomCrop = models.McuCustomCrop;
48
50
  const DescribeMixTranscodingUsageRequest = models.DescribeMixTranscodingUsageRequest;
51
+ const DescribeStreamIngestResponse = models.DescribeStreamIngestResponse;
49
52
  const MixTranscodeParams = models.MixTranscodeParams;
53
+ const StopStreamIngestRequest = models.StopStreamIngestRequest;
50
54
  const SubscribeStreamUserIds = models.SubscribeStreamUserIds;
51
55
  const WaterMarkImage = models.WaterMarkImage;
52
56
  const McuUserInfoParams = models.McuUserInfoParams;
@@ -55,7 +59,7 @@ const EventList = models.EventList;
55
59
  const DescribeTrtcUsageRequest = models.DescribeTrtcUsageRequest;
56
60
  const DescribeRoomInfoResponse = models.DescribeRoomInfoResponse;
57
61
  const McuLayoutParams = models.McuLayoutParams;
58
- const RecordParams = models.RecordParams;
62
+ const StartStreamIngestRequest = models.StartStreamIngestRequest;
59
63
  const DescribeUserInfoResponse = models.DescribeUserInfoResponse;
60
64
  const McuWaterMarkImage = models.McuWaterMarkImage;
61
65
  const StartPublishCdnStreamResponse = models.StartPublishCdnStreamResponse;
@@ -85,6 +89,7 @@ const ModifyCloudRecordingRequest = models.ModifyCloudRecordingRequest;
85
89
  const VideoParams = models.VideoParams;
86
90
  const StartPublishCdnStreamRequest = models.StartPublishCdnStreamRequest;
87
91
  const DismissRoomByStrRoomIdRequest = models.DismissRoomByStrRoomIdRequest;
92
+ const StartStreamIngestResponse = models.StartStreamIngestResponse;
88
93
  const DeleteCloudRecordingRequest = models.DeleteCloudRecordingRequest;
89
94
  const SetUserBlockedByStrRoomIdRequest = models.SetUserBlockedByStrRoomIdRequest;
90
95
  const DescribeTrtcRoomUsageRequest = models.DescribeTrtcRoomUsageRequest;
@@ -94,14 +99,17 @@ const DismissRoomByStrRoomIdResponse = models.DismissRoomByStrRoomIdResponse;
94
99
  const DescribeUnusualEventResponse = models.DescribeUnusualEventResponse;
95
100
  const ModifyCloudRecordingResponse = models.ModifyCloudRecordingResponse;
96
101
  const DescribeCloudRecordingResponse = models.DescribeCloudRecordingResponse;
102
+ const StopStreamIngestResponse = models.StopStreamIngestResponse;
97
103
  const MixUserInfo = models.MixUserInfo;
98
104
  const DismissRoomResponse = models.DismissRoomResponse;
105
+ const UpdatePublishCdnStreamRequest = models.UpdatePublishCdnStreamRequest;
99
106
  const MaxVideoUser = models.MaxVideoUser;
100
107
  const McuSeiParams = models.McuSeiParams;
101
108
  const UpdatePublishCdnStreamResponse = models.UpdatePublishCdnStreamResponse;
102
109
  const McuWaterMarkText = models.McuWaterMarkText;
103
110
  const RemoveUserByStrRoomIdRequest = models.RemoveUserByStrRoomIdRequest;
104
- const UpdatePublishCdnStreamRequest = models.UpdatePublishCdnStreamRequest;
111
+ const RecordParams = models.RecordParams;
112
+ const DescribeStreamIngestRequest = models.DescribeStreamIngestRequest;
105
113
  const McuAudioParams = models.McuAudioParams;
106
114
  const McuPublishCdnParam = models.McuPublishCdnParam;
107
115
  const AudioParams = models.AudioParams;
@@ -243,6 +251,17 @@ Usage Precautions:
243
251
  this.request("DescribeCallDetailInfo", req, resp, cb);
244
252
  }
245
253
 
254
+ /**
255
+ * You can query the status of the Relay task.
256
+ * @param {DescribeStreamIngestRequest} req
257
+ * @param {function(string, DescribeStreamIngestResponse):void} cb
258
+ * @public
259
+ */
260
+ DescribeStreamIngest(req, cb) {
261
+ let resp = new DescribeStreamIngestResponse();
262
+ this.request("DescribeStreamIngest", req, resp, cb);
263
+ }
264
+
246
265
  /**
247
266
  * This API is used to disable or enable the audio and video of a user. It can be used by an anchor, room owner, or admin to block or unblock a user. It supports platforms including Android, iOS, Windows, macOS, web, and WeChat Mini Program. Use this API if the room ID is a number.
248
267
  * @param {SetUserBlockedRequest} req
@@ -266,6 +285,28 @@ Note: For details about how to use this API, see the `StartPublishCdnStream` doc
266
285
  this.request("UpdatePublishCdnStream", req, resp, cb);
267
286
  }
268
287
 
288
+ /**
289
+ * Push an online media stream to the TRTC room.
290
+ * @param {StartStreamIngestRequest} req
291
+ * @param {function(string, StartStreamIngestResponse):void} cb
292
+ * @public
293
+ */
294
+ StartStreamIngest(req, cb) {
295
+ let resp = new StartStreamIngestResponse();
296
+ this.request("StartStreamIngest", req, resp, cb);
297
+ }
298
+
299
+ /**
300
+ * Stop a Pull stream Relay task.
301
+ * @param {StopStreamIngestRequest} req
302
+ * @param {function(string, StopStreamIngestResponse):void} cb
303
+ * @public
304
+ */
305
+ StopStreamIngest(req, cb) {
306
+ let resp = new StopStreamIngestResponse();
307
+ this.request("StopStreamIngest", req, resp, cb);
308
+ }
309
+
269
310
  /**
270
311
  * This API is used to remove a user from a room. It is applicable to scenarios where the anchor, room owner, or admin wants to kick out a user. It supports all platforms. For Android, iOS, Windows, and macOS, the TRTC SDK needs to be upgraded to v6.6 or above.
271
312
  * @param {RemoveUserRequest} req