Просмотр исходного кода

Add SubmitMediaDNADeleteJob and ListMediaDNADeleteJob.

sdk-team 6 лет назад
Родитель
Сommit
db4fde36ee

+ 5 - 0
CHANGELOG

@@ -1,3 +1,8 @@
+2020-06-04 Version: 1.36.448
+- Add SubmitMediaDNADeleteJob and ListMediaDNADeleteJob.
+- Modify GetMediaAuditResult interface, support ad logo and live result.
+- Modify GetMediaAuditResultTimeline interface, support ad logo and live result.
+
 2020-06-04 Version: 1.36.447
 - Update monitor related API.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.447
+1.36.448

+ 12 - 0
vod/CMakeLists.txt

@@ -145,6 +145,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/GetEditingProjectMaterialsResult.h
 	include/alibabacloud/vod/model/GetImageInfoRequest.h
 	include/alibabacloud/vod/model/GetImageInfoResult.h
+	include/alibabacloud/vod/model/GetMediaAuditAudioResultDetailRequest.h
+	include/alibabacloud/vod/model/GetMediaAuditAudioResultDetailResult.h
 	include/alibabacloud/vod/model/GetMediaAuditResultRequest.h
 	include/alibabacloud/vod/model/GetMediaAuditResultResult.h
 	include/alibabacloud/vod/model/GetMediaAuditResultDetailRequest.h
@@ -193,6 +195,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/ListAuditSecurityIpResult.h
 	include/alibabacloud/vod/model/ListLiveRecordVideoRequest.h
 	include/alibabacloud/vod/model/ListLiveRecordVideoResult.h
+	include/alibabacloud/vod/model/ListMediaDNADeleteJobRequest.h
+	include/alibabacloud/vod/model/ListMediaDNADeleteJobResult.h
 	include/alibabacloud/vod/model/ListSnapshotsRequest.h
 	include/alibabacloud/vod/model/ListSnapshotsResult.h
 	include/alibabacloud/vod/model/ListTranscodeTaskRequest.h
@@ -239,6 +243,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/SubmitAIMediaAuditJobResult.h
 	include/alibabacloud/vod/model/SubmitDynamicImageJobRequest.h
 	include/alibabacloud/vod/model/SubmitDynamicImageJobResult.h
+	include/alibabacloud/vod/model/SubmitMediaDNADeleteJobRequest.h
+	include/alibabacloud/vod/model/SubmitMediaDNADeleteJobResult.h
 	include/alibabacloud/vod/model/SubmitPreprocessJobsRequest.h
 	include/alibabacloud/vod/model/SubmitPreprocessJobsResult.h
 	include/alibabacloud/vod/model/SubmitSnapshotJobRequest.h
@@ -400,6 +406,8 @@ set(vod_src
 	src/model/GetEditingProjectMaterialsResult.cc
 	src/model/GetImageInfoRequest.cc
 	src/model/GetImageInfoResult.cc
+	src/model/GetMediaAuditAudioResultDetailRequest.cc
+	src/model/GetMediaAuditAudioResultDetailResult.cc
 	src/model/GetMediaAuditResultRequest.cc
 	src/model/GetMediaAuditResultResult.cc
 	src/model/GetMediaAuditResultDetailRequest.cc
@@ -448,6 +456,8 @@ set(vod_src
 	src/model/ListAuditSecurityIpResult.cc
 	src/model/ListLiveRecordVideoRequest.cc
 	src/model/ListLiveRecordVideoResult.cc
+	src/model/ListMediaDNADeleteJobRequest.cc
+	src/model/ListMediaDNADeleteJobResult.cc
 	src/model/ListSnapshotsRequest.cc
 	src/model/ListSnapshotsResult.cc
 	src/model/ListTranscodeTaskRequest.cc
@@ -494,6 +504,8 @@ set(vod_src
 	src/model/SubmitAIMediaAuditJobResult.cc
 	src/model/SubmitDynamicImageJobRequest.cc
 	src/model/SubmitDynamicImageJobResult.cc
+	src/model/SubmitMediaDNADeleteJobRequest.cc
+	src/model/SubmitMediaDNADeleteJobResult.cc
 	src/model/SubmitPreprocessJobsRequest.cc
 	src/model/SubmitPreprocessJobsResult.cc
 	src/model/SubmitSnapshotJobRequest.cc

+ 24 - 0
vod/include/alibabacloud/vod/VodClient.h

@@ -146,6 +146,8 @@
 #include "model/GetEditingProjectMaterialsResult.h"
 #include "model/GetImageInfoRequest.h"
 #include "model/GetImageInfoResult.h"
+#include "model/GetMediaAuditAudioResultDetailRequest.h"
+#include "model/GetMediaAuditAudioResultDetailResult.h"
 #include "model/GetMediaAuditResultRequest.h"
 #include "model/GetMediaAuditResultResult.h"
 #include "model/GetMediaAuditResultDetailRequest.h"
@@ -194,6 +196,8 @@
 #include "model/ListAuditSecurityIpResult.h"
 #include "model/ListLiveRecordVideoRequest.h"
 #include "model/ListLiveRecordVideoResult.h"
+#include "model/ListMediaDNADeleteJobRequest.h"
+#include "model/ListMediaDNADeleteJobResult.h"
 #include "model/ListSnapshotsRequest.h"
 #include "model/ListSnapshotsResult.h"
 #include "model/ListTranscodeTaskRequest.h"
@@ -240,6 +244,8 @@
 #include "model/SubmitAIMediaAuditJobResult.h"
 #include "model/SubmitDynamicImageJobRequest.h"
 #include "model/SubmitDynamicImageJobResult.h"
+#include "model/SubmitMediaDNADeleteJobRequest.h"
+#include "model/SubmitMediaDNADeleteJobResult.h"
 #include "model/SubmitPreprocessJobsRequest.h"
 #include "model/SubmitPreprocessJobsResult.h"
 #include "model/SubmitSnapshotJobRequest.h"
@@ -469,6 +475,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetImageInfoResult> GetImageInfoOutcome;
 			typedef std::future<GetImageInfoOutcome> GetImageInfoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetImageInfoRequest&, const GetImageInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetImageInfoAsyncHandler;
+			typedef Outcome<Error, Model::GetMediaAuditAudioResultDetailResult> GetMediaAuditAudioResultDetailOutcome;
+			typedef std::future<GetMediaAuditAudioResultDetailOutcome> GetMediaAuditAudioResultDetailOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::GetMediaAuditAudioResultDetailRequest&, const GetMediaAuditAudioResultDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMediaAuditAudioResultDetailAsyncHandler;
 			typedef Outcome<Error, Model::GetMediaAuditResultResult> GetMediaAuditResultOutcome;
 			typedef std::future<GetMediaAuditResultOutcome> GetMediaAuditResultOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetMediaAuditResultRequest&, const GetMediaAuditResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetMediaAuditResultAsyncHandler;
@@ -541,6 +550,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListLiveRecordVideoResult> ListLiveRecordVideoOutcome;
 			typedef std::future<ListLiveRecordVideoOutcome> ListLiveRecordVideoOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::ListLiveRecordVideoRequest&, const ListLiveRecordVideoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListLiveRecordVideoAsyncHandler;
+			typedef Outcome<Error, Model::ListMediaDNADeleteJobResult> ListMediaDNADeleteJobOutcome;
+			typedef std::future<ListMediaDNADeleteJobOutcome> ListMediaDNADeleteJobOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::ListMediaDNADeleteJobRequest&, const ListMediaDNADeleteJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListMediaDNADeleteJobAsyncHandler;
 			typedef Outcome<Error, Model::ListSnapshotsResult> ListSnapshotsOutcome;
 			typedef std::future<ListSnapshotsOutcome> ListSnapshotsOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::ListSnapshotsRequest&, const ListSnapshotsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListSnapshotsAsyncHandler;
@@ -610,6 +622,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::SubmitDynamicImageJobResult> SubmitDynamicImageJobOutcome;
 			typedef std::future<SubmitDynamicImageJobOutcome> SubmitDynamicImageJobOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::SubmitDynamicImageJobRequest&, const SubmitDynamicImageJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitDynamicImageJobAsyncHandler;
+			typedef Outcome<Error, Model::SubmitMediaDNADeleteJobResult> SubmitMediaDNADeleteJobOutcome;
+			typedef std::future<SubmitMediaDNADeleteJobOutcome> SubmitMediaDNADeleteJobOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::SubmitMediaDNADeleteJobRequest&, const SubmitMediaDNADeleteJobOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitMediaDNADeleteJobAsyncHandler;
 			typedef Outcome<Error, Model::SubmitPreprocessJobsResult> SubmitPreprocessJobsOutcome;
 			typedef std::future<SubmitPreprocessJobsOutcome> SubmitPreprocessJobsOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::SubmitPreprocessJobsRequest&, const SubmitPreprocessJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitPreprocessJobsAsyncHandler;
@@ -852,6 +867,9 @@ namespace AlibabaCloud
 			GetImageInfoOutcome getImageInfo(const Model::GetImageInfoRequest &request)const;
 			void getImageInfoAsync(const Model::GetImageInfoRequest& request, const GetImageInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetImageInfoOutcomeCallable getImageInfoCallable(const Model::GetImageInfoRequest& request) const;
+			GetMediaAuditAudioResultDetailOutcome getMediaAuditAudioResultDetail(const Model::GetMediaAuditAudioResultDetailRequest &request)const;
+			void getMediaAuditAudioResultDetailAsync(const Model::GetMediaAuditAudioResultDetailRequest& request, const GetMediaAuditAudioResultDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetMediaAuditAudioResultDetailOutcomeCallable getMediaAuditAudioResultDetailCallable(const Model::GetMediaAuditAudioResultDetailRequest& request) const;
 			GetMediaAuditResultOutcome getMediaAuditResult(const Model::GetMediaAuditResultRequest &request)const;
 			void getMediaAuditResultAsync(const Model::GetMediaAuditResultRequest& request, const GetMediaAuditResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetMediaAuditResultOutcomeCallable getMediaAuditResultCallable(const Model::GetMediaAuditResultRequest& request) const;
@@ -924,6 +942,9 @@ namespace AlibabaCloud
 			ListLiveRecordVideoOutcome listLiveRecordVideo(const Model::ListLiveRecordVideoRequest &request)const;
 			void listLiveRecordVideoAsync(const Model::ListLiveRecordVideoRequest& request, const ListLiveRecordVideoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListLiveRecordVideoOutcomeCallable listLiveRecordVideoCallable(const Model::ListLiveRecordVideoRequest& request) const;
+			ListMediaDNADeleteJobOutcome listMediaDNADeleteJob(const Model::ListMediaDNADeleteJobRequest &request)const;
+			void listMediaDNADeleteJobAsync(const Model::ListMediaDNADeleteJobRequest& request, const ListMediaDNADeleteJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListMediaDNADeleteJobOutcomeCallable listMediaDNADeleteJobCallable(const Model::ListMediaDNADeleteJobRequest& request) const;
 			ListSnapshotsOutcome listSnapshots(const Model::ListSnapshotsRequest &request)const;
 			void listSnapshotsAsync(const Model::ListSnapshotsRequest& request, const ListSnapshotsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListSnapshotsOutcomeCallable listSnapshotsCallable(const Model::ListSnapshotsRequest& request) const;
@@ -993,6 +1014,9 @@ namespace AlibabaCloud
 			SubmitDynamicImageJobOutcome submitDynamicImageJob(const Model::SubmitDynamicImageJobRequest &request)const;
 			void submitDynamicImageJobAsync(const Model::SubmitDynamicImageJobRequest& request, const SubmitDynamicImageJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SubmitDynamicImageJobOutcomeCallable submitDynamicImageJobCallable(const Model::SubmitDynamicImageJobRequest& request) const;
+			SubmitMediaDNADeleteJobOutcome submitMediaDNADeleteJob(const Model::SubmitMediaDNADeleteJobRequest &request)const;
+			void submitMediaDNADeleteJobAsync(const Model::SubmitMediaDNADeleteJobRequest& request, const SubmitMediaDNADeleteJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SubmitMediaDNADeleteJobOutcomeCallable submitMediaDNADeleteJobCallable(const Model::SubmitMediaDNADeleteJobRequest& request) const;
 			SubmitPreprocessJobsOutcome submitPreprocessJobs(const Model::SubmitPreprocessJobsRequest &request)const;
 			void submitPreprocessJobsAsync(const Model::SubmitPreprocessJobsRequest& request, const SubmitPreprocessJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SubmitPreprocessJobsOutcomeCallable submitPreprocessJobsCallable(const Model::SubmitPreprocessJobsRequest& request) const;

+ 66 - 0
vod/include/alibabacloud/vod/model/GetMediaAuditAudioResultDetailRequest.h

@@ -0,0 +1,66 @@
+/*
+ * 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_VOD_MODEL_GETMEDIAAUDITAUDIORESULTDETAILREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_GETMEDIAAUDITAUDIORESULTDETAILREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetMediaAuditAudioResultDetailRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetMediaAuditAudioResultDetailRequest();
+				~GetMediaAuditAudioResultDetailRequest();
+
+				std::string getResourceOwnerId()const;
+				void setResourceOwnerId(const std::string& resourceOwnerId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::string getOwnerId()const;
+				void setOwnerId(const std::string& ownerId);
+				std::string getMediaId()const;
+				void setMediaId(const std::string& mediaId);
+				int getPageNo()const;
+				void setPageNo(int pageNo);
+
+            private:
+				std::string resourceOwnerId_;
+				std::string accessKeyId_;
+				std::string resourceOwnerAccount_;
+				std::string ownerAccount_;
+				std::string ownerId_;
+				std::string mediaId_;
+				int pageNo_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETMEDIAAUDITAUDIORESULTDETAILREQUEST_H_

+ 64 - 0
vod/include/alibabacloud/vod/model/GetMediaAuditAudioResultDetailResult.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_VOD_MODEL_GETMEDIAAUDITAUDIORESULTDETAILRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_GETMEDIAAUDITAUDIORESULTDETAILRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT GetMediaAuditAudioResultDetailResult : public ServiceResult
+			{
+			public:
+				struct MediaAuditAudioResultDetail
+				{
+					struct ListItem
+					{
+						long endTime;
+						long startTime;
+						std::string label;
+						std::string text;
+					};
+					int pageTotal;
+					int total;
+					std::vector<ListItem> list;
+				};
+
+
+				GetMediaAuditAudioResultDetailResult();
+				explicit GetMediaAuditAudioResultDetailResult(const std::string &payload);
+				~GetMediaAuditAudioResultDetailResult();
+				MediaAuditAudioResultDetail getMediaAuditAudioResultDetail()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				MediaAuditAudioResultDetail mediaAuditAudioResultDetail_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETMEDIAAUDITAUDIORESULTDETAILRESULT_H_

+ 76 - 2
vod/include/alibabacloud/vod/model/GetMediaAuditResultResult.h

@@ -36,7 +36,7 @@ namespace AlibabaCloud
 				{
 					struct VideoResult
 					{
-						struct TerrorismResult
+						struct PornResult
 						{
 							struct CounterListItem
 							{
@@ -57,7 +57,7 @@ namespace AlibabaCloud
 							std::string label;
 							std::vector<CounterListItem> counterList;
 						};
-						struct PornResult
+						struct AdResult
 						{
 							struct CounterListItem3
 							{
@@ -78,10 +78,83 @@ namespace AlibabaCloud
 							std::string label;
 							std::vector<TopListItem4> topList2;
 						};
+						struct LogoResult
+						{
+							struct CounterListItem7
+							{
+								std::string label;
+								int count;
+							};
+							struct TopListItem8
+							{
+								std::string score;
+								std::string label;
+								std::string timestamp;
+								std::string url;
+							};
+							std::string suggestion;
+							std::string maxScore;
+							std::string averageScore;
+							std::vector<TopListItem8> topList6;
+							std::string label;
+							std::vector<CounterListItem7> counterList5;
+						};
+						struct LiveResult
+						{
+							struct CounterListItem11
+							{
+								std::string label;
+								int count;
+							};
+							struct TopListItem12
+							{
+								std::string score;
+								std::string label;
+								std::string timestamp;
+								std::string url;
+							};
+							std::string suggestion;
+							std::string maxScore;
+							std::string averageScore;
+							std::string label;
+							std::vector<CounterListItem11> counterList9;
+							std::vector<TopListItem12> topList10;
+						};
+						struct TerrorismResult
+						{
+							struct CounterListItem15
+							{
+								std::string label;
+								int count;
+							};
+							struct TopListItem16
+							{
+								std::string score;
+								std::string label;
+								std::string timestamp;
+								std::string url;
+							};
+							std::string suggestion;
+							std::string maxScore;
+							std::string averageScore;
+							std::vector<TopListItem16> topList14;
+							std::string label;
+							std::vector<CounterListItem15> counterList13;
+						};
+						LogoResult logoResult;
 						std::string suggestion;
+						LiveResult liveResult;
 						TerrorismResult terrorismResult;
 						std::string label;
 						PornResult pornResult;
+						AdResult adResult;
+					};
+					struct AudioResultItem
+					{
+						std::string suggestion;
+						std::string score;
+						std::string label;
+						std::string scene;
 					};
 					struct ImageResultItem
 					{
@@ -113,6 +186,7 @@ namespace AlibabaCloud
 					std::vector<ImageResultItem> imageResult;
 					std::string abnormalModules;
 					std::string label;
+					std::vector<AudioResultItem> audioResult;
 				};
 
 

+ 21 - 0
vod/include/alibabacloud/vod/model/GetMediaAuditResultTimelineResult.h

@@ -46,8 +46,29 @@ namespace AlibabaCloud
 						std::string label;
 						std::string timestamp;
 					};
+					struct LogoItem
+					{
+						std::string score;
+						std::string label;
+						std::string timestamp;
+					};
+					struct LiveItem
+					{
+						std::string score;
+						std::string label;
+						std::string timestamp;
+					};
+					struct AdItem
+					{
+						std::string score;
+						std::string label;
+						std::string timestamp;
+					};
+					std::vector<AdItem> ad;
 					std::vector<TerrorismItem> terrorism;
+					std::vector<LiveItem> live;
 					std::vector<PornItem> porn;
+					std::vector<LogoItem> logo;
 				};
 
 

+ 63 - 0
vod/include/alibabacloud/vod/model/ListMediaDNADeleteJobRequest.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_VOD_MODEL_LISTMEDIADNADELETEJOBREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_LISTMEDIADNADELETEJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT ListMediaDNADeleteJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				ListMediaDNADeleteJobRequest();
+				~ListMediaDNADeleteJobRequest();
+
+				std::string getResourceOwnerId()const;
+				void setResourceOwnerId(const std::string& resourceOwnerId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::string getOwnerId()const;
+				void setOwnerId(const std::string& ownerId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getJobIds()const;
+				void setJobIds(const std::string& jobIds);
+
+            private:
+				std::string resourceOwnerId_;
+				std::string resourceOwnerAccount_;
+				std::string ownerAccount_;
+				std::string ownerId_;
+				std::string accessKeyId_;
+				std::string jobIds_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_LISTMEDIADNADELETEJOBREQUEST_H_

+ 62 - 0
vod/include/alibabacloud/vod/model/ListMediaDNADeleteJobResult.h

@@ -0,0 +1,62 @@
+/*
+ * 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_VOD_MODEL_LISTMEDIADNADELETEJOBRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_LISTMEDIADNADELETEJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT ListMediaDNADeleteJobResult : public ServiceResult
+			{
+			public:
+				struct AIJob
+				{
+					std::string status;
+					std::string mediaId;
+					std::string message;
+					std::string code;
+					std::string jobId;
+					std::string fpDBId;
+				};
+
+
+				ListMediaDNADeleteJobResult();
+				explicit ListMediaDNADeleteJobResult(const std::string &payload);
+				~ListMediaDNADeleteJobResult();
+				std::vector<AIJob> getAIJobList()const;
+				std::vector<std::string> getNonExistAIJobIds()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<AIJob> aIJobList_;
+				std::vector<std::string> nonExistAIJobIds_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_LISTMEDIADNADELETEJOBRESULT_H_

+ 66 - 0
vod/include/alibabacloud/vod/model/SubmitMediaDNADeleteJobRequest.h

@@ -0,0 +1,66 @@
+/*
+ * 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_VOD_MODEL_SUBMITMEDIADNADELETEJOBREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_SUBMITMEDIADNADELETEJOBREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT SubmitMediaDNADeleteJobRequest : public RpcServiceRequest
+			{
+
+			public:
+				SubmitMediaDNADeleteJobRequest();
+				~SubmitMediaDNADeleteJobRequest();
+
+				std::string getResourceOwnerId()const;
+				void setResourceOwnerId(const std::string& resourceOwnerId);
+				std::string getFpDBId()const;
+				void setFpDBId(const std::string& fpDBId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::string getOwnerId()const;
+				void setOwnerId(const std::string& ownerId);
+				std::string getMediaId()const;
+				void setMediaId(const std::string& mediaId);
+
+            private:
+				std::string resourceOwnerId_;
+				std::string fpDBId_;
+				std::string accessKeyId_;
+				std::string resourceOwnerAccount_;
+				std::string ownerAccount_;
+				std::string ownerId_;
+				std::string mediaId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_SUBMITMEDIADNADELETEJOBREQUEST_H_

+ 53 - 0
vod/include/alibabacloud/vod/model/SubmitMediaDNADeleteJobResult.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_VOD_MODEL_SUBMITMEDIADNADELETEJOBRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_SUBMITMEDIADNADELETEJOBRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT SubmitMediaDNADeleteJobResult : public ServiceResult
+			{
+			public:
+
+
+				SubmitMediaDNADeleteJobResult();
+				explicit SubmitMediaDNADeleteJobResult(const std::string &payload);
+				~SubmitMediaDNADeleteJobResult();
+				std::string getMediaId()const;
+				std::string getJobId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string mediaId_;
+				std::string jobId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_SUBMITMEDIADNADELETEJOBRESULT_H_

+ 108 - 0
vod/src/VodClient.cc

@@ -2283,6 +2283,42 @@ VodClient::GetImageInfoOutcomeCallable VodClient::getImageInfoCallable(const Get
 	return task->get_future();
 }
 
+VodClient::GetMediaAuditAudioResultDetailOutcome VodClient::getMediaAuditAudioResultDetail(const GetMediaAuditAudioResultDetailRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetMediaAuditAudioResultDetailOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetMediaAuditAudioResultDetailOutcome(GetMediaAuditAudioResultDetailResult(outcome.result()));
+	else
+		return GetMediaAuditAudioResultDetailOutcome(outcome.error());
+}
+
+void VodClient::getMediaAuditAudioResultDetailAsync(const GetMediaAuditAudioResultDetailRequest& request, const GetMediaAuditAudioResultDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getMediaAuditAudioResultDetail(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::GetMediaAuditAudioResultDetailOutcomeCallable VodClient::getMediaAuditAudioResultDetailCallable(const GetMediaAuditAudioResultDetailRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetMediaAuditAudioResultDetailOutcome()>>(
+			[this, request]()
+			{
+			return this->getMediaAuditAudioResultDetail(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::GetMediaAuditResultOutcome VodClient::getMediaAuditResult(const GetMediaAuditResultRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -3147,6 +3183,42 @@ VodClient::ListLiveRecordVideoOutcomeCallable VodClient::listLiveRecordVideoCall
 	return task->get_future();
 }
 
+VodClient::ListMediaDNADeleteJobOutcome VodClient::listMediaDNADeleteJob(const ListMediaDNADeleteJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListMediaDNADeleteJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListMediaDNADeleteJobOutcome(ListMediaDNADeleteJobResult(outcome.result()));
+	else
+		return ListMediaDNADeleteJobOutcome(outcome.error());
+}
+
+void VodClient::listMediaDNADeleteJobAsync(const ListMediaDNADeleteJobRequest& request, const ListMediaDNADeleteJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listMediaDNADeleteJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::ListMediaDNADeleteJobOutcomeCallable VodClient::listMediaDNADeleteJobCallable(const ListMediaDNADeleteJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListMediaDNADeleteJobOutcome()>>(
+			[this, request]()
+			{
+			return this->listMediaDNADeleteJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::ListSnapshotsOutcome VodClient::listSnapshots(const ListSnapshotsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -3975,6 +4047,42 @@ VodClient::SubmitDynamicImageJobOutcomeCallable VodClient::submitDynamicImageJob
 	return task->get_future();
 }
 
+VodClient::SubmitMediaDNADeleteJobOutcome VodClient::submitMediaDNADeleteJob(const SubmitMediaDNADeleteJobRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return SubmitMediaDNADeleteJobOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return SubmitMediaDNADeleteJobOutcome(SubmitMediaDNADeleteJobResult(outcome.result()));
+	else
+		return SubmitMediaDNADeleteJobOutcome(outcome.error());
+}
+
+void VodClient::submitMediaDNADeleteJobAsync(const SubmitMediaDNADeleteJobRequest& request, const SubmitMediaDNADeleteJobAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, submitMediaDNADeleteJob(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::SubmitMediaDNADeleteJobOutcomeCallable VodClient::submitMediaDNADeleteJobCallable(const SubmitMediaDNADeleteJobRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<SubmitMediaDNADeleteJobOutcome()>>(
+			[this, request]()
+			{
+			return this->submitMediaDNADeleteJob(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::SubmitPreprocessJobsOutcome VodClient::submitPreprocessJobs(const SubmitPreprocessJobsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 106 - 0
vod/src/model/GetMediaAuditAudioResultDetailRequest.cc

@@ -0,0 +1,106 @@
+/*
+ * 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/vod/model/GetMediaAuditAudioResultDetailRequest.h>
+
+using AlibabaCloud::Vod::Model::GetMediaAuditAudioResultDetailRequest;
+
+GetMediaAuditAudioResultDetailRequest::GetMediaAuditAudioResultDetailRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "GetMediaAuditAudioResultDetail")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+GetMediaAuditAudioResultDetailRequest::~GetMediaAuditAudioResultDetailRequest()
+{}
+
+std::string GetMediaAuditAudioResultDetailRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void GetMediaAuditAudioResultDetailRequest::setResourceOwnerId(const std::string& resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", resourceOwnerId);
+}
+
+std::string GetMediaAuditAudioResultDetailRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void GetMediaAuditAudioResultDetailRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string GetMediaAuditAudioResultDetailRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void GetMediaAuditAudioResultDetailRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string GetMediaAuditAudioResultDetailRequest::getOwnerAccount()const
+{
+	return ownerAccount_;
+}
+
+void GetMediaAuditAudioResultDetailRequest::setOwnerAccount(const std::string& ownerAccount)
+{
+	ownerAccount_ = ownerAccount;
+	setParameter("OwnerAccount", ownerAccount);
+}
+
+std::string GetMediaAuditAudioResultDetailRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void GetMediaAuditAudioResultDetailRequest::setOwnerId(const std::string& ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", ownerId);
+}
+
+std::string GetMediaAuditAudioResultDetailRequest::getMediaId()const
+{
+	return mediaId_;
+}
+
+void GetMediaAuditAudioResultDetailRequest::setMediaId(const std::string& mediaId)
+{
+	mediaId_ = mediaId;
+	setParameter("MediaId", mediaId);
+}
+
+int GetMediaAuditAudioResultDetailRequest::getPageNo()const
+{
+	return pageNo_;
+}
+
+void GetMediaAuditAudioResultDetailRequest::setPageNo(int pageNo)
+{
+	pageNo_ = pageNo;
+	setParameter("PageNo", std::to_string(pageNo));
+}
+

+ 68 - 0
vod/src/model/GetMediaAuditAudioResultDetailResult.cc

@@ -0,0 +1,68 @@
+/*
+ * 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/vod/model/GetMediaAuditAudioResultDetailResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+GetMediaAuditAudioResultDetailResult::GetMediaAuditAudioResultDetailResult() :
+	ServiceResult()
+{}
+
+GetMediaAuditAudioResultDetailResult::GetMediaAuditAudioResultDetailResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetMediaAuditAudioResultDetailResult::~GetMediaAuditAudioResultDetailResult()
+{}
+
+void GetMediaAuditAudioResultDetailResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto mediaAuditAudioResultDetailNode = value["MediaAuditAudioResultDetail"];
+	if(!mediaAuditAudioResultDetailNode["Total"].isNull())
+		mediaAuditAudioResultDetail_.total = std::stoi(mediaAuditAudioResultDetailNode["Total"].asString());
+	if(!mediaAuditAudioResultDetailNode["PageTotal"].isNull())
+		mediaAuditAudioResultDetail_.pageTotal = std::stoi(mediaAuditAudioResultDetailNode["PageTotal"].asString());
+	auto allListNode = mediaAuditAudioResultDetailNode["List"]["ListItem"];
+	for (auto mediaAuditAudioResultDetailNodeListListItem : allListNode)
+	{
+		MediaAuditAudioResultDetail::ListItem listItemObject;
+		if(!mediaAuditAudioResultDetailNodeListListItem["StartTime"].isNull())
+			listItemObject.startTime = std::stol(mediaAuditAudioResultDetailNodeListListItem["StartTime"].asString());
+		if(!mediaAuditAudioResultDetailNodeListListItem["EndTime"].isNull())
+			listItemObject.endTime = std::stol(mediaAuditAudioResultDetailNodeListListItem["EndTime"].asString());
+		if(!mediaAuditAudioResultDetailNodeListListItem["Text"].isNull())
+			listItemObject.text = mediaAuditAudioResultDetailNodeListListItem["Text"].asString();
+		if(!mediaAuditAudioResultDetailNodeListListItem["Label"].isNull())
+			listItemObject.label = mediaAuditAudioResultDetailNodeListListItem["Label"].asString();
+		mediaAuditAudioResultDetail_.list.push_back(listItemObject);
+	}
+
+}
+
+GetMediaAuditAudioResultDetailResult::MediaAuditAudioResultDetail GetMediaAuditAudioResultDetailResult::getMediaAuditAudioResultDetail()const
+{
+	return mediaAuditAudioResultDetail_;
+}
+

+ 179 - 66
vod/src/model/GetMediaAuditResultResult.cc

@@ -46,14 +46,28 @@ void GetMediaAuditResultResult::parse(const std::string &payload)
 		mediaAuditResult_.label = mediaAuditResultNode["Label"].asString();
 	if(!mediaAuditResultNode["Suggestion"].isNull())
 		mediaAuditResult_.suggestion = mediaAuditResultNode["Suggestion"].asString();
+	auto allAudioResultNode = mediaAuditResultNode["AudioResult"]["AudioResultItem"];
+	for (auto mediaAuditResultNodeAudioResultAudioResultItem : allAudioResultNode)
+	{
+		MediaAuditResult::AudioResultItem audioResultItemObject;
+		if(!mediaAuditResultNodeAudioResultAudioResultItem["Label"].isNull())
+			audioResultItemObject.label = mediaAuditResultNodeAudioResultAudioResultItem["Label"].asString();
+		if(!mediaAuditResultNodeAudioResultAudioResultItem["Scene"].isNull())
+			audioResultItemObject.scene = mediaAuditResultNodeAudioResultAudioResultItem["Scene"].asString();
+		if(!mediaAuditResultNodeAudioResultAudioResultItem["Score"].isNull())
+			audioResultItemObject.score = mediaAuditResultNodeAudioResultAudioResultItem["Score"].asString();
+		if(!mediaAuditResultNodeAudioResultAudioResultItem["Suggestion"].isNull())
+			audioResultItemObject.suggestion = mediaAuditResultNodeAudioResultAudioResultItem["Suggestion"].asString();
+		mediaAuditResult_.audioResult.push_back(audioResultItemObject);
+	}
 	auto allImageResultNode = mediaAuditResultNode["ImageResult"]["ImageResultItem"];
 	for (auto mediaAuditResultNodeImageResultImageResultItem : allImageResultNode)
 	{
 		MediaAuditResult::ImageResultItem imageResultItemObject;
-		if(!mediaAuditResultNodeImageResultImageResultItem["Suggestion"].isNull())
-			imageResultItemObject.suggestion = mediaAuditResultNodeImageResultImageResultItem["Suggestion"].asString();
 		if(!mediaAuditResultNodeImageResultImageResultItem["Label"].isNull())
 			imageResultItemObject.label = mediaAuditResultNodeImageResultImageResultItem["Label"].asString();
+		if(!mediaAuditResultNodeImageResultImageResultItem["Suggestion"].isNull())
+			imageResultItemObject.suggestion = mediaAuditResultNodeImageResultImageResultItem["Suggestion"].asString();
 		if(!mediaAuditResultNodeImageResultImageResultItem["Type"].isNull())
 			imageResultItemObject.type = mediaAuditResultNodeImageResultImageResultItem["Type"].asString();
 		if(!mediaAuditResultNodeImageResultImageResultItem["Url"].isNull())
@@ -62,14 +76,14 @@ void GetMediaAuditResultResult::parse(const std::string &payload)
 		for (auto allImageResultNodeResultResultItem : allResultNode)
 		{
 			MediaAuditResult::ImageResultItem::ResultItem resultObject;
-			if(!allImageResultNodeResultResultItem["Suggestion"].isNull())
-				resultObject.suggestion = allImageResultNodeResultResultItem["Suggestion"].asString();
 			if(!allImageResultNodeResultResultItem["Label"].isNull())
 				resultObject.label = allImageResultNodeResultResultItem["Label"].asString();
-			if(!allImageResultNodeResultResultItem["Score"].isNull())
-				resultObject.score = allImageResultNodeResultResultItem["Score"].asString();
 			if(!allImageResultNodeResultResultItem["Scene"].isNull())
 				resultObject.scene = allImageResultNodeResultResultItem["Scene"].asString();
+			if(!allImageResultNodeResultResultItem["Score"].isNull())
+				resultObject.score = allImageResultNodeResultResultItem["Score"].asString();
+			if(!allImageResultNodeResultResultItem["Suggestion"].isNull())
+				resultObject.suggestion = allImageResultNodeResultResultItem["Suggestion"].asString();
 			imageResultItemObject.result.push_back(resultObject);
 		}
 		mediaAuditResult_.imageResult.push_back(imageResultItemObject);
@@ -78,90 +92,189 @@ void GetMediaAuditResultResult::parse(const std::string &payload)
 	for (auto mediaAuditResultNodeTextResultTextResultItem : allTextResultNode)
 	{
 		MediaAuditResult::TextResultItem textResultItemObject;
-		if(!mediaAuditResultNodeTextResultTextResultItem["Suggestion"].isNull())
-			textResultItemObject.suggestion = mediaAuditResultNodeTextResultTextResultItem["Suggestion"].asString();
+		if(!mediaAuditResultNodeTextResultTextResultItem["Content"].isNull())
+			textResultItemObject.content = mediaAuditResultNodeTextResultTextResultItem["Content"].asString();
 		if(!mediaAuditResultNodeTextResultTextResultItem["Label"].isNull())
 			textResultItemObject.label = mediaAuditResultNodeTextResultTextResultItem["Label"].asString();
-		if(!mediaAuditResultNodeTextResultTextResultItem["Score"].isNull())
-			textResultItemObject.score = mediaAuditResultNodeTextResultTextResultItem["Score"].asString();
 		if(!mediaAuditResultNodeTextResultTextResultItem["Scene"].isNull())
 			textResultItemObject.scene = mediaAuditResultNodeTextResultTextResultItem["Scene"].asString();
+		if(!mediaAuditResultNodeTextResultTextResultItem["Score"].isNull())
+			textResultItemObject.score = mediaAuditResultNodeTextResultTextResultItem["Score"].asString();
+		if(!mediaAuditResultNodeTextResultTextResultItem["Suggestion"].isNull())
+			textResultItemObject.suggestion = mediaAuditResultNodeTextResultTextResultItem["Suggestion"].asString();
 		if(!mediaAuditResultNodeTextResultTextResultItem["Type"].isNull())
 			textResultItemObject.type = mediaAuditResultNodeTextResultTextResultItem["Type"].asString();
-		if(!mediaAuditResultNodeTextResultTextResultItem["Content"].isNull())
-			textResultItemObject.content = mediaAuditResultNodeTextResultTextResultItem["Content"].asString();
 		mediaAuditResult_.textResult.push_back(textResultItemObject);
 	}
 	auto videoResultNode = mediaAuditResultNode["VideoResult"];
-	if(!videoResultNode["Suggestion"].isNull())
-		mediaAuditResult_.videoResult.suggestion = videoResultNode["Suggestion"].asString();
 	if(!videoResultNode["Label"].isNull())
 		mediaAuditResult_.videoResult.label = videoResultNode["Label"].asString();
-	auto terrorismResultNode = videoResultNode["TerrorismResult"];
-	if(!terrorismResultNode["Suggestion"].isNull())
-		mediaAuditResult_.videoResult.terrorismResult.suggestion = terrorismResultNode["Suggestion"].asString();
-	if(!terrorismResultNode["Label"].isNull())
-		mediaAuditResult_.videoResult.terrorismResult.label = terrorismResultNode["Label"].asString();
-	if(!terrorismResultNode["MaxScore"].isNull())
-		mediaAuditResult_.videoResult.terrorismResult.maxScore = terrorismResultNode["MaxScore"].asString();
-	if(!terrorismResultNode["AverageScore"].isNull())
-		mediaAuditResult_.videoResult.terrorismResult.averageScore = terrorismResultNode["AverageScore"].asString();
-	auto allCounterListNode = terrorismResultNode["CounterList"]["CounterListItem"];
-	for (auto terrorismResultNodeCounterListCounterListItem : allCounterListNode)
-	{
-		MediaAuditResult::VideoResult::TerrorismResult::CounterListItem counterListItemObject;
-		if(!terrorismResultNodeCounterListCounterListItem["Label"].isNull())
-			counterListItemObject.label = terrorismResultNodeCounterListCounterListItem["Label"].asString();
-		if(!terrorismResultNodeCounterListCounterListItem["Count"].isNull())
-			counterListItemObject.count = std::stoi(terrorismResultNodeCounterListCounterListItem["Count"].asString());
-		mediaAuditResult_.videoResult.terrorismResult.counterList.push_back(counterListItemObject);
-	}
-	auto allTopListNode = terrorismResultNode["TopList"]["TopListItem"];
-	for (auto terrorismResultNodeTopListTopListItem : allTopListNode)
-	{
-		MediaAuditResult::VideoResult::TerrorismResult::TopListItem topListItemObject;
-		if(!terrorismResultNodeTopListTopListItem["Label"].isNull())
-			topListItemObject.label = terrorismResultNodeTopListTopListItem["Label"].asString();
-		if(!terrorismResultNodeTopListTopListItem["Score"].isNull())
-			topListItemObject.score = terrorismResultNodeTopListTopListItem["Score"].asString();
-		if(!terrorismResultNodeTopListTopListItem["Timestamp"].isNull())
-			topListItemObject.timestamp = terrorismResultNodeTopListTopListItem["Timestamp"].asString();
-		if(!terrorismResultNodeTopListTopListItem["Url"].isNull())
-			topListItemObject.url = terrorismResultNodeTopListTopListItem["Url"].asString();
-		mediaAuditResult_.videoResult.terrorismResult.topList.push_back(topListItemObject);
-	}
+	if(!videoResultNode["Suggestion"].isNull())
+		mediaAuditResult_.videoResult.suggestion = videoResultNode["Suggestion"].asString();
 	auto pornResultNode = videoResultNode["PornResult"];
-	if(!pornResultNode["Suggestion"].isNull())
-		mediaAuditResult_.videoResult.pornResult.suggestion = pornResultNode["Suggestion"].asString();
+	if(!pornResultNode["AverageScore"].isNull())
+		mediaAuditResult_.videoResult.pornResult.averageScore = pornResultNode["AverageScore"].asString();
 	if(!pornResultNode["Label"].isNull())
 		mediaAuditResult_.videoResult.pornResult.label = pornResultNode["Label"].asString();
 	if(!pornResultNode["MaxScore"].isNull())
 		mediaAuditResult_.videoResult.pornResult.maxScore = pornResultNode["MaxScore"].asString();
-	if(!pornResultNode["AverageScore"].isNull())
-		mediaAuditResult_.videoResult.pornResult.averageScore = pornResultNode["AverageScore"].asString();
-	auto allCounterList1Node = pornResultNode["CounterList"]["CounterListItem"];
-	for (auto pornResultNodeCounterListCounterListItem : allCounterList1Node)
+	if(!pornResultNode["Suggestion"].isNull())
+		mediaAuditResult_.videoResult.pornResult.suggestion = pornResultNode["Suggestion"].asString();
+	auto allCounterListNode = pornResultNode["CounterList"]["CounterListItem"];
+	for (auto pornResultNodeCounterListCounterListItem : allCounterListNode)
 	{
-		MediaAuditResult::VideoResult::PornResult::CounterListItem3 counterListItem3Object;
-		if(!pornResultNodeCounterListCounterListItem["Label"].isNull())
-			counterListItem3Object.label = pornResultNodeCounterListCounterListItem["Label"].asString();
+		MediaAuditResult::VideoResult::PornResult::CounterListItem counterListItemObject;
 		if(!pornResultNodeCounterListCounterListItem["Count"].isNull())
-			counterListItem3Object.count = std::stoi(pornResultNodeCounterListCounterListItem["Count"].asString());
-		mediaAuditResult_.videoResult.pornResult.counterList1.push_back(counterListItem3Object);
+			counterListItemObject.count = std::stoi(pornResultNodeCounterListCounterListItem["Count"].asString());
+		if(!pornResultNodeCounterListCounterListItem["Label"].isNull())
+			counterListItemObject.label = pornResultNodeCounterListCounterListItem["Label"].asString();
+		mediaAuditResult_.videoResult.pornResult.counterList.push_back(counterListItemObject);
 	}
-	auto allTopList2Node = pornResultNode["TopList"]["TopListItem"];
-	for (auto pornResultNodeTopListTopListItem : allTopList2Node)
+	auto allTopListNode = pornResultNode["TopList"]["TopListItem"];
+	for (auto pornResultNodeTopListTopListItem : allTopListNode)
 	{
-		MediaAuditResult::VideoResult::PornResult::TopListItem4 topListItem4Object;
+		MediaAuditResult::VideoResult::PornResult::TopListItem topListItemObject;
 		if(!pornResultNodeTopListTopListItem["Label"].isNull())
-			topListItem4Object.label = pornResultNodeTopListTopListItem["Label"].asString();
+			topListItemObject.label = pornResultNodeTopListTopListItem["Label"].asString();
 		if(!pornResultNodeTopListTopListItem["Score"].isNull())
-			topListItem4Object.score = pornResultNodeTopListTopListItem["Score"].asString();
+			topListItemObject.score = pornResultNodeTopListTopListItem["Score"].asString();
 		if(!pornResultNodeTopListTopListItem["Timestamp"].isNull())
-			topListItem4Object.timestamp = pornResultNodeTopListTopListItem["Timestamp"].asString();
+			topListItemObject.timestamp = pornResultNodeTopListTopListItem["Timestamp"].asString();
 		if(!pornResultNodeTopListTopListItem["Url"].isNull())
-			topListItem4Object.url = pornResultNodeTopListTopListItem["Url"].asString();
-		mediaAuditResult_.videoResult.pornResult.topList2.push_back(topListItem4Object);
+			topListItemObject.url = pornResultNodeTopListTopListItem["Url"].asString();
+		mediaAuditResult_.videoResult.pornResult.topList.push_back(topListItemObject);
+	}
+	auto adResultNode = videoResultNode["AdResult"];
+	if(!adResultNode["AverageScore"].isNull())
+		mediaAuditResult_.videoResult.adResult.averageScore = adResultNode["AverageScore"].asString();
+	if(!adResultNode["Label"].isNull())
+		mediaAuditResult_.videoResult.adResult.label = adResultNode["Label"].asString();
+	if(!adResultNode["MaxScore"].isNull())
+		mediaAuditResult_.videoResult.adResult.maxScore = adResultNode["MaxScore"].asString();
+	if(!adResultNode["Suggestion"].isNull())
+		mediaAuditResult_.videoResult.adResult.suggestion = adResultNode["Suggestion"].asString();
+	auto allCounterList1Node = adResultNode["CounterList"]["CounterListItem"];
+	for (auto adResultNodeCounterListCounterListItem : allCounterList1Node)
+	{
+		MediaAuditResult::VideoResult::AdResult::CounterListItem3 counterListItem3Object;
+		if(!adResultNodeCounterListCounterListItem["Count"].isNull())
+			counterListItem3Object.count = std::stoi(adResultNodeCounterListCounterListItem["Count"].asString());
+		if(!adResultNodeCounterListCounterListItem["Label"].isNull())
+			counterListItem3Object.label = adResultNodeCounterListCounterListItem["Label"].asString();
+		mediaAuditResult_.videoResult.adResult.counterList1.push_back(counterListItem3Object);
+	}
+	auto allTopList2Node = adResultNode["TopList"]["TopListItem"];
+	for (auto adResultNodeTopListTopListItem : allTopList2Node)
+	{
+		MediaAuditResult::VideoResult::AdResult::TopListItem4 topListItem4Object;
+		if(!adResultNodeTopListTopListItem["Label"].isNull())
+			topListItem4Object.label = adResultNodeTopListTopListItem["Label"].asString();
+		if(!adResultNodeTopListTopListItem["Score"].isNull())
+			topListItem4Object.score = adResultNodeTopListTopListItem["Score"].asString();
+		if(!adResultNodeTopListTopListItem["Timestamp"].isNull())
+			topListItem4Object.timestamp = adResultNodeTopListTopListItem["Timestamp"].asString();
+		if(!adResultNodeTopListTopListItem["Url"].isNull())
+			topListItem4Object.url = adResultNodeTopListTopListItem["Url"].asString();
+		mediaAuditResult_.videoResult.adResult.topList2.push_back(topListItem4Object);
+	}
+	auto logoResultNode = videoResultNode["LogoResult"];
+	if(!logoResultNode["AverageScore"].isNull())
+		mediaAuditResult_.videoResult.logoResult.averageScore = logoResultNode["AverageScore"].asString();
+	if(!logoResultNode["Label"].isNull())
+		mediaAuditResult_.videoResult.logoResult.label = logoResultNode["Label"].asString();
+	if(!logoResultNode["MaxScore"].isNull())
+		mediaAuditResult_.videoResult.logoResult.maxScore = logoResultNode["MaxScore"].asString();
+	if(!logoResultNode["Suggestion"].isNull())
+		mediaAuditResult_.videoResult.logoResult.suggestion = logoResultNode["Suggestion"].asString();
+	auto allCounterList5Node = logoResultNode["CounterList"]["CounterListItem"];
+	for (auto logoResultNodeCounterListCounterListItem : allCounterList5Node)
+	{
+		MediaAuditResult::VideoResult::LogoResult::CounterListItem7 counterListItem7Object;
+		if(!logoResultNodeCounterListCounterListItem["Count"].isNull())
+			counterListItem7Object.count = std::stoi(logoResultNodeCounterListCounterListItem["Count"].asString());
+		if(!logoResultNodeCounterListCounterListItem["Label"].isNull())
+			counterListItem7Object.label = logoResultNodeCounterListCounterListItem["Label"].asString();
+		mediaAuditResult_.videoResult.logoResult.counterList5.push_back(counterListItem7Object);
+	}
+	auto allTopList6Node = logoResultNode["TopList"]["TopListItem"];
+	for (auto logoResultNodeTopListTopListItem : allTopList6Node)
+	{
+		MediaAuditResult::VideoResult::LogoResult::TopListItem8 topListItem8Object;
+		if(!logoResultNodeTopListTopListItem["Label"].isNull())
+			topListItem8Object.label = logoResultNodeTopListTopListItem["Label"].asString();
+		if(!logoResultNodeTopListTopListItem["Score"].isNull())
+			topListItem8Object.score = logoResultNodeTopListTopListItem["Score"].asString();
+		if(!logoResultNodeTopListTopListItem["Timestamp"].isNull())
+			topListItem8Object.timestamp = logoResultNodeTopListTopListItem["Timestamp"].asString();
+		if(!logoResultNodeTopListTopListItem["Url"].isNull())
+			topListItem8Object.url = logoResultNodeTopListTopListItem["Url"].asString();
+		mediaAuditResult_.videoResult.logoResult.topList6.push_back(topListItem8Object);
+	}
+	auto liveResultNode = videoResultNode["LiveResult"];
+	if(!liveResultNode["AverageScore"].isNull())
+		mediaAuditResult_.videoResult.liveResult.averageScore = liveResultNode["AverageScore"].asString();
+	if(!liveResultNode["Label"].isNull())
+		mediaAuditResult_.videoResult.liveResult.label = liveResultNode["Label"].asString();
+	if(!liveResultNode["MaxScore"].isNull())
+		mediaAuditResult_.videoResult.liveResult.maxScore = liveResultNode["MaxScore"].asString();
+	if(!liveResultNode["Suggestion"].isNull())
+		mediaAuditResult_.videoResult.liveResult.suggestion = liveResultNode["Suggestion"].asString();
+	auto allCounterList9Node = liveResultNode["CounterList"]["CounterListItem"];
+	for (auto liveResultNodeCounterListCounterListItem : allCounterList9Node)
+	{
+		MediaAuditResult::VideoResult::LiveResult::CounterListItem11 counterListItem11Object;
+		if(!liveResultNodeCounterListCounterListItem["Count"].isNull())
+			counterListItem11Object.count = std::stoi(liveResultNodeCounterListCounterListItem["Count"].asString());
+		if(!liveResultNodeCounterListCounterListItem["Label"].isNull())
+			counterListItem11Object.label = liveResultNodeCounterListCounterListItem["Label"].asString();
+		mediaAuditResult_.videoResult.liveResult.counterList9.push_back(counterListItem11Object);
+	}
+	auto allTopList10Node = liveResultNode["TopList"]["TopListItem"];
+	for (auto liveResultNodeTopListTopListItem : allTopList10Node)
+	{
+		MediaAuditResult::VideoResult::LiveResult::TopListItem12 topListItem12Object;
+		if(!liveResultNodeTopListTopListItem["Label"].isNull())
+			topListItem12Object.label = liveResultNodeTopListTopListItem["Label"].asString();
+		if(!liveResultNodeTopListTopListItem["Score"].isNull())
+			topListItem12Object.score = liveResultNodeTopListTopListItem["Score"].asString();
+		if(!liveResultNodeTopListTopListItem["Timestamp"].isNull())
+			topListItem12Object.timestamp = liveResultNodeTopListTopListItem["Timestamp"].asString();
+		if(!liveResultNodeTopListTopListItem["Url"].isNull())
+			topListItem12Object.url = liveResultNodeTopListTopListItem["Url"].asString();
+		mediaAuditResult_.videoResult.liveResult.topList10.push_back(topListItem12Object);
+	}
+	auto terrorismResultNode = videoResultNode["TerrorismResult"];
+	if(!terrorismResultNode["AverageScore"].isNull())
+		mediaAuditResult_.videoResult.terrorismResult.averageScore = terrorismResultNode["AverageScore"].asString();
+	if(!terrorismResultNode["Label"].isNull())
+		mediaAuditResult_.videoResult.terrorismResult.label = terrorismResultNode["Label"].asString();
+	if(!terrorismResultNode["MaxScore"].isNull())
+		mediaAuditResult_.videoResult.terrorismResult.maxScore = terrorismResultNode["MaxScore"].asString();
+	if(!terrorismResultNode["Suggestion"].isNull())
+		mediaAuditResult_.videoResult.terrorismResult.suggestion = terrorismResultNode["Suggestion"].asString();
+	auto allCounterList13Node = terrorismResultNode["CounterList"]["CounterListItem"];
+	for (auto terrorismResultNodeCounterListCounterListItem : allCounterList13Node)
+	{
+		MediaAuditResult::VideoResult::TerrorismResult::CounterListItem15 counterListItem15Object;
+		if(!terrorismResultNodeCounterListCounterListItem["Count"].isNull())
+			counterListItem15Object.count = std::stoi(terrorismResultNodeCounterListCounterListItem["Count"].asString());
+		if(!terrorismResultNodeCounterListCounterListItem["Label"].isNull())
+			counterListItem15Object.label = terrorismResultNodeCounterListCounterListItem["Label"].asString();
+		mediaAuditResult_.videoResult.terrorismResult.counterList13.push_back(counterListItem15Object);
+	}
+	auto allTopList14Node = terrorismResultNode["TopList"]["TopListItem"];
+	for (auto terrorismResultNodeTopListTopListItem : allTopList14Node)
+	{
+		MediaAuditResult::VideoResult::TerrorismResult::TopListItem16 topListItem16Object;
+		if(!terrorismResultNodeTopListTopListItem["Label"].isNull())
+			topListItem16Object.label = terrorismResultNodeTopListTopListItem["Label"].asString();
+		if(!terrorismResultNodeTopListTopListItem["Score"].isNull())
+			topListItem16Object.score = terrorismResultNodeTopListTopListItem["Score"].asString();
+		if(!terrorismResultNodeTopListTopListItem["Timestamp"].isNull())
+			topListItem16Object.timestamp = terrorismResultNodeTopListTopListItem["Timestamp"].asString();
+		if(!terrorismResultNodeTopListTopListItem["Url"].isNull())
+			topListItem16Object.url = terrorismResultNodeTopListTopListItem["Url"].asString();
+		mediaAuditResult_.videoResult.terrorismResult.topList14.push_back(topListItem16Object);
 	}
 
 }

+ 36 - 0
vod/src/model/GetMediaAuditResultTimelineResult.cc

@@ -64,6 +64,42 @@ void GetMediaAuditResultTimelineResult::parse(const std::string &payload)
 			terrorismItemObject.timestamp = mediaAuditResultTimelineNodeTerrorismTerrorismItem["Timestamp"].asString();
 		mediaAuditResultTimeline_.terrorism.push_back(terrorismItemObject);
 	}
+	auto allLogoNode = mediaAuditResultTimelineNode["Logo"]["LogoItem"];
+	for (auto mediaAuditResultTimelineNodeLogoLogoItem : allLogoNode)
+	{
+		MediaAuditResultTimeline::LogoItem logoItemObject;
+		if(!mediaAuditResultTimelineNodeLogoLogoItem["Label"].isNull())
+			logoItemObject.label = mediaAuditResultTimelineNodeLogoLogoItem["Label"].asString();
+		if(!mediaAuditResultTimelineNodeLogoLogoItem["Score"].isNull())
+			logoItemObject.score = mediaAuditResultTimelineNodeLogoLogoItem["Score"].asString();
+		if(!mediaAuditResultTimelineNodeLogoLogoItem["Timestamp"].isNull())
+			logoItemObject.timestamp = mediaAuditResultTimelineNodeLogoLogoItem["Timestamp"].asString();
+		mediaAuditResultTimeline_.logo.push_back(logoItemObject);
+	}
+	auto allLiveNode = mediaAuditResultTimelineNode["Live"]["LiveItem"];
+	for (auto mediaAuditResultTimelineNodeLiveLiveItem : allLiveNode)
+	{
+		MediaAuditResultTimeline::LiveItem liveItemObject;
+		if(!mediaAuditResultTimelineNodeLiveLiveItem["Label"].isNull())
+			liveItemObject.label = mediaAuditResultTimelineNodeLiveLiveItem["Label"].asString();
+		if(!mediaAuditResultTimelineNodeLiveLiveItem["Score"].isNull())
+			liveItemObject.score = mediaAuditResultTimelineNodeLiveLiveItem["Score"].asString();
+		if(!mediaAuditResultTimelineNodeLiveLiveItem["Timestamp"].isNull())
+			liveItemObject.timestamp = mediaAuditResultTimelineNodeLiveLiveItem["Timestamp"].asString();
+		mediaAuditResultTimeline_.live.push_back(liveItemObject);
+	}
+	auto allAdNode = mediaAuditResultTimelineNode["Ad"]["AdItem"];
+	for (auto mediaAuditResultTimelineNodeAdAdItem : allAdNode)
+	{
+		MediaAuditResultTimeline::AdItem adItemObject;
+		if(!mediaAuditResultTimelineNodeAdAdItem["Label"].isNull())
+			adItemObject.label = mediaAuditResultTimelineNodeAdAdItem["Label"].asString();
+		if(!mediaAuditResultTimelineNodeAdAdItem["Score"].isNull())
+			adItemObject.score = mediaAuditResultTimelineNodeAdAdItem["Score"].asString();
+		if(!mediaAuditResultTimelineNodeAdAdItem["Timestamp"].isNull())
+			adItemObject.timestamp = mediaAuditResultTimelineNodeAdAdItem["Timestamp"].asString();
+		mediaAuditResultTimeline_.ad.push_back(adItemObject);
+	}
 
 }
 

+ 95 - 0
vod/src/model/ListMediaDNADeleteJobRequest.cc

@@ -0,0 +1,95 @@
+/*
+ * 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/vod/model/ListMediaDNADeleteJobRequest.h>
+
+using AlibabaCloud::Vod::Model::ListMediaDNADeleteJobRequest;
+
+ListMediaDNADeleteJobRequest::ListMediaDNADeleteJobRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "ListMediaDNADeleteJob")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+ListMediaDNADeleteJobRequest::~ListMediaDNADeleteJobRequest()
+{}
+
+std::string ListMediaDNADeleteJobRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void ListMediaDNADeleteJobRequest::setResourceOwnerId(const std::string& resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", resourceOwnerId);
+}
+
+std::string ListMediaDNADeleteJobRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void ListMediaDNADeleteJobRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string ListMediaDNADeleteJobRequest::getOwnerAccount()const
+{
+	return ownerAccount_;
+}
+
+void ListMediaDNADeleteJobRequest::setOwnerAccount(const std::string& ownerAccount)
+{
+	ownerAccount_ = ownerAccount;
+	setParameter("OwnerAccount", ownerAccount);
+}
+
+std::string ListMediaDNADeleteJobRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void ListMediaDNADeleteJobRequest::setOwnerId(const std::string& ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", ownerId);
+}
+
+std::string ListMediaDNADeleteJobRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void ListMediaDNADeleteJobRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string ListMediaDNADeleteJobRequest::getJobIds()const
+{
+	return jobIds_;
+}
+
+void ListMediaDNADeleteJobRequest::setJobIds(const std::string& jobIds)
+{
+	jobIds_ = jobIds;
+	setParameter("JobIds", jobIds);
+}
+

+ 75 - 0
vod/src/model/ListMediaDNADeleteJobResult.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/vod/model/ListMediaDNADeleteJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+ListMediaDNADeleteJobResult::ListMediaDNADeleteJobResult() :
+	ServiceResult()
+{}
+
+ListMediaDNADeleteJobResult::ListMediaDNADeleteJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListMediaDNADeleteJobResult::~ListMediaDNADeleteJobResult()
+{}
+
+void ListMediaDNADeleteJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allAIJobListNode = value["AIJobList"]["AIJob"];
+	for (auto valueAIJobListAIJob : allAIJobListNode)
+	{
+		AIJob aIJobListObject;
+		if(!valueAIJobListAIJob["JobId"].isNull())
+			aIJobListObject.jobId = valueAIJobListAIJob["JobId"].asString();
+		if(!valueAIJobListAIJob["MediaId"].isNull())
+			aIJobListObject.mediaId = valueAIJobListAIJob["MediaId"].asString();
+		if(!valueAIJobListAIJob["Status"].isNull())
+			aIJobListObject.status = valueAIJobListAIJob["Status"].asString();
+		if(!valueAIJobListAIJob["Code"].isNull())
+			aIJobListObject.code = valueAIJobListAIJob["Code"].asString();
+		if(!valueAIJobListAIJob["Message"].isNull())
+			aIJobListObject.message = valueAIJobListAIJob["Message"].asString();
+		if(!valueAIJobListAIJob["FpDBId"].isNull())
+			aIJobListObject.fpDBId = valueAIJobListAIJob["FpDBId"].asString();
+		aIJobList_.push_back(aIJobListObject);
+	}
+	auto allNonExistAIJobIds = value["NonExistAIJobIds"]["String"];
+	for (const auto &item : allNonExistAIJobIds)
+		nonExistAIJobIds_.push_back(item.asString());
+
+}
+
+std::vector<ListMediaDNADeleteJobResult::AIJob> ListMediaDNADeleteJobResult::getAIJobList()const
+{
+	return aIJobList_;
+}
+
+std::vector<std::string> ListMediaDNADeleteJobResult::getNonExistAIJobIds()const
+{
+	return nonExistAIJobIds_;
+}
+

+ 106 - 0
vod/src/model/SubmitMediaDNADeleteJobRequest.cc

@@ -0,0 +1,106 @@
+/*
+ * 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/vod/model/SubmitMediaDNADeleteJobRequest.h>
+
+using AlibabaCloud::Vod::Model::SubmitMediaDNADeleteJobRequest;
+
+SubmitMediaDNADeleteJobRequest::SubmitMediaDNADeleteJobRequest() :
+	RpcServiceRequest("vod", "2017-03-21", "SubmitMediaDNADeleteJob")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+SubmitMediaDNADeleteJobRequest::~SubmitMediaDNADeleteJobRequest()
+{}
+
+std::string SubmitMediaDNADeleteJobRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void SubmitMediaDNADeleteJobRequest::setResourceOwnerId(const std::string& resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", resourceOwnerId);
+}
+
+std::string SubmitMediaDNADeleteJobRequest::getFpDBId()const
+{
+	return fpDBId_;
+}
+
+void SubmitMediaDNADeleteJobRequest::setFpDBId(const std::string& fpDBId)
+{
+	fpDBId_ = fpDBId;
+	setParameter("FpDBId", fpDBId);
+}
+
+std::string SubmitMediaDNADeleteJobRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void SubmitMediaDNADeleteJobRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string SubmitMediaDNADeleteJobRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void SubmitMediaDNADeleteJobRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string SubmitMediaDNADeleteJobRequest::getOwnerAccount()const
+{
+	return ownerAccount_;
+}
+
+void SubmitMediaDNADeleteJobRequest::setOwnerAccount(const std::string& ownerAccount)
+{
+	ownerAccount_ = ownerAccount;
+	setParameter("OwnerAccount", ownerAccount);
+}
+
+std::string SubmitMediaDNADeleteJobRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void SubmitMediaDNADeleteJobRequest::setOwnerId(const std::string& ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", ownerId);
+}
+
+std::string SubmitMediaDNADeleteJobRequest::getMediaId()const
+{
+	return mediaId_;
+}
+
+void SubmitMediaDNADeleteJobRequest::setMediaId(const std::string& mediaId)
+{
+	mediaId_ = mediaId;
+	setParameter("MediaId", mediaId);
+}
+

+ 58 - 0
vod/src/model/SubmitMediaDNADeleteJobResult.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/vod/model/SubmitMediaDNADeleteJobResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+SubmitMediaDNADeleteJobResult::SubmitMediaDNADeleteJobResult() :
+	ServiceResult()
+{}
+
+SubmitMediaDNADeleteJobResult::SubmitMediaDNADeleteJobResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+SubmitMediaDNADeleteJobResult::~SubmitMediaDNADeleteJobResult()
+{}
+
+void SubmitMediaDNADeleteJobResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["MediaId"].isNull())
+		mediaId_ = value["MediaId"].asString();
+	if(!value["JobId"].isNull())
+		jobId_ = value["JobId"].asString();
+
+}
+
+std::string SubmitMediaDNADeleteJobResult::getMediaId()const
+{
+	return mediaId_;
+}
+
+std::string SubmitMediaDNADeleteJobResult::getJobId()const
+{
+	return jobId_;
+}
+