Переглянути джерело

Update to support new apis.

sdk-team 2 роки тому
батько
коміт
928fc975b9
51 змінених файлів з 956 додано та 1972 видалено
  1. 1 1
      VERSION
  2. 24 32
      live/CMakeLists.txt
  3. 48 64
      live/include/alibabacloud/live/LiveClient.h
  4. 0 63
      live/include/alibabacloud/live/model/AddMultiRateConfigRequest.h
  5. 0 72
      live/include/alibabacloud/live/model/AddMultiRateConfigResult.h
  6. 15 18
      live/include/alibabacloud/live/model/CreateRtcMPUEventSubRequest.h
  7. 9 7
      live/include/alibabacloud/live/model/CreateRtcMPUEventSubResult.h
  8. 0 57
      live/include/alibabacloud/live/model/DeleteMultiRateConfigRequest.h
  9. 9 9
      live/include/alibabacloud/live/model/DeleteRtcAsrTaskRequest.h
  10. 11 11
      live/include/alibabacloud/live/model/DeleteRtcAsrTaskResult.h
  11. 9 18
      live/include/alibabacloud/live/model/DeleteRtcMPUEventSubRequest.h
  12. 7 7
      live/include/alibabacloud/live/model/DeleteRtcMPUEventSubResult.h
  13. 3 0
      live/include/alibabacloud/live/model/DescribeLiveAISubtitleRequest.h
  14. 42 0
      live/include/alibabacloud/live/model/DescribeRtcMPUEventSubRequest.h
  15. 14 18
      live/include/alibabacloud/live/model/DescribeRtcMPUEventSubResult.h
  16. 0 86
      live/include/alibabacloud/live/model/GetMultiRateConfigResult.h
  17. 18 30
      live/include/alibabacloud/live/model/ListRtcMPUEventSubRecordRequest.h
  18. 22 18
      live/include/alibabacloud/live/model/ListRtcMPUEventSubRecordResult.h
  19. 0 69
      live/include/alibabacloud/live/model/RealTimeSnapshotCommandRequest.h
  20. 0 54
      live/include/alibabacloud/live/model/SetLiveStreamOptimizedFeatureConfigRequest.h
  21. 3 1
      live/include/alibabacloud/live/model/StartLiveMPUTaskRequest.h
  22. 3 1
      live/include/alibabacloud/live/model/UpdateLiveMPUTaskRequest.h
  23. 48 0
      live/include/alibabacloud/live/model/UpdateRtcMPUEventSubRequest.h
  24. 7 9
      live/include/alibabacloud/live/model/UpdateRtcMPUEventSubResult.h
  25. 198 270
      live/src/LiveClient.cc
  26. 0 99
      live/src/model/AddMultiRateConfigRequest.cc
  27. 0 97
      live/src/model/AddMultiRateConfigResult.cc
  28. 0 63
      live/src/model/CreateLiveTranscodeTemplateRequest.cc
  29. 54 0
      live/src/model/CreateRtcMPUEventSubRequest.cc
  30. 9 9
      live/src/model/CreateRtcMPUEventSubResult.cc
  31. 0 81
      live/src/model/DeleteMultiRateConfigRequest.cc
  32. 12 12
      live/src/model/DeleteRtcAsrTaskRequest.cc
  33. 13 13
      live/src/model/DeleteRtcAsrTaskResult.cc
  34. 36 0
      live/src/model/DeleteRtcMPUEventSubRequest.cc
  35. 5 5
      live/src/model/DeleteRtcMPUEventSubResult.cc
  36. 9 0
      live/src/model/DescribeLiveAISubtitleRequest.cc
  37. 0 117
      live/src/model/DescribeRoomListRequest.cc
  38. 0 79
      live/src/model/DescribeRoomListResult.cc
  39. 36 0
      live/src/model/DescribeRtcMPUEventSubRequest.cc
  40. 60 0
      live/src/model/DescribeRtcMPUEventSubResult.cc
  41. 0 77
      live/src/model/GetMultiRateConfigListResult.cc
  42. 0 63
      live/src/model/GetMultiRateConfigRequest.cc
  43. 0 146
      live/src/model/GetMultiRateConfigResult.cc
  44. 81 0
      live/src/model/ListRtcMPUEventSubRecordRequest.cc
  45. 85 0
      live/src/model/ListRtcMPUEventSubRecordResult.cc
  46. 0 117
      live/src/model/RealTimeSnapshotCommandRequest.cc
  47. 0 72
      live/src/model/SetLiveStreamOptimizedFeatureConfigRequest.cc
  48. 3 1
      live/src/model/StartLiveMPUTaskRequest.cc
  49. 3 1
      live/src/model/UpdateLiveMPUTaskRequest.cc
  50. 54 0
      live/src/model/UpdateRtcMPUEventSubRequest.cc
  51. 5 5
      live/src/model/UpdateRtcMPUEventSubResult.cc

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1930
+1.36.1931

+ 24 - 32
live/CMakeLists.txt

@@ -79,8 +79,6 @@ set(live_public_header_model
 	include/alibabacloud/live/model/AddLiveStreamWatermarkResult.h
 	include/alibabacloud/live/model/AddLiveStreamWatermarkRuleRequest.h
 	include/alibabacloud/live/model/AddLiveStreamWatermarkRuleResult.h
-	include/alibabacloud/live/model/AddMultiRateConfigRequest.h
-	include/alibabacloud/live/model/AddMultiRateConfigResult.h
 	include/alibabacloud/live/model/AddPlaylistItemsRequest.h
 	include/alibabacloud/live/model/AddPlaylistItemsResult.h
 	include/alibabacloud/live/model/AddRtsLiveStreamTranscodeRequest.h
@@ -135,8 +133,6 @@ set(live_public_header_model
 	include/alibabacloud/live/model/CreateLiveStreamMonitorResult.h
 	include/alibabacloud/live/model/CreateLiveStreamRecordIndexFilesRequest.h
 	include/alibabacloud/live/model/CreateLiveStreamRecordIndexFilesResult.h
-	include/alibabacloud/live/model/CreateLiveTranscodeTemplateRequest.h
-	include/alibabacloud/live/model/CreateLiveTranscodeTemplateResult.h
 	include/alibabacloud/live/model/CreateMessageAppRequest.h
 	include/alibabacloud/live/model/CreateMessageAppResult.h
 	include/alibabacloud/live/model/CreateMessageGroupRequest.h
@@ -147,6 +143,8 @@ set(live_public_header_model
 	include/alibabacloud/live/model/CreateRoomRealTimeStreamAddressResult.h
 	include/alibabacloud/live/model/CreateRtcAsrTaskRequest.h
 	include/alibabacloud/live/model/CreateRtcAsrTaskResult.h
+	include/alibabacloud/live/model/CreateRtcMPUEventSubRequest.h
+	include/alibabacloud/live/model/CreateRtcMPUEventSubResult.h
 	include/alibabacloud/live/model/DeleteCasterRequest.h
 	include/alibabacloud/live/model/DeleteCasterResult.h
 	include/alibabacloud/live/model/DeleteCasterComponentRequest.h
@@ -245,14 +243,16 @@ set(live_public_header_model
 	include/alibabacloud/live/model/DeleteMessageAppResult.h
 	include/alibabacloud/live/model/DeleteMixStreamRequest.h
 	include/alibabacloud/live/model/DeleteMixStreamResult.h
-	include/alibabacloud/live/model/DeleteMultiRateConfigRequest.h
-	include/alibabacloud/live/model/DeleteMultiRateConfigResult.h
 	include/alibabacloud/live/model/DeletePlaylistRequest.h
 	include/alibabacloud/live/model/DeletePlaylistResult.h
 	include/alibabacloud/live/model/DeletePlaylistItemsRequest.h
 	include/alibabacloud/live/model/DeletePlaylistItemsResult.h
 	include/alibabacloud/live/model/DeleteRoomRequest.h
 	include/alibabacloud/live/model/DeleteRoomResult.h
+	include/alibabacloud/live/model/DeleteRtcAsrTaskRequest.h
+	include/alibabacloud/live/model/DeleteRtcAsrTaskResult.h
+	include/alibabacloud/live/model/DeleteRtcMPUEventSubRequest.h
+	include/alibabacloud/live/model/DeleteRtcMPUEventSubResult.h
 	include/alibabacloud/live/model/DeleteSnapshotCallbackAuthRequest.h
 	include/alibabacloud/live/model/DeleteSnapshotCallbackAuthResult.h
 	include/alibabacloud/live/model/DeleteSnapshotFilesRequest.h
@@ -531,10 +531,10 @@ set(live_public_header_model
 	include/alibabacloud/live/model/DescribeRTSNativeSDKVvDataResult.h
 	include/alibabacloud/live/model/DescribeRoomKickoutUserListRequest.h
 	include/alibabacloud/live/model/DescribeRoomKickoutUserListResult.h
-	include/alibabacloud/live/model/DescribeRoomListRequest.h
-	include/alibabacloud/live/model/DescribeRoomListResult.h
 	include/alibabacloud/live/model/DescribeRoomStatusRequest.h
 	include/alibabacloud/live/model/DescribeRoomStatusResult.h
+	include/alibabacloud/live/model/DescribeRtcMPUEventSubRequest.h
+	include/alibabacloud/live/model/DescribeRtcMPUEventSubResult.h
 	include/alibabacloud/live/model/DescribeShowListRequest.h
 	include/alibabacloud/live/model/DescribeShowListResult.h
 	include/alibabacloud/live/model/DescribeStreamLocationBlockRequest.h
@@ -585,10 +585,6 @@ set(live_public_header_model
 	include/alibabacloud/live/model/GetMessageGroupResult.h
 	include/alibabacloud/live/model/GetMessageTokenRequest.h
 	include/alibabacloud/live/model/GetMessageTokenResult.h
-	include/alibabacloud/live/model/GetMultiRateConfigRequest.h
-	include/alibabacloud/live/model/GetMultiRateConfigResult.h
-	include/alibabacloud/live/model/GetMultiRateConfigListRequest.h
-	include/alibabacloud/live/model/GetMultiRateConfigListResult.h
 	include/alibabacloud/live/model/GetTranscodeTaskStatusRequest.h
 	include/alibabacloud/live/model/GetTranscodeTaskStatusResult.h
 	include/alibabacloud/live/model/HotLiveRtcStreamRequest.h
@@ -643,6 +639,8 @@ set(live_public_header_model
 	include/alibabacloud/live/model/ListPlaylistResult.h
 	include/alibabacloud/live/model/ListPlaylistItemsRequest.h
 	include/alibabacloud/live/model/ListPlaylistItemsResult.h
+	include/alibabacloud/live/model/ListRtcMPUEventSubRecordRequest.h
+	include/alibabacloud/live/model/ListRtcMPUEventSubRecordResult.h
 	include/alibabacloud/live/model/MiguLivePullToPushStartRequest.h
 	include/alibabacloud/live/model/MiguLivePullToPushStartResult.h
 	include/alibabacloud/live/model/MiguLivePullToPushStatusRequest.h
@@ -695,8 +693,6 @@ set(live_public_header_model
 	include/alibabacloud/live/model/QuerySnapshotCallbackAuthResult.h
 	include/alibabacloud/live/model/RealTimeRecordCommandRequest.h
 	include/alibabacloud/live/model/RealTimeRecordCommandResult.h
-	include/alibabacloud/live/model/RealTimeSnapshotCommandRequest.h
-	include/alibabacloud/live/model/RealTimeSnapshotCommandResult.h
 	include/alibabacloud/live/model/RemoveShowFromShowListRequest.h
 	include/alibabacloud/live/model/RemoveShowFromShowListResult.h
 	include/alibabacloud/live/model/RemoveTerminalsRequest.h
@@ -747,8 +743,6 @@ set(live_public_header_model
 	include/alibabacloud/live/model/SetLiveStreamBlockResult.h
 	include/alibabacloud/live/model/SetLiveStreamDelayConfigRequest.h
 	include/alibabacloud/live/model/SetLiveStreamDelayConfigResult.h
-	include/alibabacloud/live/model/SetLiveStreamOptimizedFeatureConfigRequest.h
-	include/alibabacloud/live/model/SetLiveStreamOptimizedFeatureConfigResult.h
 	include/alibabacloud/live/model/SetLiveStreamPreloadTasksRequest.h
 	include/alibabacloud/live/model/SetLiveStreamPreloadTasksResult.h
 	include/alibabacloud/live/model/SetLiveStreamsNotifyUrlConfigRequest.h
@@ -843,6 +837,8 @@ set(live_public_header_model
 	include/alibabacloud/live/model/UpdateMessageGroupResult.h
 	include/alibabacloud/live/model/UpdateMixStreamRequest.h
 	include/alibabacloud/live/model/UpdateMixStreamResult.h
+	include/alibabacloud/live/model/UpdateRtcMPUEventSubRequest.h
+	include/alibabacloud/live/model/UpdateRtcMPUEventSubResult.h
 	include/alibabacloud/live/model/VerifyLiveDomainOwnerRequest.h
 	include/alibabacloud/live/model/VerifyLiveDomainOwnerResult.h )
 
@@ -906,8 +902,6 @@ set(live_src
 	src/model/AddLiveStreamWatermarkResult.cc
 	src/model/AddLiveStreamWatermarkRuleRequest.cc
 	src/model/AddLiveStreamWatermarkRuleResult.cc
-	src/model/AddMultiRateConfigRequest.cc
-	src/model/AddMultiRateConfigResult.cc
 	src/model/AddPlaylistItemsRequest.cc
 	src/model/AddPlaylistItemsResult.cc
 	src/model/AddRtsLiveStreamTranscodeRequest.cc
@@ -962,8 +956,6 @@ set(live_src
 	src/model/CreateLiveStreamMonitorResult.cc
 	src/model/CreateLiveStreamRecordIndexFilesRequest.cc
 	src/model/CreateLiveStreamRecordIndexFilesResult.cc
-	src/model/CreateLiveTranscodeTemplateRequest.cc
-	src/model/CreateLiveTranscodeTemplateResult.cc
 	src/model/CreateMessageAppRequest.cc
 	src/model/CreateMessageAppResult.cc
 	src/model/CreateMessageGroupRequest.cc
@@ -974,6 +966,8 @@ set(live_src
 	src/model/CreateRoomRealTimeStreamAddressResult.cc
 	src/model/CreateRtcAsrTaskRequest.cc
 	src/model/CreateRtcAsrTaskResult.cc
+	src/model/CreateRtcMPUEventSubRequest.cc
+	src/model/CreateRtcMPUEventSubResult.cc
 	src/model/DeleteCasterRequest.cc
 	src/model/DeleteCasterResult.cc
 	src/model/DeleteCasterComponentRequest.cc
@@ -1072,14 +1066,16 @@ set(live_src
 	src/model/DeleteMessageAppResult.cc
 	src/model/DeleteMixStreamRequest.cc
 	src/model/DeleteMixStreamResult.cc
-	src/model/DeleteMultiRateConfigRequest.cc
-	src/model/DeleteMultiRateConfigResult.cc
 	src/model/DeletePlaylistRequest.cc
 	src/model/DeletePlaylistResult.cc
 	src/model/DeletePlaylistItemsRequest.cc
 	src/model/DeletePlaylistItemsResult.cc
 	src/model/DeleteRoomRequest.cc
 	src/model/DeleteRoomResult.cc
+	src/model/DeleteRtcAsrTaskRequest.cc
+	src/model/DeleteRtcAsrTaskResult.cc
+	src/model/DeleteRtcMPUEventSubRequest.cc
+	src/model/DeleteRtcMPUEventSubResult.cc
 	src/model/DeleteSnapshotCallbackAuthRequest.cc
 	src/model/DeleteSnapshotCallbackAuthResult.cc
 	src/model/DeleteSnapshotFilesRequest.cc
@@ -1358,10 +1354,10 @@ set(live_src
 	src/model/DescribeRTSNativeSDKVvDataResult.cc
 	src/model/DescribeRoomKickoutUserListRequest.cc
 	src/model/DescribeRoomKickoutUserListResult.cc
-	src/model/DescribeRoomListRequest.cc
-	src/model/DescribeRoomListResult.cc
 	src/model/DescribeRoomStatusRequest.cc
 	src/model/DescribeRoomStatusResult.cc
+	src/model/DescribeRtcMPUEventSubRequest.cc
+	src/model/DescribeRtcMPUEventSubResult.cc
 	src/model/DescribeShowListRequest.cc
 	src/model/DescribeShowListResult.cc
 	src/model/DescribeStreamLocationBlockRequest.cc
@@ -1412,10 +1408,6 @@ set(live_src
 	src/model/GetMessageGroupResult.cc
 	src/model/GetMessageTokenRequest.cc
 	src/model/GetMessageTokenResult.cc
-	src/model/GetMultiRateConfigRequest.cc
-	src/model/GetMultiRateConfigResult.cc
-	src/model/GetMultiRateConfigListRequest.cc
-	src/model/GetMultiRateConfigListResult.cc
 	src/model/GetTranscodeTaskStatusRequest.cc
 	src/model/GetTranscodeTaskStatusResult.cc
 	src/model/HotLiveRtcStreamRequest.cc
@@ -1470,6 +1462,8 @@ set(live_src
 	src/model/ListPlaylistResult.cc
 	src/model/ListPlaylistItemsRequest.cc
 	src/model/ListPlaylistItemsResult.cc
+	src/model/ListRtcMPUEventSubRecordRequest.cc
+	src/model/ListRtcMPUEventSubRecordResult.cc
 	src/model/MiguLivePullToPushStartRequest.cc
 	src/model/MiguLivePullToPushStartResult.cc
 	src/model/MiguLivePullToPushStatusRequest.cc
@@ -1522,8 +1516,6 @@ set(live_src
 	src/model/QuerySnapshotCallbackAuthResult.cc
 	src/model/RealTimeRecordCommandRequest.cc
 	src/model/RealTimeRecordCommandResult.cc
-	src/model/RealTimeSnapshotCommandRequest.cc
-	src/model/RealTimeSnapshotCommandResult.cc
 	src/model/RemoveShowFromShowListRequest.cc
 	src/model/RemoveShowFromShowListResult.cc
 	src/model/RemoveTerminalsRequest.cc
@@ -1574,8 +1566,6 @@ set(live_src
 	src/model/SetLiveStreamBlockResult.cc
 	src/model/SetLiveStreamDelayConfigRequest.cc
 	src/model/SetLiveStreamDelayConfigResult.cc
-	src/model/SetLiveStreamOptimizedFeatureConfigRequest.cc
-	src/model/SetLiveStreamOptimizedFeatureConfigResult.cc
 	src/model/SetLiveStreamPreloadTasksRequest.cc
 	src/model/SetLiveStreamPreloadTasksResult.cc
 	src/model/SetLiveStreamsNotifyUrlConfigRequest.cc
@@ -1670,6 +1660,8 @@ set(live_src
 	src/model/UpdateMessageGroupResult.cc
 	src/model/UpdateMixStreamRequest.cc
 	src/model/UpdateMixStreamResult.cc
+	src/model/UpdateRtcMPUEventSubRequest.cc
+	src/model/UpdateRtcMPUEventSubResult.cc
 	src/model/VerifyLiveDomainOwnerRequest.cc
 	src/model/VerifyLiveDomainOwnerResult.cc )
 

+ 48 - 64
live/include/alibabacloud/live/LiveClient.h

@@ -80,8 +80,6 @@
 #include "model/AddLiveStreamWatermarkResult.h"
 #include "model/AddLiveStreamWatermarkRuleRequest.h"
 #include "model/AddLiveStreamWatermarkRuleResult.h"
-#include "model/AddMultiRateConfigRequest.h"
-#include "model/AddMultiRateConfigResult.h"
 #include "model/AddPlaylistItemsRequest.h"
 #include "model/AddPlaylistItemsResult.h"
 #include "model/AddRtsLiveStreamTranscodeRequest.h"
@@ -136,8 +134,6 @@
 #include "model/CreateLiveStreamMonitorResult.h"
 #include "model/CreateLiveStreamRecordIndexFilesRequest.h"
 #include "model/CreateLiveStreamRecordIndexFilesResult.h"
-#include "model/CreateLiveTranscodeTemplateRequest.h"
-#include "model/CreateLiveTranscodeTemplateResult.h"
 #include "model/CreateMessageAppRequest.h"
 #include "model/CreateMessageAppResult.h"
 #include "model/CreateMessageGroupRequest.h"
@@ -148,6 +144,8 @@
 #include "model/CreateRoomRealTimeStreamAddressResult.h"
 #include "model/CreateRtcAsrTaskRequest.h"
 #include "model/CreateRtcAsrTaskResult.h"
+#include "model/CreateRtcMPUEventSubRequest.h"
+#include "model/CreateRtcMPUEventSubResult.h"
 #include "model/DeleteCasterRequest.h"
 #include "model/DeleteCasterResult.h"
 #include "model/DeleteCasterComponentRequest.h"
@@ -246,14 +244,16 @@
 #include "model/DeleteMessageAppResult.h"
 #include "model/DeleteMixStreamRequest.h"
 #include "model/DeleteMixStreamResult.h"
-#include "model/DeleteMultiRateConfigRequest.h"
-#include "model/DeleteMultiRateConfigResult.h"
 #include "model/DeletePlaylistRequest.h"
 #include "model/DeletePlaylistResult.h"
 #include "model/DeletePlaylistItemsRequest.h"
 #include "model/DeletePlaylistItemsResult.h"
 #include "model/DeleteRoomRequest.h"
 #include "model/DeleteRoomResult.h"
+#include "model/DeleteRtcAsrTaskRequest.h"
+#include "model/DeleteRtcAsrTaskResult.h"
+#include "model/DeleteRtcMPUEventSubRequest.h"
+#include "model/DeleteRtcMPUEventSubResult.h"
 #include "model/DeleteSnapshotCallbackAuthRequest.h"
 #include "model/DeleteSnapshotCallbackAuthResult.h"
 #include "model/DeleteSnapshotFilesRequest.h"
@@ -532,10 +532,10 @@
 #include "model/DescribeRTSNativeSDKVvDataResult.h"
 #include "model/DescribeRoomKickoutUserListRequest.h"
 #include "model/DescribeRoomKickoutUserListResult.h"
-#include "model/DescribeRoomListRequest.h"
-#include "model/DescribeRoomListResult.h"
 #include "model/DescribeRoomStatusRequest.h"
 #include "model/DescribeRoomStatusResult.h"
+#include "model/DescribeRtcMPUEventSubRequest.h"
+#include "model/DescribeRtcMPUEventSubResult.h"
 #include "model/DescribeShowListRequest.h"
 #include "model/DescribeShowListResult.h"
 #include "model/DescribeStreamLocationBlockRequest.h"
@@ -586,10 +586,6 @@
 #include "model/GetMessageGroupResult.h"
 #include "model/GetMessageTokenRequest.h"
 #include "model/GetMessageTokenResult.h"
-#include "model/GetMultiRateConfigRequest.h"
-#include "model/GetMultiRateConfigResult.h"
-#include "model/GetMultiRateConfigListRequest.h"
-#include "model/GetMultiRateConfigListResult.h"
 #include "model/GetTranscodeTaskStatusRequest.h"
 #include "model/GetTranscodeTaskStatusResult.h"
 #include "model/HotLiveRtcStreamRequest.h"
@@ -644,6 +640,8 @@
 #include "model/ListPlaylistResult.h"
 #include "model/ListPlaylistItemsRequest.h"
 #include "model/ListPlaylistItemsResult.h"
+#include "model/ListRtcMPUEventSubRecordRequest.h"
+#include "model/ListRtcMPUEventSubRecordResult.h"
 #include "model/MiguLivePullToPushStartRequest.h"
 #include "model/MiguLivePullToPushStartResult.h"
 #include "model/MiguLivePullToPushStatusRequest.h"
@@ -696,8 +694,6 @@
 #include "model/QuerySnapshotCallbackAuthResult.h"
 #include "model/RealTimeRecordCommandRequest.h"
 #include "model/RealTimeRecordCommandResult.h"
-#include "model/RealTimeSnapshotCommandRequest.h"
-#include "model/RealTimeSnapshotCommandResult.h"
 #include "model/RemoveShowFromShowListRequest.h"
 #include "model/RemoveShowFromShowListResult.h"
 #include "model/RemoveTerminalsRequest.h"
@@ -748,8 +744,6 @@
 #include "model/SetLiveStreamBlockResult.h"
 #include "model/SetLiveStreamDelayConfigRequest.h"
 #include "model/SetLiveStreamDelayConfigResult.h"
-#include "model/SetLiveStreamOptimizedFeatureConfigRequest.h"
-#include "model/SetLiveStreamOptimizedFeatureConfigResult.h"
 #include "model/SetLiveStreamPreloadTasksRequest.h"
 #include "model/SetLiveStreamPreloadTasksResult.h"
 #include "model/SetLiveStreamsNotifyUrlConfigRequest.h"
@@ -844,6 +838,8 @@
 #include "model/UpdateMessageGroupResult.h"
 #include "model/UpdateMixStreamRequest.h"
 #include "model/UpdateMixStreamResult.h"
+#include "model/UpdateRtcMPUEventSubRequest.h"
+#include "model/UpdateRtcMPUEventSubResult.h"
 #include "model/VerifyLiveDomainOwnerRequest.h"
 #include "model/VerifyLiveDomainOwnerResult.h"
 
@@ -942,9 +938,6 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::AddLiveStreamWatermarkRuleResult> AddLiveStreamWatermarkRuleOutcome;
 			typedef std::future<AddLiveStreamWatermarkRuleOutcome> AddLiveStreamWatermarkRuleOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::AddLiveStreamWatermarkRuleRequest&, const AddLiveStreamWatermarkRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddLiveStreamWatermarkRuleAsyncHandler;
-			typedef Outcome<Error, Model::AddMultiRateConfigResult> AddMultiRateConfigOutcome;
-			typedef std::future<AddMultiRateConfigOutcome> AddMultiRateConfigOutcomeCallable;
-			typedef std::function<void(const LiveClient*, const Model::AddMultiRateConfigRequest&, const AddMultiRateConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddMultiRateConfigAsyncHandler;
 			typedef Outcome<Error, Model::AddPlaylistItemsResult> AddPlaylistItemsOutcome;
 			typedef std::future<AddPlaylistItemsOutcome> AddPlaylistItemsOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::AddPlaylistItemsRequest&, const AddPlaylistItemsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddPlaylistItemsAsyncHandler;
@@ -1026,9 +1019,6 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateLiveStreamRecordIndexFilesResult> CreateLiveStreamRecordIndexFilesOutcome;
 			typedef std::future<CreateLiveStreamRecordIndexFilesOutcome> CreateLiveStreamRecordIndexFilesOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::CreateLiveStreamRecordIndexFilesRequest&, const CreateLiveStreamRecordIndexFilesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateLiveStreamRecordIndexFilesAsyncHandler;
-			typedef Outcome<Error, Model::CreateLiveTranscodeTemplateResult> CreateLiveTranscodeTemplateOutcome;
-			typedef std::future<CreateLiveTranscodeTemplateOutcome> CreateLiveTranscodeTemplateOutcomeCallable;
-			typedef std::function<void(const LiveClient*, const Model::CreateLiveTranscodeTemplateRequest&, const CreateLiveTranscodeTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateLiveTranscodeTemplateAsyncHandler;
 			typedef Outcome<Error, Model::CreateMessageAppResult> CreateMessageAppOutcome;
 			typedef std::future<CreateMessageAppOutcome> CreateMessageAppOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::CreateMessageAppRequest&, const CreateMessageAppOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateMessageAppAsyncHandler;
@@ -1044,6 +1034,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateRtcAsrTaskResult> CreateRtcAsrTaskOutcome;
 			typedef std::future<CreateRtcAsrTaskOutcome> CreateRtcAsrTaskOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::CreateRtcAsrTaskRequest&, const CreateRtcAsrTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateRtcAsrTaskAsyncHandler;
+			typedef Outcome<Error, Model::CreateRtcMPUEventSubResult> CreateRtcMPUEventSubOutcome;
+			typedef std::future<CreateRtcMPUEventSubOutcome> CreateRtcMPUEventSubOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::CreateRtcMPUEventSubRequest&, const CreateRtcMPUEventSubOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateRtcMPUEventSubAsyncHandler;
 			typedef Outcome<Error, Model::DeleteCasterResult> DeleteCasterOutcome;
 			typedef std::future<DeleteCasterOutcome> DeleteCasterOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DeleteCasterRequest&, const DeleteCasterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteCasterAsyncHandler;
@@ -1191,9 +1184,6 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteMixStreamResult> DeleteMixStreamOutcome;
 			typedef std::future<DeleteMixStreamOutcome> DeleteMixStreamOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DeleteMixStreamRequest&, const DeleteMixStreamOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteMixStreamAsyncHandler;
-			typedef Outcome<Error, Model::DeleteMultiRateConfigResult> DeleteMultiRateConfigOutcome;
-			typedef std::future<DeleteMultiRateConfigOutcome> DeleteMultiRateConfigOutcomeCallable;
-			typedef std::function<void(const LiveClient*, const Model::DeleteMultiRateConfigRequest&, const DeleteMultiRateConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteMultiRateConfigAsyncHandler;
 			typedef Outcome<Error, Model::DeletePlaylistResult> DeletePlaylistOutcome;
 			typedef std::future<DeletePlaylistOutcome> DeletePlaylistOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DeletePlaylistRequest&, const DeletePlaylistOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeletePlaylistAsyncHandler;
@@ -1203,6 +1193,12 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteRoomResult> DeleteRoomOutcome;
 			typedef std::future<DeleteRoomOutcome> DeleteRoomOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DeleteRoomRequest&, const DeleteRoomOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteRoomAsyncHandler;
+			typedef Outcome<Error, Model::DeleteRtcAsrTaskResult> DeleteRtcAsrTaskOutcome;
+			typedef std::future<DeleteRtcAsrTaskOutcome> DeleteRtcAsrTaskOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::DeleteRtcAsrTaskRequest&, const DeleteRtcAsrTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteRtcAsrTaskAsyncHandler;
+			typedef Outcome<Error, Model::DeleteRtcMPUEventSubResult> DeleteRtcMPUEventSubOutcome;
+			typedef std::future<DeleteRtcMPUEventSubOutcome> DeleteRtcMPUEventSubOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::DeleteRtcMPUEventSubRequest&, const DeleteRtcMPUEventSubOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteRtcMPUEventSubAsyncHandler;
 			typedef Outcome<Error, Model::DeleteSnapshotCallbackAuthResult> DeleteSnapshotCallbackAuthOutcome;
 			typedef std::future<DeleteSnapshotCallbackAuthOutcome> DeleteSnapshotCallbackAuthOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DeleteSnapshotCallbackAuthRequest&, const DeleteSnapshotCallbackAuthOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteSnapshotCallbackAuthAsyncHandler;
@@ -1620,12 +1616,12 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeRoomKickoutUserListResult> DescribeRoomKickoutUserListOutcome;
 			typedef std::future<DescribeRoomKickoutUserListOutcome> DescribeRoomKickoutUserListOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DescribeRoomKickoutUserListRequest&, const DescribeRoomKickoutUserListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRoomKickoutUserListAsyncHandler;
-			typedef Outcome<Error, Model::DescribeRoomListResult> DescribeRoomListOutcome;
-			typedef std::future<DescribeRoomListOutcome> DescribeRoomListOutcomeCallable;
-			typedef std::function<void(const LiveClient*, const Model::DescribeRoomListRequest&, const DescribeRoomListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRoomListAsyncHandler;
 			typedef Outcome<Error, Model::DescribeRoomStatusResult> DescribeRoomStatusOutcome;
 			typedef std::future<DescribeRoomStatusOutcome> DescribeRoomStatusOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DescribeRoomStatusRequest&, const DescribeRoomStatusOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRoomStatusAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRtcMPUEventSubResult> DescribeRtcMPUEventSubOutcome;
+			typedef std::future<DescribeRtcMPUEventSubOutcome> DescribeRtcMPUEventSubOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::DescribeRtcMPUEventSubRequest&, const DescribeRtcMPUEventSubOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRtcMPUEventSubAsyncHandler;
 			typedef Outcome<Error, Model::DescribeShowListResult> DescribeShowListOutcome;
 			typedef std::future<DescribeShowListOutcome> DescribeShowListOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DescribeShowListRequest&, const DescribeShowListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeShowListAsyncHandler;
@@ -1701,12 +1697,6 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetMessageTokenResult> GetMessageTokenOutcome;
 			typedef std::future<GetMessageTokenOutcome> GetMessageTokenOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::GetMessageTokenRequest&, const GetMessageTokenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMessageTokenAsyncHandler;
-			typedef Outcome<Error, Model::GetMultiRateConfigResult> GetMultiRateConfigOutcome;
-			typedef std::future<GetMultiRateConfigOutcome> GetMultiRateConfigOutcomeCallable;
-			typedef std::function<void(const LiveClient*, const Model::GetMultiRateConfigRequest&, const GetMultiRateConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMultiRateConfigAsyncHandler;
-			typedef Outcome<Error, Model::GetMultiRateConfigListResult> GetMultiRateConfigListOutcome;
-			typedef std::future<GetMultiRateConfigListOutcome> GetMultiRateConfigListOutcomeCallable;
-			typedef std::function<void(const LiveClient*, const Model::GetMultiRateConfigListRequest&, const GetMultiRateConfigListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMultiRateConfigListAsyncHandler;
 			typedef Outcome<Error, Model::GetTranscodeTaskStatusResult> GetTranscodeTaskStatusOutcome;
 			typedef std::future<GetTranscodeTaskStatusOutcome> GetTranscodeTaskStatusOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::GetTranscodeTaskStatusRequest&, const GetTranscodeTaskStatusOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetTranscodeTaskStatusAsyncHandler;
@@ -1788,6 +1778,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListPlaylistItemsResult> ListPlaylistItemsOutcome;
 			typedef std::future<ListPlaylistItemsOutcome> ListPlaylistItemsOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::ListPlaylistItemsRequest&, const ListPlaylistItemsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListPlaylistItemsAsyncHandler;
+			typedef Outcome<Error, Model::ListRtcMPUEventSubRecordResult> ListRtcMPUEventSubRecordOutcome;
+			typedef std::future<ListRtcMPUEventSubRecordOutcome> ListRtcMPUEventSubRecordOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::ListRtcMPUEventSubRecordRequest&, const ListRtcMPUEventSubRecordOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListRtcMPUEventSubRecordAsyncHandler;
 			typedef Outcome<Error, Model::MiguLivePullToPushStartResult> MiguLivePullToPushStartOutcome;
 			typedef std::future<MiguLivePullToPushStartOutcome> MiguLivePullToPushStartOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::MiguLivePullToPushStartRequest&, const MiguLivePullToPushStartOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> MiguLivePullToPushStartAsyncHandler;
@@ -1866,9 +1859,6 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::RealTimeRecordCommandResult> RealTimeRecordCommandOutcome;
 			typedef std::future<RealTimeRecordCommandOutcome> RealTimeRecordCommandOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::RealTimeRecordCommandRequest&, const RealTimeRecordCommandOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RealTimeRecordCommandAsyncHandler;
-			typedef Outcome<Error, Model::RealTimeSnapshotCommandResult> RealTimeSnapshotCommandOutcome;
-			typedef std::future<RealTimeSnapshotCommandOutcome> RealTimeSnapshotCommandOutcomeCallable;
-			typedef std::function<void(const LiveClient*, const Model::RealTimeSnapshotCommandRequest&, const RealTimeSnapshotCommandOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RealTimeSnapshotCommandAsyncHandler;
 			typedef Outcome<Error, Model::RemoveShowFromShowListResult> RemoveShowFromShowListOutcome;
 			typedef std::future<RemoveShowFromShowListOutcome> RemoveShowFromShowListOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::RemoveShowFromShowListRequest&, const RemoveShowFromShowListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RemoveShowFromShowListAsyncHandler;
@@ -1944,9 +1934,6 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::SetLiveStreamDelayConfigResult> SetLiveStreamDelayConfigOutcome;
 			typedef std::future<SetLiveStreamDelayConfigOutcome> SetLiveStreamDelayConfigOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::SetLiveStreamDelayConfigRequest&, const SetLiveStreamDelayConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SetLiveStreamDelayConfigAsyncHandler;
-			typedef Outcome<Error, Model::SetLiveStreamOptimizedFeatureConfigResult> SetLiveStreamOptimizedFeatureConfigOutcome;
-			typedef std::future<SetLiveStreamOptimizedFeatureConfigOutcome> SetLiveStreamOptimizedFeatureConfigOutcomeCallable;
-			typedef std::function<void(const LiveClient*, const Model::SetLiveStreamOptimizedFeatureConfigRequest&, const SetLiveStreamOptimizedFeatureConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SetLiveStreamOptimizedFeatureConfigAsyncHandler;
 			typedef Outcome<Error, Model::SetLiveStreamPreloadTasksResult> SetLiveStreamPreloadTasksOutcome;
 			typedef std::future<SetLiveStreamPreloadTasksOutcome> SetLiveStreamPreloadTasksOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::SetLiveStreamPreloadTasksRequest&, const SetLiveStreamPreloadTasksOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SetLiveStreamPreloadTasksAsyncHandler;
@@ -2088,6 +2075,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::UpdateMixStreamResult> UpdateMixStreamOutcome;
 			typedef std::future<UpdateMixStreamOutcome> UpdateMixStreamOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::UpdateMixStreamRequest&, const UpdateMixStreamOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateMixStreamAsyncHandler;
+			typedef Outcome<Error, Model::UpdateRtcMPUEventSubResult> UpdateRtcMPUEventSubOutcome;
+			typedef std::future<UpdateRtcMPUEventSubOutcome> UpdateRtcMPUEventSubOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::UpdateRtcMPUEventSubRequest&, const UpdateRtcMPUEventSubOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateRtcMPUEventSubAsyncHandler;
 			typedef Outcome<Error, Model::VerifyLiveDomainOwnerResult> VerifyLiveDomainOwnerOutcome;
 			typedef std::future<VerifyLiveDomainOwnerOutcome> VerifyLiveDomainOwnerOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::VerifyLiveDomainOwnerRequest&, const VerifyLiveDomainOwnerOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> VerifyLiveDomainOwnerAsyncHandler;
@@ -2183,9 +2173,6 @@ namespace AlibabaCloud
 			AddLiveStreamWatermarkRuleOutcome addLiveStreamWatermarkRule(const Model::AddLiveStreamWatermarkRuleRequest &request)const;
 			void addLiveStreamWatermarkRuleAsync(const Model::AddLiveStreamWatermarkRuleRequest& request, const AddLiveStreamWatermarkRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AddLiveStreamWatermarkRuleOutcomeCallable addLiveStreamWatermarkRuleCallable(const Model::AddLiveStreamWatermarkRuleRequest& request) const;
-			AddMultiRateConfigOutcome addMultiRateConfig(const Model::AddMultiRateConfigRequest &request)const;
-			void addMultiRateConfigAsync(const Model::AddMultiRateConfigRequest& request, const AddMultiRateConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
-			AddMultiRateConfigOutcomeCallable addMultiRateConfigCallable(const Model::AddMultiRateConfigRequest& request) const;
 			AddPlaylistItemsOutcome addPlaylistItems(const Model::AddPlaylistItemsRequest &request)const;
 			void addPlaylistItemsAsync(const Model::AddPlaylistItemsRequest& request, const AddPlaylistItemsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AddPlaylistItemsOutcomeCallable addPlaylistItemsCallable(const Model::AddPlaylistItemsRequest& request) const;
@@ -2267,9 +2254,6 @@ namespace AlibabaCloud
 			CreateLiveStreamRecordIndexFilesOutcome createLiveStreamRecordIndexFiles(const Model::CreateLiveStreamRecordIndexFilesRequest &request)const;
 			void createLiveStreamRecordIndexFilesAsync(const Model::CreateLiveStreamRecordIndexFilesRequest& request, const CreateLiveStreamRecordIndexFilesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateLiveStreamRecordIndexFilesOutcomeCallable createLiveStreamRecordIndexFilesCallable(const Model::CreateLiveStreamRecordIndexFilesRequest& request) const;
-			CreateLiveTranscodeTemplateOutcome createLiveTranscodeTemplate(const Model::CreateLiveTranscodeTemplateRequest &request)const;
-			void createLiveTranscodeTemplateAsync(const Model::CreateLiveTranscodeTemplateRequest& request, const CreateLiveTranscodeTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
-			CreateLiveTranscodeTemplateOutcomeCallable createLiveTranscodeTemplateCallable(const Model::CreateLiveTranscodeTemplateRequest& request) const;
 			CreateMessageAppOutcome createMessageApp(const Model::CreateMessageAppRequest &request)const;
 			void createMessageAppAsync(const Model::CreateMessageAppRequest& request, const CreateMessageAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateMessageAppOutcomeCallable createMessageAppCallable(const Model::CreateMessageAppRequest& request) const;
@@ -2285,6 +2269,9 @@ namespace AlibabaCloud
 			CreateRtcAsrTaskOutcome createRtcAsrTask(const Model::CreateRtcAsrTaskRequest &request)const;
 			void createRtcAsrTaskAsync(const Model::CreateRtcAsrTaskRequest& request, const CreateRtcAsrTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateRtcAsrTaskOutcomeCallable createRtcAsrTaskCallable(const Model::CreateRtcAsrTaskRequest& request) const;
+			CreateRtcMPUEventSubOutcome createRtcMPUEventSub(const Model::CreateRtcMPUEventSubRequest &request)const;
+			void createRtcMPUEventSubAsync(const Model::CreateRtcMPUEventSubRequest& request, const CreateRtcMPUEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateRtcMPUEventSubOutcomeCallable createRtcMPUEventSubCallable(const Model::CreateRtcMPUEventSubRequest& request) const;
 			DeleteCasterOutcome deleteCaster(const Model::DeleteCasterRequest &request)const;
 			void deleteCasterAsync(const Model::DeleteCasterRequest& request, const DeleteCasterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteCasterOutcomeCallable deleteCasterCallable(const Model::DeleteCasterRequest& request) const;
@@ -2432,9 +2419,6 @@ namespace AlibabaCloud
 			DeleteMixStreamOutcome deleteMixStream(const Model::DeleteMixStreamRequest &request)const;
 			void deleteMixStreamAsync(const Model::DeleteMixStreamRequest& request, const DeleteMixStreamAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteMixStreamOutcomeCallable deleteMixStreamCallable(const Model::DeleteMixStreamRequest& request) const;
-			DeleteMultiRateConfigOutcome deleteMultiRateConfig(const Model::DeleteMultiRateConfigRequest &request)const;
-			void deleteMultiRateConfigAsync(const Model::DeleteMultiRateConfigRequest& request, const DeleteMultiRateConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
-			DeleteMultiRateConfigOutcomeCallable deleteMultiRateConfigCallable(const Model::DeleteMultiRateConfigRequest& request) const;
 			DeletePlaylistOutcome deletePlaylist(const Model::DeletePlaylistRequest &request)const;
 			void deletePlaylistAsync(const Model::DeletePlaylistRequest& request, const DeletePlaylistAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeletePlaylistOutcomeCallable deletePlaylistCallable(const Model::DeletePlaylistRequest& request) const;
@@ -2444,6 +2428,12 @@ namespace AlibabaCloud
 			DeleteRoomOutcome deleteRoom(const Model::DeleteRoomRequest &request)const;
 			void deleteRoomAsync(const Model::DeleteRoomRequest& request, const DeleteRoomAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteRoomOutcomeCallable deleteRoomCallable(const Model::DeleteRoomRequest& request) const;
+			DeleteRtcAsrTaskOutcome deleteRtcAsrTask(const Model::DeleteRtcAsrTaskRequest &request)const;
+			void deleteRtcAsrTaskAsync(const Model::DeleteRtcAsrTaskRequest& request, const DeleteRtcAsrTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteRtcAsrTaskOutcomeCallable deleteRtcAsrTaskCallable(const Model::DeleteRtcAsrTaskRequest& request) const;
+			DeleteRtcMPUEventSubOutcome deleteRtcMPUEventSub(const Model::DeleteRtcMPUEventSubRequest &request)const;
+			void deleteRtcMPUEventSubAsync(const Model::DeleteRtcMPUEventSubRequest& request, const DeleteRtcMPUEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteRtcMPUEventSubOutcomeCallable deleteRtcMPUEventSubCallable(const Model::DeleteRtcMPUEventSubRequest& request) const;
 			DeleteSnapshotCallbackAuthOutcome deleteSnapshotCallbackAuth(const Model::DeleteSnapshotCallbackAuthRequest &request)const;
 			void deleteSnapshotCallbackAuthAsync(const Model::DeleteSnapshotCallbackAuthRequest& request, const DeleteSnapshotCallbackAuthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteSnapshotCallbackAuthOutcomeCallable deleteSnapshotCallbackAuthCallable(const Model::DeleteSnapshotCallbackAuthRequest& request) const;
@@ -2861,12 +2851,12 @@ namespace AlibabaCloud
 			DescribeRoomKickoutUserListOutcome describeRoomKickoutUserList(const Model::DescribeRoomKickoutUserListRequest &request)const;
 			void describeRoomKickoutUserListAsync(const Model::DescribeRoomKickoutUserListRequest& request, const DescribeRoomKickoutUserListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeRoomKickoutUserListOutcomeCallable describeRoomKickoutUserListCallable(const Model::DescribeRoomKickoutUserListRequest& request) const;
-			DescribeRoomListOutcome describeRoomList(const Model::DescribeRoomListRequest &request)const;
-			void describeRoomListAsync(const Model::DescribeRoomListRequest& request, const DescribeRoomListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
-			DescribeRoomListOutcomeCallable describeRoomListCallable(const Model::DescribeRoomListRequest& request) const;
 			DescribeRoomStatusOutcome describeRoomStatus(const Model::DescribeRoomStatusRequest &request)const;
 			void describeRoomStatusAsync(const Model::DescribeRoomStatusRequest& request, const DescribeRoomStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeRoomStatusOutcomeCallable describeRoomStatusCallable(const Model::DescribeRoomStatusRequest& request) const;
+			DescribeRtcMPUEventSubOutcome describeRtcMPUEventSub(const Model::DescribeRtcMPUEventSubRequest &request)const;
+			void describeRtcMPUEventSubAsync(const Model::DescribeRtcMPUEventSubRequest& request, const DescribeRtcMPUEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRtcMPUEventSubOutcomeCallable describeRtcMPUEventSubCallable(const Model::DescribeRtcMPUEventSubRequest& request) const;
 			DescribeShowListOutcome describeShowList(const Model::DescribeShowListRequest &request)const;
 			void describeShowListAsync(const Model::DescribeShowListRequest& request, const DescribeShowListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeShowListOutcomeCallable describeShowListCallable(const Model::DescribeShowListRequest& request) const;
@@ -2942,12 +2932,6 @@ namespace AlibabaCloud
 			GetMessageTokenOutcome getMessageToken(const Model::GetMessageTokenRequest &request)const;
 			void getMessageTokenAsync(const Model::GetMessageTokenRequest& request, const GetMessageTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetMessageTokenOutcomeCallable getMessageTokenCallable(const Model::GetMessageTokenRequest& request) const;
-			GetMultiRateConfigOutcome getMultiRateConfig(const Model::GetMultiRateConfigRequest &request)const;
-			void getMultiRateConfigAsync(const Model::GetMultiRateConfigRequest& request, const GetMultiRateConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
-			GetMultiRateConfigOutcomeCallable getMultiRateConfigCallable(const Model::GetMultiRateConfigRequest& request) const;
-			GetMultiRateConfigListOutcome getMultiRateConfigList(const Model::GetMultiRateConfigListRequest &request)const;
-			void getMultiRateConfigListAsync(const Model::GetMultiRateConfigListRequest& request, const GetMultiRateConfigListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
-			GetMultiRateConfigListOutcomeCallable getMultiRateConfigListCallable(const Model::GetMultiRateConfigListRequest& request) const;
 			GetTranscodeTaskStatusOutcome getTranscodeTaskStatus(const Model::GetTranscodeTaskStatusRequest &request)const;
 			void getTranscodeTaskStatusAsync(const Model::GetTranscodeTaskStatusRequest& request, const GetTranscodeTaskStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetTranscodeTaskStatusOutcomeCallable getTranscodeTaskStatusCallable(const Model::GetTranscodeTaskStatusRequest& request) const;
@@ -3029,6 +3013,9 @@ namespace AlibabaCloud
 			ListPlaylistItemsOutcome listPlaylistItems(const Model::ListPlaylistItemsRequest &request)const;
 			void listPlaylistItemsAsync(const Model::ListPlaylistItemsRequest& request, const ListPlaylistItemsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListPlaylistItemsOutcomeCallable listPlaylistItemsCallable(const Model::ListPlaylistItemsRequest& request) const;
+			ListRtcMPUEventSubRecordOutcome listRtcMPUEventSubRecord(const Model::ListRtcMPUEventSubRecordRequest &request)const;
+			void listRtcMPUEventSubRecordAsync(const Model::ListRtcMPUEventSubRecordRequest& request, const ListRtcMPUEventSubRecordAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListRtcMPUEventSubRecordOutcomeCallable listRtcMPUEventSubRecordCallable(const Model::ListRtcMPUEventSubRecordRequest& request) const;
 			MiguLivePullToPushStartOutcome miguLivePullToPushStart(const Model::MiguLivePullToPushStartRequest &request)const;
 			void miguLivePullToPushStartAsync(const Model::MiguLivePullToPushStartRequest& request, const MiguLivePullToPushStartAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			MiguLivePullToPushStartOutcomeCallable miguLivePullToPushStartCallable(const Model::MiguLivePullToPushStartRequest& request) const;
@@ -3107,9 +3094,6 @@ namespace AlibabaCloud
 			RealTimeRecordCommandOutcome realTimeRecordCommand(const Model::RealTimeRecordCommandRequest &request)const;
 			void realTimeRecordCommandAsync(const Model::RealTimeRecordCommandRequest& request, const RealTimeRecordCommandAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			RealTimeRecordCommandOutcomeCallable realTimeRecordCommandCallable(const Model::RealTimeRecordCommandRequest& request) const;
-			RealTimeSnapshotCommandOutcome realTimeSnapshotCommand(const Model::RealTimeSnapshotCommandRequest &request)const;
-			void realTimeSnapshotCommandAsync(const Model::RealTimeSnapshotCommandRequest& request, const RealTimeSnapshotCommandAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
-			RealTimeSnapshotCommandOutcomeCallable realTimeSnapshotCommandCallable(const Model::RealTimeSnapshotCommandRequest& request) const;
 			RemoveShowFromShowListOutcome removeShowFromShowList(const Model::RemoveShowFromShowListRequest &request)const;
 			void removeShowFromShowListAsync(const Model::RemoveShowFromShowListRequest& request, const RemoveShowFromShowListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			RemoveShowFromShowListOutcomeCallable removeShowFromShowListCallable(const Model::RemoveShowFromShowListRequest& request) const;
@@ -3185,9 +3169,6 @@ namespace AlibabaCloud
 			SetLiveStreamDelayConfigOutcome setLiveStreamDelayConfig(const Model::SetLiveStreamDelayConfigRequest &request)const;
 			void setLiveStreamDelayConfigAsync(const Model::SetLiveStreamDelayConfigRequest& request, const SetLiveStreamDelayConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SetLiveStreamDelayConfigOutcomeCallable setLiveStreamDelayConfigCallable(const Model::SetLiveStreamDelayConfigRequest& request) const;
-			SetLiveStreamOptimizedFeatureConfigOutcome setLiveStreamOptimizedFeatureConfig(const Model::SetLiveStreamOptimizedFeatureConfigRequest &request)const;
-			void setLiveStreamOptimizedFeatureConfigAsync(const Model::SetLiveStreamOptimizedFeatureConfigRequest& request, const SetLiveStreamOptimizedFeatureConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
-			SetLiveStreamOptimizedFeatureConfigOutcomeCallable setLiveStreamOptimizedFeatureConfigCallable(const Model::SetLiveStreamOptimizedFeatureConfigRequest& request) const;
 			SetLiveStreamPreloadTasksOutcome setLiveStreamPreloadTasks(const Model::SetLiveStreamPreloadTasksRequest &request)const;
 			void setLiveStreamPreloadTasksAsync(const Model::SetLiveStreamPreloadTasksRequest& request, const SetLiveStreamPreloadTasksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SetLiveStreamPreloadTasksOutcomeCallable setLiveStreamPreloadTasksCallable(const Model::SetLiveStreamPreloadTasksRequest& request) const;
@@ -3329,6 +3310,9 @@ namespace AlibabaCloud
 			UpdateMixStreamOutcome updateMixStream(const Model::UpdateMixStreamRequest &request)const;
 			void updateMixStreamAsync(const Model::UpdateMixStreamRequest& request, const UpdateMixStreamAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateMixStreamOutcomeCallable updateMixStreamCallable(const Model::UpdateMixStreamRequest& request) const;
+			UpdateRtcMPUEventSubOutcome updateRtcMPUEventSub(const Model::UpdateRtcMPUEventSubRequest &request)const;
+			void updateRtcMPUEventSubAsync(const Model::UpdateRtcMPUEventSubRequest& request, const UpdateRtcMPUEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateRtcMPUEventSubOutcomeCallable updateRtcMPUEventSubCallable(const Model::UpdateRtcMPUEventSubRequest& request) const;
 			VerifyLiveDomainOwnerOutcome verifyLiveDomainOwner(const Model::VerifyLiveDomainOwnerRequest &request)const;
 			void verifyLiveDomainOwnerAsync(const Model::VerifyLiveDomainOwnerRequest& request, const VerifyLiveDomainOwnerAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			VerifyLiveDomainOwnerOutcomeCallable verifyLiveDomainOwnerCallable(const Model::VerifyLiveDomainOwnerRequest& request) const;

+ 0 - 63
live/include/alibabacloud/live/model/AddMultiRateConfigRequest.h

@@ -1,63 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ALIBABACLOUD_LIVE_MODEL_ADDMULTIRATECONFIGREQUEST_H_
-#define ALIBABACLOUD_LIVE_MODEL_ADDMULTIRATECONFIGREQUEST_H_
-
-#include <alibabacloud/live/LiveExport.h>
-#include <alibabacloud/core/RpcServiceRequest.h>
-#include <string>
-#include <vector>
-#include <map>
-
-namespace AlibabaCloud {
-namespace Live {
-namespace Model {
-class ALIBABACLOUD_LIVE_EXPORT AddMultiRateConfigRequest : public RpcServiceRequest {
-public:
-	AddMultiRateConfigRequest();
-	~AddMultiRateConfigRequest();
-	std::string getApp() const;
-	void setApp(const std::string &app);
-	std::string getGroupId() const;
-	void setGroupId(const std::string &groupId);
-	std::string getTemplates() const;
-	void setTemplates(const std::string &templates);
-	std::string getDomainName() const;
-	void setDomainName(const std::string &domainName);
-	long getOwnerId() const;
-	void setOwnerId(long ownerId);
-	std::string getIsLazy() const;
-	void setIsLazy(const std::string &isLazy);
-	std::string getAvFormat() const;
-	void setAvFormat(const std::string &avFormat);
-	std::string getIsTimeAlign() const;
-	void setIsTimeAlign(const std::string &isTimeAlign);
-
-private:
-	std::string app_;
-	std::string groupId_;
-	std::string templates_;
-	std::string domainName_;
-	long ownerId_;
-	std::string isLazy_;
-	std::string avFormat_;
-	std::string isTimeAlign_;
-};
-} // namespace Model
-} // namespace Live
-} // namespace AlibabaCloud
-#endif // !ALIBABACLOUD_LIVE_MODEL_ADDMULTIRATECONFIGREQUEST_H_

+ 0 - 72
live/include/alibabacloud/live/model/AddMultiRateConfigResult.h

@@ -1,72 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ALIBABACLOUD_LIVE_MODEL_ADDMULTIRATECONFIGRESULT_H_
-#define ALIBABACLOUD_LIVE_MODEL_ADDMULTIRATECONFIGRESULT_H_
-
-#include <string>
-#include <vector>
-#include <utility>
-#include <alibabacloud/core/ServiceResult.h>
-#include <alibabacloud/live/LiveExport.h>
-
-namespace AlibabaCloud
-{
-	namespace Live
-	{
-		namespace Model
-		{
-			class ALIBABACLOUD_LIVE_EXPORT AddMultiRateConfigResult : public ServiceResult
-			{
-			public:
-				struct FailedTemplates
-				{
-					std::string _template;
-					int fps;
-					std::string gop;
-					std::string templateType;
-					int profile;
-					int bandWidth;
-					int audioBitrate;
-					std::string audioProfile;
-					int height;
-					int audioChannelNum;
-					int width;
-					int audioRate;
-					std::string audioCodec;
-					int videoBitrate;
-				};
-
-
-				AddMultiRateConfigResult();
-				explicit AddMultiRateConfigResult(const std::string &payload);
-				~AddMultiRateConfigResult();
-				std::string getMessage()const;
-				std::vector<FailedTemplates> getBody()const;
-				int getCode()const;
-
-			protected:
-				void parse(const std::string &payload);
-			private:
-				std::string message_;
-				std::vector<FailedTemplates> body_;
-				int code_;
-
-			};
-		}
-	}
-}
-#endif // !ALIBABACLOUD_LIVE_MODEL_ADDMULTIRATECONFIGRESULT_H_

+ 15 - 18
live/include/alibabacloud/live/model/GetMultiRateConfigRequest.h → live/include/alibabacloud/live/model/CreateRtcMPUEventSubRequest.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGREQUEST_H_
-#define ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGREQUEST_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_CREATERTCMPUEVENTSUBREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_CREATERTCMPUEVENTSUBREQUEST_H_
 
 #include <alibabacloud/live/LiveExport.h>
 #include <alibabacloud/core/RpcServiceRequest.h>
@@ -26,26 +26,23 @@
 namespace AlibabaCloud {
 namespace Live {
 namespace Model {
-class ALIBABACLOUD_LIVE_EXPORT GetMultiRateConfigRequest : public RpcServiceRequest {
+class ALIBABACLOUD_LIVE_EXPORT CreateRtcMPUEventSubRequest : public RpcServiceRequest {
 public:
-	GetMultiRateConfigRequest();
-	~GetMultiRateConfigRequest();
-	std::string getApp() const;
-	void setApp(const std::string &app);
-	std::string getGroupId() const;
-	void setGroupId(const std::string &groupId);
-	std::string getDomainName() const;
-	void setDomainName(const std::string &domainName);
-	long getOwnerId() const;
-	void setOwnerId(long ownerId);
+	CreateRtcMPUEventSubRequest();
+	~CreateRtcMPUEventSubRequest();
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+	std::string getCallbackUrl() const;
+	void setCallbackUrl(const std::string &callbackUrl);
+	std::string getChannelIds() const;
+	void setChannelIds(const std::string &channelIds);
 
 private:
-	std::string app_;
-	std::string groupId_;
-	std::string domainName_;
-	long ownerId_;
+	std::string appId_;
+	std::string callbackUrl_;
+	std::string channelIds_;
 };
 } // namespace Model
 } // namespace Live
 } // namespace AlibabaCloud
-#endif // !ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGREQUEST_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_CREATERTCMPUEVENTSUBREQUEST_H_

+ 9 - 7
live/include/alibabacloud/live/model/SetLiveStreamOptimizedFeatureConfigResult.h → live/include/alibabacloud/live/model/CreateRtcMPUEventSubResult.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_SETLIVESTREAMOPTIMIZEDFEATURECONFIGRESULT_H_
-#define ALIBABACLOUD_LIVE_MODEL_SETLIVESTREAMOPTIMIZEDFEATURECONFIGRESULT_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_CREATERTCMPUEVENTSUBRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_CREATERTCMPUEVENTSUBRESULT_H_
 
 #include <string>
 #include <vector>
@@ -29,21 +29,23 @@ namespace AlibabaCloud
 	{
 		namespace Model
 		{
-			class ALIBABACLOUD_LIVE_EXPORT SetLiveStreamOptimizedFeatureConfigResult : public ServiceResult
+			class ALIBABACLOUD_LIVE_EXPORT CreateRtcMPUEventSubResult : public ServiceResult
 			{
 			public:
 
 
-				SetLiveStreamOptimizedFeatureConfigResult();
-				explicit SetLiveStreamOptimizedFeatureConfigResult(const std::string &payload);
-				~SetLiveStreamOptimizedFeatureConfigResult();
+				CreateRtcMPUEventSubResult();
+				explicit CreateRtcMPUEventSubResult(const std::string &payload);
+				~CreateRtcMPUEventSubResult();
+				std::string getSubId()const;
 
 			protected:
 				void parse(const std::string &payload);
 			private:
+				std::string subId_;
 
 			};
 		}
 	}
 }
-#endif // !ALIBABACLOUD_LIVE_MODEL_SETLIVESTREAMOPTIMIZEDFEATURECONFIGRESULT_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_CREATERTCMPUEVENTSUBRESULT_H_

+ 0 - 57
live/include/alibabacloud/live/model/DeleteMultiRateConfigRequest.h

@@ -1,57 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ALIBABACLOUD_LIVE_MODEL_DELETEMULTIRATECONFIGREQUEST_H_
-#define ALIBABACLOUD_LIVE_MODEL_DELETEMULTIRATECONFIGREQUEST_H_
-
-#include <alibabacloud/live/LiveExport.h>
-#include <alibabacloud/core/RpcServiceRequest.h>
-#include <string>
-#include <vector>
-#include <map>
-
-namespace AlibabaCloud {
-namespace Live {
-namespace Model {
-class ALIBABACLOUD_LIVE_EXPORT DeleteMultiRateConfigRequest : public RpcServiceRequest {
-public:
-	DeleteMultiRateConfigRequest();
-	~DeleteMultiRateConfigRequest();
-	std::string getDeleteAll() const;
-	void setDeleteAll(const std::string &deleteAll);
-	std::string getApp() const;
-	void setApp(const std::string &app);
-	std::string getGroupId() const;
-	void setGroupId(const std::string &groupId);
-	std::string getTemplates() const;
-	void setTemplates(const std::string &templates);
-	std::string getDomainName() const;
-	void setDomainName(const std::string &domainName);
-	long getOwnerId() const;
-	void setOwnerId(long ownerId);
-
-private:
-	std::string deleteAll_;
-	std::string app_;
-	std::string groupId_;
-	std::string templates_;
-	std::string domainName_;
-	long ownerId_;
-};
-} // namespace Model
-} // namespace Live
-} // namespace AlibabaCloud
-#endif // !ALIBABACLOUD_LIVE_MODEL_DELETEMULTIRATECONFIGREQUEST_H_

+ 9 - 9
live/include/alibabacloud/live/model/GetMultiRateConfigListRequest.h → live/include/alibabacloud/live/model/DeleteRtcAsrTaskRequest.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGLISTREQUEST_H_
-#define ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGLISTREQUEST_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_DELETERTCASRTASKREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_DELETERTCASRTASKREQUEST_H_
 
 #include <alibabacloud/live/LiveExport.h>
 #include <alibabacloud/core/RpcServiceRequest.h>
@@ -26,20 +26,20 @@
 namespace AlibabaCloud {
 namespace Live {
 namespace Model {
-class ALIBABACLOUD_LIVE_EXPORT GetMultiRateConfigListRequest : public RpcServiceRequest {
+class ALIBABACLOUD_LIVE_EXPORT DeleteRtcAsrTaskRequest : public RpcServiceRequest {
 public:
-	GetMultiRateConfigListRequest();
-	~GetMultiRateConfigListRequest();
-	std::string getDomainName() const;
-	void setDomainName(const std::string &domainName);
+	DeleteRtcAsrTaskRequest();
+	~DeleteRtcAsrTaskRequest();
+	std::string getTaskId() const;
+	void setTaskId(const std::string &taskId);
 	long getOwnerId() const;
 	void setOwnerId(long ownerId);
 
 private:
-	std::string domainName_;
+	std::string taskId_;
 	long ownerId_;
 };
 } // namespace Model
 } // namespace Live
 } // namespace AlibabaCloud
-#endif // !ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGLISTREQUEST_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_DELETERTCASRTASKREQUEST_H_

+ 11 - 11
live/include/alibabacloud/live/model/DeleteMultiRateConfigResult.h → live/include/alibabacloud/live/model/DeleteRtcAsrTaskResult.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_DELETEMULTIRATECONFIGRESULT_H_
-#define ALIBABACLOUD_LIVE_MODEL_DELETEMULTIRATECONFIGRESULT_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_DELETERTCASRTASKRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_DELETERTCASRTASKRESULT_H_
 
 #include <string>
 #include <vector>
@@ -29,25 +29,25 @@ namespace AlibabaCloud
 	{
 		namespace Model
 		{
-			class ALIBABACLOUD_LIVE_EXPORT DeleteMultiRateConfigResult : public ServiceResult
+			class ALIBABACLOUD_LIVE_EXPORT DeleteRtcAsrTaskResult : public ServiceResult
 			{
 			public:
 
 
-				DeleteMultiRateConfigResult();
-				explicit DeleteMultiRateConfigResult(const std::string &payload);
-				~DeleteMultiRateConfigResult();
-				std::string getMessage()const;
-				int getCode()const;
+				DeleteRtcAsrTaskResult();
+				explicit DeleteRtcAsrTaskResult(const std::string &payload);
+				~DeleteRtcAsrTaskResult();
+				std::string getDescription()const;
+				long getRetCode()const;
 
 			protected:
 				void parse(const std::string &payload);
 			private:
-				std::string message_;
-				int code_;
+				std::string description_;
+				long retCode_;
 
 			};
 		}
 	}
 }
-#endif // !ALIBABACLOUD_LIVE_MODEL_DELETEMULTIRATECONFIGRESULT_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_DELETERTCASRTASKRESULT_H_

+ 9 - 18
live/include/alibabacloud/live/model/CreateLiveTranscodeTemplateRequest.h → live/include/alibabacloud/live/model/DeleteRtcMPUEventSubRequest.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_CREATELIVETRANSCODETEMPLATEREQUEST_H_
-#define ALIBABACLOUD_LIVE_MODEL_CREATELIVETRANSCODETEMPLATEREQUEST_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_DELETERTCMPUEVENTSUBREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_DELETERTCMPUEVENTSUBREQUEST_H_
 
 #include <alibabacloud/live/LiveExport.h>
 #include <alibabacloud/core/RpcServiceRequest.h>
@@ -26,26 +26,17 @@
 namespace AlibabaCloud {
 namespace Live {
 namespace Model {
-class ALIBABACLOUD_LIVE_EXPORT CreateLiveTranscodeTemplateRequest : public RpcServiceRequest {
+class ALIBABACLOUD_LIVE_EXPORT DeleteRtcMPUEventSubRequest : public RpcServiceRequest {
 public:
-	CreateLiveTranscodeTemplateRequest();
-	~CreateLiveTranscodeTemplateRequest();
-	std::string getType() const;
-	void setType(const std::string &type);
-	std::string getSecurityToken() const;
-	void setSecurityToken(const std::string &securityToken);
-	std::string getTemplateConfig() const;
-	void setTemplateConfig(const std::string &templateConfig);
-	long getOwnerId() const;
-	void setOwnerId(long ownerId);
+	DeleteRtcMPUEventSubRequest();
+	~DeleteRtcMPUEventSubRequest();
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
 
 private:
-	std::string type_;
-	std::string securityToken_;
-	std::string templateConfig_;
-	long ownerId_;
+	std::string appId_;
 };
 } // namespace Model
 } // namespace Live
 } // namespace AlibabaCloud
-#endif // !ALIBABACLOUD_LIVE_MODEL_CREATELIVETRANSCODETEMPLATEREQUEST_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_DELETERTCMPUEVENTSUBREQUEST_H_

+ 7 - 7
live/include/alibabacloud/live/model/RealTimeSnapshotCommandResult.h → live/include/alibabacloud/live/model/DeleteRtcMPUEventSubResult.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_REALTIMESNAPSHOTCOMMANDRESULT_H_
-#define ALIBABACLOUD_LIVE_MODEL_REALTIMESNAPSHOTCOMMANDRESULT_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_DELETERTCMPUEVENTSUBRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_DELETERTCMPUEVENTSUBRESULT_H_
 
 #include <string>
 #include <vector>
@@ -29,14 +29,14 @@ namespace AlibabaCloud
 	{
 		namespace Model
 		{
-			class ALIBABACLOUD_LIVE_EXPORT RealTimeSnapshotCommandResult : public ServiceResult
+			class ALIBABACLOUD_LIVE_EXPORT DeleteRtcMPUEventSubResult : public ServiceResult
 			{
 			public:
 
 
-				RealTimeSnapshotCommandResult();
-				explicit RealTimeSnapshotCommandResult(const std::string &payload);
-				~RealTimeSnapshotCommandResult();
+				DeleteRtcMPUEventSubResult();
+				explicit DeleteRtcMPUEventSubResult(const std::string &payload);
+				~DeleteRtcMPUEventSubResult();
 
 			protected:
 				void parse(const std::string &payload);
@@ -46,4 +46,4 @@ namespace AlibabaCloud
 		}
 	}
 }
-#endif // !ALIBABACLOUD_LIVE_MODEL_REALTIMESNAPSHOTCOMMANDRESULT_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_DELETERTCMPUEVENTSUBRESULT_H_

+ 3 - 0
live/include/alibabacloud/live/model/DescribeLiveAISubtitleRequest.h

@@ -36,6 +36,8 @@ public:
 	void setPageNumber(const std::string &pageNumber);
 	std::string getPageSize() const;
 	void setPageSize(const std::string &pageSize);
+	bool getIsDefault() const;
+	void setIsDefault(bool isDefault);
 	long getOwnerId() const;
 	void setOwnerId(long ownerId);
 	std::string getSubtitleId() const;
@@ -45,6 +47,7 @@ private:
 	std::string subtitleName_;
 	std::string pageNumber_;
 	std::string pageSize_;
+	bool isDefault_;
 	long ownerId_;
 	std::string subtitleId_;
 };

+ 42 - 0
live/include/alibabacloud/live/model/DescribeRtcMPUEventSubRequest.h

@@ -0,0 +1,42 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_LIVE_MODEL_DESCRIBERTCMPUEVENTSUBREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_DESCRIBERTCMPUEVENTSUBREQUEST_H_
+
+#include <alibabacloud/live/LiveExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Live {
+namespace Model {
+class ALIBABACLOUD_LIVE_EXPORT DescribeRtcMPUEventSubRequest : public RpcServiceRequest {
+public:
+	DescribeRtcMPUEventSubRequest();
+	~DescribeRtcMPUEventSubRequest();
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+
+private:
+	std::string appId_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_DESCRIBERTCMPUEVENTSUBREQUEST_H_

+ 14 - 18
live/include/alibabacloud/live/model/DescribeRoomListResult.h → live/include/alibabacloud/live/model/DescribeRtcMPUEventSubResult.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_DESCRIBEROOMLISTRESULT_H_
-#define ALIBABACLOUD_LIVE_MODEL_DESCRIBEROOMLISTRESULT_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_DESCRIBERTCMPUEVENTSUBRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_DESCRIBERTCMPUEVENTSUBRESULT_H_
 
 #include <string>
 #include <vector>
@@ -29,35 +29,31 @@ namespace AlibabaCloud
 	{
 		namespace Model
 		{
-			class ALIBABACLOUD_LIVE_EXPORT DescribeRoomListResult : public ServiceResult
+			class ALIBABACLOUD_LIVE_EXPORT DescribeRtcMPUEventSubResult : public ServiceResult
 			{
 			public:
-				struct Room
+				struct SubInfo
 				{
-					int roomStatus;
-					std::string anchorId;
+					std::string callbackUrl;
+					std::string subId;
+					std::string appId;
 					std::string createTime;
-					std::string roomId;
-					std::string forbidStream;
+					std::string channelIds;
 				};
 
 
-				DescribeRoomListResult();
-				explicit DescribeRoomListResult(const std::string &payload);
-				~DescribeRoomListResult();
-				int getTotalNum()const;
-				int getTotalPage()const;
-				std::vector<Room> getRoomList()const;
+				DescribeRtcMPUEventSubResult();
+				explicit DescribeRtcMPUEventSubResult(const std::string &payload);
+				~DescribeRtcMPUEventSubResult();
+				SubInfo getSubInfo()const;
 
 			protected:
 				void parse(const std::string &payload);
 			private:
-				int totalNum_;
-				int totalPage_;
-				std::vector<Room> roomList_;
+				SubInfo subInfo_;
 
 			};
 		}
 	}
 }
-#endif // !ALIBABACLOUD_LIVE_MODEL_DESCRIBEROOMLISTRESULT_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_DESCRIBERTCMPUEVENTSUBRESULT_H_

+ 0 - 86
live/include/alibabacloud/live/model/GetMultiRateConfigResult.h

@@ -1,86 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGRESULT_H_
-#define ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGRESULT_H_
-
-#include <string>
-#include <vector>
-#include <utility>
-#include <alibabacloud/core/ServiceResult.h>
-#include <alibabacloud/live/LiveExport.h>
-
-namespace AlibabaCloud
-{
-	namespace Live
-	{
-		namespace Model
-		{
-			class ALIBABACLOUD_LIVE_EXPORT GetMultiRateConfigResult : public ServiceResult
-			{
-			public:
-				struct Detail
-				{
-					std::string _template;
-					int fps;
-					std::string gop;
-					std::string templateType;
-					int profile;
-					int bandWidth;
-					int audioBitrate;
-					std::string audioProfile;
-					int height;
-					int audioChannelNum;
-					int width;
-					int audioRate;
-					std::string audioCodec;
-					int videoBitrate;
-				};
-
-
-				GetMultiRateConfigResult();
-				explicit GetMultiRateConfigResult(const std::string &payload);
-				~GetMultiRateConfigResult();
-				std::string getApp()const;
-				std::string getMessage()const;
-				std::string getIsLazy()const;
-				std::string getIsTimeAlign()const;
-				std::string getStream()const;
-				std::string getDomain()const;
-				std::string getAvFormat()const;
-				std::vector<Detail> getTemplatesInfo()const;
-				int getCode()const;
-				std::string getGroupId()const;
-
-			protected:
-				void parse(const std::string &payload);
-			private:
-				std::string app_;
-				std::string message_;
-				std::string isLazy_;
-				std::string isTimeAlign_;
-				std::string stream_;
-				std::string domain_;
-				std::string avFormat_;
-				std::vector<Detail> templatesInfo_;
-				int code_;
-				std::string groupId_;
-
-			};
-		}
-	}
-}
-#endif // !ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGRESULT_H_

+ 18 - 30
live/include/alibabacloud/live/model/DescribeRoomListRequest.h → live/include/alibabacloud/live/model/ListRtcMPUEventSubRecordRequest.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_DESCRIBEROOMLISTREQUEST_H_
-#define ALIBABACLOUD_LIVE_MODEL_DESCRIBEROOMLISTREQUEST_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_LISTRTCMPUEVENTSUBRECORDREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_LISTRTCMPUEVENTSUBRECORDREQUEST_H_
 
 #include <alibabacloud/live/LiveExport.h>
 #include <alibabacloud/core/RpcServiceRequest.h>
@@ -26,44 +26,32 @@
 namespace AlibabaCloud {
 namespace Live {
 namespace Model {
-class ALIBABACLOUD_LIVE_EXPORT DescribeRoomListRequest : public RpcServiceRequest {
+class ALIBABACLOUD_LIVE_EXPORT ListRtcMPUEventSubRecordRequest : public RpcServiceRequest {
 public:
-	DescribeRoomListRequest();
-	~DescribeRoomListRequest();
-	std::string getStartTime() const;
-	void setStartTime(const std::string &startTime);
-	std::string getAnchorId() const;
-	void setAnchorId(const std::string &anchorId);
-	int getPageNum() const;
-	void setPageNum(int pageNum);
-	int getRoomStatus() const;
-	void setRoomStatus(int roomStatus);
-	int getPageSize() const;
-	void setPageSize(int pageSize);
-	std::string getOrder() const;
-	void setOrder(const std::string &order);
+	ListRtcMPUEventSubRecordRequest();
+	~ListRtcMPUEventSubRecordRequest();
 	std::string getEndTime() const;
 	void setEndTime(const std::string &endTime);
-	long getOwnerId() const;
-	void setOwnerId(long ownerId);
-	std::string getRoomId() const;
-	void setRoomId(const std::string &roomId);
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getSubId() const;
+	void setSubId(const std::string &subId);
+	int getPageNo() const;
+	void setPageNo(int pageNo);
 	std::string getAppId() const;
 	void setAppId(const std::string &appId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
 
 private:
-	std::string startTime_;
-	std::string anchorId_;
-	int pageNum_;
-	int roomStatus_;
-	int pageSize_;
-	std::string order_;
 	std::string endTime_;
-	long ownerId_;
-	std::string roomId_;
+	std::string startTime_;
+	std::string subId_;
+	int pageNo_;
 	std::string appId_;
+	int pageSize_;
 };
 } // namespace Model
 } // namespace Live
 } // namespace AlibabaCloud
-#endif // !ALIBABACLOUD_LIVE_MODEL_DESCRIBEROOMLISTREQUEST_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_LISTRTCMPUEVENTSUBRECORDREQUEST_H_

+ 22 - 18
live/include/alibabacloud/live/model/GetMultiRateConfigListResult.h → live/include/alibabacloud/live/model/ListRtcMPUEventSubRecordResult.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGLISTRESULT_H_
-#define ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGLISTRESULT_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_LISTRTCMPUEVENTSUBRECORDRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_LISTRTCMPUEVENTSUBRECORDRESULT_H_
 
 #include <string>
 #include <vector>
@@ -29,34 +29,38 @@ namespace AlibabaCloud
 	{
 		namespace Model
 		{
-			class ALIBABACLOUD_LIVE_EXPORT GetMultiRateConfigListResult : public ServiceResult
+			class ALIBABACLOUD_LIVE_EXPORT ListRtcMPUEventSubRecordResult : public ServiceResult
 			{
 			public:
-				struct Info
+				struct SubInfo
 				{
-					std::string app;
-					int count;
-					std::string avFormat;
-					std::string groupId;
+					std::string callbackUrl;
+					std::string subId;
+					std::string appId;
+					std::string data;
+					std::string time;
+					std::string hTTPCode;
+					long cost;
+					std::string msgId;
 				};
 
 
-				GetMultiRateConfigListResult();
-				explicit GetMultiRateConfigListResult(const std::string &payload);
-				~GetMultiRateConfigListResult();
-				std::string getMessage()const;
-				std::vector<Info> getGroupInfo()const;
-				int getCode()const;
+				ListRtcMPUEventSubRecordResult();
+				explicit ListRtcMPUEventSubRecordResult(const std::string &payload);
+				~ListRtcMPUEventSubRecordResult();
+				bool getHasMore()const;
+				std::vector<SubInfo> getLogs()const;
+				long getCount()const;
 
 			protected:
 				void parse(const std::string &payload);
 			private:
-				std::string message_;
-				std::vector<Info> groupInfo_;
-				int code_;
+				bool hasMore_;
+				std::vector<SubInfo> logs_;
+				long count_;
 
 			};
 		}
 	}
 }
-#endif // !ALIBABACLOUD_LIVE_MODEL_GETMULTIRATECONFIGLISTRESULT_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_LISTRTCMPUEVENTSUBRECORDRESULT_H_

+ 0 - 69
live/include/alibabacloud/live/model/RealTimeSnapshotCommandRequest.h

@@ -1,69 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ALIBABACLOUD_LIVE_MODEL_REALTIMESNAPSHOTCOMMANDREQUEST_H_
-#define ALIBABACLOUD_LIVE_MODEL_REALTIMESNAPSHOTCOMMANDREQUEST_H_
-
-#include <alibabacloud/live/LiveExport.h>
-#include <alibabacloud/core/RpcServiceRequest.h>
-#include <string>
-#include <vector>
-#include <map>
-
-namespace AlibabaCloud {
-namespace Live {
-namespace Model {
-class ALIBABACLOUD_LIVE_EXPORT RealTimeSnapshotCommandRequest : public RpcServiceRequest {
-public:
-	RealTimeSnapshotCommandRequest();
-	~RealTimeSnapshotCommandRequest();
-	int getSource() const;
-	void setSource(int source);
-	int getMode() const;
-	void setMode(int mode);
-	std::string getUserData() const;
-	void setUserData(const std::string &userData);
-	std::string getAppName() const;
-	void setAppName(const std::string &appName);
-	std::string getStreamName() const;
-	void setStreamName(const std::string &streamName);
-	std::string getDomainName() const;
-	void setDomainName(const std::string &domainName);
-	long getOwnerId() const;
-	void setOwnerId(long ownerId);
-	std::string getCommand() const;
-	void setCommand(const std::string &command);
-	int getSnapshotType() const;
-	void setSnapshotType(int snapshotType);
-	int getInterval() const;
-	void setInterval(int interval);
-
-private:
-	int source_;
-	int mode_;
-	std::string userData_;
-	std::string appName_;
-	std::string streamName_;
-	std::string domainName_;
-	long ownerId_;
-	std::string command_;
-	int snapshotType_;
-	int interval_;
-};
-} // namespace Model
-} // namespace Live
-} // namespace AlibabaCloud
-#endif // !ALIBABACLOUD_LIVE_MODEL_REALTIMESNAPSHOTCOMMANDREQUEST_H_

+ 0 - 54
live/include/alibabacloud/live/model/SetLiveStreamOptimizedFeatureConfigRequest.h

@@ -1,54 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef ALIBABACLOUD_LIVE_MODEL_SETLIVESTREAMOPTIMIZEDFEATURECONFIGREQUEST_H_
-#define ALIBABACLOUD_LIVE_MODEL_SETLIVESTREAMOPTIMIZEDFEATURECONFIGREQUEST_H_
-
-#include <alibabacloud/live/LiveExport.h>
-#include <alibabacloud/core/RpcServiceRequest.h>
-#include <string>
-#include <vector>
-#include <map>
-
-namespace AlibabaCloud {
-namespace Live {
-namespace Model {
-class ALIBABACLOUD_LIVE_EXPORT SetLiveStreamOptimizedFeatureConfigRequest : public RpcServiceRequest {
-public:
-	SetLiveStreamOptimizedFeatureConfigRequest();
-	~SetLiveStreamOptimizedFeatureConfigRequest();
-	std::string getConfigStatus() const;
-	void setConfigStatus(const std::string &configStatus);
-	std::string getConfigName() const;
-	void setConfigName(const std::string &configName);
-	std::string getDomainName() const;
-	void setDomainName(const std::string &domainName);
-	std::string getConfigValue() const;
-	void setConfigValue(const std::string &configValue);
-	long getOwnerId() const;
-	void setOwnerId(long ownerId);
-
-private:
-	std::string configStatus_;
-	std::string configName_;
-	std::string domainName_;
-	std::string configValue_;
-	long ownerId_;
-};
-} // namespace Model
-} // namespace Live
-} // namespace AlibabaCloud
-#endif // !ALIBABACLOUD_LIVE_MODEL_SETLIVESTREAMOPTIMIZEDFEATURECONFIGREQUEST_H_

+ 3 - 1
live/include/alibabacloud/live/model/StartLiveMPUTaskRequest.h

@@ -56,12 +56,12 @@ public:
 				std::string width;
 				std::string x;
 				std::string y;
-				std::string renderMode;
 				struct UserInfo {
 					std::string sourceType;
 					std::string userId;
 				};
 				UserInfo userInfo;
+				std::string renderMode;
 				std::string height;
 			};
 			UserPanesItem userPanesItem;
@@ -91,10 +91,12 @@ public:
 			std::string audioOnly;
 			std::string videoWidth;
 			std::string audioBitrate;
+			std::string enhancedParam;
 			std::string videoFramerate;
 			std::string videoHeight;
 			std::string audioSampleRate;
 			std::string videoBitrate;
+			std::string videoCodec;
 			std::string audioChannels;
 			std::string videoGop;
 		};

+ 3 - 1
live/include/alibabacloud/live/model/UpdateLiveMPUTaskRequest.h

@@ -55,12 +55,12 @@ public:
 				std::string width;
 				std::string x;
 				std::string y;
-				std::string renderMode;
 				struct UserInfo {
 					std::string sourceType;
 					std::string userId;
 				};
 				UserInfo userInfo;
+				std::string renderMode;
 				std::string height;
 			};
 			UserPanesItem userPanesItem;
@@ -90,10 +90,12 @@ public:
 			std::string audioOnly;
 			std::string videoWidth;
 			std::string audioBitrate;
+			std::string enhancedParam;
 			std::string videoFramerate;
 			std::string videoHeight;
 			std::string audioSampleRate;
 			std::string videoBitrate;
+			std::string videoCodec;
 			std::string audioChannels;
 			std::string videoGop;
 		};

+ 48 - 0
live/include/alibabacloud/live/model/UpdateRtcMPUEventSubRequest.h

@@ -0,0 +1,48 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_LIVE_MODEL_UPDATERTCMPUEVENTSUBREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_UPDATERTCMPUEVENTSUBREQUEST_H_
+
+#include <alibabacloud/live/LiveExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Live {
+namespace Model {
+class ALIBABACLOUD_LIVE_EXPORT UpdateRtcMPUEventSubRequest : public RpcServiceRequest {
+public:
+	UpdateRtcMPUEventSubRequest();
+	~UpdateRtcMPUEventSubRequest();
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+	std::string getCallbackUrl() const;
+	void setCallbackUrl(const std::string &callbackUrl);
+	std::string getChannelIds() const;
+	void setChannelIds(const std::string &channelIds);
+
+private:
+	std::string appId_;
+	std::string callbackUrl_;
+	std::string channelIds_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_UPDATERTCMPUEVENTSUBREQUEST_H_

+ 7 - 9
live/include/alibabacloud/live/model/CreateLiveTranscodeTemplateResult.h → live/include/alibabacloud/live/model/UpdateRtcMPUEventSubResult.h

@@ -14,8 +14,8 @@
  * limitations under the License.
  */
 
-#ifndef ALIBABACLOUD_LIVE_MODEL_CREATELIVETRANSCODETEMPLATERESULT_H_
-#define ALIBABACLOUD_LIVE_MODEL_CREATELIVETRANSCODETEMPLATERESULT_H_
+#ifndef ALIBABACLOUD_LIVE_MODEL_UPDATERTCMPUEVENTSUBRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_UPDATERTCMPUEVENTSUBRESULT_H_
 
 #include <string>
 #include <vector>
@@ -29,23 +29,21 @@ namespace AlibabaCloud
 	{
 		namespace Model
 		{
-			class ALIBABACLOUD_LIVE_EXPORT CreateLiveTranscodeTemplateResult : public ServiceResult
+			class ALIBABACLOUD_LIVE_EXPORT UpdateRtcMPUEventSubResult : public ServiceResult
 			{
 			public:
 
 
-				CreateLiveTranscodeTemplateResult();
-				explicit CreateLiveTranscodeTemplateResult(const std::string &payload);
-				~CreateLiveTranscodeTemplateResult();
-				std::string getTemplateId()const;
+				UpdateRtcMPUEventSubResult();
+				explicit UpdateRtcMPUEventSubResult(const std::string &payload);
+				~UpdateRtcMPUEventSubResult();
 
 			protected:
 				void parse(const std::string &payload);
 			private:
-				std::string templateId_;
 
 			};
 		}
 	}
 }
-#endif // !ALIBABACLOUD_LIVE_MODEL_CREATELIVETRANSCODETEMPLATERESULT_H_
+#endif // !ALIBABACLOUD_LIVE_MODEL_UPDATERTCMPUEVENTSUBRESULT_H_

+ 198 - 270
live/src/LiveClient.cc

@@ -1095,42 +1095,6 @@ LiveClient::AddLiveStreamWatermarkRuleOutcomeCallable LiveClient::addLiveStreamW
 	return task->get_future();
 }
 
-LiveClient::AddMultiRateConfigOutcome LiveClient::addMultiRateConfig(const AddMultiRateConfigRequest &request) const
-{
-	auto endpointOutcome = endpointProvider_->getEndpoint();
-	if (!endpointOutcome.isSuccess())
-		return AddMultiRateConfigOutcome(endpointOutcome.error());
-
-	auto outcome = makeRequest(endpointOutcome.result(), request);
-
-	if (outcome.isSuccess())
-		return AddMultiRateConfigOutcome(AddMultiRateConfigResult(outcome.result()));
-	else
-		return AddMultiRateConfigOutcome(outcome.error());
-}
-
-void LiveClient::addMultiRateConfigAsync(const AddMultiRateConfigRequest& request, const AddMultiRateConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
-{
-	auto fn = [this, request, handler, context]()
-	{
-		handler(this, request, addMultiRateConfig(request), context);
-	};
-
-	asyncExecute(new Runnable(fn));
-}
-
-LiveClient::AddMultiRateConfigOutcomeCallable LiveClient::addMultiRateConfigCallable(const AddMultiRateConfigRequest &request) const
-{
-	auto task = std::make_shared<std::packaged_task<AddMultiRateConfigOutcome()>>(
-			[this, request]()
-			{
-			return this->addMultiRateConfig(request);
-			});
-
-	asyncExecute(new Runnable([task]() { (*task)(); }));
-	return task->get_future();
-}
-
 LiveClient::AddPlaylistItemsOutcome LiveClient::addPlaylistItems(const AddPlaylistItemsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2103,42 +2067,6 @@ LiveClient::CreateLiveStreamRecordIndexFilesOutcomeCallable LiveClient::createLi
 	return task->get_future();
 }
 
-LiveClient::CreateLiveTranscodeTemplateOutcome LiveClient::createLiveTranscodeTemplate(const CreateLiveTranscodeTemplateRequest &request) const
-{
-	auto endpointOutcome = endpointProvider_->getEndpoint();
-	if (!endpointOutcome.isSuccess())
-		return CreateLiveTranscodeTemplateOutcome(endpointOutcome.error());
-
-	auto outcome = makeRequest(endpointOutcome.result(), request);
-
-	if (outcome.isSuccess())
-		return CreateLiveTranscodeTemplateOutcome(CreateLiveTranscodeTemplateResult(outcome.result()));
-	else
-		return CreateLiveTranscodeTemplateOutcome(outcome.error());
-}
-
-void LiveClient::createLiveTranscodeTemplateAsync(const CreateLiveTranscodeTemplateRequest& request, const CreateLiveTranscodeTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
-{
-	auto fn = [this, request, handler, context]()
-	{
-		handler(this, request, createLiveTranscodeTemplate(request), context);
-	};
-
-	asyncExecute(new Runnable(fn));
-}
-
-LiveClient::CreateLiveTranscodeTemplateOutcomeCallable LiveClient::createLiveTranscodeTemplateCallable(const CreateLiveTranscodeTemplateRequest &request) const
-{
-	auto task = std::make_shared<std::packaged_task<CreateLiveTranscodeTemplateOutcome()>>(
-			[this, request]()
-			{
-			return this->createLiveTranscodeTemplate(request);
-			});
-
-	asyncExecute(new Runnable([task]() { (*task)(); }));
-	return task->get_future();
-}
-
 LiveClient::CreateMessageAppOutcome LiveClient::createMessageApp(const CreateMessageAppRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2319,6 +2247,42 @@ LiveClient::CreateRtcAsrTaskOutcomeCallable LiveClient::createRtcAsrTaskCallable
 	return task->get_future();
 }
 
+LiveClient::CreateRtcMPUEventSubOutcome LiveClient::createRtcMPUEventSub(const CreateRtcMPUEventSubRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateRtcMPUEventSubOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateRtcMPUEventSubOutcome(CreateRtcMPUEventSubResult(outcome.result()));
+	else
+		return CreateRtcMPUEventSubOutcome(outcome.error());
+}
+
+void LiveClient::createRtcMPUEventSubAsync(const CreateRtcMPUEventSubRequest& request, const CreateRtcMPUEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createRtcMPUEventSub(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::CreateRtcMPUEventSubOutcomeCallable LiveClient::createRtcMPUEventSubCallable(const CreateRtcMPUEventSubRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateRtcMPUEventSubOutcome()>>(
+			[this, request]()
+			{
+			return this->createRtcMPUEventSub(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::DeleteCasterOutcome LiveClient::deleteCaster(const DeleteCasterRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -4083,42 +4047,6 @@ LiveClient::DeleteMixStreamOutcomeCallable LiveClient::deleteMixStreamCallable(c
 	return task->get_future();
 }
 
-LiveClient::DeleteMultiRateConfigOutcome LiveClient::deleteMultiRateConfig(const DeleteMultiRateConfigRequest &request) const
-{
-	auto endpointOutcome = endpointProvider_->getEndpoint();
-	if (!endpointOutcome.isSuccess())
-		return DeleteMultiRateConfigOutcome(endpointOutcome.error());
-
-	auto outcome = makeRequest(endpointOutcome.result(), request);
-
-	if (outcome.isSuccess())
-		return DeleteMultiRateConfigOutcome(DeleteMultiRateConfigResult(outcome.result()));
-	else
-		return DeleteMultiRateConfigOutcome(outcome.error());
-}
-
-void LiveClient::deleteMultiRateConfigAsync(const DeleteMultiRateConfigRequest& request, const DeleteMultiRateConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
-{
-	auto fn = [this, request, handler, context]()
-	{
-		handler(this, request, deleteMultiRateConfig(request), context);
-	};
-
-	asyncExecute(new Runnable(fn));
-}
-
-LiveClient::DeleteMultiRateConfigOutcomeCallable LiveClient::deleteMultiRateConfigCallable(const DeleteMultiRateConfigRequest &request) const
-{
-	auto task = std::make_shared<std::packaged_task<DeleteMultiRateConfigOutcome()>>(
-			[this, request]()
-			{
-			return this->deleteMultiRateConfig(request);
-			});
-
-	asyncExecute(new Runnable([task]() { (*task)(); }));
-	return task->get_future();
-}
-
 LiveClient::DeletePlaylistOutcome LiveClient::deletePlaylist(const DeletePlaylistRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -4227,6 +4155,78 @@ LiveClient::DeleteRoomOutcomeCallable LiveClient::deleteRoomCallable(const Delet
 	return task->get_future();
 }
 
+LiveClient::DeleteRtcAsrTaskOutcome LiveClient::deleteRtcAsrTask(const DeleteRtcAsrTaskRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteRtcAsrTaskOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteRtcAsrTaskOutcome(DeleteRtcAsrTaskResult(outcome.result()));
+	else
+		return DeleteRtcAsrTaskOutcome(outcome.error());
+}
+
+void LiveClient::deleteRtcAsrTaskAsync(const DeleteRtcAsrTaskRequest& request, const DeleteRtcAsrTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteRtcAsrTask(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::DeleteRtcAsrTaskOutcomeCallable LiveClient::deleteRtcAsrTaskCallable(const DeleteRtcAsrTaskRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteRtcAsrTaskOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteRtcAsrTask(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LiveClient::DeleteRtcMPUEventSubOutcome LiveClient::deleteRtcMPUEventSub(const DeleteRtcMPUEventSubRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteRtcMPUEventSubOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteRtcMPUEventSubOutcome(DeleteRtcMPUEventSubResult(outcome.result()));
+	else
+		return DeleteRtcMPUEventSubOutcome(outcome.error());
+}
+
+void LiveClient::deleteRtcMPUEventSubAsync(const DeleteRtcMPUEventSubRequest& request, const DeleteRtcMPUEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteRtcMPUEventSub(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::DeleteRtcMPUEventSubOutcomeCallable LiveClient::deleteRtcMPUEventSubCallable(const DeleteRtcMPUEventSubRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteRtcMPUEventSubOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteRtcMPUEventSub(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::DeleteSnapshotCallbackAuthOutcome LiveClient::deleteSnapshotCallbackAuth(const DeleteSnapshotCallbackAuthRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -9231,72 +9231,72 @@ LiveClient::DescribeRoomKickoutUserListOutcomeCallable LiveClient::describeRoomK
 	return task->get_future();
 }
 
-LiveClient::DescribeRoomListOutcome LiveClient::describeRoomList(const DescribeRoomListRequest &request) const
+LiveClient::DescribeRoomStatusOutcome LiveClient::describeRoomStatus(const DescribeRoomStatusRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
 	if (!endpointOutcome.isSuccess())
-		return DescribeRoomListOutcome(endpointOutcome.error());
+		return DescribeRoomStatusOutcome(endpointOutcome.error());
 
 	auto outcome = makeRequest(endpointOutcome.result(), request);
 
 	if (outcome.isSuccess())
-		return DescribeRoomListOutcome(DescribeRoomListResult(outcome.result()));
+		return DescribeRoomStatusOutcome(DescribeRoomStatusResult(outcome.result()));
 	else
-		return DescribeRoomListOutcome(outcome.error());
+		return DescribeRoomStatusOutcome(outcome.error());
 }
 
-void LiveClient::describeRoomListAsync(const DescribeRoomListRequest& request, const DescribeRoomListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+void LiveClient::describeRoomStatusAsync(const DescribeRoomStatusRequest& request, const DescribeRoomStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
 {
 	auto fn = [this, request, handler, context]()
 	{
-		handler(this, request, describeRoomList(request), context);
+		handler(this, request, describeRoomStatus(request), context);
 	};
 
 	asyncExecute(new Runnable(fn));
 }
 
-LiveClient::DescribeRoomListOutcomeCallable LiveClient::describeRoomListCallable(const DescribeRoomListRequest &request) const
+LiveClient::DescribeRoomStatusOutcomeCallable LiveClient::describeRoomStatusCallable(const DescribeRoomStatusRequest &request) const
 {
-	auto task = std::make_shared<std::packaged_task<DescribeRoomListOutcome()>>(
+	auto task = std::make_shared<std::packaged_task<DescribeRoomStatusOutcome()>>(
 			[this, request]()
 			{
-			return this->describeRoomList(request);
+			return this->describeRoomStatus(request);
 			});
 
 	asyncExecute(new Runnable([task]() { (*task)(); }));
 	return task->get_future();
 }
 
-LiveClient::DescribeRoomStatusOutcome LiveClient::describeRoomStatus(const DescribeRoomStatusRequest &request) const
+LiveClient::DescribeRtcMPUEventSubOutcome LiveClient::describeRtcMPUEventSub(const DescribeRtcMPUEventSubRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
 	if (!endpointOutcome.isSuccess())
-		return DescribeRoomStatusOutcome(endpointOutcome.error());
+		return DescribeRtcMPUEventSubOutcome(endpointOutcome.error());
 
 	auto outcome = makeRequest(endpointOutcome.result(), request);
 
 	if (outcome.isSuccess())
-		return DescribeRoomStatusOutcome(DescribeRoomStatusResult(outcome.result()));
+		return DescribeRtcMPUEventSubOutcome(DescribeRtcMPUEventSubResult(outcome.result()));
 	else
-		return DescribeRoomStatusOutcome(outcome.error());
+		return DescribeRtcMPUEventSubOutcome(outcome.error());
 }
 
-void LiveClient::describeRoomStatusAsync(const DescribeRoomStatusRequest& request, const DescribeRoomStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+void LiveClient::describeRtcMPUEventSubAsync(const DescribeRtcMPUEventSubRequest& request, const DescribeRtcMPUEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
 {
 	auto fn = [this, request, handler, context]()
 	{
-		handler(this, request, describeRoomStatus(request), context);
+		handler(this, request, describeRtcMPUEventSub(request), context);
 	};
 
 	asyncExecute(new Runnable(fn));
 }
 
-LiveClient::DescribeRoomStatusOutcomeCallable LiveClient::describeRoomStatusCallable(const DescribeRoomStatusRequest &request) const
+LiveClient::DescribeRtcMPUEventSubOutcomeCallable LiveClient::describeRtcMPUEventSubCallable(const DescribeRtcMPUEventSubRequest &request) const
 {
-	auto task = std::make_shared<std::packaged_task<DescribeRoomStatusOutcome()>>(
+	auto task = std::make_shared<std::packaged_task<DescribeRtcMPUEventSubOutcome()>>(
 			[this, request]()
 			{
-			return this->describeRoomStatus(request);
+			return this->describeRtcMPUEventSub(request);
 			});
 
 	asyncExecute(new Runnable([task]() { (*task)(); }));
@@ -10203,78 +10203,6 @@ LiveClient::GetMessageTokenOutcomeCallable LiveClient::getMessageTokenCallable(c
 	return task->get_future();
 }
 
-LiveClient::GetMultiRateConfigOutcome LiveClient::getMultiRateConfig(const GetMultiRateConfigRequest &request) const
-{
-	auto endpointOutcome = endpointProvider_->getEndpoint();
-	if (!endpointOutcome.isSuccess())
-		return GetMultiRateConfigOutcome(endpointOutcome.error());
-
-	auto outcome = makeRequest(endpointOutcome.result(), request);
-
-	if (outcome.isSuccess())
-		return GetMultiRateConfigOutcome(GetMultiRateConfigResult(outcome.result()));
-	else
-		return GetMultiRateConfigOutcome(outcome.error());
-}
-
-void LiveClient::getMultiRateConfigAsync(const GetMultiRateConfigRequest& request, const GetMultiRateConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
-{
-	auto fn = [this, request, handler, context]()
-	{
-		handler(this, request, getMultiRateConfig(request), context);
-	};
-
-	asyncExecute(new Runnable(fn));
-}
-
-LiveClient::GetMultiRateConfigOutcomeCallable LiveClient::getMultiRateConfigCallable(const GetMultiRateConfigRequest &request) const
-{
-	auto task = std::make_shared<std::packaged_task<GetMultiRateConfigOutcome()>>(
-			[this, request]()
-			{
-			return this->getMultiRateConfig(request);
-			});
-
-	asyncExecute(new Runnable([task]() { (*task)(); }));
-	return task->get_future();
-}
-
-LiveClient::GetMultiRateConfigListOutcome LiveClient::getMultiRateConfigList(const GetMultiRateConfigListRequest &request) const
-{
-	auto endpointOutcome = endpointProvider_->getEndpoint();
-	if (!endpointOutcome.isSuccess())
-		return GetMultiRateConfigListOutcome(endpointOutcome.error());
-
-	auto outcome = makeRequest(endpointOutcome.result(), request);
-
-	if (outcome.isSuccess())
-		return GetMultiRateConfigListOutcome(GetMultiRateConfigListResult(outcome.result()));
-	else
-		return GetMultiRateConfigListOutcome(outcome.error());
-}
-
-void LiveClient::getMultiRateConfigListAsync(const GetMultiRateConfigListRequest& request, const GetMultiRateConfigListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
-{
-	auto fn = [this, request, handler, context]()
-	{
-		handler(this, request, getMultiRateConfigList(request), context);
-	};
-
-	asyncExecute(new Runnable(fn));
-}
-
-LiveClient::GetMultiRateConfigListOutcomeCallable LiveClient::getMultiRateConfigListCallable(const GetMultiRateConfigListRequest &request) const
-{
-	auto task = std::make_shared<std::packaged_task<GetMultiRateConfigListOutcome()>>(
-			[this, request]()
-			{
-			return this->getMultiRateConfigList(request);
-			});
-
-	asyncExecute(new Runnable([task]() { (*task)(); }));
-	return task->get_future();
-}
-
 LiveClient::GetTranscodeTaskStatusOutcome LiveClient::getTranscodeTaskStatus(const GetTranscodeTaskStatusRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -11247,6 +11175,42 @@ LiveClient::ListPlaylistItemsOutcomeCallable LiveClient::listPlaylistItemsCallab
 	return task->get_future();
 }
 
+LiveClient::ListRtcMPUEventSubRecordOutcome LiveClient::listRtcMPUEventSubRecord(const ListRtcMPUEventSubRecordRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListRtcMPUEventSubRecordOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListRtcMPUEventSubRecordOutcome(ListRtcMPUEventSubRecordResult(outcome.result()));
+	else
+		return ListRtcMPUEventSubRecordOutcome(outcome.error());
+}
+
+void LiveClient::listRtcMPUEventSubRecordAsync(const ListRtcMPUEventSubRecordRequest& request, const ListRtcMPUEventSubRecordAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listRtcMPUEventSubRecord(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::ListRtcMPUEventSubRecordOutcomeCallable LiveClient::listRtcMPUEventSubRecordCallable(const ListRtcMPUEventSubRecordRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListRtcMPUEventSubRecordOutcome()>>(
+			[this, request]()
+			{
+			return this->listRtcMPUEventSubRecord(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::MiguLivePullToPushStartOutcome LiveClient::miguLivePullToPushStart(const MiguLivePullToPushStartRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -12183,42 +12147,6 @@ LiveClient::RealTimeRecordCommandOutcomeCallable LiveClient::realTimeRecordComma
 	return task->get_future();
 }
 
-LiveClient::RealTimeSnapshotCommandOutcome LiveClient::realTimeSnapshotCommand(const RealTimeSnapshotCommandRequest &request) const
-{
-	auto endpointOutcome = endpointProvider_->getEndpoint();
-	if (!endpointOutcome.isSuccess())
-		return RealTimeSnapshotCommandOutcome(endpointOutcome.error());
-
-	auto outcome = makeRequest(endpointOutcome.result(), request);
-
-	if (outcome.isSuccess())
-		return RealTimeSnapshotCommandOutcome(RealTimeSnapshotCommandResult(outcome.result()));
-	else
-		return RealTimeSnapshotCommandOutcome(outcome.error());
-}
-
-void LiveClient::realTimeSnapshotCommandAsync(const RealTimeSnapshotCommandRequest& request, const RealTimeSnapshotCommandAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
-{
-	auto fn = [this, request, handler, context]()
-	{
-		handler(this, request, realTimeSnapshotCommand(request), context);
-	};
-
-	asyncExecute(new Runnable(fn));
-}
-
-LiveClient::RealTimeSnapshotCommandOutcomeCallable LiveClient::realTimeSnapshotCommandCallable(const RealTimeSnapshotCommandRequest &request) const
-{
-	auto task = std::make_shared<std::packaged_task<RealTimeSnapshotCommandOutcome()>>(
-			[this, request]()
-			{
-			return this->realTimeSnapshotCommand(request);
-			});
-
-	asyncExecute(new Runnable([task]() { (*task)(); }));
-	return task->get_future();
-}
-
 LiveClient::RemoveShowFromShowListOutcome LiveClient::removeShowFromShowList(const RemoveShowFromShowListRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -13119,42 +13047,6 @@ LiveClient::SetLiveStreamDelayConfigOutcomeCallable LiveClient::setLiveStreamDel
 	return task->get_future();
 }
 
-LiveClient::SetLiveStreamOptimizedFeatureConfigOutcome LiveClient::setLiveStreamOptimizedFeatureConfig(const SetLiveStreamOptimizedFeatureConfigRequest &request) const
-{
-	auto endpointOutcome = endpointProvider_->getEndpoint();
-	if (!endpointOutcome.isSuccess())
-		return SetLiveStreamOptimizedFeatureConfigOutcome(endpointOutcome.error());
-
-	auto outcome = makeRequest(endpointOutcome.result(), request);
-
-	if (outcome.isSuccess())
-		return SetLiveStreamOptimizedFeatureConfigOutcome(SetLiveStreamOptimizedFeatureConfigResult(outcome.result()));
-	else
-		return SetLiveStreamOptimizedFeatureConfigOutcome(outcome.error());
-}
-
-void LiveClient::setLiveStreamOptimizedFeatureConfigAsync(const SetLiveStreamOptimizedFeatureConfigRequest& request, const SetLiveStreamOptimizedFeatureConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
-{
-	auto fn = [this, request, handler, context]()
-	{
-		handler(this, request, setLiveStreamOptimizedFeatureConfig(request), context);
-	};
-
-	asyncExecute(new Runnable(fn));
-}
-
-LiveClient::SetLiveStreamOptimizedFeatureConfigOutcomeCallable LiveClient::setLiveStreamOptimizedFeatureConfigCallable(const SetLiveStreamOptimizedFeatureConfigRequest &request) const
-{
-	auto task = std::make_shared<std::packaged_task<SetLiveStreamOptimizedFeatureConfigOutcome()>>(
-			[this, request]()
-			{
-			return this->setLiveStreamOptimizedFeatureConfig(request);
-			});
-
-	asyncExecute(new Runnable([task]() { (*task)(); }));
-	return task->get_future();
-}
-
 LiveClient::SetLiveStreamPreloadTasksOutcome LiveClient::setLiveStreamPreloadTasks(const SetLiveStreamPreloadTasksRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -14847,6 +14739,42 @@ LiveClient::UpdateMixStreamOutcomeCallable LiveClient::updateMixStreamCallable(c
 	return task->get_future();
 }
 
+LiveClient::UpdateRtcMPUEventSubOutcome LiveClient::updateRtcMPUEventSub(const UpdateRtcMPUEventSubRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateRtcMPUEventSubOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateRtcMPUEventSubOutcome(UpdateRtcMPUEventSubResult(outcome.result()));
+	else
+		return UpdateRtcMPUEventSubOutcome(outcome.error());
+}
+
+void LiveClient::updateRtcMPUEventSubAsync(const UpdateRtcMPUEventSubRequest& request, const UpdateRtcMPUEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateRtcMPUEventSub(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::UpdateRtcMPUEventSubOutcomeCallable LiveClient::updateRtcMPUEventSubCallable(const UpdateRtcMPUEventSubRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateRtcMPUEventSubOutcome()>>(
+			[this, request]()
+			{
+			return this->updateRtcMPUEventSub(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::VerifyLiveDomainOwnerOutcome LiveClient::verifyLiveDomainOwner(const VerifyLiveDomainOwnerRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 0 - 99
live/src/model/AddMultiRateConfigRequest.cc

@@ -1,99 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/AddMultiRateConfigRequest.h>
-
-using AlibabaCloud::Live::Model::AddMultiRateConfigRequest;
-
-AddMultiRateConfigRequest::AddMultiRateConfigRequest()
-    : RpcServiceRequest("live", "2016-11-01", "AddMultiRateConfig") {
-  setMethod(HttpRequest::Method::Post);
-}
-
-AddMultiRateConfigRequest::~AddMultiRateConfigRequest() {}
-
-std::string AddMultiRateConfigRequest::getApp() const {
-  return app_;
-}
-
-void AddMultiRateConfigRequest::setApp(const std::string &app) {
-  app_ = app;
-  setParameter(std::string("App"), app);
-}
-
-std::string AddMultiRateConfigRequest::getGroupId() const {
-  return groupId_;
-}
-
-void AddMultiRateConfigRequest::setGroupId(const std::string &groupId) {
-  groupId_ = groupId;
-  setParameter(std::string("GroupId"), groupId);
-}
-
-std::string AddMultiRateConfigRequest::getTemplates() const {
-  return templates_;
-}
-
-void AddMultiRateConfigRequest::setTemplates(const std::string &templates) {
-  templates_ = templates;
-  setParameter(std::string("Templates"), templates);
-}
-
-std::string AddMultiRateConfigRequest::getDomainName() const {
-  return domainName_;
-}
-
-void AddMultiRateConfigRequest::setDomainName(const std::string &domainName) {
-  domainName_ = domainName;
-  setParameter(std::string("DomainName"), domainName);
-}
-
-long AddMultiRateConfigRequest::getOwnerId() const {
-  return ownerId_;
-}
-
-void AddMultiRateConfigRequest::setOwnerId(long ownerId) {
-  ownerId_ = ownerId;
-  setParameter(std::string("OwnerId"), std::to_string(ownerId));
-}
-
-std::string AddMultiRateConfigRequest::getIsLazy() const {
-  return isLazy_;
-}
-
-void AddMultiRateConfigRequest::setIsLazy(const std::string &isLazy) {
-  isLazy_ = isLazy;
-  setParameter(std::string("IsLazy"), isLazy);
-}
-
-std::string AddMultiRateConfigRequest::getAvFormat() const {
-  return avFormat_;
-}
-
-void AddMultiRateConfigRequest::setAvFormat(const std::string &avFormat) {
-  avFormat_ = avFormat;
-  setParameter(std::string("AvFormat"), avFormat);
-}
-
-std::string AddMultiRateConfigRequest::getIsTimeAlign() const {
-  return isTimeAlign_;
-}
-
-void AddMultiRateConfigRequest::setIsTimeAlign(const std::string &isTimeAlign) {
-  isTimeAlign_ = isTimeAlign;
-  setParameter(std::string("IsTimeAlign"), isTimeAlign);
-}
-

+ 0 - 97
live/src/model/AddMultiRateConfigResult.cc

@@ -1,97 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/AddMultiRateConfigResult.h>
-#include <json/json.h>
-
-using namespace AlibabaCloud::Live;
-using namespace AlibabaCloud::Live::Model;
-
-AddMultiRateConfigResult::AddMultiRateConfigResult() :
-	ServiceResult()
-{}
-
-AddMultiRateConfigResult::AddMultiRateConfigResult(const std::string &payload) :
-	ServiceResult()
-{
-	parse(payload);
-}
-
-AddMultiRateConfigResult::~AddMultiRateConfigResult()
-{}
-
-void AddMultiRateConfigResult::parse(const std::string &payload)
-{
-	Json::Reader reader;
-	Json::Value value;
-	reader.parse(payload, value);
-	setRequestId(value["RequestId"].asString());
-	auto allBodyNode = value["Body"]["FailedTemplates"];
-	for (auto valueBodyFailedTemplates : allBodyNode)
-	{
-		FailedTemplates bodyObject;
-		if(!valueBodyFailedTemplates["AudioBitrate"].isNull())
-			bodyObject.audioBitrate = std::stoi(valueBodyFailedTemplates["AudioBitrate"].asString());
-		if(!valueBodyFailedTemplates["Template"].isNull())
-			bodyObject._template = valueBodyFailedTemplates["Template"].asString();
-		if(!valueBodyFailedTemplates["Height"].isNull())
-			bodyObject.height = std::stoi(valueBodyFailedTemplates["Height"].asString());
-		if(!valueBodyFailedTemplates["TemplateType"].isNull())
-			bodyObject.templateType = valueBodyFailedTemplates["TemplateType"].asString();
-		if(!valueBodyFailedTemplates["BandWidth"].isNull())
-			bodyObject.bandWidth = std::stoi(valueBodyFailedTemplates["BandWidth"].asString());
-		if(!valueBodyFailedTemplates["Profile"].isNull())
-			bodyObject.profile = std::stoi(valueBodyFailedTemplates["Profile"].asString());
-		if(!valueBodyFailedTemplates["AudioRate"].isNull())
-			bodyObject.audioRate = std::stoi(valueBodyFailedTemplates["AudioRate"].asString());
-		if(!valueBodyFailedTemplates["AudioCodec"].isNull())
-			bodyObject.audioCodec = valueBodyFailedTemplates["AudioCodec"].asString();
-		if(!valueBodyFailedTemplates["Gop"].isNull())
-			bodyObject.gop = valueBodyFailedTemplates["Gop"].asString();
-		if(!valueBodyFailedTemplates["Width"].isNull())
-			bodyObject.width = std::stoi(valueBodyFailedTemplates["Width"].asString());
-		if(!valueBodyFailedTemplates["VideoBitrate"].isNull())
-			bodyObject.videoBitrate = std::stoi(valueBodyFailedTemplates["VideoBitrate"].asString());
-		if(!valueBodyFailedTemplates["AudioChannelNum"].isNull())
-			bodyObject.audioChannelNum = std::stoi(valueBodyFailedTemplates["AudioChannelNum"].asString());
-		if(!valueBodyFailedTemplates["Fps"].isNull())
-			bodyObject.fps = std::stoi(valueBodyFailedTemplates["Fps"].asString());
-		if(!valueBodyFailedTemplates["AudioProfile"].isNull())
-			bodyObject.audioProfile = valueBodyFailedTemplates["AudioProfile"].asString();
-		body_.push_back(bodyObject);
-	}
-	if(!value["Code"].isNull())
-		code_ = std::stoi(value["Code"].asString());
-	if(!value["Message"].isNull())
-		message_ = value["Message"].asString();
-
-}
-
-std::string AddMultiRateConfigResult::getMessage()const
-{
-	return message_;
-}
-
-std::vector<AddMultiRateConfigResult::FailedTemplates> AddMultiRateConfigResult::getBody()const
-{
-	return body_;
-}
-
-int AddMultiRateConfigResult::getCode()const
-{
-	return code_;
-}
-

+ 0 - 63
live/src/model/CreateLiveTranscodeTemplateRequest.cc

@@ -1,63 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/CreateLiveTranscodeTemplateRequest.h>
-
-using AlibabaCloud::Live::Model::CreateLiveTranscodeTemplateRequest;
-
-CreateLiveTranscodeTemplateRequest::CreateLiveTranscodeTemplateRequest()
-    : RpcServiceRequest("live", "2016-11-01", "CreateLiveTranscodeTemplate") {
-  setMethod(HttpRequest::Method::Post);
-}
-
-CreateLiveTranscodeTemplateRequest::~CreateLiveTranscodeTemplateRequest() {}
-
-std::string CreateLiveTranscodeTemplateRequest::getType() const {
-  return type_;
-}
-
-void CreateLiveTranscodeTemplateRequest::setType(const std::string &type) {
-  type_ = type;
-  setParameter(std::string("Type"), type);
-}
-
-std::string CreateLiveTranscodeTemplateRequest::getSecurityToken() const {
-  return securityToken_;
-}
-
-void CreateLiveTranscodeTemplateRequest::setSecurityToken(const std::string &securityToken) {
-  securityToken_ = securityToken;
-  setParameter(std::string("SecurityToken"), securityToken);
-}
-
-std::string CreateLiveTranscodeTemplateRequest::getTemplateConfig() const {
-  return templateConfig_;
-}
-
-void CreateLiveTranscodeTemplateRequest::setTemplateConfig(const std::string &templateConfig) {
-  templateConfig_ = templateConfig;
-  setParameter(std::string("TemplateConfig"), templateConfig);
-}
-
-long CreateLiveTranscodeTemplateRequest::getOwnerId() const {
-  return ownerId_;
-}
-
-void CreateLiveTranscodeTemplateRequest::setOwnerId(long ownerId) {
-  ownerId_ = ownerId;
-  setParameter(std::string("OwnerId"), std::to_string(ownerId));
-}
-

+ 54 - 0
live/src/model/CreateRtcMPUEventSubRequest.cc

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/live/model/CreateRtcMPUEventSubRequest.h>
+
+using AlibabaCloud::Live::Model::CreateRtcMPUEventSubRequest;
+
+CreateRtcMPUEventSubRequest::CreateRtcMPUEventSubRequest()
+    : RpcServiceRequest("live", "2016-11-01", "CreateRtcMPUEventSub") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+CreateRtcMPUEventSubRequest::~CreateRtcMPUEventSubRequest() {}
+
+std::string CreateRtcMPUEventSubRequest::getAppId() const {
+  return appId_;
+}
+
+void CreateRtcMPUEventSubRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
+std::string CreateRtcMPUEventSubRequest::getCallbackUrl() const {
+  return callbackUrl_;
+}
+
+void CreateRtcMPUEventSubRequest::setCallbackUrl(const std::string &callbackUrl) {
+  callbackUrl_ = callbackUrl;
+  setParameter(std::string("CallbackUrl"), callbackUrl);
+}
+
+std::string CreateRtcMPUEventSubRequest::getChannelIds() const {
+  return channelIds_;
+}
+
+void CreateRtcMPUEventSubRequest::setChannelIds(const std::string &channelIds) {
+  channelIds_ = channelIds;
+  setParameter(std::string("ChannelIds"), channelIds);
+}
+

+ 9 - 9
live/src/model/CreateLiveTranscodeTemplateResult.cc → live/src/model/CreateRtcMPUEventSubResult.cc

@@ -14,38 +14,38 @@
  * limitations under the License.
  */
 
-#include <alibabacloud/live/model/CreateLiveTranscodeTemplateResult.h>
+#include <alibabacloud/live/model/CreateRtcMPUEventSubResult.h>
 #include <json/json.h>
 
 using namespace AlibabaCloud::Live;
 using namespace AlibabaCloud::Live::Model;
 
-CreateLiveTranscodeTemplateResult::CreateLiveTranscodeTemplateResult() :
+CreateRtcMPUEventSubResult::CreateRtcMPUEventSubResult() :
 	ServiceResult()
 {}
 
-CreateLiveTranscodeTemplateResult::CreateLiveTranscodeTemplateResult(const std::string &payload) :
+CreateRtcMPUEventSubResult::CreateRtcMPUEventSubResult(const std::string &payload) :
 	ServiceResult()
 {
 	parse(payload);
 }
 
-CreateLiveTranscodeTemplateResult::~CreateLiveTranscodeTemplateResult()
+CreateRtcMPUEventSubResult::~CreateRtcMPUEventSubResult()
 {}
 
-void CreateLiveTranscodeTemplateResult::parse(const std::string &payload)
+void CreateRtcMPUEventSubResult::parse(const std::string &payload)
 {
 	Json::Reader reader;
 	Json::Value value;
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
-	if(!value["TemplateId"].isNull())
-		templateId_ = value["TemplateId"].asString();
+	if(!value["SubId"].isNull())
+		subId_ = value["SubId"].asString();
 
 }
 
-std::string CreateLiveTranscodeTemplateResult::getTemplateId()const
+std::string CreateRtcMPUEventSubResult::getSubId()const
 {
-	return templateId_;
+	return subId_;
 }
 

+ 0 - 81
live/src/model/DeleteMultiRateConfigRequest.cc

@@ -1,81 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/DeleteMultiRateConfigRequest.h>
-
-using AlibabaCloud::Live::Model::DeleteMultiRateConfigRequest;
-
-DeleteMultiRateConfigRequest::DeleteMultiRateConfigRequest()
-    : RpcServiceRequest("live", "2016-11-01", "DeleteMultiRateConfig") {
-  setMethod(HttpRequest::Method::Post);
-}
-
-DeleteMultiRateConfigRequest::~DeleteMultiRateConfigRequest() {}
-
-std::string DeleteMultiRateConfigRequest::getDeleteAll() const {
-  return deleteAll_;
-}
-
-void DeleteMultiRateConfigRequest::setDeleteAll(const std::string &deleteAll) {
-  deleteAll_ = deleteAll;
-  setParameter(std::string("DeleteAll"), deleteAll);
-}
-
-std::string DeleteMultiRateConfigRequest::getApp() const {
-  return app_;
-}
-
-void DeleteMultiRateConfigRequest::setApp(const std::string &app) {
-  app_ = app;
-  setParameter(std::string("App"), app);
-}
-
-std::string DeleteMultiRateConfigRequest::getGroupId() const {
-  return groupId_;
-}
-
-void DeleteMultiRateConfigRequest::setGroupId(const std::string &groupId) {
-  groupId_ = groupId;
-  setParameter(std::string("GroupId"), groupId);
-}
-
-std::string DeleteMultiRateConfigRequest::getTemplates() const {
-  return templates_;
-}
-
-void DeleteMultiRateConfigRequest::setTemplates(const std::string &templates) {
-  templates_ = templates;
-  setParameter(std::string("Templates"), templates);
-}
-
-std::string DeleteMultiRateConfigRequest::getDomainName() const {
-  return domainName_;
-}
-
-void DeleteMultiRateConfigRequest::setDomainName(const std::string &domainName) {
-  domainName_ = domainName;
-  setParameter(std::string("DomainName"), domainName);
-}
-
-long DeleteMultiRateConfigRequest::getOwnerId() const {
-  return ownerId_;
-}
-
-void DeleteMultiRateConfigRequest::setOwnerId(long ownerId) {
-  ownerId_ = ownerId;
-  setParameter(std::string("OwnerId"), std::to_string(ownerId));
-}
-

+ 12 - 12
live/src/model/GetMultiRateConfigListRequest.cc → live/src/model/DeleteRtcAsrTaskRequest.cc

@@ -14,31 +14,31 @@
  * limitations under the License.
  */
 
-#include <alibabacloud/live/model/GetMultiRateConfigListRequest.h>
+#include <alibabacloud/live/model/DeleteRtcAsrTaskRequest.h>
 
-using AlibabaCloud::Live::Model::GetMultiRateConfigListRequest;
+using AlibabaCloud::Live::Model::DeleteRtcAsrTaskRequest;
 
-GetMultiRateConfigListRequest::GetMultiRateConfigListRequest()
-    : RpcServiceRequest("live", "2016-11-01", "GetMultiRateConfigList") {
+DeleteRtcAsrTaskRequest::DeleteRtcAsrTaskRequest()
+    : RpcServiceRequest("live", "2016-11-01", "DeleteRtcAsrTask") {
   setMethod(HttpRequest::Method::Post);
 }
 
-GetMultiRateConfigListRequest::~GetMultiRateConfigListRequest() {}
+DeleteRtcAsrTaskRequest::~DeleteRtcAsrTaskRequest() {}
 
-std::string GetMultiRateConfigListRequest::getDomainName() const {
-  return domainName_;
+std::string DeleteRtcAsrTaskRequest::getTaskId() const {
+  return taskId_;
 }
 
-void GetMultiRateConfigListRequest::setDomainName(const std::string &domainName) {
-  domainName_ = domainName;
-  setParameter(std::string("DomainName"), domainName);
+void DeleteRtcAsrTaskRequest::setTaskId(const std::string &taskId) {
+  taskId_ = taskId;
+  setParameter(std::string("TaskId"), taskId);
 }
 
-long GetMultiRateConfigListRequest::getOwnerId() const {
+long DeleteRtcAsrTaskRequest::getOwnerId() const {
   return ownerId_;
 }
 
-void GetMultiRateConfigListRequest::setOwnerId(long ownerId) {
+void DeleteRtcAsrTaskRequest::setOwnerId(long ownerId) {
   ownerId_ = ownerId;
   setParameter(std::string("OwnerId"), std::to_string(ownerId));
 }

+ 13 - 13
live/src/model/DeleteMultiRateConfigResult.cc → live/src/model/DeleteRtcAsrTaskResult.cc

@@ -14,45 +14,45 @@
  * limitations under the License.
  */
 
-#include <alibabacloud/live/model/DeleteMultiRateConfigResult.h>
+#include <alibabacloud/live/model/DeleteRtcAsrTaskResult.h>
 #include <json/json.h>
 
 using namespace AlibabaCloud::Live;
 using namespace AlibabaCloud::Live::Model;
 
-DeleteMultiRateConfigResult::DeleteMultiRateConfigResult() :
+DeleteRtcAsrTaskResult::DeleteRtcAsrTaskResult() :
 	ServiceResult()
 {}
 
-DeleteMultiRateConfigResult::DeleteMultiRateConfigResult(const std::string &payload) :
+DeleteRtcAsrTaskResult::DeleteRtcAsrTaskResult(const std::string &payload) :
 	ServiceResult()
 {
 	parse(payload);
 }
 
-DeleteMultiRateConfigResult::~DeleteMultiRateConfigResult()
+DeleteRtcAsrTaskResult::~DeleteRtcAsrTaskResult()
 {}
 
-void DeleteMultiRateConfigResult::parse(const std::string &payload)
+void DeleteRtcAsrTaskResult::parse(const std::string &payload)
 {
 	Json::Reader reader;
 	Json::Value value;
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
-	if(!value["Code"].isNull())
-		code_ = std::stoi(value["Code"].asString());
-	if(!value["Message"].isNull())
-		message_ = value["Message"].asString();
+	if(!value["Description"].isNull())
+		description_ = value["Description"].asString();
+	if(!value["RetCode"].isNull())
+		retCode_ = std::stol(value["RetCode"].asString());
 
 }
 
-std::string DeleteMultiRateConfigResult::getMessage()const
+std::string DeleteRtcAsrTaskResult::getDescription()const
 {
-	return message_;
+	return description_;
 }
 
-int DeleteMultiRateConfigResult::getCode()const
+long DeleteRtcAsrTaskResult::getRetCode()const
 {
-	return code_;
+	return retCode_;
 }
 

+ 36 - 0
live/src/model/DeleteRtcMPUEventSubRequest.cc

@@ -0,0 +1,36 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/live/model/DeleteRtcMPUEventSubRequest.h>
+
+using AlibabaCloud::Live::Model::DeleteRtcMPUEventSubRequest;
+
+DeleteRtcMPUEventSubRequest::DeleteRtcMPUEventSubRequest()
+    : RpcServiceRequest("live", "2016-11-01", "DeleteRtcMPUEventSub") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DeleteRtcMPUEventSubRequest::~DeleteRtcMPUEventSubRequest() {}
+
+std::string DeleteRtcMPUEventSubRequest::getAppId() const {
+  return appId_;
+}
+
+void DeleteRtcMPUEventSubRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+

+ 5 - 5
live/src/model/RealTimeSnapshotCommandResult.cc → live/src/model/DeleteRtcMPUEventSubResult.cc

@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-#include <alibabacloud/live/model/RealTimeSnapshotCommandResult.h>
+#include <alibabacloud/live/model/DeleteRtcMPUEventSubResult.h>
 #include <json/json.h>
 
 using namespace AlibabaCloud::Live;
 using namespace AlibabaCloud::Live::Model;
 
-RealTimeSnapshotCommandResult::RealTimeSnapshotCommandResult() :
+DeleteRtcMPUEventSubResult::DeleteRtcMPUEventSubResult() :
 	ServiceResult()
 {}
 
-RealTimeSnapshotCommandResult::RealTimeSnapshotCommandResult(const std::string &payload) :
+DeleteRtcMPUEventSubResult::DeleteRtcMPUEventSubResult(const std::string &payload) :
 	ServiceResult()
 {
 	parse(payload);
 }
 
-RealTimeSnapshotCommandResult::~RealTimeSnapshotCommandResult()
+DeleteRtcMPUEventSubResult::~DeleteRtcMPUEventSubResult()
 {}
 
-void RealTimeSnapshotCommandResult::parse(const std::string &payload)
+void DeleteRtcMPUEventSubResult::parse(const std::string &payload)
 {
 	Json::Reader reader;
 	Json::Value value;

+ 9 - 0
live/src/model/DescribeLiveAISubtitleRequest.cc

@@ -52,6 +52,15 @@ void DescribeLiveAISubtitleRequest::setPageSize(const std::string &pageSize) {
   setParameter(std::string("PageSize"), pageSize);
 }
 
+bool DescribeLiveAISubtitleRequest::getIsDefault() const {
+  return isDefault_;
+}
+
+void DescribeLiveAISubtitleRequest::setIsDefault(bool isDefault) {
+  isDefault_ = isDefault;
+  setParameter(std::string("IsDefault"), isDefault ? "true" : "false");
+}
+
 long DescribeLiveAISubtitleRequest::getOwnerId() const {
   return ownerId_;
 }

+ 0 - 117
live/src/model/DescribeRoomListRequest.cc

@@ -1,117 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/DescribeRoomListRequest.h>
-
-using AlibabaCloud::Live::Model::DescribeRoomListRequest;
-
-DescribeRoomListRequest::DescribeRoomListRequest()
-    : RpcServiceRequest("live", "2016-11-01", "DescribeRoomList") {
-  setMethod(HttpRequest::Method::Post);
-}
-
-DescribeRoomListRequest::~DescribeRoomListRequest() {}
-
-std::string DescribeRoomListRequest::getStartTime() const {
-  return startTime_;
-}
-
-void DescribeRoomListRequest::setStartTime(const std::string &startTime) {
-  startTime_ = startTime;
-  setParameter(std::string("StartTime"), startTime);
-}
-
-std::string DescribeRoomListRequest::getAnchorId() const {
-  return anchorId_;
-}
-
-void DescribeRoomListRequest::setAnchorId(const std::string &anchorId) {
-  anchorId_ = anchorId;
-  setParameter(std::string("AnchorId"), anchorId);
-}
-
-int DescribeRoomListRequest::getPageNum() const {
-  return pageNum_;
-}
-
-void DescribeRoomListRequest::setPageNum(int pageNum) {
-  pageNum_ = pageNum;
-  setParameter(std::string("PageNum"), std::to_string(pageNum));
-}
-
-int DescribeRoomListRequest::getRoomStatus() const {
-  return roomStatus_;
-}
-
-void DescribeRoomListRequest::setRoomStatus(int roomStatus) {
-  roomStatus_ = roomStatus;
-  setParameter(std::string("RoomStatus"), std::to_string(roomStatus));
-}
-
-int DescribeRoomListRequest::getPageSize() const {
-  return pageSize_;
-}
-
-void DescribeRoomListRequest::setPageSize(int pageSize) {
-  pageSize_ = pageSize;
-  setParameter(std::string("PageSize"), std::to_string(pageSize));
-}
-
-std::string DescribeRoomListRequest::getOrder() const {
-  return order_;
-}
-
-void DescribeRoomListRequest::setOrder(const std::string &order) {
-  order_ = order;
-  setParameter(std::string("Order"), order);
-}
-
-std::string DescribeRoomListRequest::getEndTime() const {
-  return endTime_;
-}
-
-void DescribeRoomListRequest::setEndTime(const std::string &endTime) {
-  endTime_ = endTime;
-  setParameter(std::string("EndTime"), endTime);
-}
-
-long DescribeRoomListRequest::getOwnerId() const {
-  return ownerId_;
-}
-
-void DescribeRoomListRequest::setOwnerId(long ownerId) {
-  ownerId_ = ownerId;
-  setParameter(std::string("OwnerId"), std::to_string(ownerId));
-}
-
-std::string DescribeRoomListRequest::getRoomId() const {
-  return roomId_;
-}
-
-void DescribeRoomListRequest::setRoomId(const std::string &roomId) {
-  roomId_ = roomId;
-  setParameter(std::string("RoomId"), roomId);
-}
-
-std::string DescribeRoomListRequest::getAppId() const {
-  return appId_;
-}
-
-void DescribeRoomListRequest::setAppId(const std::string &appId) {
-  appId_ = appId;
-  setParameter(std::string("AppId"), appId);
-}
-

+ 0 - 79
live/src/model/DescribeRoomListResult.cc

@@ -1,79 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/DescribeRoomListResult.h>
-#include <json/json.h>
-
-using namespace AlibabaCloud::Live;
-using namespace AlibabaCloud::Live::Model;
-
-DescribeRoomListResult::DescribeRoomListResult() :
-	ServiceResult()
-{}
-
-DescribeRoomListResult::DescribeRoomListResult(const std::string &payload) :
-	ServiceResult()
-{
-	parse(payload);
-}
-
-DescribeRoomListResult::~DescribeRoomListResult()
-{}
-
-void DescribeRoomListResult::parse(const std::string &payload)
-{
-	Json::Reader reader;
-	Json::Value value;
-	reader.parse(payload, value);
-	setRequestId(value["RequestId"].asString());
-	auto allRoomListNode = value["RoomList"]["Room"];
-	for (auto valueRoomListRoom : allRoomListNode)
-	{
-		Room roomListObject;
-		if(!valueRoomListRoom["ForbidStream"].isNull())
-			roomListObject.forbidStream = valueRoomListRoom["ForbidStream"].asString();
-		if(!valueRoomListRoom["AnchorId"].isNull())
-			roomListObject.anchorId = valueRoomListRoom["AnchorId"].asString();
-		if(!valueRoomListRoom["RoomId"].isNull())
-			roomListObject.roomId = valueRoomListRoom["RoomId"].asString();
-		if(!valueRoomListRoom["CreateTime"].isNull())
-			roomListObject.createTime = valueRoomListRoom["CreateTime"].asString();
-		if(!valueRoomListRoom["RoomStatus"].isNull())
-			roomListObject.roomStatus = std::stoi(valueRoomListRoom["RoomStatus"].asString());
-		roomList_.push_back(roomListObject);
-	}
-	if(!value["TotalPage"].isNull())
-		totalPage_ = std::stoi(value["TotalPage"].asString());
-	if(!value["TotalNum"].isNull())
-		totalNum_ = std::stoi(value["TotalNum"].asString());
-
-}
-
-int DescribeRoomListResult::getTotalNum()const
-{
-	return totalNum_;
-}
-
-int DescribeRoomListResult::getTotalPage()const
-{
-	return totalPage_;
-}
-
-std::vector<DescribeRoomListResult::Room> DescribeRoomListResult::getRoomList()const
-{
-	return roomList_;
-}
-

+ 36 - 0
live/src/model/DescribeRtcMPUEventSubRequest.cc

@@ -0,0 +1,36 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/live/model/DescribeRtcMPUEventSubRequest.h>
+
+using AlibabaCloud::Live::Model::DescribeRtcMPUEventSubRequest;
+
+DescribeRtcMPUEventSubRequest::DescribeRtcMPUEventSubRequest()
+    : RpcServiceRequest("live", "2016-11-01", "DescribeRtcMPUEventSub") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DescribeRtcMPUEventSubRequest::~DescribeRtcMPUEventSubRequest() {}
+
+std::string DescribeRtcMPUEventSubRequest::getAppId() const {
+  return appId_;
+}
+
+void DescribeRtcMPUEventSubRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+

+ 60 - 0
live/src/model/DescribeRtcMPUEventSubResult.cc

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/live/model/DescribeRtcMPUEventSubResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+DescribeRtcMPUEventSubResult::DescribeRtcMPUEventSubResult() :
+	ServiceResult()
+{}
+
+DescribeRtcMPUEventSubResult::DescribeRtcMPUEventSubResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeRtcMPUEventSubResult::~DescribeRtcMPUEventSubResult()
+{}
+
+void DescribeRtcMPUEventSubResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto subInfoNode = value["SubInfo"];
+	if(!subInfoNode["SubId"].isNull())
+		subInfo_.subId = subInfoNode["SubId"].asString();
+	if(!subInfoNode["AppId"].isNull())
+		subInfo_.appId = subInfoNode["AppId"].asString();
+	if(!subInfoNode["ChannelIds"].isNull())
+		subInfo_.channelIds = subInfoNode["ChannelIds"].asString();
+	if(!subInfoNode["CreateTime"].isNull())
+		subInfo_.createTime = subInfoNode["CreateTime"].asString();
+	if(!subInfoNode["CallbackUrl"].isNull())
+		subInfo_.callbackUrl = subInfoNode["CallbackUrl"].asString();
+
+}
+
+DescribeRtcMPUEventSubResult::SubInfo DescribeRtcMPUEventSubResult::getSubInfo()const
+{
+	return subInfo_;
+}
+

+ 0 - 77
live/src/model/GetMultiRateConfigListResult.cc

@@ -1,77 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/GetMultiRateConfigListResult.h>
-#include <json/json.h>
-
-using namespace AlibabaCloud::Live;
-using namespace AlibabaCloud::Live::Model;
-
-GetMultiRateConfigListResult::GetMultiRateConfigListResult() :
-	ServiceResult()
-{}
-
-GetMultiRateConfigListResult::GetMultiRateConfigListResult(const std::string &payload) :
-	ServiceResult()
-{
-	parse(payload);
-}
-
-GetMultiRateConfigListResult::~GetMultiRateConfigListResult()
-{}
-
-void GetMultiRateConfigListResult::parse(const std::string &payload)
-{
-	Json::Reader reader;
-	Json::Value value;
-	reader.parse(payload, value);
-	setRequestId(value["RequestId"].asString());
-	auto allGroupInfoNode = value["GroupInfo"]["Info"];
-	for (auto valueGroupInfoInfo : allGroupInfoNode)
-	{
-		Info groupInfoObject;
-		if(!valueGroupInfoInfo["GroupId"].isNull())
-			groupInfoObject.groupId = valueGroupInfoInfo["GroupId"].asString();
-		if(!valueGroupInfoInfo["Count"].isNull())
-			groupInfoObject.count = std::stoi(valueGroupInfoInfo["Count"].asString());
-		if(!valueGroupInfoInfo["App"].isNull())
-			groupInfoObject.app = valueGroupInfoInfo["App"].asString();
-		if(!valueGroupInfoInfo["AvFormat"].isNull())
-			groupInfoObject.avFormat = valueGroupInfoInfo["AvFormat"].asString();
-		groupInfo_.push_back(groupInfoObject);
-	}
-	if(!value["Code"].isNull())
-		code_ = std::stoi(value["Code"].asString());
-	if(!value["Message"].isNull())
-		message_ = value["Message"].asString();
-
-}
-
-std::string GetMultiRateConfigListResult::getMessage()const
-{
-	return message_;
-}
-
-std::vector<GetMultiRateConfigListResult::Info> GetMultiRateConfigListResult::getGroupInfo()const
-{
-	return groupInfo_;
-}
-
-int GetMultiRateConfigListResult::getCode()const
-{
-	return code_;
-}
-

+ 0 - 63
live/src/model/GetMultiRateConfigRequest.cc

@@ -1,63 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/GetMultiRateConfigRequest.h>
-
-using AlibabaCloud::Live::Model::GetMultiRateConfigRequest;
-
-GetMultiRateConfigRequest::GetMultiRateConfigRequest()
-    : RpcServiceRequest("live", "2016-11-01", "GetMultiRateConfig") {
-  setMethod(HttpRequest::Method::Post);
-}
-
-GetMultiRateConfigRequest::~GetMultiRateConfigRequest() {}
-
-std::string GetMultiRateConfigRequest::getApp() const {
-  return app_;
-}
-
-void GetMultiRateConfigRequest::setApp(const std::string &app) {
-  app_ = app;
-  setParameter(std::string("App"), app);
-}
-
-std::string GetMultiRateConfigRequest::getGroupId() const {
-  return groupId_;
-}
-
-void GetMultiRateConfigRequest::setGroupId(const std::string &groupId) {
-  groupId_ = groupId;
-  setParameter(std::string("GroupId"), groupId);
-}
-
-std::string GetMultiRateConfigRequest::getDomainName() const {
-  return domainName_;
-}
-
-void GetMultiRateConfigRequest::setDomainName(const std::string &domainName) {
-  domainName_ = domainName;
-  setParameter(std::string("DomainName"), domainName);
-}
-
-long GetMultiRateConfigRequest::getOwnerId() const {
-  return ownerId_;
-}
-
-void GetMultiRateConfigRequest::setOwnerId(long ownerId) {
-  ownerId_ = ownerId;
-  setParameter(std::string("OwnerId"), std::to_string(ownerId));
-}
-

+ 0 - 146
live/src/model/GetMultiRateConfigResult.cc

@@ -1,146 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/GetMultiRateConfigResult.h>
-#include <json/json.h>
-
-using namespace AlibabaCloud::Live;
-using namespace AlibabaCloud::Live::Model;
-
-GetMultiRateConfigResult::GetMultiRateConfigResult() :
-	ServiceResult()
-{}
-
-GetMultiRateConfigResult::GetMultiRateConfigResult(const std::string &payload) :
-	ServiceResult()
-{
-	parse(payload);
-}
-
-GetMultiRateConfigResult::~GetMultiRateConfigResult()
-{}
-
-void GetMultiRateConfigResult::parse(const std::string &payload)
-{
-	Json::Reader reader;
-	Json::Value value;
-	reader.parse(payload, value);
-	setRequestId(value["RequestId"].asString());
-	auto allTemplatesInfoNode = value["TemplatesInfo"]["Detail"];
-	for (auto valueTemplatesInfoDetail : allTemplatesInfoNode)
-	{
-		Detail templatesInfoObject;
-		if(!valueTemplatesInfoDetail["AudioBitrate"].isNull())
-			templatesInfoObject.audioBitrate = std::stoi(valueTemplatesInfoDetail["AudioBitrate"].asString());
-		if(!valueTemplatesInfoDetail["Template"].isNull())
-			templatesInfoObject._template = valueTemplatesInfoDetail["Template"].asString();
-		if(!valueTemplatesInfoDetail["Height"].isNull())
-			templatesInfoObject.height = std::stoi(valueTemplatesInfoDetail["Height"].asString());
-		if(!valueTemplatesInfoDetail["TemplateType"].isNull())
-			templatesInfoObject.templateType = valueTemplatesInfoDetail["TemplateType"].asString();
-		if(!valueTemplatesInfoDetail["BandWidth"].isNull())
-			templatesInfoObject.bandWidth = std::stoi(valueTemplatesInfoDetail["BandWidth"].asString());
-		if(!valueTemplatesInfoDetail["Profile"].isNull())
-			templatesInfoObject.profile = std::stoi(valueTemplatesInfoDetail["Profile"].asString());
-		if(!valueTemplatesInfoDetail["AudioRate"].isNull())
-			templatesInfoObject.audioRate = std::stoi(valueTemplatesInfoDetail["AudioRate"].asString());
-		if(!valueTemplatesInfoDetail["AudioCodec"].isNull())
-			templatesInfoObject.audioCodec = valueTemplatesInfoDetail["AudioCodec"].asString();
-		if(!valueTemplatesInfoDetail["Gop"].isNull())
-			templatesInfoObject.gop = valueTemplatesInfoDetail["Gop"].asString();
-		if(!valueTemplatesInfoDetail["Width"].isNull())
-			templatesInfoObject.width = std::stoi(valueTemplatesInfoDetail["Width"].asString());
-		if(!valueTemplatesInfoDetail["VideoBitrate"].isNull())
-			templatesInfoObject.videoBitrate = std::stoi(valueTemplatesInfoDetail["VideoBitrate"].asString());
-		if(!valueTemplatesInfoDetail["AudioChannelNum"].isNull())
-			templatesInfoObject.audioChannelNum = std::stoi(valueTemplatesInfoDetail["AudioChannelNum"].asString());
-		if(!valueTemplatesInfoDetail["Fps"].isNull())
-			templatesInfoObject.fps = std::stoi(valueTemplatesInfoDetail["Fps"].asString());
-		if(!valueTemplatesInfoDetail["AudioProfile"].isNull())
-			templatesInfoObject.audioProfile = valueTemplatesInfoDetail["AudioProfile"].asString();
-		templatesInfo_.push_back(templatesInfoObject);
-	}
-	if(!value["Domain"].isNull())
-		domain_ = value["Domain"].asString();
-	if(!value["GroupId"].isNull())
-		groupId_ = value["GroupId"].asString();
-	if(!value["App"].isNull())
-		app_ = value["App"].asString();
-	if(!value["AvFormat"].isNull())
-		avFormat_ = value["AvFormat"].asString();
-	if(!value["Stream"].isNull())
-		stream_ = value["Stream"].asString();
-	if(!value["Code"].isNull())
-		code_ = std::stoi(value["Code"].asString());
-	if(!value["Message"].isNull())
-		message_ = value["Message"].asString();
-	if(!value["IsLazy"].isNull())
-		isLazy_ = value["IsLazy"].asString();
-	if(!value["IsTimeAlign"].isNull())
-		isTimeAlign_ = value["IsTimeAlign"].asString();
-
-}
-
-std::string GetMultiRateConfigResult::getApp()const
-{
-	return app_;
-}
-
-std::string GetMultiRateConfigResult::getMessage()const
-{
-	return message_;
-}
-
-std::string GetMultiRateConfigResult::getIsLazy()const
-{
-	return isLazy_;
-}
-
-std::string GetMultiRateConfigResult::getIsTimeAlign()const
-{
-	return isTimeAlign_;
-}
-
-std::string GetMultiRateConfigResult::getStream()const
-{
-	return stream_;
-}
-
-std::string GetMultiRateConfigResult::getDomain()const
-{
-	return domain_;
-}
-
-std::string GetMultiRateConfigResult::getAvFormat()const
-{
-	return avFormat_;
-}
-
-std::vector<GetMultiRateConfigResult::Detail> GetMultiRateConfigResult::getTemplatesInfo()const
-{
-	return templatesInfo_;
-}
-
-int GetMultiRateConfigResult::getCode()const
-{
-	return code_;
-}
-
-std::string GetMultiRateConfigResult::getGroupId()const
-{
-	return groupId_;
-}
-

+ 81 - 0
live/src/model/ListRtcMPUEventSubRecordRequest.cc

@@ -0,0 +1,81 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/live/model/ListRtcMPUEventSubRecordRequest.h>
+
+using AlibabaCloud::Live::Model::ListRtcMPUEventSubRecordRequest;
+
+ListRtcMPUEventSubRecordRequest::ListRtcMPUEventSubRecordRequest()
+    : RpcServiceRequest("live", "2016-11-01", "ListRtcMPUEventSubRecord") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListRtcMPUEventSubRecordRequest::~ListRtcMPUEventSubRecordRequest() {}
+
+std::string ListRtcMPUEventSubRecordRequest::getEndTime() const {
+  return endTime_;
+}
+
+void ListRtcMPUEventSubRecordRequest::setEndTime(const std::string &endTime) {
+  endTime_ = endTime;
+  setParameter(std::string("EndTime"), endTime);
+}
+
+std::string ListRtcMPUEventSubRecordRequest::getStartTime() const {
+  return startTime_;
+}
+
+void ListRtcMPUEventSubRecordRequest::setStartTime(const std::string &startTime) {
+  startTime_ = startTime;
+  setParameter(std::string("StartTime"), startTime);
+}
+
+std::string ListRtcMPUEventSubRecordRequest::getSubId() const {
+  return subId_;
+}
+
+void ListRtcMPUEventSubRecordRequest::setSubId(const std::string &subId) {
+  subId_ = subId;
+  setParameter(std::string("SubId"), subId);
+}
+
+int ListRtcMPUEventSubRecordRequest::getPageNo() const {
+  return pageNo_;
+}
+
+void ListRtcMPUEventSubRecordRequest::setPageNo(int pageNo) {
+  pageNo_ = pageNo;
+  setParameter(std::string("PageNo"), std::to_string(pageNo));
+}
+
+std::string ListRtcMPUEventSubRecordRequest::getAppId() const {
+  return appId_;
+}
+
+void ListRtcMPUEventSubRecordRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
+int ListRtcMPUEventSubRecordRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void ListRtcMPUEventSubRecordRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+

+ 85 - 0
live/src/model/ListRtcMPUEventSubRecordResult.cc

@@ -0,0 +1,85 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/live/model/ListRtcMPUEventSubRecordResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+ListRtcMPUEventSubRecordResult::ListRtcMPUEventSubRecordResult() :
+	ServiceResult()
+{}
+
+ListRtcMPUEventSubRecordResult::ListRtcMPUEventSubRecordResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListRtcMPUEventSubRecordResult::~ListRtcMPUEventSubRecordResult()
+{}
+
+void ListRtcMPUEventSubRecordResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allLogsNode = value["Logs"]["SubInfo"];
+	for (auto valueLogsSubInfo : allLogsNode)
+	{
+		SubInfo logsObject;
+		if(!valueLogsSubInfo["AppId"].isNull())
+			logsObject.appId = valueLogsSubInfo["AppId"].asString();
+		if(!valueLogsSubInfo["SubId"].isNull())
+			logsObject.subId = valueLogsSubInfo["SubId"].asString();
+		if(!valueLogsSubInfo["MsgId"].isNull())
+			logsObject.msgId = valueLogsSubInfo["MsgId"].asString();
+		if(!valueLogsSubInfo["Data"].isNull())
+			logsObject.data = valueLogsSubInfo["Data"].asString();
+		if(!valueLogsSubInfo["Time"].isNull())
+			logsObject.time = valueLogsSubInfo["Time"].asString();
+		if(!valueLogsSubInfo["Cost"].isNull())
+			logsObject.cost = std::stol(valueLogsSubInfo["Cost"].asString());
+		if(!valueLogsSubInfo["CallbackUrl"].isNull())
+			logsObject.callbackUrl = valueLogsSubInfo["CallbackUrl"].asString();
+		if(!valueLogsSubInfo["HTTPCode"].isNull())
+			logsObject.hTTPCode = valueLogsSubInfo["HTTPCode"].asString();
+		logs_.push_back(logsObject);
+	}
+	if(!value["Count"].isNull())
+		count_ = std::stol(value["Count"].asString());
+	if(!value["HasMore"].isNull())
+		hasMore_ = value["HasMore"].asString() == "true";
+
+}
+
+bool ListRtcMPUEventSubRecordResult::getHasMore()const
+{
+	return hasMore_;
+}
+
+std::vector<ListRtcMPUEventSubRecordResult::SubInfo> ListRtcMPUEventSubRecordResult::getLogs()const
+{
+	return logs_;
+}
+
+long ListRtcMPUEventSubRecordResult::getCount()const
+{
+	return count_;
+}
+

+ 0 - 117
live/src/model/RealTimeSnapshotCommandRequest.cc

@@ -1,117 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/RealTimeSnapshotCommandRequest.h>
-
-using AlibabaCloud::Live::Model::RealTimeSnapshotCommandRequest;
-
-RealTimeSnapshotCommandRequest::RealTimeSnapshotCommandRequest()
-    : RpcServiceRequest("live", "2016-11-01", "RealTimeSnapshotCommand") {
-  setMethod(HttpRequest::Method::Post);
-}
-
-RealTimeSnapshotCommandRequest::~RealTimeSnapshotCommandRequest() {}
-
-int RealTimeSnapshotCommandRequest::getSource() const {
-  return source_;
-}
-
-void RealTimeSnapshotCommandRequest::setSource(int source) {
-  source_ = source;
-  setParameter(std::string("Source"), std::to_string(source));
-}
-
-int RealTimeSnapshotCommandRequest::getMode() const {
-  return mode_;
-}
-
-void RealTimeSnapshotCommandRequest::setMode(int mode) {
-  mode_ = mode;
-  setParameter(std::string("Mode"), std::to_string(mode));
-}
-
-std::string RealTimeSnapshotCommandRequest::getUserData() const {
-  return userData_;
-}
-
-void RealTimeSnapshotCommandRequest::setUserData(const std::string &userData) {
-  userData_ = userData;
-  setParameter(std::string("UserData"), userData);
-}
-
-std::string RealTimeSnapshotCommandRequest::getAppName() const {
-  return appName_;
-}
-
-void RealTimeSnapshotCommandRequest::setAppName(const std::string &appName) {
-  appName_ = appName;
-  setParameter(std::string("AppName"), appName);
-}
-
-std::string RealTimeSnapshotCommandRequest::getStreamName() const {
-  return streamName_;
-}
-
-void RealTimeSnapshotCommandRequest::setStreamName(const std::string &streamName) {
-  streamName_ = streamName;
-  setParameter(std::string("StreamName"), streamName);
-}
-
-std::string RealTimeSnapshotCommandRequest::getDomainName() const {
-  return domainName_;
-}
-
-void RealTimeSnapshotCommandRequest::setDomainName(const std::string &domainName) {
-  domainName_ = domainName;
-  setParameter(std::string("DomainName"), domainName);
-}
-
-long RealTimeSnapshotCommandRequest::getOwnerId() const {
-  return ownerId_;
-}
-
-void RealTimeSnapshotCommandRequest::setOwnerId(long ownerId) {
-  ownerId_ = ownerId;
-  setParameter(std::string("OwnerId"), std::to_string(ownerId));
-}
-
-std::string RealTimeSnapshotCommandRequest::getCommand() const {
-  return command_;
-}
-
-void RealTimeSnapshotCommandRequest::setCommand(const std::string &command) {
-  command_ = command;
-  setParameter(std::string("Command"), command);
-}
-
-int RealTimeSnapshotCommandRequest::getSnapshotType() const {
-  return snapshotType_;
-}
-
-void RealTimeSnapshotCommandRequest::setSnapshotType(int snapshotType) {
-  snapshotType_ = snapshotType;
-  setParameter(std::string("SnapshotType"), std::to_string(snapshotType));
-}
-
-int RealTimeSnapshotCommandRequest::getInterval() const {
-  return interval_;
-}
-
-void RealTimeSnapshotCommandRequest::setInterval(int interval) {
-  interval_ = interval;
-  setParameter(std::string("Interval"), std::to_string(interval));
-}
-

+ 0 - 72
live/src/model/SetLiveStreamOptimizedFeatureConfigRequest.cc

@@ -1,72 +0,0 @@
-/*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <alibabacloud/live/model/SetLiveStreamOptimizedFeatureConfigRequest.h>
-
-using AlibabaCloud::Live::Model::SetLiveStreamOptimizedFeatureConfigRequest;
-
-SetLiveStreamOptimizedFeatureConfigRequest::SetLiveStreamOptimizedFeatureConfigRequest()
-    : RpcServiceRequest("live", "2016-11-01", "SetLiveStreamOptimizedFeatureConfig") {
-  setMethod(HttpRequest::Method::Post);
-}
-
-SetLiveStreamOptimizedFeatureConfigRequest::~SetLiveStreamOptimizedFeatureConfigRequest() {}
-
-std::string SetLiveStreamOptimizedFeatureConfigRequest::getConfigStatus() const {
-  return configStatus_;
-}
-
-void SetLiveStreamOptimizedFeatureConfigRequest::setConfigStatus(const std::string &configStatus) {
-  configStatus_ = configStatus;
-  setParameter(std::string("ConfigStatus"), configStatus);
-}
-
-std::string SetLiveStreamOptimizedFeatureConfigRequest::getConfigName() const {
-  return configName_;
-}
-
-void SetLiveStreamOptimizedFeatureConfigRequest::setConfigName(const std::string &configName) {
-  configName_ = configName;
-  setParameter(std::string("ConfigName"), configName);
-}
-
-std::string SetLiveStreamOptimizedFeatureConfigRequest::getDomainName() const {
-  return domainName_;
-}
-
-void SetLiveStreamOptimizedFeatureConfigRequest::setDomainName(const std::string &domainName) {
-  domainName_ = domainName;
-  setParameter(std::string("DomainName"), domainName);
-}
-
-std::string SetLiveStreamOptimizedFeatureConfigRequest::getConfigValue() const {
-  return configValue_;
-}
-
-void SetLiveStreamOptimizedFeatureConfigRequest::setConfigValue(const std::string &configValue) {
-  configValue_ = configValue;
-  setParameter(std::string("ConfigValue"), configValue);
-}
-
-long SetLiveStreamOptimizedFeatureConfigRequest::getOwnerId() const {
-  return ownerId_;
-}
-
-void SetLiveStreamOptimizedFeatureConfigRequest::setOwnerId(long ownerId) {
-  ownerId_ = ownerId;
-  setParameter(std::string("OwnerId"), std::to_string(ownerId));
-}
-

+ 3 - 1
live/src/model/StartLiveMPUTaskRequest.cc

@@ -63,9 +63,9 @@ void StartLiveMPUTaskRequest::setTranscodeParams(const StartLiveMPUTaskRequest::
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".Width", transcodeParams.layout.userPanes[dep1].width);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".X", transcodeParams.layout.userPanes[dep1].x);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".Y", transcodeParams.layout.userPanes[dep1].y);
-    setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".RenderMode", transcodeParams.layout.userPanes[dep1].renderMode);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".UserInfo.SourceType", transcodeParams.layout.userPanes[dep1].userInfo.sourceType);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".UserInfo.UserId", transcodeParams.layout.userPanes[dep1].userInfo.userId);
+    setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".RenderMode", transcodeParams.layout.userPanes[dep1].renderMode);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".Height", transcodeParams.layout.userPanes[dep1].height);
   }
   setParameter(std::string("TranscodeParams") + ".Layout.LayoutMode", transcodeParams.layout.layoutMode);
@@ -82,10 +82,12 @@ void StartLiveMPUTaskRequest::setTranscodeParams(const StartLiveMPUTaskRequest::
   setParameter(std::string("TranscodeParams") + ".EncodeParams.AudioOnly", transcodeParams.encodeParams.audioOnly);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoWidth", transcodeParams.encodeParams.videoWidth);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.AudioBitrate", transcodeParams.encodeParams.audioBitrate);
+  setParameter(std::string("TranscodeParams") + ".EncodeParams.EnhancedParam", transcodeParams.encodeParams.enhancedParam);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoFramerate", transcodeParams.encodeParams.videoFramerate);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoHeight", transcodeParams.encodeParams.videoHeight);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.AudioSampleRate", transcodeParams.encodeParams.audioSampleRate);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoBitrate", transcodeParams.encodeParams.videoBitrate);
+  setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoCodec", transcodeParams.encodeParams.videoCodec);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.AudioChannels", transcodeParams.encodeParams.audioChannels);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoGop", transcodeParams.encodeParams.videoGop);
 }

+ 3 - 1
live/src/model/UpdateLiveMPUTaskRequest.cc

@@ -62,9 +62,9 @@ void UpdateLiveMPUTaskRequest::setTranscodeParams(const UpdateLiveMPUTaskRequest
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".Width", transcodeParams.layout.userPanes[dep1].width);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".X", transcodeParams.layout.userPanes[dep1].x);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".Y", transcodeParams.layout.userPanes[dep1].y);
-    setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".RenderMode", transcodeParams.layout.userPanes[dep1].renderMode);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".UserInfo.SourceType", transcodeParams.layout.userPanes[dep1].userInfo.sourceType);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".UserInfo.UserId", transcodeParams.layout.userPanes[dep1].userInfo.userId);
+    setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".RenderMode", transcodeParams.layout.userPanes[dep1].renderMode);
     setParameter(std::string("TranscodeParams") + ".Layout.UserPanes." + std::to_string(dep1 + 1) + ".Height", transcodeParams.layout.userPanes[dep1].height);
   }
   setParameter(std::string("TranscodeParams") + ".Layout.LayoutMode", transcodeParams.layout.layoutMode);
@@ -81,10 +81,12 @@ void UpdateLiveMPUTaskRequest::setTranscodeParams(const UpdateLiveMPUTaskRequest
   setParameter(std::string("TranscodeParams") + ".EncodeParams.AudioOnly", transcodeParams.encodeParams.audioOnly);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoWidth", transcodeParams.encodeParams.videoWidth);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.AudioBitrate", transcodeParams.encodeParams.audioBitrate);
+  setParameter(std::string("TranscodeParams") + ".EncodeParams.EnhancedParam", transcodeParams.encodeParams.enhancedParam);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoFramerate", transcodeParams.encodeParams.videoFramerate);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoHeight", transcodeParams.encodeParams.videoHeight);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.AudioSampleRate", transcodeParams.encodeParams.audioSampleRate);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoBitrate", transcodeParams.encodeParams.videoBitrate);
+  setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoCodec", transcodeParams.encodeParams.videoCodec);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.AudioChannels", transcodeParams.encodeParams.audioChannels);
   setParameter(std::string("TranscodeParams") + ".EncodeParams.VideoGop", transcodeParams.encodeParams.videoGop);
 }

+ 54 - 0
live/src/model/UpdateRtcMPUEventSubRequest.cc

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/live/model/UpdateRtcMPUEventSubRequest.h>
+
+using AlibabaCloud::Live::Model::UpdateRtcMPUEventSubRequest;
+
+UpdateRtcMPUEventSubRequest::UpdateRtcMPUEventSubRequest()
+    : RpcServiceRequest("live", "2016-11-01", "UpdateRtcMPUEventSub") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+UpdateRtcMPUEventSubRequest::~UpdateRtcMPUEventSubRequest() {}
+
+std::string UpdateRtcMPUEventSubRequest::getAppId() const {
+  return appId_;
+}
+
+void UpdateRtcMPUEventSubRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
+std::string UpdateRtcMPUEventSubRequest::getCallbackUrl() const {
+  return callbackUrl_;
+}
+
+void UpdateRtcMPUEventSubRequest::setCallbackUrl(const std::string &callbackUrl) {
+  callbackUrl_ = callbackUrl;
+  setParameter(std::string("CallbackUrl"), callbackUrl);
+}
+
+std::string UpdateRtcMPUEventSubRequest::getChannelIds() const {
+  return channelIds_;
+}
+
+void UpdateRtcMPUEventSubRequest::setChannelIds(const std::string &channelIds) {
+  channelIds_ = channelIds;
+  setParameter(std::string("ChannelIds"), channelIds);
+}
+

+ 5 - 5
live/src/model/SetLiveStreamOptimizedFeatureConfigResult.cc → live/src/model/UpdateRtcMPUEventSubResult.cc

@@ -14,26 +14,26 @@
  * limitations under the License.
  */
 
-#include <alibabacloud/live/model/SetLiveStreamOptimizedFeatureConfigResult.h>
+#include <alibabacloud/live/model/UpdateRtcMPUEventSubResult.h>
 #include <json/json.h>
 
 using namespace AlibabaCloud::Live;
 using namespace AlibabaCloud::Live::Model;
 
-SetLiveStreamOptimizedFeatureConfigResult::SetLiveStreamOptimizedFeatureConfigResult() :
+UpdateRtcMPUEventSubResult::UpdateRtcMPUEventSubResult() :
 	ServiceResult()
 {}
 
-SetLiveStreamOptimizedFeatureConfigResult::SetLiveStreamOptimizedFeatureConfigResult(const std::string &payload) :
+UpdateRtcMPUEventSubResult::UpdateRtcMPUEventSubResult(const std::string &payload) :
 	ServiceResult()
 {
 	parse(payload);
 }
 
-SetLiveStreamOptimizedFeatureConfigResult::~SetLiveStreamOptimizedFeatureConfigResult()
+UpdateRtcMPUEventSubResult::~UpdateRtcMPUEventSubResult()
 {}
 
-void SetLiveStreamOptimizedFeatureConfigResult::parse(const std::string &payload)
+void UpdateRtcMPUEventSubResult::parse(const std::string &payload)
 {
 	Json::Reader reader;
 	Json::Value value;