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

Update to support new apis.

sdk-team 2 роки тому
батько
коміт
c8d90808f0
52 змінених файлів з 3923 додано та 1 видалено
  1. 1 1
      VERSION
  2. 48 0
      live/CMakeLists.txt
  3. 96 0
      live/include/alibabacloud/live/LiveClient.h
  4. 63 0
      live/include/alibabacloud/live/model/AddLiveAIProduceRulesRequest.h
  5. 51 0
      live/include/alibabacloud/live/model/AddLiveAIProduceRulesResult.h
  6. 93 0
      live/include/alibabacloud/live/model/AddLiveAISubtitleRequest.h
  7. 51 0
      live/include/alibabacloud/live/model/AddLiveAISubtitleResult.h
  8. 84 0
      live/include/alibabacloud/live/model/CreateRtcAsrTaskRequest.h
  9. 55 0
      live/include/alibabacloud/live/model/CreateRtcAsrTaskResult.h
  10. 54 0
      live/include/alibabacloud/live/model/DeleteLiveAIProduceRulesRequest.h
  11. 49 0
      live/include/alibabacloud/live/model/DeleteLiveAIProduceRulesResult.h
  12. 48 0
      live/include/alibabacloud/live/model/DeleteLiveAISubtitleRequest.h
  13. 49 0
      live/include/alibabacloud/live/model/DeleteLiveAISubtitleResult.h
  14. 60 0
      live/include/alibabacloud/live/model/DescribeLiveAIProduceRulesRequest.h
  15. 64 0
      live/include/alibabacloud/live/model/DescribeLiveAIProduceRulesResult.h
  16. 54 0
      live/include/alibabacloud/live/model/DescribeLiveAISubtitleRequest.h
  17. 72 0
      live/include/alibabacloud/live/model/DescribeLiveAISubtitleResult.h
  18. 57 0
      live/include/alibabacloud/live/model/ListLiveMessageGroupByPageRequest.h
  19. 67 0
      live/include/alibabacloud/live/model/ListLiveMessageGroupByPageResult.h
  20. 45 0
      live/include/alibabacloud/live/model/QueryRtcAsrTasksRequest.h
  21. 49 0
      live/include/alibabacloud/live/model/QueryRtcAsrTasksResult.h
  22. 45 0
      live/include/alibabacloud/live/model/StopRtcAsrTaskRequest.h
  23. 53 0
      live/include/alibabacloud/live/model/StopRtcAsrTaskResult.h
  24. 69 0
      live/include/alibabacloud/live/model/UpdateLiveAIProduceRulesRequest.h
  25. 49 0
      live/include/alibabacloud/live/model/UpdateLiveAIProduceRulesResult.h
  26. 93 0
      live/include/alibabacloud/live/model/UpdateLiveAISubtitleRequest.h
  27. 49 0
      live/include/alibabacloud/live/model/UpdateLiveAISubtitleResult.h
  28. 432 0
      live/src/LiveClient.cc
  29. 99 0
      live/src/model/AddLiveAIProduceRulesRequest.cc
  30. 51 0
      live/src/model/AddLiveAIProduceRulesResult.cc
  31. 191 0
      live/src/model/AddLiveAISubtitleRequest.cc
  32. 51 0
      live/src/model/AddLiveAISubtitleResult.cc
  33. 162 0
      live/src/model/CreateRtcAsrTaskRequest.cc
  34. 65 0
      live/src/model/CreateRtcAsrTaskResult.cc
  35. 72 0
      live/src/model/DeleteLiveAIProduceRulesRequest.cc
  36. 44 0
      live/src/model/DeleteLiveAIProduceRulesResult.cc
  37. 54 0
      live/src/model/DeleteLiveAISubtitleRequest.cc
  38. 44 0
      live/src/model/DeleteLiveAISubtitleResult.cc
  39. 90 0
      live/src/model/DescribeLiveAIProduceRulesRequest.cc
  40. 75 0
      live/src/model/DescribeLiveAIProduceRulesResult.cc
  41. 72 0
      live/src/model/DescribeLiveAISubtitleRequest.cc
  42. 93 0
      live/src/model/DescribeLiveAISubtitleResult.cc
  43. 81 0
      live/src/model/ListLiveMessageGroupByPageRequest.cc
  44. 91 0
      live/src/model/ListLiveMessageGroupByPageResult.cc
  45. 45 0
      live/src/model/QueryRtcAsrTasksRequest.cc
  46. 44 0
      live/src/model/QueryRtcAsrTasksResult.cc
  47. 45 0
      live/src/model/StopRtcAsrTaskRequest.cc
  48. 58 0
      live/src/model/StopRtcAsrTaskResult.cc
  49. 117 0
      live/src/model/UpdateLiveAIProduceRulesRequest.cc
  50. 44 0
      live/src/model/UpdateLiveAIProduceRulesResult.cc
  51. 191 0
      live/src/model/UpdateLiveAISubtitleRequest.cc
  52. 44 0
      live/src/model/UpdateLiveAISubtitleResult.cc

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1922
+1.36.1923

+ 48 - 0
live/CMakeLists.txt

@@ -37,6 +37,10 @@ set(live_public_header_model
 	include/alibabacloud/live/model/AddCasterVideoResourceResult.h
 	include/alibabacloud/live/model/AddCustomLiveStreamTranscodeRequest.h
 	include/alibabacloud/live/model/AddCustomLiveStreamTranscodeResult.h
+	include/alibabacloud/live/model/AddLiveAIProduceRulesRequest.h
+	include/alibabacloud/live/model/AddLiveAIProduceRulesResult.h
+	include/alibabacloud/live/model/AddLiveAISubtitleRequest.h
+	include/alibabacloud/live/model/AddLiveAISubtitleResult.h
 	include/alibabacloud/live/model/AddLiveAppRecordConfigRequest.h
 	include/alibabacloud/live/model/AddLiveAppRecordConfigResult.h
 	include/alibabacloud/live/model/AddLiveAppSnapshotConfigRequest.h
@@ -141,6 +145,8 @@ set(live_public_header_model
 	include/alibabacloud/live/model/CreateMixStreamResult.h
 	include/alibabacloud/live/model/CreateRoomRealTimeStreamAddressRequest.h
 	include/alibabacloud/live/model/CreateRoomRealTimeStreamAddressResult.h
+	include/alibabacloud/live/model/CreateRtcAsrTaskRequest.h
+	include/alibabacloud/live/model/CreateRtcAsrTaskResult.h
 	include/alibabacloud/live/model/DeleteCasterRequest.h
 	include/alibabacloud/live/model/DeleteCasterResult.h
 	include/alibabacloud/live/model/DeleteCasterComponentRequest.h
@@ -165,6 +171,10 @@ set(live_public_header_model
 	include/alibabacloud/live/model/DeleteEdgeTranscodeJobResult.h
 	include/alibabacloud/live/model/DeleteEventSubRequest.h
 	include/alibabacloud/live/model/DeleteEventSubResult.h
+	include/alibabacloud/live/model/DeleteLiveAIProduceRulesRequest.h
+	include/alibabacloud/live/model/DeleteLiveAIProduceRulesResult.h
+	include/alibabacloud/live/model/DeleteLiveAISubtitleRequest.h
+	include/alibabacloud/live/model/DeleteLiveAISubtitleResult.h
 	include/alibabacloud/live/model/DeleteLiveAppRecordConfigRequest.h
 	include/alibabacloud/live/model/DeleteLiveAppRecordConfigResult.h
 	include/alibabacloud/live/model/DeleteLiveAppSnapshotConfigRequest.h
@@ -285,6 +295,10 @@ set(live_public_header_model
 	include/alibabacloud/live/model/DescribeForbidPushStreamRoomListResult.h
 	include/alibabacloud/live/model/DescribeHlsLiveStreamRealTimeBpsDataRequest.h
 	include/alibabacloud/live/model/DescribeHlsLiveStreamRealTimeBpsDataResult.h
+	include/alibabacloud/live/model/DescribeLiveAIProduceRulesRequest.h
+	include/alibabacloud/live/model/DescribeLiveAIProduceRulesResult.h
+	include/alibabacloud/live/model/DescribeLiveAISubtitleRequest.h
+	include/alibabacloud/live/model/DescribeLiveAISubtitleResult.h
 	include/alibabacloud/live/model/DescribeLiveAudioAuditConfigRequest.h
 	include/alibabacloud/live/model/DescribeLiveAudioAuditConfigResult.h
 	include/alibabacloud/live/model/DescribeLiveAudioAuditNotifyConfigRequest.h
@@ -599,6 +613,8 @@ set(live_public_header_model
 	include/alibabacloud/live/model/ListLiveDelayConfigResult.h
 	include/alibabacloud/live/model/ListLiveMessageAppsRequest.h
 	include/alibabacloud/live/model/ListLiveMessageAppsResult.h
+	include/alibabacloud/live/model/ListLiveMessageGroupByPageRequest.h
+	include/alibabacloud/live/model/ListLiveMessageGroupByPageResult.h
 	include/alibabacloud/live/model/ListLiveMessageGroupMessagesRequest.h
 	include/alibabacloud/live/model/ListLiveMessageGroupMessagesResult.h
 	include/alibabacloud/live/model/ListLiveMessageGroupUsersRequest.h
@@ -673,6 +689,8 @@ set(live_public_header_model
 	include/alibabacloud/live/model/PublishLiveStagingConfigToProductionResult.h
 	include/alibabacloud/live/model/QueryMessageAppRequest.h
 	include/alibabacloud/live/model/QueryMessageAppResult.h
+	include/alibabacloud/live/model/QueryRtcAsrTasksRequest.h
+	include/alibabacloud/live/model/QueryRtcAsrTasksResult.h
 	include/alibabacloud/live/model/QuerySnapshotCallbackAuthRequest.h
 	include/alibabacloud/live/model/QuerySnapshotCallbackAuthResult.h
 	include/alibabacloud/live/model/RealTimeRecordCommandRequest.h
@@ -765,6 +783,8 @@ set(live_public_header_model
 	include/alibabacloud/live/model/StopLiveStreamMonitorResult.h
 	include/alibabacloud/live/model/StopPlaylistRequest.h
 	include/alibabacloud/live/model/StopPlaylistResult.h
+	include/alibabacloud/live/model/StopRtcAsrTaskRequest.h
+	include/alibabacloud/live/model/StopRtcAsrTaskResult.h
 	include/alibabacloud/live/model/TagLiveResourcesRequest.h
 	include/alibabacloud/live/model/TagLiveResourcesResult.h
 	include/alibabacloud/live/model/UnTagLiveResourcesRequest.h
@@ -777,6 +797,10 @@ set(live_public_header_model
 	include/alibabacloud/live/model/UpdateEdgeTranscodeJobResult.h
 	include/alibabacloud/live/model/UpdateEventSubRequest.h
 	include/alibabacloud/live/model/UpdateEventSubResult.h
+	include/alibabacloud/live/model/UpdateLiveAIProduceRulesRequest.h
+	include/alibabacloud/live/model/UpdateLiveAIProduceRulesResult.h
+	include/alibabacloud/live/model/UpdateLiveAISubtitleRequest.h
+	include/alibabacloud/live/model/UpdateLiveAISubtitleResult.h
 	include/alibabacloud/live/model/UpdateLiveAppRecordConfigRequest.h
 	include/alibabacloud/live/model/UpdateLiveAppRecordConfigResult.h
 	include/alibabacloud/live/model/UpdateLiveAppSnapshotConfigRequest.h
@@ -840,6 +864,10 @@ set(live_src
 	src/model/AddCasterVideoResourceResult.cc
 	src/model/AddCustomLiveStreamTranscodeRequest.cc
 	src/model/AddCustomLiveStreamTranscodeResult.cc
+	src/model/AddLiveAIProduceRulesRequest.cc
+	src/model/AddLiveAIProduceRulesResult.cc
+	src/model/AddLiveAISubtitleRequest.cc
+	src/model/AddLiveAISubtitleResult.cc
 	src/model/AddLiveAppRecordConfigRequest.cc
 	src/model/AddLiveAppRecordConfigResult.cc
 	src/model/AddLiveAppSnapshotConfigRequest.cc
@@ -944,6 +972,8 @@ set(live_src
 	src/model/CreateMixStreamResult.cc
 	src/model/CreateRoomRealTimeStreamAddressRequest.cc
 	src/model/CreateRoomRealTimeStreamAddressResult.cc
+	src/model/CreateRtcAsrTaskRequest.cc
+	src/model/CreateRtcAsrTaskResult.cc
 	src/model/DeleteCasterRequest.cc
 	src/model/DeleteCasterResult.cc
 	src/model/DeleteCasterComponentRequest.cc
@@ -968,6 +998,10 @@ set(live_src
 	src/model/DeleteEdgeTranscodeJobResult.cc
 	src/model/DeleteEventSubRequest.cc
 	src/model/DeleteEventSubResult.cc
+	src/model/DeleteLiveAIProduceRulesRequest.cc
+	src/model/DeleteLiveAIProduceRulesResult.cc
+	src/model/DeleteLiveAISubtitleRequest.cc
+	src/model/DeleteLiveAISubtitleResult.cc
 	src/model/DeleteLiveAppRecordConfigRequest.cc
 	src/model/DeleteLiveAppRecordConfigResult.cc
 	src/model/DeleteLiveAppSnapshotConfigRequest.cc
@@ -1088,6 +1122,10 @@ set(live_src
 	src/model/DescribeForbidPushStreamRoomListResult.cc
 	src/model/DescribeHlsLiveStreamRealTimeBpsDataRequest.cc
 	src/model/DescribeHlsLiveStreamRealTimeBpsDataResult.cc
+	src/model/DescribeLiveAIProduceRulesRequest.cc
+	src/model/DescribeLiveAIProduceRulesResult.cc
+	src/model/DescribeLiveAISubtitleRequest.cc
+	src/model/DescribeLiveAISubtitleResult.cc
 	src/model/DescribeLiveAudioAuditConfigRequest.cc
 	src/model/DescribeLiveAudioAuditConfigResult.cc
 	src/model/DescribeLiveAudioAuditNotifyConfigRequest.cc
@@ -1402,6 +1440,8 @@ set(live_src
 	src/model/ListLiveDelayConfigResult.cc
 	src/model/ListLiveMessageAppsRequest.cc
 	src/model/ListLiveMessageAppsResult.cc
+	src/model/ListLiveMessageGroupByPageRequest.cc
+	src/model/ListLiveMessageGroupByPageResult.cc
 	src/model/ListLiveMessageGroupMessagesRequest.cc
 	src/model/ListLiveMessageGroupMessagesResult.cc
 	src/model/ListLiveMessageGroupUsersRequest.cc
@@ -1476,6 +1516,8 @@ set(live_src
 	src/model/PublishLiveStagingConfigToProductionResult.cc
 	src/model/QueryMessageAppRequest.cc
 	src/model/QueryMessageAppResult.cc
+	src/model/QueryRtcAsrTasksRequest.cc
+	src/model/QueryRtcAsrTasksResult.cc
 	src/model/QuerySnapshotCallbackAuthRequest.cc
 	src/model/QuerySnapshotCallbackAuthResult.cc
 	src/model/RealTimeRecordCommandRequest.cc
@@ -1568,6 +1610,8 @@ set(live_src
 	src/model/StopLiveStreamMonitorResult.cc
 	src/model/StopPlaylistRequest.cc
 	src/model/StopPlaylistResult.cc
+	src/model/StopRtcAsrTaskRequest.cc
+	src/model/StopRtcAsrTaskResult.cc
 	src/model/TagLiveResourcesRequest.cc
 	src/model/TagLiveResourcesResult.cc
 	src/model/UnTagLiveResourcesRequest.cc
@@ -1580,6 +1624,10 @@ set(live_src
 	src/model/UpdateEdgeTranscodeJobResult.cc
 	src/model/UpdateEventSubRequest.cc
 	src/model/UpdateEventSubResult.cc
+	src/model/UpdateLiveAIProduceRulesRequest.cc
+	src/model/UpdateLiveAIProduceRulesResult.cc
+	src/model/UpdateLiveAISubtitleRequest.cc
+	src/model/UpdateLiveAISubtitleResult.cc
 	src/model/UpdateLiveAppRecordConfigRequest.cc
 	src/model/UpdateLiveAppRecordConfigResult.cc
 	src/model/UpdateLiveAppSnapshotConfigRequest.cc

+ 96 - 0
live/include/alibabacloud/live/LiveClient.h

@@ -38,6 +38,10 @@
 #include "model/AddCasterVideoResourceResult.h"
 #include "model/AddCustomLiveStreamTranscodeRequest.h"
 #include "model/AddCustomLiveStreamTranscodeResult.h"
+#include "model/AddLiveAIProduceRulesRequest.h"
+#include "model/AddLiveAIProduceRulesResult.h"
+#include "model/AddLiveAISubtitleRequest.h"
+#include "model/AddLiveAISubtitleResult.h"
 #include "model/AddLiveAppRecordConfigRequest.h"
 #include "model/AddLiveAppRecordConfigResult.h"
 #include "model/AddLiveAppSnapshotConfigRequest.h"
@@ -142,6 +146,8 @@
 #include "model/CreateMixStreamResult.h"
 #include "model/CreateRoomRealTimeStreamAddressRequest.h"
 #include "model/CreateRoomRealTimeStreamAddressResult.h"
+#include "model/CreateRtcAsrTaskRequest.h"
+#include "model/CreateRtcAsrTaskResult.h"
 #include "model/DeleteCasterRequest.h"
 #include "model/DeleteCasterResult.h"
 #include "model/DeleteCasterComponentRequest.h"
@@ -166,6 +172,10 @@
 #include "model/DeleteEdgeTranscodeJobResult.h"
 #include "model/DeleteEventSubRequest.h"
 #include "model/DeleteEventSubResult.h"
+#include "model/DeleteLiveAIProduceRulesRequest.h"
+#include "model/DeleteLiveAIProduceRulesResult.h"
+#include "model/DeleteLiveAISubtitleRequest.h"
+#include "model/DeleteLiveAISubtitleResult.h"
 #include "model/DeleteLiveAppRecordConfigRequest.h"
 #include "model/DeleteLiveAppRecordConfigResult.h"
 #include "model/DeleteLiveAppSnapshotConfigRequest.h"
@@ -286,6 +296,10 @@
 #include "model/DescribeForbidPushStreamRoomListResult.h"
 #include "model/DescribeHlsLiveStreamRealTimeBpsDataRequest.h"
 #include "model/DescribeHlsLiveStreamRealTimeBpsDataResult.h"
+#include "model/DescribeLiveAIProduceRulesRequest.h"
+#include "model/DescribeLiveAIProduceRulesResult.h"
+#include "model/DescribeLiveAISubtitleRequest.h"
+#include "model/DescribeLiveAISubtitleResult.h"
 #include "model/DescribeLiveAudioAuditConfigRequest.h"
 #include "model/DescribeLiveAudioAuditConfigResult.h"
 #include "model/DescribeLiveAudioAuditNotifyConfigRequest.h"
@@ -600,6 +614,8 @@
 #include "model/ListLiveDelayConfigResult.h"
 #include "model/ListLiveMessageAppsRequest.h"
 #include "model/ListLiveMessageAppsResult.h"
+#include "model/ListLiveMessageGroupByPageRequest.h"
+#include "model/ListLiveMessageGroupByPageResult.h"
 #include "model/ListLiveMessageGroupMessagesRequest.h"
 #include "model/ListLiveMessageGroupMessagesResult.h"
 #include "model/ListLiveMessageGroupUsersRequest.h"
@@ -674,6 +690,8 @@
 #include "model/PublishLiveStagingConfigToProductionResult.h"
 #include "model/QueryMessageAppRequest.h"
 #include "model/QueryMessageAppResult.h"
+#include "model/QueryRtcAsrTasksRequest.h"
+#include "model/QueryRtcAsrTasksResult.h"
 #include "model/QuerySnapshotCallbackAuthRequest.h"
 #include "model/QuerySnapshotCallbackAuthResult.h"
 #include "model/RealTimeRecordCommandRequest.h"
@@ -766,6 +784,8 @@
 #include "model/StopLiveStreamMonitorResult.h"
 #include "model/StopPlaylistRequest.h"
 #include "model/StopPlaylistResult.h"
+#include "model/StopRtcAsrTaskRequest.h"
+#include "model/StopRtcAsrTaskResult.h"
 #include "model/TagLiveResourcesRequest.h"
 #include "model/TagLiveResourcesResult.h"
 #include "model/UnTagLiveResourcesRequest.h"
@@ -778,6 +798,10 @@
 #include "model/UpdateEdgeTranscodeJobResult.h"
 #include "model/UpdateEventSubRequest.h"
 #include "model/UpdateEventSubResult.h"
+#include "model/UpdateLiveAIProduceRulesRequest.h"
+#include "model/UpdateLiveAIProduceRulesResult.h"
+#include "model/UpdateLiveAISubtitleRequest.h"
+#include "model/UpdateLiveAISubtitleResult.h"
 #include "model/UpdateLiveAppRecordConfigRequest.h"
 #include "model/UpdateLiveAppRecordConfigResult.h"
 #include "model/UpdateLiveAppSnapshotConfigRequest.h"
@@ -855,6 +879,12 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::AddCustomLiveStreamTranscodeResult> AddCustomLiveStreamTranscodeOutcome;
 			typedef std::future<AddCustomLiveStreamTranscodeOutcome> AddCustomLiveStreamTranscodeOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::AddCustomLiveStreamTranscodeRequest&, const AddCustomLiveStreamTranscodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddCustomLiveStreamTranscodeAsyncHandler;
+			typedef Outcome<Error, Model::AddLiveAIProduceRulesResult> AddLiveAIProduceRulesOutcome;
+			typedef std::future<AddLiveAIProduceRulesOutcome> AddLiveAIProduceRulesOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::AddLiveAIProduceRulesRequest&, const AddLiveAIProduceRulesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddLiveAIProduceRulesAsyncHandler;
+			typedef Outcome<Error, Model::AddLiveAISubtitleResult> AddLiveAISubtitleOutcome;
+			typedef std::future<AddLiveAISubtitleOutcome> AddLiveAISubtitleOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::AddLiveAISubtitleRequest&, const AddLiveAISubtitleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddLiveAISubtitleAsyncHandler;
 			typedef Outcome<Error, Model::AddLiveAppRecordConfigResult> AddLiveAppRecordConfigOutcome;
 			typedef std::future<AddLiveAppRecordConfigOutcome> AddLiveAppRecordConfigOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::AddLiveAppRecordConfigRequest&, const AddLiveAppRecordConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddLiveAppRecordConfigAsyncHandler;
@@ -1011,6 +1041,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateRoomRealTimeStreamAddressResult> CreateRoomRealTimeStreamAddressOutcome;
 			typedef std::future<CreateRoomRealTimeStreamAddressOutcome> CreateRoomRealTimeStreamAddressOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::CreateRoomRealTimeStreamAddressRequest&, const CreateRoomRealTimeStreamAddressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateRoomRealTimeStreamAddressAsyncHandler;
+			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::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;
@@ -1047,6 +1080,12 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteEventSubResult> DeleteEventSubOutcome;
 			typedef std::future<DeleteEventSubOutcome> DeleteEventSubOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DeleteEventSubRequest&, const DeleteEventSubOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteEventSubAsyncHandler;
+			typedef Outcome<Error, Model::DeleteLiveAIProduceRulesResult> DeleteLiveAIProduceRulesOutcome;
+			typedef std::future<DeleteLiveAIProduceRulesOutcome> DeleteLiveAIProduceRulesOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::DeleteLiveAIProduceRulesRequest&, const DeleteLiveAIProduceRulesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteLiveAIProduceRulesAsyncHandler;
+			typedef Outcome<Error, Model::DeleteLiveAISubtitleResult> DeleteLiveAISubtitleOutcome;
+			typedef std::future<DeleteLiveAISubtitleOutcome> DeleteLiveAISubtitleOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::DeleteLiveAISubtitleRequest&, const DeleteLiveAISubtitleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteLiveAISubtitleAsyncHandler;
 			typedef Outcome<Error, Model::DeleteLiveAppRecordConfigResult> DeleteLiveAppRecordConfigOutcome;
 			typedef std::future<DeleteLiveAppRecordConfigOutcome> DeleteLiveAppRecordConfigOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DeleteLiveAppRecordConfigRequest&, const DeleteLiveAppRecordConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteLiveAppRecordConfigAsyncHandler;
@@ -1227,6 +1266,12 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeHlsLiveStreamRealTimeBpsDataResult> DescribeHlsLiveStreamRealTimeBpsDataOutcome;
 			typedef std::future<DescribeHlsLiveStreamRealTimeBpsDataOutcome> DescribeHlsLiveStreamRealTimeBpsDataOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DescribeHlsLiveStreamRealTimeBpsDataRequest&, const DescribeHlsLiveStreamRealTimeBpsDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeHlsLiveStreamRealTimeBpsDataAsyncHandler;
+			typedef Outcome<Error, Model::DescribeLiveAIProduceRulesResult> DescribeLiveAIProduceRulesOutcome;
+			typedef std::future<DescribeLiveAIProduceRulesOutcome> DescribeLiveAIProduceRulesOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::DescribeLiveAIProduceRulesRequest&, const DescribeLiveAIProduceRulesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeLiveAIProduceRulesAsyncHandler;
+			typedef Outcome<Error, Model::DescribeLiveAISubtitleResult> DescribeLiveAISubtitleOutcome;
+			typedef std::future<DescribeLiveAISubtitleOutcome> DescribeLiveAISubtitleOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::DescribeLiveAISubtitleRequest&, const DescribeLiveAISubtitleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeLiveAISubtitleAsyncHandler;
 			typedef Outcome<Error, Model::DescribeLiveAudioAuditConfigResult> DescribeLiveAudioAuditConfigOutcome;
 			typedef std::future<DescribeLiveAudioAuditConfigOutcome> DescribeLiveAudioAuditConfigOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::DescribeLiveAudioAuditConfigRequest&, const DescribeLiveAudioAuditConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeLiveAudioAuditConfigAsyncHandler;
@@ -1698,6 +1743,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListLiveMessageAppsResult> ListLiveMessageAppsOutcome;
 			typedef std::future<ListLiveMessageAppsOutcome> ListLiveMessageAppsOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::ListLiveMessageAppsRequest&, const ListLiveMessageAppsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListLiveMessageAppsAsyncHandler;
+			typedef Outcome<Error, Model::ListLiveMessageGroupByPageResult> ListLiveMessageGroupByPageOutcome;
+			typedef std::future<ListLiveMessageGroupByPageOutcome> ListLiveMessageGroupByPageOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::ListLiveMessageGroupByPageRequest&, const ListLiveMessageGroupByPageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListLiveMessageGroupByPageAsyncHandler;
 			typedef Outcome<Error, Model::ListLiveMessageGroupMessagesResult> ListLiveMessageGroupMessagesOutcome;
 			typedef std::future<ListLiveMessageGroupMessagesOutcome> ListLiveMessageGroupMessagesOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::ListLiveMessageGroupMessagesRequest&, const ListLiveMessageGroupMessagesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListLiveMessageGroupMessagesAsyncHandler;
@@ -1809,6 +1857,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::QueryMessageAppResult> QueryMessageAppOutcome;
 			typedef std::future<QueryMessageAppOutcome> QueryMessageAppOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::QueryMessageAppRequest&, const QueryMessageAppOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryMessageAppAsyncHandler;
+			typedef Outcome<Error, Model::QueryRtcAsrTasksResult> QueryRtcAsrTasksOutcome;
+			typedef std::future<QueryRtcAsrTasksOutcome> QueryRtcAsrTasksOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::QueryRtcAsrTasksRequest&, const QueryRtcAsrTasksOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryRtcAsrTasksAsyncHandler;
 			typedef Outcome<Error, Model::QuerySnapshotCallbackAuthResult> QuerySnapshotCallbackAuthOutcome;
 			typedef std::future<QuerySnapshotCallbackAuthOutcome> QuerySnapshotCallbackAuthOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::QuerySnapshotCallbackAuthRequest&, const QuerySnapshotCallbackAuthOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QuerySnapshotCallbackAuthAsyncHandler;
@@ -1947,6 +1998,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::StopPlaylistResult> StopPlaylistOutcome;
 			typedef std::future<StopPlaylistOutcome> StopPlaylistOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::StopPlaylistRequest&, const StopPlaylistOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopPlaylistAsyncHandler;
+			typedef Outcome<Error, Model::StopRtcAsrTaskResult> StopRtcAsrTaskOutcome;
+			typedef std::future<StopRtcAsrTaskOutcome> StopRtcAsrTaskOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::StopRtcAsrTaskRequest&, const StopRtcAsrTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopRtcAsrTaskAsyncHandler;
 			typedef Outcome<Error, Model::TagLiveResourcesResult> TagLiveResourcesOutcome;
 			typedef std::future<TagLiveResourcesOutcome> TagLiveResourcesOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::TagLiveResourcesRequest&, const TagLiveResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> TagLiveResourcesAsyncHandler;
@@ -1965,6 +2019,12 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::UpdateEventSubResult> UpdateEventSubOutcome;
 			typedef std::future<UpdateEventSubOutcome> UpdateEventSubOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::UpdateEventSubRequest&, const UpdateEventSubOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateEventSubAsyncHandler;
+			typedef Outcome<Error, Model::UpdateLiveAIProduceRulesResult> UpdateLiveAIProduceRulesOutcome;
+			typedef std::future<UpdateLiveAIProduceRulesOutcome> UpdateLiveAIProduceRulesOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::UpdateLiveAIProduceRulesRequest&, const UpdateLiveAIProduceRulesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateLiveAIProduceRulesAsyncHandler;
+			typedef Outcome<Error, Model::UpdateLiveAISubtitleResult> UpdateLiveAISubtitleOutcome;
+			typedef std::future<UpdateLiveAISubtitleOutcome> UpdateLiveAISubtitleOutcomeCallable;
+			typedef std::function<void(const LiveClient*, const Model::UpdateLiveAISubtitleRequest&, const UpdateLiveAISubtitleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateLiveAISubtitleAsyncHandler;
 			typedef Outcome<Error, Model::UpdateLiveAppRecordConfigResult> UpdateLiveAppRecordConfigOutcome;
 			typedef std::future<UpdateLiveAppRecordConfigOutcome> UpdateLiveAppRecordConfigOutcomeCallable;
 			typedef std::function<void(const LiveClient*, const Model::UpdateLiveAppRecordConfigRequest&, const UpdateLiveAppRecordConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateLiveAppRecordConfigAsyncHandler;
@@ -2060,6 +2120,12 @@ namespace AlibabaCloud
 			AddCustomLiveStreamTranscodeOutcome addCustomLiveStreamTranscode(const Model::AddCustomLiveStreamTranscodeRequest &request)const;
 			void addCustomLiveStreamTranscodeAsync(const Model::AddCustomLiveStreamTranscodeRequest& request, const AddCustomLiveStreamTranscodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AddCustomLiveStreamTranscodeOutcomeCallable addCustomLiveStreamTranscodeCallable(const Model::AddCustomLiveStreamTranscodeRequest& request) const;
+			AddLiveAIProduceRulesOutcome addLiveAIProduceRules(const Model::AddLiveAIProduceRulesRequest &request)const;
+			void addLiveAIProduceRulesAsync(const Model::AddLiveAIProduceRulesRequest& request, const AddLiveAIProduceRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AddLiveAIProduceRulesOutcomeCallable addLiveAIProduceRulesCallable(const Model::AddLiveAIProduceRulesRequest& request) const;
+			AddLiveAISubtitleOutcome addLiveAISubtitle(const Model::AddLiveAISubtitleRequest &request)const;
+			void addLiveAISubtitleAsync(const Model::AddLiveAISubtitleRequest& request, const AddLiveAISubtitleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AddLiveAISubtitleOutcomeCallable addLiveAISubtitleCallable(const Model::AddLiveAISubtitleRequest& request) const;
 			AddLiveAppRecordConfigOutcome addLiveAppRecordConfig(const Model::AddLiveAppRecordConfigRequest &request)const;
 			void addLiveAppRecordConfigAsync(const Model::AddLiveAppRecordConfigRequest& request, const AddLiveAppRecordConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AddLiveAppRecordConfigOutcomeCallable addLiveAppRecordConfigCallable(const Model::AddLiveAppRecordConfigRequest& request) const;
@@ -2216,6 +2282,9 @@ namespace AlibabaCloud
 			CreateRoomRealTimeStreamAddressOutcome createRoomRealTimeStreamAddress(const Model::CreateRoomRealTimeStreamAddressRequest &request)const;
 			void createRoomRealTimeStreamAddressAsync(const Model::CreateRoomRealTimeStreamAddressRequest& request, const CreateRoomRealTimeStreamAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateRoomRealTimeStreamAddressOutcomeCallable createRoomRealTimeStreamAddressCallable(const Model::CreateRoomRealTimeStreamAddressRequest& request) const;
+			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;
 			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;
@@ -2252,6 +2321,12 @@ namespace AlibabaCloud
 			DeleteEventSubOutcome deleteEventSub(const Model::DeleteEventSubRequest &request)const;
 			void deleteEventSubAsync(const Model::DeleteEventSubRequest& request, const DeleteEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteEventSubOutcomeCallable deleteEventSubCallable(const Model::DeleteEventSubRequest& request) const;
+			DeleteLiveAIProduceRulesOutcome deleteLiveAIProduceRules(const Model::DeleteLiveAIProduceRulesRequest &request)const;
+			void deleteLiveAIProduceRulesAsync(const Model::DeleteLiveAIProduceRulesRequest& request, const DeleteLiveAIProduceRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteLiveAIProduceRulesOutcomeCallable deleteLiveAIProduceRulesCallable(const Model::DeleteLiveAIProduceRulesRequest& request) const;
+			DeleteLiveAISubtitleOutcome deleteLiveAISubtitle(const Model::DeleteLiveAISubtitleRequest &request)const;
+			void deleteLiveAISubtitleAsync(const Model::DeleteLiveAISubtitleRequest& request, const DeleteLiveAISubtitleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteLiveAISubtitleOutcomeCallable deleteLiveAISubtitleCallable(const Model::DeleteLiveAISubtitleRequest& request) const;
 			DeleteLiveAppRecordConfigOutcome deleteLiveAppRecordConfig(const Model::DeleteLiveAppRecordConfigRequest &request)const;
 			void deleteLiveAppRecordConfigAsync(const Model::DeleteLiveAppRecordConfigRequest& request, const DeleteLiveAppRecordConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteLiveAppRecordConfigOutcomeCallable deleteLiveAppRecordConfigCallable(const Model::DeleteLiveAppRecordConfigRequest& request) const;
@@ -2432,6 +2507,12 @@ namespace AlibabaCloud
 			DescribeHlsLiveStreamRealTimeBpsDataOutcome describeHlsLiveStreamRealTimeBpsData(const Model::DescribeHlsLiveStreamRealTimeBpsDataRequest &request)const;
 			void describeHlsLiveStreamRealTimeBpsDataAsync(const Model::DescribeHlsLiveStreamRealTimeBpsDataRequest& request, const DescribeHlsLiveStreamRealTimeBpsDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeHlsLiveStreamRealTimeBpsDataOutcomeCallable describeHlsLiveStreamRealTimeBpsDataCallable(const Model::DescribeHlsLiveStreamRealTimeBpsDataRequest& request) const;
+			DescribeLiveAIProduceRulesOutcome describeLiveAIProduceRules(const Model::DescribeLiveAIProduceRulesRequest &request)const;
+			void describeLiveAIProduceRulesAsync(const Model::DescribeLiveAIProduceRulesRequest& request, const DescribeLiveAIProduceRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeLiveAIProduceRulesOutcomeCallable describeLiveAIProduceRulesCallable(const Model::DescribeLiveAIProduceRulesRequest& request) const;
+			DescribeLiveAISubtitleOutcome describeLiveAISubtitle(const Model::DescribeLiveAISubtitleRequest &request)const;
+			void describeLiveAISubtitleAsync(const Model::DescribeLiveAISubtitleRequest& request, const DescribeLiveAISubtitleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeLiveAISubtitleOutcomeCallable describeLiveAISubtitleCallable(const Model::DescribeLiveAISubtitleRequest& request) const;
 			DescribeLiveAudioAuditConfigOutcome describeLiveAudioAuditConfig(const Model::DescribeLiveAudioAuditConfigRequest &request)const;
 			void describeLiveAudioAuditConfigAsync(const Model::DescribeLiveAudioAuditConfigRequest& request, const DescribeLiveAudioAuditConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeLiveAudioAuditConfigOutcomeCallable describeLiveAudioAuditConfigCallable(const Model::DescribeLiveAudioAuditConfigRequest& request) const;
@@ -2903,6 +2984,9 @@ namespace AlibabaCloud
 			ListLiveMessageAppsOutcome listLiveMessageApps(const Model::ListLiveMessageAppsRequest &request)const;
 			void listLiveMessageAppsAsync(const Model::ListLiveMessageAppsRequest& request, const ListLiveMessageAppsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListLiveMessageAppsOutcomeCallable listLiveMessageAppsCallable(const Model::ListLiveMessageAppsRequest& request) const;
+			ListLiveMessageGroupByPageOutcome listLiveMessageGroupByPage(const Model::ListLiveMessageGroupByPageRequest &request)const;
+			void listLiveMessageGroupByPageAsync(const Model::ListLiveMessageGroupByPageRequest& request, const ListLiveMessageGroupByPageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListLiveMessageGroupByPageOutcomeCallable listLiveMessageGroupByPageCallable(const Model::ListLiveMessageGroupByPageRequest& request) const;
 			ListLiveMessageGroupMessagesOutcome listLiveMessageGroupMessages(const Model::ListLiveMessageGroupMessagesRequest &request)const;
 			void listLiveMessageGroupMessagesAsync(const Model::ListLiveMessageGroupMessagesRequest& request, const ListLiveMessageGroupMessagesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListLiveMessageGroupMessagesOutcomeCallable listLiveMessageGroupMessagesCallable(const Model::ListLiveMessageGroupMessagesRequest& request) const;
@@ -3014,6 +3098,9 @@ namespace AlibabaCloud
 			QueryMessageAppOutcome queryMessageApp(const Model::QueryMessageAppRequest &request)const;
 			void queryMessageAppAsync(const Model::QueryMessageAppRequest& request, const QueryMessageAppAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			QueryMessageAppOutcomeCallable queryMessageAppCallable(const Model::QueryMessageAppRequest& request) const;
+			QueryRtcAsrTasksOutcome queryRtcAsrTasks(const Model::QueryRtcAsrTasksRequest &request)const;
+			void queryRtcAsrTasksAsync(const Model::QueryRtcAsrTasksRequest& request, const QueryRtcAsrTasksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			QueryRtcAsrTasksOutcomeCallable queryRtcAsrTasksCallable(const Model::QueryRtcAsrTasksRequest& request) const;
 			QuerySnapshotCallbackAuthOutcome querySnapshotCallbackAuth(const Model::QuerySnapshotCallbackAuthRequest &request)const;
 			void querySnapshotCallbackAuthAsync(const Model::QuerySnapshotCallbackAuthRequest& request, const QuerySnapshotCallbackAuthAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			QuerySnapshotCallbackAuthOutcomeCallable querySnapshotCallbackAuthCallable(const Model::QuerySnapshotCallbackAuthRequest& request) const;
@@ -3152,6 +3239,9 @@ namespace AlibabaCloud
 			StopPlaylistOutcome stopPlaylist(const Model::StopPlaylistRequest &request)const;
 			void stopPlaylistAsync(const Model::StopPlaylistRequest& request, const StopPlaylistAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			StopPlaylistOutcomeCallable stopPlaylistCallable(const Model::StopPlaylistRequest& request) const;
+			StopRtcAsrTaskOutcome stopRtcAsrTask(const Model::StopRtcAsrTaskRequest &request)const;
+			void stopRtcAsrTaskAsync(const Model::StopRtcAsrTaskRequest& request, const StopRtcAsrTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StopRtcAsrTaskOutcomeCallable stopRtcAsrTaskCallable(const Model::StopRtcAsrTaskRequest& request) const;
 			TagLiveResourcesOutcome tagLiveResources(const Model::TagLiveResourcesRequest &request)const;
 			void tagLiveResourcesAsync(const Model::TagLiveResourcesRequest& request, const TagLiveResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			TagLiveResourcesOutcomeCallable tagLiveResourcesCallable(const Model::TagLiveResourcesRequest& request) const;
@@ -3170,6 +3260,12 @@ namespace AlibabaCloud
 			UpdateEventSubOutcome updateEventSub(const Model::UpdateEventSubRequest &request)const;
 			void updateEventSubAsync(const Model::UpdateEventSubRequest& request, const UpdateEventSubAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateEventSubOutcomeCallable updateEventSubCallable(const Model::UpdateEventSubRequest& request) const;
+			UpdateLiveAIProduceRulesOutcome updateLiveAIProduceRules(const Model::UpdateLiveAIProduceRulesRequest &request)const;
+			void updateLiveAIProduceRulesAsync(const Model::UpdateLiveAIProduceRulesRequest& request, const UpdateLiveAIProduceRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateLiveAIProduceRulesOutcomeCallable updateLiveAIProduceRulesCallable(const Model::UpdateLiveAIProduceRulesRequest& request) const;
+			UpdateLiveAISubtitleOutcome updateLiveAISubtitle(const Model::UpdateLiveAISubtitleRequest &request)const;
+			void updateLiveAISubtitleAsync(const Model::UpdateLiveAISubtitleRequest& request, const UpdateLiveAISubtitleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateLiveAISubtitleOutcomeCallable updateLiveAISubtitleCallable(const Model::UpdateLiveAISubtitleRequest& request) const;
 			UpdateLiveAppRecordConfigOutcome updateLiveAppRecordConfig(const Model::UpdateLiveAppRecordConfigRequest &request)const;
 			void updateLiveAppRecordConfigAsync(const Model::UpdateLiveAppRecordConfigRequest& request, const UpdateLiveAppRecordConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateLiveAppRecordConfigOutcomeCallable updateLiveAppRecordConfigCallable(const Model::UpdateLiveAppRecordConfigRequest& request) const;

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

@@ -0,0 +1,63 @@
+/*
+ * 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_ADDLIVEAIPRODUCERULESREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_ADDLIVEAIPRODUCERULESREQUEST_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 AddLiveAIProduceRulesRequest : public RpcServiceRequest {
+public:
+	AddLiveAIProduceRulesRequest();
+	~AddLiveAIProduceRulesRequest();
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getSubtitleName() const;
+	void setSubtitleName(const std::string &subtitleName);
+	std::string getApp() const;
+	void setApp(const std::string &app);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	bool getIsLazy() const;
+	void setIsLazy(bool isLazy);
+	std::string getLiveTemplate() const;
+	void setLiveTemplate(const std::string &liveTemplate);
+	std::string getDomain() const;
+	void setDomain(const std::string &domain);
+	bool getIsOrigin() const;
+	void setIsOrigin(bool isOrigin);
+
+private:
+	std::string description_;
+	std::string subtitleName_;
+	std::string app_;
+	long ownerId_;
+	bool isLazy_;
+	std::string liveTemplate_;
+	std::string domain_;
+	bool isOrigin_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_ADDLIVEAIPRODUCERULESREQUEST_H_

+ 51 - 0
live/include/alibabacloud/live/model/AddLiveAIProduceRulesResult.h

@@ -0,0 +1,51 @@
+/*
+ * 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_ADDLIVEAIPRODUCERULESRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_ADDLIVEAIPRODUCERULESRESULT_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 AddLiveAIProduceRulesResult : public ServiceResult
+			{
+			public:
+
+
+				AddLiveAIProduceRulesResult();
+				explicit AddLiveAIProduceRulesResult(const std::string &payload);
+				~AddLiveAIProduceRulesResult();
+				std::string getRulesId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string rulesId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_ADDLIVEAIPRODUCERULESRESULT_H_

+ 93 - 0
live/include/alibabacloud/live/model/AddLiveAISubtitleRequest.h

@@ -0,0 +1,93 @@
+/*
+ * 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_ADDLIVEAISUBTITLEREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_ADDLIVEAISUBTITLEREQUEST_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 AddLiveAISubtitleRequest : public RpcServiceRequest {
+public:
+	AddLiveAISubtitleRequest();
+	~AddLiveAISubtitleRequest();
+	std::string getSrcLanguage() const;
+	void setSrcLanguage(const std::string &srcLanguage);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getFontName() const;
+	void setFontName(const std::string &fontName);
+	std::string getSubtitleName() const;
+	void setSubtitleName(const std::string &subtitleName);
+	float getFontSizeNormalized() const;
+	void setFontSizeNormalized(float fontSizeNormalized);
+	std::string getFontColor() const;
+	void setFontColor(const std::string &fontColor);
+	bool getShowSourceLan() const;
+	void setShowSourceLan(bool showSourceLan);
+	std::vector<float> getPositionNormalized() const;
+	void setPositionNormalized(const std::vector<float> &positionNormalized);
+	float getBorderWidthNormalized() const;
+	void setBorderWidthNormalized(float borderWidthNormalized);
+	int getMaxLines() const;
+	void setMaxLines(int maxLines);
+	std::string getHeight() const;
+	void setHeight(const std::string &height);
+	int getWordPerLine() const;
+	void setWordPerLine(int wordPerLine);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	float getBgWidthNormalized() const;
+	void setBgWidthNormalized(float bgWidthNormalized);
+	std::string getBgColor() const;
+	void setBgColor(const std::string &bgColor);
+	std::string getDstLanguage() const;
+	void setDstLanguage(const std::string &dstLanguage);
+	std::string getWidth() const;
+	void setWidth(const std::string &width);
+	std::string getCopyFrom() const;
+	void setCopyFrom(const std::string &copyFrom);
+
+private:
+	std::string srcLanguage_;
+	std::string description_;
+	std::string fontName_;
+	std::string subtitleName_;
+	float fontSizeNormalized_;
+	std::string fontColor_;
+	bool showSourceLan_;
+	std::vector<float> positionNormalized_;
+	float borderWidthNormalized_;
+	int maxLines_;
+	std::string height_;
+	int wordPerLine_;
+	long ownerId_;
+	float bgWidthNormalized_;
+	std::string bgColor_;
+	std::string dstLanguage_;
+	std::string width_;
+	std::string copyFrom_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_ADDLIVEAISUBTITLEREQUEST_H_

+ 51 - 0
live/include/alibabacloud/live/model/AddLiveAISubtitleResult.h

@@ -0,0 +1,51 @@
+/*
+ * 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_ADDLIVEAISUBTITLERESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_ADDLIVEAISUBTITLERESULT_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 AddLiveAISubtitleResult : public ServiceResult
+			{
+			public:
+
+
+				AddLiveAISubtitleResult();
+				explicit AddLiveAISubtitleResult(const std::string &payload);
+				~AddLiveAISubtitleResult();
+				std::string getSubtitleId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string subtitleId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_ADDLIVEAISUBTITLERESULT_H_

+ 84 - 0
live/include/alibabacloud/live/model/CreateRtcAsrTaskRequest.h

@@ -0,0 +1,84 @@
+/*
+ * 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_CREATERTCASRTASKREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_CREATERTCASRTASKREQUEST_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 CreateRtcAsrTaskRequest : public RpcServiceRequest {
+public:
+	CreateRtcAsrTaskRequest();
+	~CreateRtcAsrTaskRequest();
+	std::string getAuthKey() const;
+	void setAuthKey(const std::string &authKey);
+	std::string getLanguage() const;
+	void setLanguage(const std::string &language);
+	std::string getMode() const;
+	void setMode(const std::string &mode);
+	bool getTranslateEnabled() const;
+	void setTranslateEnabled(bool translateEnabled);
+	std::string getTag() const;
+	void setTag(const std::string &tag);
+	std::string getStreamURL() const;
+	void setStreamURL(const std::string &streamURL);
+	std::string getTargetLanguages() const;
+	void setTargetLanguages(const std::string &targetLanguages);
+	bool getAutoTerminateEnabled() const;
+	void setAutoTerminateEnabled(bool autoTerminateEnabled);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getRtcUserId() const;
+	void setRtcUserId(const std::string &rtcUserId);
+	long getReportInterval() const;
+	void setReportInterval(long reportInterval);
+	long getAutoTerminateDelay() const;
+	void setAutoTerminateDelay(long autoTerminateDelay);
+	std::string getSDKAppID() const;
+	void setSDKAppID(const std::string &sDKAppID);
+	std::string getCallbackURL() const;
+	void setCallbackURL(const std::string &callbackURL);
+	std::string getChannelID() const;
+	void setChannelID(const std::string &channelID);
+
+private:
+	std::string authKey_;
+	std::string language_;
+	std::string mode_;
+	bool translateEnabled_;
+	std::string tag_;
+	std::string streamURL_;
+	std::string targetLanguages_;
+	bool autoTerminateEnabled_;
+	long ownerId_;
+	std::string rtcUserId_;
+	long reportInterval_;
+	long autoTerminateDelay_;
+	std::string sDKAppID_;
+	std::string callbackURL_;
+	std::string channelID_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_CREATERTCASRTASKREQUEST_H_

+ 55 - 0
live/include/alibabacloud/live/model/CreateRtcAsrTaskResult.h

@@ -0,0 +1,55 @@
+/*
+ * 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_CREATERTCASRTASKRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_CREATERTCASRTASKRESULT_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 CreateRtcAsrTaskResult : public ServiceResult
+			{
+			public:
+
+
+				CreateRtcAsrTaskResult();
+				explicit CreateRtcAsrTaskResult(const std::string &payload);
+				~CreateRtcAsrTaskResult();
+				std::string getDescription()const;
+				std::string getTaskId()const;
+				long getRetCode()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string description_;
+				std::string taskId_;
+				long retCode_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_CREATERTCASRTASKRESULT_H_

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

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_LIVE_MODEL_DELETELIVEAIPRODUCERULESREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_DELETELIVEAIPRODUCERULESREQUEST_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 DeleteLiveAIProduceRulesRequest : public RpcServiceRequest {
+public:
+	DeleteLiveAIProduceRulesRequest();
+	~DeleteLiveAIProduceRulesRequest();
+	std::string getRulesId() const;
+	void setRulesId(const std::string &rulesId);
+	std::string getApp() const;
+	void setApp(const std::string &app);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getSuffixName() const;
+	void setSuffixName(const std::string &suffixName);
+	std::string getDomain() const;
+	void setDomain(const std::string &domain);
+
+private:
+	std::string rulesId_;
+	std::string app_;
+	long ownerId_;
+	std::string suffixName_;
+	std::string domain_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_DELETELIVEAIPRODUCERULESREQUEST_H_

+ 49 - 0
live/include/alibabacloud/live/model/DeleteLiveAIProduceRulesResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_DELETELIVEAIPRODUCERULESRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_DELETELIVEAIPRODUCERULESRESULT_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 DeleteLiveAIProduceRulesResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteLiveAIProduceRulesResult();
+				explicit DeleteLiveAIProduceRulesResult(const std::string &payload);
+				~DeleteLiveAIProduceRulesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_DELETELIVEAIPRODUCERULESRESULT_H_

+ 48 - 0
live/include/alibabacloud/live/model/DeleteLiveAISubtitleRequest.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_DELETELIVEAISUBTITLEREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_DELETELIVEAISUBTITLEREQUEST_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 DeleteLiveAISubtitleRequest : public RpcServiceRequest {
+public:
+	DeleteLiveAISubtitleRequest();
+	~DeleteLiveAISubtitleRequest();
+	std::string getSubtitleName() const;
+	void setSubtitleName(const std::string &subtitleName);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getSubtitleId() const;
+	void setSubtitleId(const std::string &subtitleId);
+
+private:
+	std::string subtitleName_;
+	long ownerId_;
+	std::string subtitleId_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_DELETELIVEAISUBTITLEREQUEST_H_

+ 49 - 0
live/include/alibabacloud/live/model/DeleteLiveAISubtitleResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_DELETELIVEAISUBTITLERESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_DELETELIVEAISUBTITLERESULT_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 DeleteLiveAISubtitleResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteLiveAISubtitleResult();
+				explicit DeleteLiveAISubtitleResult(const std::string &payload);
+				~DeleteLiveAISubtitleResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_DELETELIVEAISUBTITLERESULT_H_

+ 60 - 0
live/include/alibabacloud/live/model/DescribeLiveAIProduceRulesRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAIPRODUCERULESREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAIPRODUCERULESREQUEST_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 DescribeLiveAIProduceRulesRequest : public RpcServiceRequest {
+public:
+	DescribeLiveAIProduceRulesRequest();
+	~DescribeLiveAIProduceRulesRequest();
+	std::string getPageNumber() const;
+	void setPageNumber(const std::string &pageNumber);
+	std::string getPageSize() const;
+	void setPageSize(const std::string &pageSize);
+	std::string getRulesId() const;
+	void setRulesId(const std::string &rulesId);
+	std::string getApp() const;
+	void setApp(const std::string &app);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getSuffixName() const;
+	void setSuffixName(const std::string &suffixName);
+	std::string getDomain() const;
+	void setDomain(const std::string &domain);
+
+private:
+	std::string pageNumber_;
+	std::string pageSize_;
+	std::string rulesId_;
+	std::string app_;
+	long ownerId_;
+	std::string suffixName_;
+	std::string domain_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAIPRODUCERULESREQUEST_H_

+ 64 - 0
live/include/alibabacloud/live/model/DescribeLiveAIProduceRulesResult.h

@@ -0,0 +1,64 @@
+/*
+ * 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_DESCRIBELIVEAIPRODUCERULESRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAIPRODUCERULESRESULT_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 DescribeLiveAIProduceRulesResult : public ServiceResult
+			{
+			public:
+				struct RuleInfo
+				{
+					std::string app;
+					std::string description;
+					bool isLazy;
+					std::string gmtModifyTime;
+					std::string rulesId;
+					std::string subtitleName;
+					bool isOrigin;
+					std::string suffixName;
+					std::string domain;
+					std::string liveTemplate;
+				};
+
+
+				DescribeLiveAIProduceRulesResult();
+				explicit DescribeLiveAIProduceRulesResult(const std::string &payload);
+				~DescribeLiveAIProduceRulesResult();
+				std::vector<RuleInfo> getRuleInfoList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<RuleInfo> ruleInfoList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAIPRODUCERULESRESULT_H_

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

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAISUBTITLEREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAISUBTITLEREQUEST_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 DescribeLiveAISubtitleRequest : public RpcServiceRequest {
+public:
+	DescribeLiveAISubtitleRequest();
+	~DescribeLiveAISubtitleRequest();
+	std::string getSubtitleName() const;
+	void setSubtitleName(const std::string &subtitleName);
+	std::string getPageNumber() const;
+	void setPageNumber(const std::string &pageNumber);
+	std::string getPageSize() const;
+	void setPageSize(const std::string &pageSize);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getSubtitleId() const;
+	void setSubtitleId(const std::string &subtitleId);
+
+private:
+	std::string subtitleName_;
+	std::string pageNumber_;
+	std::string pageSize_;
+	long ownerId_;
+	std::string subtitleId_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAISUBTITLEREQUEST_H_

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

@@ -0,0 +1,72 @@
+/*
+ * 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_DESCRIBELIVEAISUBTITLERESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAISUBTITLERESULT_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 DescribeLiveAISubtitleResult : public ServiceResult
+			{
+			public:
+				struct SubtitleConfig
+				{
+					std::string srcLanguage;
+					int wordPerline;
+					float borderWidthNormalized;
+					std::string description;
+					float bgWidthNormalized;
+					int maxLines;
+					std::string fontColor;
+					int showSourceLan;
+					std::string subtitleName;
+					std::string subtitleId;
+					std::vector<std::string> positionNormalized;
+					std::string dstLanguage;
+					std::string fontSizeNormalized;
+					std::string fontName;
+					std::vector<std::string> rulesRefer;
+					std::string height;
+					std::string bgColor;
+					std::string width;
+				};
+
+
+				DescribeLiveAISubtitleResult();
+				explicit DescribeLiveAISubtitleResult(const std::string &payload);
+				~DescribeLiveAISubtitleResult();
+				std::vector<SubtitleConfig> getSubtitleConfigs()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<SubtitleConfig> subtitleConfigs_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_DESCRIBELIVEAISUBTITLERESULT_H_

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

@@ -0,0 +1,57 @@
+/*
+ * 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_LISTLIVEMESSAGEGROUPBYPAGEREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_LISTLIVEMESSAGEGROUPBYPAGEREQUEST_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 ListLiveMessageGroupByPageRequest : public RpcServiceRequest {
+public:
+	ListLiveMessageGroupByPageRequest();
+	~ListLiveMessageGroupByPageRequest();
+	int getSortType() const;
+	void setSortType(int sortType);
+	int getGroupStatus() const;
+	void setGroupStatus(int groupStatus);
+	std::string getDataCenter() const;
+	void setDataCenter(const std::string &dataCenter);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+
+private:
+	int sortType_;
+	int groupStatus_;
+	std::string dataCenter_;
+	int pageNumber_;
+	std::string appId_;
+	int pageSize_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_LISTLIVEMESSAGEGROUPBYPAGEREQUEST_H_

+ 67 - 0
live/include/alibabacloud/live/model/ListLiveMessageGroupByPageResult.h

@@ -0,0 +1,67 @@
+/*
+ * 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_LISTLIVEMESSAGEGROUPBYPAGERESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_LISTLIVEMESSAGEGROUPBYPAGERESULT_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 ListLiveMessageGroupByPageResult : public ServiceResult
+			{
+			public:
+				struct Groups
+				{
+					std::string groupName;
+					bool _delete;
+					std::vector<std::string> adminList;
+					long createtime;
+					std::string groupInfo;
+					std::string creatorId;
+					std::string groupId;
+				};
+
+
+				ListLiveMessageGroupByPageResult();
+				explicit ListLiveMessageGroupByPageResult(const std::string &payload);
+				~ListLiveMessageGroupByPageResult();
+				int getTotalCount()const;
+				std::vector<Groups> getGroupList()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				std::vector<Groups> groupList_;
+				int pageSize_;
+				int pageNumber_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_LISTLIVEMESSAGEGROUPBYPAGERESULT_H_

+ 45 - 0
live/include/alibabacloud/live/model/QueryRtcAsrTasksRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_QUERYRTCASRTASKSREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_QUERYRTCASRTASKSREQUEST_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 QueryRtcAsrTasksRequest : public RpcServiceRequest {
+public:
+	QueryRtcAsrTasksRequest();
+	~QueryRtcAsrTasksRequest();
+	std::string getTaskId() const;
+	void setTaskId(const std::string &taskId);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+
+private:
+	std::string taskId_;
+	long ownerId_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_QUERYRTCASRTASKSREQUEST_H_

+ 49 - 0
live/include/alibabacloud/live/model/QueryRtcAsrTasksResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_QUERYRTCASRTASKSRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_QUERYRTCASRTASKSRESULT_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 QueryRtcAsrTasksResult : public ServiceResult
+			{
+			public:
+
+
+				QueryRtcAsrTasksResult();
+				explicit QueryRtcAsrTasksResult(const std::string &payload);
+				~QueryRtcAsrTasksResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_QUERYRTCASRTASKSRESULT_H_

+ 45 - 0
live/include/alibabacloud/live/model/StopRtcAsrTaskRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_STOPRTCASRTASKREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_STOPRTCASRTASKREQUEST_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 StopRtcAsrTaskRequest : public RpcServiceRequest {
+public:
+	StopRtcAsrTaskRequest();
+	~StopRtcAsrTaskRequest();
+	std::string getTaskId() const;
+	void setTaskId(const std::string &taskId);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+
+private:
+	std::string taskId_;
+	long ownerId_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_STOPRTCASRTASKREQUEST_H_

+ 53 - 0
live/include/alibabacloud/live/model/StopRtcAsrTaskResult.h

@@ -0,0 +1,53 @@
+/*
+ * 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_STOPRTCASRTASKRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_STOPRTCASRTASKRESULT_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 StopRtcAsrTaskResult : public ServiceResult
+			{
+			public:
+
+
+				StopRtcAsrTaskResult();
+				explicit StopRtcAsrTaskResult(const std::string &payload);
+				~StopRtcAsrTaskResult();
+				std::string getDescription()const;
+				long getRetCode()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string description_;
+				long retCode_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_STOPRTCASRTASKRESULT_H_

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

@@ -0,0 +1,69 @@
+/*
+ * 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_UPDATELIVEAIPRODUCERULESREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_UPDATELIVEAIPRODUCERULESREQUEST_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 UpdateLiveAIProduceRulesRequest : public RpcServiceRequest {
+public:
+	UpdateLiveAIProduceRulesRequest();
+	~UpdateLiveAIProduceRulesRequest();
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getSubtitleName() const;
+	void setSubtitleName(const std::string &subtitleName);
+	std::string getRulesId() const;
+	void setRulesId(const std::string &rulesId);
+	std::string getApp() const;
+	void setApp(const std::string &app);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	bool getIsLazy() const;
+	void setIsLazy(bool isLazy);
+	std::string getLiveTemplate() const;
+	void setLiveTemplate(const std::string &liveTemplate);
+	std::string getDomain() const;
+	void setDomain(const std::string &domain);
+	bool getIsOrigin() const;
+	void setIsOrigin(bool isOrigin);
+	std::string getSubtitleId() const;
+	void setSubtitleId(const std::string &subtitleId);
+
+private:
+	std::string description_;
+	std::string subtitleName_;
+	std::string rulesId_;
+	std::string app_;
+	long ownerId_;
+	bool isLazy_;
+	std::string liveTemplate_;
+	std::string domain_;
+	bool isOrigin_;
+	std::string subtitleId_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_UPDATELIVEAIPRODUCERULESREQUEST_H_

+ 49 - 0
live/include/alibabacloud/live/model/UpdateLiveAIProduceRulesResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_UPDATELIVEAIPRODUCERULESRESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_UPDATELIVEAIPRODUCERULESRESULT_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 UpdateLiveAIProduceRulesResult : public ServiceResult
+			{
+			public:
+
+
+				UpdateLiveAIProduceRulesResult();
+				explicit UpdateLiveAIProduceRulesResult(const std::string &payload);
+				~UpdateLiveAIProduceRulesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_UPDATELIVEAIPRODUCERULESRESULT_H_

+ 93 - 0
live/include/alibabacloud/live/model/UpdateLiveAISubtitleRequest.h

@@ -0,0 +1,93 @@
+/*
+ * 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_UPDATELIVEAISUBTITLEREQUEST_H_
+#define ALIBABACLOUD_LIVE_MODEL_UPDATELIVEAISUBTITLEREQUEST_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 UpdateLiveAISubtitleRequest : public RpcServiceRequest {
+public:
+	UpdateLiveAISubtitleRequest();
+	~UpdateLiveAISubtitleRequest();
+	std::string getSrcLanguage() const;
+	void setSrcLanguage(const std::string &srcLanguage);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getFontName() const;
+	void setFontName(const std::string &fontName);
+	std::string getSubtitleName() const;
+	void setSubtitleName(const std::string &subtitleName);
+	float getFontSizeNormalized() const;
+	void setFontSizeNormalized(float fontSizeNormalized);
+	std::string getFontColor() const;
+	void setFontColor(const std::string &fontColor);
+	bool getShowSourceLan() const;
+	void setShowSourceLan(bool showSourceLan);
+	std::vector<float> getPositionNormalized() const;
+	void setPositionNormalized(const std::vector<float> &positionNormalized);
+	float getBorderWidthNormalized() const;
+	void setBorderWidthNormalized(float borderWidthNormalized);
+	int getMaxLines() const;
+	void setMaxLines(int maxLines);
+	std::string getHeight() const;
+	void setHeight(const std::string &height);
+	int getWordPerLine() const;
+	void setWordPerLine(int wordPerLine);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	float getBgWidthNormalized() const;
+	void setBgWidthNormalized(float bgWidthNormalized);
+	std::string getBgColor() const;
+	void setBgColor(const std::string &bgColor);
+	std::string getDstLanguage() const;
+	void setDstLanguage(const std::string &dstLanguage);
+	std::string getWidth() const;
+	void setWidth(const std::string &width);
+	std::string getSubtitleId() const;
+	void setSubtitleId(const std::string &subtitleId);
+
+private:
+	std::string srcLanguage_;
+	std::string description_;
+	std::string fontName_;
+	std::string subtitleName_;
+	float fontSizeNormalized_;
+	std::string fontColor_;
+	bool showSourceLan_;
+	std::vector<float> positionNormalized_;
+	float borderWidthNormalized_;
+	int maxLines_;
+	std::string height_;
+	int wordPerLine_;
+	long ownerId_;
+	float bgWidthNormalized_;
+	std::string bgColor_;
+	std::string dstLanguage_;
+	std::string width_;
+	std::string subtitleId_;
+};
+} // namespace Model
+} // namespace Live
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_LIVE_MODEL_UPDATELIVEAISUBTITLEREQUEST_H_

+ 49 - 0
live/include/alibabacloud/live/model/UpdateLiveAISubtitleResult.h

@@ -0,0 +1,49 @@
+/*
+ * 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_UPDATELIVEAISUBTITLERESULT_H_
+#define ALIBABACLOUD_LIVE_MODEL_UPDATELIVEAISUBTITLERESULT_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 UpdateLiveAISubtitleResult : public ServiceResult
+			{
+			public:
+
+
+				UpdateLiveAISubtitleResult();
+				explicit UpdateLiveAISubtitleResult(const std::string &payload);
+				~UpdateLiveAISubtitleResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LIVE_MODEL_UPDATELIVEAISUBTITLERESULT_H_

+ 432 - 0
live/src/LiveClient.cc

@@ -339,6 +339,78 @@ LiveClient::AddCustomLiveStreamTranscodeOutcomeCallable LiveClient::addCustomLiv
 	return task->get_future();
 }
 
+LiveClient::AddLiveAIProduceRulesOutcome LiveClient::addLiveAIProduceRules(const AddLiveAIProduceRulesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AddLiveAIProduceRulesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AddLiveAIProduceRulesOutcome(AddLiveAIProduceRulesResult(outcome.result()));
+	else
+		return AddLiveAIProduceRulesOutcome(outcome.error());
+}
+
+void LiveClient::addLiveAIProduceRulesAsync(const AddLiveAIProduceRulesRequest& request, const AddLiveAIProduceRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, addLiveAIProduceRules(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::AddLiveAIProduceRulesOutcomeCallable LiveClient::addLiveAIProduceRulesCallable(const AddLiveAIProduceRulesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AddLiveAIProduceRulesOutcome()>>(
+			[this, request]()
+			{
+			return this->addLiveAIProduceRules(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LiveClient::AddLiveAISubtitleOutcome LiveClient::addLiveAISubtitle(const AddLiveAISubtitleRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AddLiveAISubtitleOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AddLiveAISubtitleOutcome(AddLiveAISubtitleResult(outcome.result()));
+	else
+		return AddLiveAISubtitleOutcome(outcome.error());
+}
+
+void LiveClient::addLiveAISubtitleAsync(const AddLiveAISubtitleRequest& request, const AddLiveAISubtitleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, addLiveAISubtitle(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::AddLiveAISubtitleOutcomeCallable LiveClient::addLiveAISubtitleCallable(const AddLiveAISubtitleRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AddLiveAISubtitleOutcome()>>(
+			[this, request]()
+			{
+			return this->addLiveAISubtitle(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::AddLiveAppRecordConfigOutcome LiveClient::addLiveAppRecordConfig(const AddLiveAppRecordConfigRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2211,6 +2283,42 @@ LiveClient::CreateRoomRealTimeStreamAddressOutcomeCallable LiveClient::createRoo
 	return task->get_future();
 }
 
+LiveClient::CreateRtcAsrTaskOutcome LiveClient::createRtcAsrTask(const CreateRtcAsrTaskRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateRtcAsrTaskOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateRtcAsrTaskOutcome(CreateRtcAsrTaskResult(outcome.result()));
+	else
+		return CreateRtcAsrTaskOutcome(outcome.error());
+}
+
+void LiveClient::createRtcAsrTaskAsync(const CreateRtcAsrTaskRequest& request, const CreateRtcAsrTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createRtcAsrTask(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::CreateRtcAsrTaskOutcomeCallable LiveClient::createRtcAsrTaskCallable(const CreateRtcAsrTaskRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateRtcAsrTaskOutcome()>>(
+			[this, request]()
+			{
+			return this->createRtcAsrTask(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::DeleteCasterOutcome LiveClient::deleteCaster(const DeleteCasterRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2643,6 +2751,78 @@ LiveClient::DeleteEventSubOutcomeCallable LiveClient::deleteEventSubCallable(con
 	return task->get_future();
 }
 
+LiveClient::DeleteLiveAIProduceRulesOutcome LiveClient::deleteLiveAIProduceRules(const DeleteLiveAIProduceRulesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteLiveAIProduceRulesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteLiveAIProduceRulesOutcome(DeleteLiveAIProduceRulesResult(outcome.result()));
+	else
+		return DeleteLiveAIProduceRulesOutcome(outcome.error());
+}
+
+void LiveClient::deleteLiveAIProduceRulesAsync(const DeleteLiveAIProduceRulesRequest& request, const DeleteLiveAIProduceRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteLiveAIProduceRules(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::DeleteLiveAIProduceRulesOutcomeCallable LiveClient::deleteLiveAIProduceRulesCallable(const DeleteLiveAIProduceRulesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteLiveAIProduceRulesOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteLiveAIProduceRules(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LiveClient::DeleteLiveAISubtitleOutcome LiveClient::deleteLiveAISubtitle(const DeleteLiveAISubtitleRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteLiveAISubtitleOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteLiveAISubtitleOutcome(DeleteLiveAISubtitleResult(outcome.result()));
+	else
+		return DeleteLiveAISubtitleOutcome(outcome.error());
+}
+
+void LiveClient::deleteLiveAISubtitleAsync(const DeleteLiveAISubtitleRequest& request, const DeleteLiveAISubtitleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteLiveAISubtitle(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::DeleteLiveAISubtitleOutcomeCallable LiveClient::deleteLiveAISubtitleCallable(const DeleteLiveAISubtitleRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteLiveAISubtitleOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteLiveAISubtitle(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::DeleteLiveAppRecordConfigOutcome LiveClient::deleteLiveAppRecordConfig(const DeleteLiveAppRecordConfigRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -4803,6 +4983,78 @@ LiveClient::DescribeHlsLiveStreamRealTimeBpsDataOutcomeCallable LiveClient::desc
 	return task->get_future();
 }
 
+LiveClient::DescribeLiveAIProduceRulesOutcome LiveClient::describeLiveAIProduceRules(const DescribeLiveAIProduceRulesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeLiveAIProduceRulesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeLiveAIProduceRulesOutcome(DescribeLiveAIProduceRulesResult(outcome.result()));
+	else
+		return DescribeLiveAIProduceRulesOutcome(outcome.error());
+}
+
+void LiveClient::describeLiveAIProduceRulesAsync(const DescribeLiveAIProduceRulesRequest& request, const DescribeLiveAIProduceRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeLiveAIProduceRules(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::DescribeLiveAIProduceRulesOutcomeCallable LiveClient::describeLiveAIProduceRulesCallable(const DescribeLiveAIProduceRulesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeLiveAIProduceRulesOutcome()>>(
+			[this, request]()
+			{
+			return this->describeLiveAIProduceRules(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LiveClient::DescribeLiveAISubtitleOutcome LiveClient::describeLiveAISubtitle(const DescribeLiveAISubtitleRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeLiveAISubtitleOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeLiveAISubtitleOutcome(DescribeLiveAISubtitleResult(outcome.result()));
+	else
+		return DescribeLiveAISubtitleOutcome(outcome.error());
+}
+
+void LiveClient::describeLiveAISubtitleAsync(const DescribeLiveAISubtitleRequest& request, const DescribeLiveAISubtitleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeLiveAISubtitle(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::DescribeLiveAISubtitleOutcomeCallable LiveClient::describeLiveAISubtitleCallable(const DescribeLiveAISubtitleRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeLiveAISubtitleOutcome()>>(
+			[this, request]()
+			{
+			return this->describeLiveAISubtitle(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::DescribeLiveAudioAuditConfigOutcome LiveClient::describeLiveAudioAuditConfig(const DescribeLiveAudioAuditConfigRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -10455,6 +10707,42 @@ LiveClient::ListLiveMessageAppsOutcomeCallable LiveClient::listLiveMessageAppsCa
 	return task->get_future();
 }
 
+LiveClient::ListLiveMessageGroupByPageOutcome LiveClient::listLiveMessageGroupByPage(const ListLiveMessageGroupByPageRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListLiveMessageGroupByPageOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListLiveMessageGroupByPageOutcome(ListLiveMessageGroupByPageResult(outcome.result()));
+	else
+		return ListLiveMessageGroupByPageOutcome(outcome.error());
+}
+
+void LiveClient::listLiveMessageGroupByPageAsync(const ListLiveMessageGroupByPageRequest& request, const ListLiveMessageGroupByPageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listLiveMessageGroupByPage(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::ListLiveMessageGroupByPageOutcomeCallable LiveClient::listLiveMessageGroupByPageCallable(const ListLiveMessageGroupByPageRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListLiveMessageGroupByPageOutcome()>>(
+			[this, request]()
+			{
+			return this->listLiveMessageGroupByPage(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::ListLiveMessageGroupMessagesOutcome LiveClient::listLiveMessageGroupMessages(const ListLiveMessageGroupMessagesRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -11787,6 +12075,42 @@ LiveClient::QueryMessageAppOutcomeCallable LiveClient::queryMessageAppCallable(c
 	return task->get_future();
 }
 
+LiveClient::QueryRtcAsrTasksOutcome LiveClient::queryRtcAsrTasks(const QueryRtcAsrTasksRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return QueryRtcAsrTasksOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return QueryRtcAsrTasksOutcome(QueryRtcAsrTasksResult(outcome.result()));
+	else
+		return QueryRtcAsrTasksOutcome(outcome.error());
+}
+
+void LiveClient::queryRtcAsrTasksAsync(const QueryRtcAsrTasksRequest& request, const QueryRtcAsrTasksAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, queryRtcAsrTasks(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::QueryRtcAsrTasksOutcomeCallable LiveClient::queryRtcAsrTasksCallable(const QueryRtcAsrTasksRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<QueryRtcAsrTasksOutcome()>>(
+			[this, request]()
+			{
+			return this->queryRtcAsrTasks(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::QuerySnapshotCallbackAuthOutcome LiveClient::querySnapshotCallbackAuth(const QuerySnapshotCallbackAuthRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -13443,6 +13767,42 @@ LiveClient::StopPlaylistOutcomeCallable LiveClient::stopPlaylistCallable(const S
 	return task->get_future();
 }
 
+LiveClient::StopRtcAsrTaskOutcome LiveClient::stopRtcAsrTask(const StopRtcAsrTaskRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return StopRtcAsrTaskOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return StopRtcAsrTaskOutcome(StopRtcAsrTaskResult(outcome.result()));
+	else
+		return StopRtcAsrTaskOutcome(outcome.error());
+}
+
+void LiveClient::stopRtcAsrTaskAsync(const StopRtcAsrTaskRequest& request, const StopRtcAsrTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, stopRtcAsrTask(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::StopRtcAsrTaskOutcomeCallable LiveClient::stopRtcAsrTaskCallable(const StopRtcAsrTaskRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<StopRtcAsrTaskOutcome()>>(
+			[this, request]()
+			{
+			return this->stopRtcAsrTask(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::TagLiveResourcesOutcome LiveClient::tagLiveResources(const TagLiveResourcesRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -13659,6 +14019,78 @@ LiveClient::UpdateEventSubOutcomeCallable LiveClient::updateEventSubCallable(con
 	return task->get_future();
 }
 
+LiveClient::UpdateLiveAIProduceRulesOutcome LiveClient::updateLiveAIProduceRules(const UpdateLiveAIProduceRulesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateLiveAIProduceRulesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateLiveAIProduceRulesOutcome(UpdateLiveAIProduceRulesResult(outcome.result()));
+	else
+		return UpdateLiveAIProduceRulesOutcome(outcome.error());
+}
+
+void LiveClient::updateLiveAIProduceRulesAsync(const UpdateLiveAIProduceRulesRequest& request, const UpdateLiveAIProduceRulesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateLiveAIProduceRules(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::UpdateLiveAIProduceRulesOutcomeCallable LiveClient::updateLiveAIProduceRulesCallable(const UpdateLiveAIProduceRulesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateLiveAIProduceRulesOutcome()>>(
+			[this, request]()
+			{
+			return this->updateLiveAIProduceRules(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LiveClient::UpdateLiveAISubtitleOutcome LiveClient::updateLiveAISubtitle(const UpdateLiveAISubtitleRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateLiveAISubtitleOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateLiveAISubtitleOutcome(UpdateLiveAISubtitleResult(outcome.result()));
+	else
+		return UpdateLiveAISubtitleOutcome(outcome.error());
+}
+
+void LiveClient::updateLiveAISubtitleAsync(const UpdateLiveAISubtitleRequest& request, const UpdateLiveAISubtitleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateLiveAISubtitle(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LiveClient::UpdateLiveAISubtitleOutcomeCallable LiveClient::updateLiveAISubtitleCallable(const UpdateLiveAISubtitleRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateLiveAISubtitleOutcome()>>(
+			[this, request]()
+			{
+			return this->updateLiveAISubtitle(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 LiveClient::UpdateLiveAppRecordConfigOutcome LiveClient::updateLiveAppRecordConfig(const UpdateLiveAppRecordConfigRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

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

@@ -0,0 +1,99 @@
+/*
+ * 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/AddLiveAIProduceRulesRequest.h>
+
+using AlibabaCloud::Live::Model::AddLiveAIProduceRulesRequest;
+
+AddLiveAIProduceRulesRequest::AddLiveAIProduceRulesRequest()
+    : RpcServiceRequest("live", "2016-11-01", "AddLiveAIProduceRules") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+AddLiveAIProduceRulesRequest::~AddLiveAIProduceRulesRequest() {}
+
+std::string AddLiveAIProduceRulesRequest::getDescription() const {
+  return description_;
+}
+
+void AddLiveAIProduceRulesRequest::setDescription(const std::string &description) {
+  description_ = description;
+  setParameter(std::string("Description"), description);
+}
+
+std::string AddLiveAIProduceRulesRequest::getSubtitleName() const {
+  return subtitleName_;
+}
+
+void AddLiveAIProduceRulesRequest::setSubtitleName(const std::string &subtitleName) {
+  subtitleName_ = subtitleName;
+  setParameter(std::string("SubtitleName"), subtitleName);
+}
+
+std::string AddLiveAIProduceRulesRequest::getApp() const {
+  return app_;
+}
+
+void AddLiveAIProduceRulesRequest::setApp(const std::string &app) {
+  app_ = app;
+  setParameter(std::string("App"), app);
+}
+
+long AddLiveAIProduceRulesRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void AddLiveAIProduceRulesRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+bool AddLiveAIProduceRulesRequest::getIsLazy() const {
+  return isLazy_;
+}
+
+void AddLiveAIProduceRulesRequest::setIsLazy(bool isLazy) {
+  isLazy_ = isLazy;
+  setParameter(std::string("IsLazy"), isLazy ? "true" : "false");
+}
+
+std::string AddLiveAIProduceRulesRequest::getLiveTemplate() const {
+  return liveTemplate_;
+}
+
+void AddLiveAIProduceRulesRequest::setLiveTemplate(const std::string &liveTemplate) {
+  liveTemplate_ = liveTemplate;
+  setParameter(std::string("LiveTemplate"), liveTemplate);
+}
+
+std::string AddLiveAIProduceRulesRequest::getDomain() const {
+  return domain_;
+}
+
+void AddLiveAIProduceRulesRequest::setDomain(const std::string &domain) {
+  domain_ = domain;
+  setParameter(std::string("Domain"), domain);
+}
+
+bool AddLiveAIProduceRulesRequest::getIsOrigin() const {
+  return isOrigin_;
+}
+
+void AddLiveAIProduceRulesRequest::setIsOrigin(bool isOrigin) {
+  isOrigin_ = isOrigin;
+  setParameter(std::string("IsOrigin"), isOrigin ? "true" : "false");
+}
+

+ 51 - 0
live/src/model/AddLiveAIProduceRulesResult.cc

@@ -0,0 +1,51 @@
+/*
+ * 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/AddLiveAIProduceRulesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+AddLiveAIProduceRulesResult::AddLiveAIProduceRulesResult() :
+	ServiceResult()
+{}
+
+AddLiveAIProduceRulesResult::AddLiveAIProduceRulesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AddLiveAIProduceRulesResult::~AddLiveAIProduceRulesResult()
+{}
+
+void AddLiveAIProduceRulesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["RulesId"].isNull())
+		rulesId_ = value["RulesId"].asString();
+
+}
+
+std::string AddLiveAIProduceRulesResult::getRulesId()const
+{
+	return rulesId_;
+}
+

+ 191 - 0
live/src/model/AddLiveAISubtitleRequest.cc

@@ -0,0 +1,191 @@
+/*
+ * 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/AddLiveAISubtitleRequest.h>
+
+using AlibabaCloud::Live::Model::AddLiveAISubtitleRequest;
+
+AddLiveAISubtitleRequest::AddLiveAISubtitleRequest()
+    : RpcServiceRequest("live", "2016-11-01", "AddLiveAISubtitle") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+AddLiveAISubtitleRequest::~AddLiveAISubtitleRequest() {}
+
+std::string AddLiveAISubtitleRequest::getSrcLanguage() const {
+  return srcLanguage_;
+}
+
+void AddLiveAISubtitleRequest::setSrcLanguage(const std::string &srcLanguage) {
+  srcLanguage_ = srcLanguage;
+  setParameter(std::string("SrcLanguage"), srcLanguage);
+}
+
+std::string AddLiveAISubtitleRequest::getDescription() const {
+  return description_;
+}
+
+void AddLiveAISubtitleRequest::setDescription(const std::string &description) {
+  description_ = description;
+  setParameter(std::string("Description"), description);
+}
+
+std::string AddLiveAISubtitleRequest::getFontName() const {
+  return fontName_;
+}
+
+void AddLiveAISubtitleRequest::setFontName(const std::string &fontName) {
+  fontName_ = fontName;
+  setParameter(std::string("FontName"), fontName);
+}
+
+std::string AddLiveAISubtitleRequest::getSubtitleName() const {
+  return subtitleName_;
+}
+
+void AddLiveAISubtitleRequest::setSubtitleName(const std::string &subtitleName) {
+  subtitleName_ = subtitleName;
+  setParameter(std::string("SubtitleName"), subtitleName);
+}
+
+float AddLiveAISubtitleRequest::getFontSizeNormalized() const {
+  return fontSizeNormalized_;
+}
+
+void AddLiveAISubtitleRequest::setFontSizeNormalized(float fontSizeNormalized) {
+  fontSizeNormalized_ = fontSizeNormalized;
+  setParameter(std::string("FontSizeNormalized"), std::to_string(fontSizeNormalized));
+}
+
+std::string AddLiveAISubtitleRequest::getFontColor() const {
+  return fontColor_;
+}
+
+void AddLiveAISubtitleRequest::setFontColor(const std::string &fontColor) {
+  fontColor_ = fontColor;
+  setParameter(std::string("FontColor"), fontColor);
+}
+
+bool AddLiveAISubtitleRequest::getShowSourceLan() const {
+  return showSourceLan_;
+}
+
+void AddLiveAISubtitleRequest::setShowSourceLan(bool showSourceLan) {
+  showSourceLan_ = showSourceLan;
+  setParameter(std::string("ShowSourceLan"), showSourceLan ? "true" : "false");
+}
+
+std::vector<AddLiveAISubtitleRequest::float> AddLiveAISubtitleRequest::getPositionNormalized() const {
+  return positionNormalized_;
+}
+
+void AddLiveAISubtitleRequest::setPositionNormalized(const std::vector<AddLiveAISubtitleRequest::float> &positionNormalized) {
+  positionNormalized_ = positionNormalized;
+  for(int dep1 = 0; dep1 != positionNormalized.size(); dep1++) {
+    setParameter(std::string("PositionNormalized") + "." + std::to_string(dep1 + 1), std::to_string(positionNormalized[dep1]));
+  }
+}
+
+float AddLiveAISubtitleRequest::getBorderWidthNormalized() const {
+  return borderWidthNormalized_;
+}
+
+void AddLiveAISubtitleRequest::setBorderWidthNormalized(float borderWidthNormalized) {
+  borderWidthNormalized_ = borderWidthNormalized;
+  setParameter(std::string("BorderWidthNormalized"), std::to_string(borderWidthNormalized));
+}
+
+int AddLiveAISubtitleRequest::getMaxLines() const {
+  return maxLines_;
+}
+
+void AddLiveAISubtitleRequest::setMaxLines(int maxLines) {
+  maxLines_ = maxLines;
+  setParameter(std::string("MaxLines"), std::to_string(maxLines));
+}
+
+std::string AddLiveAISubtitleRequest::getHeight() const {
+  return height_;
+}
+
+void AddLiveAISubtitleRequest::setHeight(const std::string &height) {
+  height_ = height;
+  setParameter(std::string("Height"), height);
+}
+
+int AddLiveAISubtitleRequest::getWordPerLine() const {
+  return wordPerLine_;
+}
+
+void AddLiveAISubtitleRequest::setWordPerLine(int wordPerLine) {
+  wordPerLine_ = wordPerLine;
+  setParameter(std::string("WordPerLine"), std::to_string(wordPerLine));
+}
+
+long AddLiveAISubtitleRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void AddLiveAISubtitleRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+float AddLiveAISubtitleRequest::getBgWidthNormalized() const {
+  return bgWidthNormalized_;
+}
+
+void AddLiveAISubtitleRequest::setBgWidthNormalized(float bgWidthNormalized) {
+  bgWidthNormalized_ = bgWidthNormalized;
+  setParameter(std::string("BgWidthNormalized"), std::to_string(bgWidthNormalized));
+}
+
+std::string AddLiveAISubtitleRequest::getBgColor() const {
+  return bgColor_;
+}
+
+void AddLiveAISubtitleRequest::setBgColor(const std::string &bgColor) {
+  bgColor_ = bgColor;
+  setParameter(std::string("BgColor"), bgColor);
+}
+
+std::string AddLiveAISubtitleRequest::getDstLanguage() const {
+  return dstLanguage_;
+}
+
+void AddLiveAISubtitleRequest::setDstLanguage(const std::string &dstLanguage) {
+  dstLanguage_ = dstLanguage;
+  setParameter(std::string("DstLanguage"), dstLanguage);
+}
+
+std::string AddLiveAISubtitleRequest::getWidth() const {
+  return width_;
+}
+
+void AddLiveAISubtitleRequest::setWidth(const std::string &width) {
+  width_ = width;
+  setParameter(std::string("Width"), width);
+}
+
+std::string AddLiveAISubtitleRequest::getCopyFrom() const {
+  return copyFrom_;
+}
+
+void AddLiveAISubtitleRequest::setCopyFrom(const std::string &copyFrom) {
+  copyFrom_ = copyFrom;
+  setParameter(std::string("CopyFrom"), copyFrom);
+}
+

+ 51 - 0
live/src/model/AddLiveAISubtitleResult.cc

@@ -0,0 +1,51 @@
+/*
+ * 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/AddLiveAISubtitleResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+AddLiveAISubtitleResult::AddLiveAISubtitleResult() :
+	ServiceResult()
+{}
+
+AddLiveAISubtitleResult::AddLiveAISubtitleResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AddLiveAISubtitleResult::~AddLiveAISubtitleResult()
+{}
+
+void AddLiveAISubtitleResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["SubtitleId"].isNull())
+		subtitleId_ = value["SubtitleId"].asString();
+
+}
+
+std::string AddLiveAISubtitleResult::getSubtitleId()const
+{
+	return subtitleId_;
+}
+

+ 162 - 0
live/src/model/CreateRtcAsrTaskRequest.cc

@@ -0,0 +1,162 @@
+/*
+ * 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/CreateRtcAsrTaskRequest.h>
+
+using AlibabaCloud::Live::Model::CreateRtcAsrTaskRequest;
+
+CreateRtcAsrTaskRequest::CreateRtcAsrTaskRequest()
+    : RpcServiceRequest("live", "2016-11-01", "CreateRtcAsrTask") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+CreateRtcAsrTaskRequest::~CreateRtcAsrTaskRequest() {}
+
+std::string CreateRtcAsrTaskRequest::getAuthKey() const {
+  return authKey_;
+}
+
+void CreateRtcAsrTaskRequest::setAuthKey(const std::string &authKey) {
+  authKey_ = authKey;
+  setParameter(std::string("AuthKey"), authKey);
+}
+
+std::string CreateRtcAsrTaskRequest::getLanguage() const {
+  return language_;
+}
+
+void CreateRtcAsrTaskRequest::setLanguage(const std::string &language) {
+  language_ = language;
+  setParameter(std::string("Language"), language);
+}
+
+std::string CreateRtcAsrTaskRequest::getMode() const {
+  return mode_;
+}
+
+void CreateRtcAsrTaskRequest::setMode(const std::string &mode) {
+  mode_ = mode;
+  setParameter(std::string("Mode"), mode);
+}
+
+bool CreateRtcAsrTaskRequest::getTranslateEnabled() const {
+  return translateEnabled_;
+}
+
+void CreateRtcAsrTaskRequest::setTranslateEnabled(bool translateEnabled) {
+  translateEnabled_ = translateEnabled;
+  setParameter(std::string("TranslateEnabled"), translateEnabled ? "true" : "false");
+}
+
+std::string CreateRtcAsrTaskRequest::getTag() const {
+  return tag_;
+}
+
+void CreateRtcAsrTaskRequest::setTag(const std::string &tag) {
+  tag_ = tag;
+  setParameter(std::string("Tag"), tag);
+}
+
+std::string CreateRtcAsrTaskRequest::getStreamURL() const {
+  return streamURL_;
+}
+
+void CreateRtcAsrTaskRequest::setStreamURL(const std::string &streamURL) {
+  streamURL_ = streamURL;
+  setParameter(std::string("StreamURL"), streamURL);
+}
+
+std::string CreateRtcAsrTaskRequest::getTargetLanguages() const {
+  return targetLanguages_;
+}
+
+void CreateRtcAsrTaskRequest::setTargetLanguages(const std::string &targetLanguages) {
+  targetLanguages_ = targetLanguages;
+  setParameter(std::string("TargetLanguages"), targetLanguages);
+}
+
+bool CreateRtcAsrTaskRequest::getAutoTerminateEnabled() const {
+  return autoTerminateEnabled_;
+}
+
+void CreateRtcAsrTaskRequest::setAutoTerminateEnabled(bool autoTerminateEnabled) {
+  autoTerminateEnabled_ = autoTerminateEnabled;
+  setParameter(std::string("AutoTerminateEnabled"), autoTerminateEnabled ? "true" : "false");
+}
+
+long CreateRtcAsrTaskRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void CreateRtcAsrTaskRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string CreateRtcAsrTaskRequest::getRtcUserId() const {
+  return rtcUserId_;
+}
+
+void CreateRtcAsrTaskRequest::setRtcUserId(const std::string &rtcUserId) {
+  rtcUserId_ = rtcUserId;
+  setParameter(std::string("RtcUserId"), rtcUserId);
+}
+
+long CreateRtcAsrTaskRequest::getReportInterval() const {
+  return reportInterval_;
+}
+
+void CreateRtcAsrTaskRequest::setReportInterval(long reportInterval) {
+  reportInterval_ = reportInterval;
+  setParameter(std::string("ReportInterval"), std::to_string(reportInterval));
+}
+
+long CreateRtcAsrTaskRequest::getAutoTerminateDelay() const {
+  return autoTerminateDelay_;
+}
+
+void CreateRtcAsrTaskRequest::setAutoTerminateDelay(long autoTerminateDelay) {
+  autoTerminateDelay_ = autoTerminateDelay;
+  setParameter(std::string("AutoTerminateDelay"), std::to_string(autoTerminateDelay));
+}
+
+std::string CreateRtcAsrTaskRequest::getSDKAppID() const {
+  return sDKAppID_;
+}
+
+void CreateRtcAsrTaskRequest::setSDKAppID(const std::string &sDKAppID) {
+  sDKAppID_ = sDKAppID;
+  setParameter(std::string("SDKAppID"), sDKAppID);
+}
+
+std::string CreateRtcAsrTaskRequest::getCallbackURL() const {
+  return callbackURL_;
+}
+
+void CreateRtcAsrTaskRequest::setCallbackURL(const std::string &callbackURL) {
+  callbackURL_ = callbackURL;
+  setParameter(std::string("CallbackURL"), callbackURL);
+}
+
+std::string CreateRtcAsrTaskRequest::getChannelID() const {
+  return channelID_;
+}
+
+void CreateRtcAsrTaskRequest::setChannelID(const std::string &channelID) {
+  channelID_ = channelID;
+  setParameter(std::string("ChannelID"), channelID);
+}
+

+ 65 - 0
live/src/model/CreateRtcAsrTaskResult.cc

@@ -0,0 +1,65 @@
+/*
+ * 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/CreateRtcAsrTaskResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+CreateRtcAsrTaskResult::CreateRtcAsrTaskResult() :
+	ServiceResult()
+{}
+
+CreateRtcAsrTaskResult::CreateRtcAsrTaskResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateRtcAsrTaskResult::~CreateRtcAsrTaskResult()
+{}
+
+void CreateRtcAsrTaskResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Description"].isNull())
+		description_ = value["Description"].asString();
+	if(!value["RetCode"].isNull())
+		retCode_ = std::stol(value["RetCode"].asString());
+	if(!value["TaskId"].isNull())
+		taskId_ = value["TaskId"].asString();
+
+}
+
+std::string CreateRtcAsrTaskResult::getDescription()const
+{
+	return description_;
+}
+
+std::string CreateRtcAsrTaskResult::getTaskId()const
+{
+	return taskId_;
+}
+
+long CreateRtcAsrTaskResult::getRetCode()const
+{
+	return retCode_;
+}
+

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

@@ -0,0 +1,72 @@
+/*
+ * 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/DeleteLiveAIProduceRulesRequest.h>
+
+using AlibabaCloud::Live::Model::DeleteLiveAIProduceRulesRequest;
+
+DeleteLiveAIProduceRulesRequest::DeleteLiveAIProduceRulesRequest()
+    : RpcServiceRequest("live", "2016-11-01", "DeleteLiveAIProduceRules") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DeleteLiveAIProduceRulesRequest::~DeleteLiveAIProduceRulesRequest() {}
+
+std::string DeleteLiveAIProduceRulesRequest::getRulesId() const {
+  return rulesId_;
+}
+
+void DeleteLiveAIProduceRulesRequest::setRulesId(const std::string &rulesId) {
+  rulesId_ = rulesId;
+  setParameter(std::string("RulesId"), rulesId);
+}
+
+std::string DeleteLiveAIProduceRulesRequest::getApp() const {
+  return app_;
+}
+
+void DeleteLiveAIProduceRulesRequest::setApp(const std::string &app) {
+  app_ = app;
+  setParameter(std::string("App"), app);
+}
+
+long DeleteLiveAIProduceRulesRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DeleteLiveAIProduceRulesRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string DeleteLiveAIProduceRulesRequest::getSuffixName() const {
+  return suffixName_;
+}
+
+void DeleteLiveAIProduceRulesRequest::setSuffixName(const std::string &suffixName) {
+  suffixName_ = suffixName;
+  setParameter(std::string("SuffixName"), suffixName);
+}
+
+std::string DeleteLiveAIProduceRulesRequest::getDomain() const {
+  return domain_;
+}
+
+void DeleteLiveAIProduceRulesRequest::setDomain(const std::string &domain) {
+  domain_ = domain;
+  setParameter(std::string("Domain"), domain);
+}
+

+ 44 - 0
live/src/model/DeleteLiveAIProduceRulesResult.cc

@@ -0,0 +1,44 @@
+/*
+ * 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/DeleteLiveAIProduceRulesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+DeleteLiveAIProduceRulesResult::DeleteLiveAIProduceRulesResult() :
+	ServiceResult()
+{}
+
+DeleteLiveAIProduceRulesResult::DeleteLiveAIProduceRulesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteLiveAIProduceRulesResult::~DeleteLiveAIProduceRulesResult()
+{}
+
+void DeleteLiveAIProduceRulesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 54 - 0
live/src/model/DeleteLiveAISubtitleRequest.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/DeleteLiveAISubtitleRequest.h>
+
+using AlibabaCloud::Live::Model::DeleteLiveAISubtitleRequest;
+
+DeleteLiveAISubtitleRequest::DeleteLiveAISubtitleRequest()
+    : RpcServiceRequest("live", "2016-11-01", "DeleteLiveAISubtitle") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DeleteLiveAISubtitleRequest::~DeleteLiveAISubtitleRequest() {}
+
+std::string DeleteLiveAISubtitleRequest::getSubtitleName() const {
+  return subtitleName_;
+}
+
+void DeleteLiveAISubtitleRequest::setSubtitleName(const std::string &subtitleName) {
+  subtitleName_ = subtitleName;
+  setParameter(std::string("SubtitleName"), subtitleName);
+}
+
+long DeleteLiveAISubtitleRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DeleteLiveAISubtitleRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string DeleteLiveAISubtitleRequest::getSubtitleId() const {
+  return subtitleId_;
+}
+
+void DeleteLiveAISubtitleRequest::setSubtitleId(const std::string &subtitleId) {
+  subtitleId_ = subtitleId;
+  setParameter(std::string("SubtitleId"), subtitleId);
+}
+

+ 44 - 0
live/src/model/DeleteLiveAISubtitleResult.cc

@@ -0,0 +1,44 @@
+/*
+ * 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/DeleteLiveAISubtitleResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+DeleteLiveAISubtitleResult::DeleteLiveAISubtitleResult() :
+	ServiceResult()
+{}
+
+DeleteLiveAISubtitleResult::DeleteLiveAISubtitleResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteLiveAISubtitleResult::~DeleteLiveAISubtitleResult()
+{}
+
+void DeleteLiveAISubtitleResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 90 - 0
live/src/model/DescribeLiveAIProduceRulesRequest.cc

@@ -0,0 +1,90 @@
+/*
+ * 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/DescribeLiveAIProduceRulesRequest.h>
+
+using AlibabaCloud::Live::Model::DescribeLiveAIProduceRulesRequest;
+
+DescribeLiveAIProduceRulesRequest::DescribeLiveAIProduceRulesRequest()
+    : RpcServiceRequest("live", "2016-11-01", "DescribeLiveAIProduceRules") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DescribeLiveAIProduceRulesRequest::~DescribeLiveAIProduceRulesRequest() {}
+
+std::string DescribeLiveAIProduceRulesRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void DescribeLiveAIProduceRulesRequest::setPageNumber(const std::string &pageNumber) {
+  pageNumber_ = pageNumber;
+  setParameter(std::string("PageNumber"), pageNumber);
+}
+
+std::string DescribeLiveAIProduceRulesRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void DescribeLiveAIProduceRulesRequest::setPageSize(const std::string &pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), pageSize);
+}
+
+std::string DescribeLiveAIProduceRulesRequest::getRulesId() const {
+  return rulesId_;
+}
+
+void DescribeLiveAIProduceRulesRequest::setRulesId(const std::string &rulesId) {
+  rulesId_ = rulesId;
+  setParameter(std::string("RulesId"), rulesId);
+}
+
+std::string DescribeLiveAIProduceRulesRequest::getApp() const {
+  return app_;
+}
+
+void DescribeLiveAIProduceRulesRequest::setApp(const std::string &app) {
+  app_ = app;
+  setParameter(std::string("App"), app);
+}
+
+long DescribeLiveAIProduceRulesRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DescribeLiveAIProduceRulesRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string DescribeLiveAIProduceRulesRequest::getSuffixName() const {
+  return suffixName_;
+}
+
+void DescribeLiveAIProduceRulesRequest::setSuffixName(const std::string &suffixName) {
+  suffixName_ = suffixName;
+  setParameter(std::string("SuffixName"), suffixName);
+}
+
+std::string DescribeLiveAIProduceRulesRequest::getDomain() const {
+  return domain_;
+}
+
+void DescribeLiveAIProduceRulesRequest::setDomain(const std::string &domain) {
+  domain_ = domain;
+  setParameter(std::string("Domain"), domain);
+}
+

+ 75 - 0
live/src/model/DescribeLiveAIProduceRulesResult.cc

@@ -0,0 +1,75 @@
+/*
+ * 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/DescribeLiveAIProduceRulesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+DescribeLiveAIProduceRulesResult::DescribeLiveAIProduceRulesResult() :
+	ServiceResult()
+{}
+
+DescribeLiveAIProduceRulesResult::DescribeLiveAIProduceRulesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeLiveAIProduceRulesResult::~DescribeLiveAIProduceRulesResult()
+{}
+
+void DescribeLiveAIProduceRulesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allRuleInfoListNode = value["RuleInfoList"]["RuleInfo"];
+	for (auto valueRuleInfoListRuleInfo : allRuleInfoListNode)
+	{
+		RuleInfo ruleInfoListObject;
+		if(!valueRuleInfoListRuleInfo["Domain"].isNull())
+			ruleInfoListObject.domain = valueRuleInfoListRuleInfo["Domain"].asString();
+		if(!valueRuleInfoListRuleInfo["App"].isNull())
+			ruleInfoListObject.app = valueRuleInfoListRuleInfo["App"].asString();
+		if(!valueRuleInfoListRuleInfo["SubtitleName"].isNull())
+			ruleInfoListObject.subtitleName = valueRuleInfoListRuleInfo["SubtitleName"].asString();
+		if(!valueRuleInfoListRuleInfo["IsLazy"].isNull())
+			ruleInfoListObject.isLazy = valueRuleInfoListRuleInfo["IsLazy"].asString() == "true";
+		if(!valueRuleInfoListRuleInfo["IsOrigin"].isNull())
+			ruleInfoListObject.isOrigin = valueRuleInfoListRuleInfo["IsOrigin"].asString() == "true";
+		if(!valueRuleInfoListRuleInfo["RulesId"].isNull())
+			ruleInfoListObject.rulesId = valueRuleInfoListRuleInfo["RulesId"].asString();
+		if(!valueRuleInfoListRuleInfo["LiveTemplate"].isNull())
+			ruleInfoListObject.liveTemplate = valueRuleInfoListRuleInfo["LiveTemplate"].asString();
+		if(!valueRuleInfoListRuleInfo["GmtModifyTime"].isNull())
+			ruleInfoListObject.gmtModifyTime = valueRuleInfoListRuleInfo["GmtModifyTime"].asString();
+		if(!valueRuleInfoListRuleInfo["SuffixName"].isNull())
+			ruleInfoListObject.suffixName = valueRuleInfoListRuleInfo["SuffixName"].asString();
+		if(!valueRuleInfoListRuleInfo["Description"].isNull())
+			ruleInfoListObject.description = valueRuleInfoListRuleInfo["Description"].asString();
+		ruleInfoList_.push_back(ruleInfoListObject);
+	}
+
+}
+
+std::vector<DescribeLiveAIProduceRulesResult::RuleInfo> DescribeLiveAIProduceRulesResult::getRuleInfoList()const
+{
+	return ruleInfoList_;
+}
+

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

@@ -0,0 +1,72 @@
+/*
+ * 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/DescribeLiveAISubtitleRequest.h>
+
+using AlibabaCloud::Live::Model::DescribeLiveAISubtitleRequest;
+
+DescribeLiveAISubtitleRequest::DescribeLiveAISubtitleRequest()
+    : RpcServiceRequest("live", "2016-11-01", "DescribeLiveAISubtitle") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DescribeLiveAISubtitleRequest::~DescribeLiveAISubtitleRequest() {}
+
+std::string DescribeLiveAISubtitleRequest::getSubtitleName() const {
+  return subtitleName_;
+}
+
+void DescribeLiveAISubtitleRequest::setSubtitleName(const std::string &subtitleName) {
+  subtitleName_ = subtitleName;
+  setParameter(std::string("SubtitleName"), subtitleName);
+}
+
+std::string DescribeLiveAISubtitleRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void DescribeLiveAISubtitleRequest::setPageNumber(const std::string &pageNumber) {
+  pageNumber_ = pageNumber;
+  setParameter(std::string("PageNumber"), pageNumber);
+}
+
+std::string DescribeLiveAISubtitleRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void DescribeLiveAISubtitleRequest::setPageSize(const std::string &pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), pageSize);
+}
+
+long DescribeLiveAISubtitleRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DescribeLiveAISubtitleRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string DescribeLiveAISubtitleRequest::getSubtitleId() const {
+  return subtitleId_;
+}
+
+void DescribeLiveAISubtitleRequest::setSubtitleId(const std::string &subtitleId) {
+  subtitleId_ = subtitleId;
+  setParameter(std::string("SubtitleId"), subtitleId);
+}
+

+ 93 - 0
live/src/model/DescribeLiveAISubtitleResult.cc

@@ -0,0 +1,93 @@
+/*
+ * 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/DescribeLiveAISubtitleResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+DescribeLiveAISubtitleResult::DescribeLiveAISubtitleResult() :
+	ServiceResult()
+{}
+
+DescribeLiveAISubtitleResult::DescribeLiveAISubtitleResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeLiveAISubtitleResult::~DescribeLiveAISubtitleResult()
+{}
+
+void DescribeLiveAISubtitleResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allSubtitleConfigsNode = value["SubtitleConfigs"]["SubtitleConfig"];
+	for (auto valueSubtitleConfigsSubtitleConfig : allSubtitleConfigsNode)
+	{
+		SubtitleConfig subtitleConfigsObject;
+		if(!valueSubtitleConfigsSubtitleConfig["DstLanguage"].isNull())
+			subtitleConfigsObject.dstLanguage = valueSubtitleConfigsSubtitleConfig["DstLanguage"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["SrcLanguage"].isNull())
+			subtitleConfigsObject.srcLanguage = valueSubtitleConfigsSubtitleConfig["SrcLanguage"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["FontColor"].isNull())
+			subtitleConfigsObject.fontColor = valueSubtitleConfigsSubtitleConfig["FontColor"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["FontName"].isNull())
+			subtitleConfigsObject.fontName = valueSubtitleConfigsSubtitleConfig["FontName"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["ShowSourceLan"].isNull())
+			subtitleConfigsObject.showSourceLan = std::stoi(valueSubtitleConfigsSubtitleConfig["ShowSourceLan"].asString());
+		if(!valueSubtitleConfigsSubtitleConfig["MaxLines"].isNull())
+			subtitleConfigsObject.maxLines = std::stoi(valueSubtitleConfigsSubtitleConfig["MaxLines"].asString());
+		if(!valueSubtitleConfigsSubtitleConfig["WordPerline"].isNull())
+			subtitleConfigsObject.wordPerline = std::stoi(valueSubtitleConfigsSubtitleConfig["WordPerline"].asString());
+		if(!valueSubtitleConfigsSubtitleConfig["BgColor"].isNull())
+			subtitleConfigsObject.bgColor = valueSubtitleConfigsSubtitleConfig["BgColor"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["BgWidthNormalized"].isNull())
+			subtitleConfigsObject.bgWidthNormalized = std::stof(valueSubtitleConfigsSubtitleConfig["BgWidthNormalized"].asString());
+		if(!valueSubtitleConfigsSubtitleConfig["BorderWidthNormalized"].isNull())
+			subtitleConfigsObject.borderWidthNormalized = std::stof(valueSubtitleConfigsSubtitleConfig["BorderWidthNormalized"].asString());
+		if(!valueSubtitleConfigsSubtitleConfig["Width"].isNull())
+			subtitleConfigsObject.width = valueSubtitleConfigsSubtitleConfig["Width"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["Height"].isNull())
+			subtitleConfigsObject.height = valueSubtitleConfigsSubtitleConfig["Height"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["SubtitleName"].isNull())
+			subtitleConfigsObject.subtitleName = valueSubtitleConfigsSubtitleConfig["SubtitleName"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["SubtitleId"].isNull())
+			subtitleConfigsObject.subtitleId = valueSubtitleConfigsSubtitleConfig["SubtitleId"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["FontSizeNormalized"].isNull())
+			subtitleConfigsObject.fontSizeNormalized = valueSubtitleConfigsSubtitleConfig["FontSizeNormalized"].asString();
+		if(!valueSubtitleConfigsSubtitleConfig["Description"].isNull())
+			subtitleConfigsObject.description = valueSubtitleConfigsSubtitleConfig["Description"].asString();
+		auto allPositionNormalized = value["PositionNormalized"]["Position"];
+		for (auto value : allPositionNormalized)
+			subtitleConfigsObject.positionNormalized.push_back(value.asString());
+		auto allRulesRefer = value["RulesRefer"]["RulesId"];
+		for (auto value : allRulesRefer)
+			subtitleConfigsObject.rulesRefer.push_back(value.asString());
+		subtitleConfigs_.push_back(subtitleConfigsObject);
+	}
+
+}
+
+std::vector<DescribeLiveAISubtitleResult::SubtitleConfig> DescribeLiveAISubtitleResult::getSubtitleConfigs()const
+{
+	return subtitleConfigs_;
+}
+

+ 81 - 0
live/src/model/ListLiveMessageGroupByPageRequest.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/ListLiveMessageGroupByPageRequest.h>
+
+using AlibabaCloud::Live::Model::ListLiveMessageGroupByPageRequest;
+
+ListLiveMessageGroupByPageRequest::ListLiveMessageGroupByPageRequest()
+    : RpcServiceRequest("live", "2016-11-01", "ListLiveMessageGroupByPage") {
+  setMethod(HttpRequest::Method::Get);
+}
+
+ListLiveMessageGroupByPageRequest::~ListLiveMessageGroupByPageRequest() {}
+
+int ListLiveMessageGroupByPageRequest::getSortType() const {
+  return sortType_;
+}
+
+void ListLiveMessageGroupByPageRequest::setSortType(int sortType) {
+  sortType_ = sortType;
+  setParameter(std::string("SortType"), std::to_string(sortType));
+}
+
+int ListLiveMessageGroupByPageRequest::getGroupStatus() const {
+  return groupStatus_;
+}
+
+void ListLiveMessageGroupByPageRequest::setGroupStatus(int groupStatus) {
+  groupStatus_ = groupStatus;
+  setParameter(std::string("GroupStatus"), std::to_string(groupStatus));
+}
+
+std::string ListLiveMessageGroupByPageRequest::getDataCenter() const {
+  return dataCenter_;
+}
+
+void ListLiveMessageGroupByPageRequest::setDataCenter(const std::string &dataCenter) {
+  dataCenter_ = dataCenter;
+  setParameter(std::string("DataCenter"), dataCenter);
+}
+
+int ListLiveMessageGroupByPageRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void ListLiveMessageGroupByPageRequest::setPageNumber(int pageNumber) {
+  pageNumber_ = pageNumber;
+  setParameter(std::string("PageNumber"), std::to_string(pageNumber));
+}
+
+std::string ListLiveMessageGroupByPageRequest::getAppId() const {
+  return appId_;
+}
+
+void ListLiveMessageGroupByPageRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
+int ListLiveMessageGroupByPageRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void ListLiveMessageGroupByPageRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+

+ 91 - 0
live/src/model/ListLiveMessageGroupByPageResult.cc

@@ -0,0 +1,91 @@
+/*
+ * 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/ListLiveMessageGroupByPageResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+ListLiveMessageGroupByPageResult::ListLiveMessageGroupByPageResult() :
+	ServiceResult()
+{}
+
+ListLiveMessageGroupByPageResult::ListLiveMessageGroupByPageResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListLiveMessageGroupByPageResult::~ListLiveMessageGroupByPageResult()
+{}
+
+void ListLiveMessageGroupByPageResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allGroupListNode = value["GroupList"]["Groups"];
+	for (auto valueGroupListGroups : allGroupListNode)
+	{
+		Groups groupListObject;
+		if(!valueGroupListGroups["GroupId"].isNull())
+			groupListObject.groupId = valueGroupListGroups["GroupId"].asString();
+		if(!valueGroupListGroups["CreatorId"].isNull())
+			groupListObject.creatorId = valueGroupListGroups["CreatorId"].asString();
+		if(!valueGroupListGroups["Createtime"].isNull())
+			groupListObject.createtime = std::stol(valueGroupListGroups["Createtime"].asString());
+		if(!valueGroupListGroups["GroupName"].isNull())
+			groupListObject.groupName = valueGroupListGroups["GroupName"].asString();
+		if(!valueGroupListGroups["GroupInfo"].isNull())
+			groupListObject.groupInfo = valueGroupListGroups["GroupInfo"].asString();
+		if(!valueGroupListGroups["Delete"].isNull())
+			groupListObject._delete = valueGroupListGroups["Delete"].asString() == "true";
+		auto allAdminList = value["AdminList"]["Admins"];
+		for (auto value : allAdminList)
+			groupListObject.adminList.push_back(value.asString());
+		groupList_.push_back(groupListObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+
+}
+
+int ListLiveMessageGroupByPageResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+std::vector<ListLiveMessageGroupByPageResult::Groups> ListLiveMessageGroupByPageResult::getGroupList()const
+{
+	return groupList_;
+}
+
+int ListLiveMessageGroupByPageResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListLiveMessageGroupByPageResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+

+ 45 - 0
live/src/model/QueryRtcAsrTasksRequest.cc

@@ -0,0 +1,45 @@
+/*
+ * 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/QueryRtcAsrTasksRequest.h>
+
+using AlibabaCloud::Live::Model::QueryRtcAsrTasksRequest;
+
+QueryRtcAsrTasksRequest::QueryRtcAsrTasksRequest()
+    : RpcServiceRequest("live", "2016-11-01", "QueryRtcAsrTasks") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+QueryRtcAsrTasksRequest::~QueryRtcAsrTasksRequest() {}
+
+std::string QueryRtcAsrTasksRequest::getTaskId() const {
+  return taskId_;
+}
+
+void QueryRtcAsrTasksRequest::setTaskId(const std::string &taskId) {
+  taskId_ = taskId;
+  setParameter(std::string("TaskId"), taskId);
+}
+
+long QueryRtcAsrTasksRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void QueryRtcAsrTasksRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+

+ 44 - 0
live/src/model/QueryRtcAsrTasksResult.cc

@@ -0,0 +1,44 @@
+/*
+ * 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/QueryRtcAsrTasksResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+QueryRtcAsrTasksResult::QueryRtcAsrTasksResult() :
+	ServiceResult()
+{}
+
+QueryRtcAsrTasksResult::QueryRtcAsrTasksResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+QueryRtcAsrTasksResult::~QueryRtcAsrTasksResult()
+{}
+
+void QueryRtcAsrTasksResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 45 - 0
live/src/model/StopRtcAsrTaskRequest.cc

@@ -0,0 +1,45 @@
+/*
+ * 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/StopRtcAsrTaskRequest.h>
+
+using AlibabaCloud::Live::Model::StopRtcAsrTaskRequest;
+
+StopRtcAsrTaskRequest::StopRtcAsrTaskRequest()
+    : RpcServiceRequest("live", "2016-11-01", "StopRtcAsrTask") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+StopRtcAsrTaskRequest::~StopRtcAsrTaskRequest() {}
+
+std::string StopRtcAsrTaskRequest::getTaskId() const {
+  return taskId_;
+}
+
+void StopRtcAsrTaskRequest::setTaskId(const std::string &taskId) {
+  taskId_ = taskId;
+  setParameter(std::string("TaskId"), taskId);
+}
+
+long StopRtcAsrTaskRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void StopRtcAsrTaskRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+

+ 58 - 0
live/src/model/StopRtcAsrTaskResult.cc

@@ -0,0 +1,58 @@
+/*
+ * 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/StopRtcAsrTaskResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+StopRtcAsrTaskResult::StopRtcAsrTaskResult() :
+	ServiceResult()
+{}
+
+StopRtcAsrTaskResult::StopRtcAsrTaskResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+StopRtcAsrTaskResult::~StopRtcAsrTaskResult()
+{}
+
+void StopRtcAsrTaskResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Description"].isNull())
+		description_ = value["Description"].asString();
+	if(!value["RetCode"].isNull())
+		retCode_ = std::stol(value["RetCode"].asString());
+
+}
+
+std::string StopRtcAsrTaskResult::getDescription()const
+{
+	return description_;
+}
+
+long StopRtcAsrTaskResult::getRetCode()const
+{
+	return retCode_;
+}
+

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

@@ -0,0 +1,117 @@
+/*
+ * 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/UpdateLiveAIProduceRulesRequest.h>
+
+using AlibabaCloud::Live::Model::UpdateLiveAIProduceRulesRequest;
+
+UpdateLiveAIProduceRulesRequest::UpdateLiveAIProduceRulesRequest()
+    : RpcServiceRequest("live", "2016-11-01", "UpdateLiveAIProduceRules") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+UpdateLiveAIProduceRulesRequest::~UpdateLiveAIProduceRulesRequest() {}
+
+std::string UpdateLiveAIProduceRulesRequest::getDescription() const {
+  return description_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setDescription(const std::string &description) {
+  description_ = description;
+  setParameter(std::string("Description"), description);
+}
+
+std::string UpdateLiveAIProduceRulesRequest::getSubtitleName() const {
+  return subtitleName_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setSubtitleName(const std::string &subtitleName) {
+  subtitleName_ = subtitleName;
+  setParameter(std::string("SubtitleName"), subtitleName);
+}
+
+std::string UpdateLiveAIProduceRulesRequest::getRulesId() const {
+  return rulesId_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setRulesId(const std::string &rulesId) {
+  rulesId_ = rulesId;
+  setParameter(std::string("RulesId"), rulesId);
+}
+
+std::string UpdateLiveAIProduceRulesRequest::getApp() const {
+  return app_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setApp(const std::string &app) {
+  app_ = app;
+  setParameter(std::string("App"), app);
+}
+
+long UpdateLiveAIProduceRulesRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+bool UpdateLiveAIProduceRulesRequest::getIsLazy() const {
+  return isLazy_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setIsLazy(bool isLazy) {
+  isLazy_ = isLazy;
+  setParameter(std::string("IsLazy"), isLazy ? "true" : "false");
+}
+
+std::string UpdateLiveAIProduceRulesRequest::getLiveTemplate() const {
+  return liveTemplate_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setLiveTemplate(const std::string &liveTemplate) {
+  liveTemplate_ = liveTemplate;
+  setParameter(std::string("LiveTemplate"), liveTemplate);
+}
+
+std::string UpdateLiveAIProduceRulesRequest::getDomain() const {
+  return domain_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setDomain(const std::string &domain) {
+  domain_ = domain;
+  setParameter(std::string("Domain"), domain);
+}
+
+bool UpdateLiveAIProduceRulesRequest::getIsOrigin() const {
+  return isOrigin_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setIsOrigin(bool isOrigin) {
+  isOrigin_ = isOrigin;
+  setParameter(std::string("IsOrigin"), isOrigin ? "true" : "false");
+}
+
+std::string UpdateLiveAIProduceRulesRequest::getSubtitleId() const {
+  return subtitleId_;
+}
+
+void UpdateLiveAIProduceRulesRequest::setSubtitleId(const std::string &subtitleId) {
+  subtitleId_ = subtitleId;
+  setParameter(std::string("SubtitleId"), subtitleId);
+}
+

+ 44 - 0
live/src/model/UpdateLiveAIProduceRulesResult.cc

@@ -0,0 +1,44 @@
+/*
+ * 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/UpdateLiveAIProduceRulesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+UpdateLiveAIProduceRulesResult::UpdateLiveAIProduceRulesResult() :
+	ServiceResult()
+{}
+
+UpdateLiveAIProduceRulesResult::UpdateLiveAIProduceRulesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateLiveAIProduceRulesResult::~UpdateLiveAIProduceRulesResult()
+{}
+
+void UpdateLiveAIProduceRulesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 191 - 0
live/src/model/UpdateLiveAISubtitleRequest.cc

@@ -0,0 +1,191 @@
+/*
+ * 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/UpdateLiveAISubtitleRequest.h>
+
+using AlibabaCloud::Live::Model::UpdateLiveAISubtitleRequest;
+
+UpdateLiveAISubtitleRequest::UpdateLiveAISubtitleRequest()
+    : RpcServiceRequest("live", "2016-11-01", "UpdateLiveAISubtitle") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+UpdateLiveAISubtitleRequest::~UpdateLiveAISubtitleRequest() {}
+
+std::string UpdateLiveAISubtitleRequest::getSrcLanguage() const {
+  return srcLanguage_;
+}
+
+void UpdateLiveAISubtitleRequest::setSrcLanguage(const std::string &srcLanguage) {
+  srcLanguage_ = srcLanguage;
+  setParameter(std::string("SrcLanguage"), srcLanguage);
+}
+
+std::string UpdateLiveAISubtitleRequest::getDescription() const {
+  return description_;
+}
+
+void UpdateLiveAISubtitleRequest::setDescription(const std::string &description) {
+  description_ = description;
+  setParameter(std::string("Description"), description);
+}
+
+std::string UpdateLiveAISubtitleRequest::getFontName() const {
+  return fontName_;
+}
+
+void UpdateLiveAISubtitleRequest::setFontName(const std::string &fontName) {
+  fontName_ = fontName;
+  setParameter(std::string("FontName"), fontName);
+}
+
+std::string UpdateLiveAISubtitleRequest::getSubtitleName() const {
+  return subtitleName_;
+}
+
+void UpdateLiveAISubtitleRequest::setSubtitleName(const std::string &subtitleName) {
+  subtitleName_ = subtitleName;
+  setParameter(std::string("SubtitleName"), subtitleName);
+}
+
+float UpdateLiveAISubtitleRequest::getFontSizeNormalized() const {
+  return fontSizeNormalized_;
+}
+
+void UpdateLiveAISubtitleRequest::setFontSizeNormalized(float fontSizeNormalized) {
+  fontSizeNormalized_ = fontSizeNormalized;
+  setParameter(std::string("FontSizeNormalized"), std::to_string(fontSizeNormalized));
+}
+
+std::string UpdateLiveAISubtitleRequest::getFontColor() const {
+  return fontColor_;
+}
+
+void UpdateLiveAISubtitleRequest::setFontColor(const std::string &fontColor) {
+  fontColor_ = fontColor;
+  setParameter(std::string("FontColor"), fontColor);
+}
+
+bool UpdateLiveAISubtitleRequest::getShowSourceLan() const {
+  return showSourceLan_;
+}
+
+void UpdateLiveAISubtitleRequest::setShowSourceLan(bool showSourceLan) {
+  showSourceLan_ = showSourceLan;
+  setParameter(std::string("ShowSourceLan"), showSourceLan ? "true" : "false");
+}
+
+std::vector<UpdateLiveAISubtitleRequest::float> UpdateLiveAISubtitleRequest::getPositionNormalized() const {
+  return positionNormalized_;
+}
+
+void UpdateLiveAISubtitleRequest::setPositionNormalized(const std::vector<UpdateLiveAISubtitleRequest::float> &positionNormalized) {
+  positionNormalized_ = positionNormalized;
+  for(int dep1 = 0; dep1 != positionNormalized.size(); dep1++) {
+    setParameter(std::string("PositionNormalized") + "." + std::to_string(dep1 + 1), std::to_string(positionNormalized[dep1]));
+  }
+}
+
+float UpdateLiveAISubtitleRequest::getBorderWidthNormalized() const {
+  return borderWidthNormalized_;
+}
+
+void UpdateLiveAISubtitleRequest::setBorderWidthNormalized(float borderWidthNormalized) {
+  borderWidthNormalized_ = borderWidthNormalized;
+  setParameter(std::string("BorderWidthNormalized"), std::to_string(borderWidthNormalized));
+}
+
+int UpdateLiveAISubtitleRequest::getMaxLines() const {
+  return maxLines_;
+}
+
+void UpdateLiveAISubtitleRequest::setMaxLines(int maxLines) {
+  maxLines_ = maxLines;
+  setParameter(std::string("MaxLines"), std::to_string(maxLines));
+}
+
+std::string UpdateLiveAISubtitleRequest::getHeight() const {
+  return height_;
+}
+
+void UpdateLiveAISubtitleRequest::setHeight(const std::string &height) {
+  height_ = height;
+  setParameter(std::string("Height"), height);
+}
+
+int UpdateLiveAISubtitleRequest::getWordPerLine() const {
+  return wordPerLine_;
+}
+
+void UpdateLiveAISubtitleRequest::setWordPerLine(int wordPerLine) {
+  wordPerLine_ = wordPerLine;
+  setParameter(std::string("WordPerLine"), std::to_string(wordPerLine));
+}
+
+long UpdateLiveAISubtitleRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void UpdateLiveAISubtitleRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+float UpdateLiveAISubtitleRequest::getBgWidthNormalized() const {
+  return bgWidthNormalized_;
+}
+
+void UpdateLiveAISubtitleRequest::setBgWidthNormalized(float bgWidthNormalized) {
+  bgWidthNormalized_ = bgWidthNormalized;
+  setParameter(std::string("BgWidthNormalized"), std::to_string(bgWidthNormalized));
+}
+
+std::string UpdateLiveAISubtitleRequest::getBgColor() const {
+  return bgColor_;
+}
+
+void UpdateLiveAISubtitleRequest::setBgColor(const std::string &bgColor) {
+  bgColor_ = bgColor;
+  setParameter(std::string("BgColor"), bgColor);
+}
+
+std::string UpdateLiveAISubtitleRequest::getDstLanguage() const {
+  return dstLanguage_;
+}
+
+void UpdateLiveAISubtitleRequest::setDstLanguage(const std::string &dstLanguage) {
+  dstLanguage_ = dstLanguage;
+  setParameter(std::string("DstLanguage"), dstLanguage);
+}
+
+std::string UpdateLiveAISubtitleRequest::getWidth() const {
+  return width_;
+}
+
+void UpdateLiveAISubtitleRequest::setWidth(const std::string &width) {
+  width_ = width;
+  setParameter(std::string("Width"), width);
+}
+
+std::string UpdateLiveAISubtitleRequest::getSubtitleId() const {
+  return subtitleId_;
+}
+
+void UpdateLiveAISubtitleRequest::setSubtitleId(const std::string &subtitleId) {
+  subtitleId_ = subtitleId;
+  setParameter(std::string("SubtitleId"), subtitleId);
+}
+

+ 44 - 0
live/src/model/UpdateLiveAISubtitleResult.cc

@@ -0,0 +1,44 @@
+/*
+ * 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/UpdateLiveAISubtitleResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Live;
+using namespace AlibabaCloud::Live::Model;
+
+UpdateLiveAISubtitleResult::UpdateLiveAISubtitleResult() :
+	ServiceResult()
+{}
+
+UpdateLiveAISubtitleResult::UpdateLiveAISubtitleResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+UpdateLiveAISubtitleResult::~UpdateLiveAISubtitleResult()
+{}
+
+void UpdateLiveAISubtitleResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+